Skip to main content
The National Cipher Challenge

Extracurricular Challenges

The mystery of the silver bullet Forums The Intelligence Room Extracurricular Challenges

Viewing 5 posts - 46 through 50 (of 50 total)
  • Author
    Posts
  • #99410
    Cipherkings
    Participant

    Another clue to my cipher in #99343:

    It is inspired by the Fibonacci sequence (mod 26). Also, there isn’t really a keyword for this cipher – every message would be encrypted in the exact same way.

    #99550
    Yeetcadamy
    Participant

    My first hint towards my cipher in #99385:

    As I imagine is the first step in anybody’s deciphering attempt, chucking this ciphertext into frequency analysis reveals something interesting. Every character appears with an almost equal frequency. Even skipping characters, like we are looking at a vigenère cipher, doesn’t reveal much more! It seems as though the text is almost completely random, which would make deciphering impossible.

    While I will say that each character has been encoded individually using a caesar cipher, and the amount it has been shifted by is random, the value with which it has been shifted by is not too large. Furthermore, everyone here will almost certainly know what this key is.

    #99575
    upsidedown
    Participant

    Re #99385

    md5("upsidedown" || upper_plaintext) = bc6314cb92df468d39feefbf309245a9

    A response to your question, enciphered by what I would say is a “better” key (though my friend disagrees):

    LLRPBCYKSWDANCNQFLOMZUUJSLAROLBFYKBUELNZNUAHBNQZJUOIMHIWLXQIGNAEOEJWOYXATVQTVEZVBWLCEHRPMENUGNF

    Re @MaxSmartable #98856

    Would it be a correct interpretation of your hints that some public information (of the sort that could be found on Wikipedia) is required to break your cipher?

     

    #99580
    ByteInBits
    Participant

    AS PROMISED, ANSWER AND PARI-gp CODE TO MY CIPHER GIVEN ON
    30th October 2024 at 11:08 am POST #98114

    NCC 2024 BYTEINBITS FORUM CIPHER

    ORIGINAL PLAINTEXT WITH PUNCUATION
    People are unreasonable, illogical and self centred. Love them anyway!
    If you do good, people will accuse you of selfish ulterior motives. Do good anyway!
    If you are successful, you will win false friend and true enemies. Succeed anyway!
    The good you do today will be forgotten tomorrow. Do good anyway!
    Honesty and frankness makes you vulnerable. Be honest and frank anyway!
    The biggest men with the biggest ideas can be shot down by the smallest men with the smallest minds. Think big anyway!
    People favour underdogs but follow only top dogs. Fight for some underdogs anyway!
    What you spend years building may be destroyed overnight. Build anyway!
    People really need help but may attack you if you help them. Help people anyway!
    Give the world the best you have and you will get kicked in the teeth. Give the world the best you have anyway!

    
    SOLUTION:
    =========
    The key to the code is that letters and numbers alternate; and the numbers
    run forward along a reversed alphabet.
    
    Z = A, Y=1, X = B, W = 2, V = C, U = 3, etc. until you reach B = M, A = 13.
    
    Z Y X W V U T S R Q P O N M L K J I H G  F E  D C  B A
    A 1 B 2 C 3 D 4 E 5 F 6 G 7 H 8 I 9 J 10 K 11 L 12 M 13
    
    when written out like the following, it may be more helpful:
    
    Z = A
    Y = 1
    X = B
    W = 2
    V = C
    U = 3
    T = D
    S = 4
    R = E
    Q = 5
    P = F
    O = 6
    N = G
    M = 7
    L = H
    K = 8
    J = I
    I = 9
    H = J
    G = 10
    F = K
    E = 11
    D = L
    C = 12
    B = M
    A = 13
    
    each represents the other side A=13, 13=A etc
    
    \\ ============================= PARI-gp CODE FOR DECRYPTING
    \\ ***DATA*** (need  reversed alplhabet, keyed alphanumeric, ciphertext)
    reva=[" ","Z","Y","X","W","V","U","T","S","R","Q","P","O","N","M","L","K","J","I","H","G","F","E","D","C","B","A"];
    keyd=[" ","A","1","B","2","C","3","D","4","E","5","F","6","G","7","H","8","I","9","J","10","K","11","L","12","M","13"];
    CODE=["F","11","6","F","H","11","13","E","11","3","G","E","11","13","4","6","G","13","M","H","11","9","H","H","6","10","9","12","13","H","13","G","L","4","11","H","K","12","11","G","D","E","11","L","H","6","C","11","D","J","11","7","13","G","1","2","13","1","9","K","1","6","3","L","6","10","6","6","L","F","11","6","F","H","11","2","9","H","H","13","12","12","3","4","11","1","6","3","6","K","4","11","H","K","9","4","J","3","H","D","11","E","9","6","E","7","6","D","9","C","11","4","L","6","10","6","6","L","13","G","1","2","13","1","9","K","1","6","3","13","E","11","4","3","12","12","11","4","4","K","3","H","1","6","3","2","9","H","H","2","9","G","K","13","H","4","11","K","E","9","11","G","L","13","G","L","D","E","3","11","11","G","11","7","9","11","4","4","3","12","12","11","11","L","13","G","1","2","13","1","D","J","11","10","6","6","L","1","6","3","L","6","D","6","L","13","1","2","9","H","H","M","11","K","6","E","10","6","D","D","11","G","D","6","7","6","E","E","6","2","L","6","10","6","6","L","13","G","1","2","13","1","J","6","G","11","4","D","1","13","G","L","K","E","13","G","8","G","11","4","4","7","13","8","11","4","1","6","3","C","3","H","G","11","E","13","M","H","11","M","11","J","6","G","11","4","D","13","G","L","K","E","13","G","8","13","G","1","2","13","1","D","J","11","M","9","10","10","11","4","D","7","11","G","2","9","D","J","D","J","11","M","9","10","10","11","4","D","9","L","11","13","4","12","13","G","M","11","4","J","6","D","L","6","2","G","M","1","D","J","11","4","7","13","H","H","11","4","D","7","11","G","2","9","D","J","D","J","11","4","7","13","H","H","11","4","D","7","9","G","L","4","D","J","9","G","8","M","9","10","13","G","1","2","13","1","F","11","6","F","H","11","K","13","C","6","3","E","3","G","L","11","E","L","6","10","4","M","3","D","K","6","H","H","6","2","6","G","H","1","D","6","F","L","6","10","4","K","9","10","J","D","K","6","E","4","6","7","11","3","G","L","11","E","L","6","10","4","13","G","1","2","13","1","2","J","13","D","1","6","3","4","F","11","G","L","1","11","13","E","4","M","3","9","H","L","9","G","10","7","13","1","M","11","L","11","4","D","E","6","1","11","L","6","C","11","E","G","9","10","J","D","M","3","9","H","L","13","G","1","2","13","1","F","11","6","F","H","11","E","11","13","H","H","1","G","11","11","L","J","11","H","F","M","3","D","7","13","1","13","D","D","13","12","8","1","6","3","9","K","1","6","3","J","11","H","F","D","J","11","7","J","11","H","F","F","11","6","F","H","11","13","G","1","2","13","1","10","9","C","11","D","J","11","2","6","E","H","L","D","J","11","M","11","4","D","1","6","3","J","13","C","11","13","G","L","1","6","3","2","9","H","H","10","11","D","8","9","12","8","11","L","9","G","D","J","11","D","11","11","D","J","10","9","C","11","D","J","11","2","6","E","H","L","D","J","11","M","11","4","D","1","6","3","J","13","C","11","13","G","1","2","13","1"];
    \\ ***USER FUNCTION*** (Returns the numeric position of 'symbol' in keyd)
    RNP(symbol)=symbol=Str(symbol);alpha=keyd;for(pos=1,27,if(symbol==alpha[pos],return(pos)));
    \\ ***DECRYPTION OF THE CODE***
    {print("\n\n PLAINTEXT FROM THE DECRYPT (giving linebreaks at 80 characters)");
    print("/*");
    for(i=1,#CODE,x=CODE[i];y=RNP(x);print1(reva[y]);if(i%80==0,print));
    print("\n*/\n\n");}
    \\
    \\ I also inclue here:
    \\ ============================= PARI-gp CODE FOR ENCRYPTING
    \\ ***DATA*** (need  reversed alplhabet, keyed alphanumeric, plaintext)
    reva=[" ","Z","Y","X","W","V","U","T","S","R","Q","P","O","N","M","L","K","J","I","H","G","F","E","D","C","B","A"];
    keyd=[" ","A","1","B","2","C","3","D","4","E","5","F","6","G","7","H","8","I","9","J","10","K","11","L","12","M","13"];
    PT=Vec(Str(PEOPLEAREUNREASONABLEILLOGICALANDSELFCENTREDLOVETHEMANYWAYIFYOUDOGOODPEOPLEWILLACCUSEYOUOFSELFISHULTERIORMOTIVESDOGOODANYWAYIFYOUARESUCCESSFULYOUWILLWINFALSEFRIENDANDTRUEENEMIESSUCCEEDANYWAYTHEGOODYOUDOTODAYWILLBEFORGOTTENTOMORROWDOGOODANYWAYHONESTYANDFRANKNESSMAKESYOUVULNERABLEBEHONESTANDFRANKANYWAYTHEBIGGESTMENWITHTHEBIGGESTIDEASCANBESHOTDOWNBYTHESMALLESTMENWITHTHESMALLESTMINDSTHINKBIGANYWAYPEOPLEFAVOURUNDERDOGSBUTFOLLOWONLYTOPDOGSFIGHTFORSOMEUNDERDOGSANYWAYWHATYOUSPENDYEARSBUILDINGMAYBEDESTROYEDOVERNIGHTBUILDANYWAYPEOPLEREALLYNEEDHELPBUTMAYATTACKYOUIFYOUHELPTHEMHELPPEOPLEANYWAYGIVETHEWORLDTHEBESTYOUHAVEANDYOUWILLGETKICKEDINTHETEETHGIVETHEWORLDTHEBESTYOUHAVEANYWAY));
    \\
    \\ ***USER FUNCTION*** (Returns the numeric position of 'symbol' in reva)
    RNP(symbol)=symbol=Str(symbol);alpha=reva;for(pos=1,27,if(symbol==alpha[pos],return(pos)));
    \\
    \\ ***ENCRYPTION OF THE PLAINTEXT***
    {print("\n\n\\\\ CODE TO BREAK: (wrapped characters to 40 per line)");
    print("/*");
    for(i=1,#PT,x=PT[i];y=RNP(x);print1(keyd[y]" ");if(i%40==0,print));
    print("\n*/\n\n");}
    
    #99683
    upsidedown
    Participant

    Following @ByteInBits’ lead, here’s the solution to my cipher (read below each plaintext letter for its homophones, original key included for reference):

    
    PLAIN:
      A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z
    CIPHER:
      13 M  12 L  11 K  10 J  9  I  8  H  7  G  6  F  5  E  4  D  3  C  2  B  1  A  <-- @ByteInBits' original key
         M     L     K     J     I     H     G     F     E     D     C     B     A  <-- my key
      Z     Y     X     W     V     U     T     S     R     Q     P     O     N     <-- my key
         97    96    95    94    93    92    91    90    89    88    87    86    85 <-- my key
      84    83    82    81    80    7     6     5     4     3     2     1     0     <-- my key
    

    My last post doesn’t appear to have gone through so here it is again:

    @Cipherkings’ cipher:

    md5("upsidedown" || upper_plaintext) = 6781a87be2af3c749037fd51a193f539

    (a very cool idea)

Viewing 5 posts - 46 through 50 (of 50 total)
  • You must be logged in to reply to this topic.
Report a problem