Skip to main content

Stuff to do while you wait (with a message from Harry added)

The Empty Vault Forums Bureau of Security and Signals Intelligence Forum Stuff to do while you wait (with a message from Harry added)

  • This topic has 58 replies, 12 voices, and was last updated 2 months ago by The-Letter-Wriggler.
Viewing 15 posts - 16 through 30 (of 59 total)
  • Author
    Posts
  • #84946
    madness
    Participant

    [As usual, Madness is providing the more advanced cipher crackers with some fun here, so don’t be too put off if you don’t know (yet) what he is taking about! Once you have been here long enough you will be tackling these challenges with ease. Harry

    ps, the MD5 lines are what are known as hashes of the original plaintext and the key that madness has used. If you can break the ciphers you can use an online tool to make an MD5 hash of your solution and of your keyword and compare them with madness’s md5s to see if you were right.]

    The Mirror Vigenere Cipher

    This challenge is so easy, I was debating with myself whether to
    even post it. But what the heck.

    You know how the Vigenere cipher can be defined by how it acts on
    each plaintext character? If we think of the letters A…Z as numbers
    0…25, then for a key with period m the ith ciphertext character is

    c[i] = (+p[i] + k[i mod m]) mod 26

    For the Beaufort it is

    c[i] = (-p[i] + k[i mod m]) mod 26

    and for the variant Beaufort

    c[i] = (+p[i] – k[i mod m]) mod 26

    So we have:

    sign of p | sign of k | cipher
    + | + | Vigenere
    + | – | variant Beaufort
    – | + | Beaufort

    Try to imagine that the above table was formatted nicely.
    Obviously, one combination is missing, namely – -.
    Introducing the Mirror Vigenere Cipher:

    c[i] = (-p[i] – k[i mod m]) mod 26

    It is so named for reasons that I think are obvious.

    Here are two ciphertexts, one long and easy, and one short and less easy.
    Your task is to break them and recover the keys. Try to have fun.

    WIBCBYITYLJXVYWUQSKHWODULWKHTIDUJLNSSKCLCOMZNSLCLIDKVLKPBTTKOWVZPDMWSMOADQMKOEPZPETF
    YFEUQPTTCEDGFFJWUYITHWKSCSDGSIDEZDPJDLXSODPNQEOQODDGFEXYCWEZPFUTGAOADFJWUIJCLDQGNPOA
    DERWNPSZQPTTKWYFHWKSCSWCYISCNAPJWORGNCHZWWVDGOFNYLWQNDPJIOEJCPOAGDQGBOFJULXICIPFGIFW
    KOEGBUJQVTEJFDQKNVOUBAXXNEIBPUQRSMJZNAQGNPSWQPTMLSWIBFTCTDPJNOKRCFYZPJTPCFUNWDTZVYIT
    ZJJOMJLJREJQPROWFELWWSENWTEDCJEBVMTISKSVPHPXNPWUSIJYNIIMPDEDGDKNLVTWTLYYSSEGTUSEPEER
    SKWDFOEZSIMNROSRZSYGJTXFYFSRFLMRZSJUCSWWSMENSSFWUSDGBJRZYMSZPFWWSMEZWLZRZSAZSTFESDPJ
    NFJXAAWPBMKWKDPNQVTIGCEJBBTDCLTTUIKGSRITSVJWWEDZQPTEVWEVJJURZSJUCSZDSLTTUIKGYJDGFIED
    CFFZVK

    MD5 of plaintext: abf514ead6ee8b881a1973b47b4aa1f3
    MD5 of keyword: f2af9578745b09c5b22a3575e7a2f5fc

    SCSLIHIOHKMDOLDAEKWSEPAFPJBYSPHIOSLAXAYJXISVNGDDUTPHMRDPRPKANHFFIHIONIMFKLQUESGEJBEM

    MD5 of plaintext: 05eebdf70355a8019fd7c7c64ad31ab9
    MD5 of keyword: b6b818304a439f91fc90b3fe8dd35be8

    #84494
    person_314
    Participant

    [This has been in the inbox for a while, but I figure that those who are still taking part might enjoy it. Harry]

    For those of you (like myself) stuck with problems 2 through 5 and for those who are newer to all of this here is an easier cipher inspired by current events.

    Royal Cipher:

    IRIIIIIIIICCRCCIRIIICCCIICCIIICIIICIICCRIICCIIIICIIIIRRCCIIIRCIIICIIICCCIIICCIIIIIIIIIICRICIIIIRCIIIIIICCIIICCIRIIIIIIIICRCRRIIICCIIIIRIIIIIIIIRRIIICCICCRCCCCIIIIIIRIIIIIIIICRCRIIIIIRRRRIIIIRCIIIIIIIIIIICIIIIIIIICRIIIIIIICCIICRCIIIIIIICIIIIIIIICIIRIIIIRCIRIIIIIICCCICRCIIIIIICCIIIIIIRRIRIIIIIIIICRIIIIRCCCCCRIIRCIIICIIICIICCRRCRCIIIIIIIRCCIIICIIIIIRIIIIRCIIIIIIIIRIIIICCIIIRCIIICCCRIIIIIIIICIIIICCCCRIICCCCCRCICCIIIIIIIIIIIRIRRIIICIIIRICIIIIIRIIIIIIIIRRIIIICIIIIIRIIIIRCCIIICIICCRIIIRIIIIRCCIIICIICCRIRCCIRCCIICCIIIIIRCCIIICIIIIIIIICCIIICCIRIIIICCIIICCIIICIIICIRIIIIIIIICRIIIIRCCCIIIIICRIIIIIIIRIIIIIIIICRIIRRCRIIIIRCIIIICIIICRCIICIIICIIRCCRIIIIIIIIIRIIIIIIIRCCCIIIIIIIIIRRRIIICIIIIICIIIIIRIIIIIICCCRIRCIIIIIIICIIIRRIIICRCIIIIIIIIRIIIIIIIIIIIIRIIIICCIIICCCRIIIIIIIIIIRRIIIICIIIIICIIRIIIIIRIIIIICRCRIIIICCRIIIRIIICCCRRCCIIIIIIIIIRIIIIRCCIIICIICCRIICCIRIIIICCIIIIICCCRCCCIIIIIIRCCCIIIIIIRIIIIIIIICIRCIIIIIIIIIIIRIIIIIIIRCRIIIIIICRIIIIIIIRCRCRIIIIIIIIRIIIIIIIICRICCRCICCIIIIIIIIIIIRIIRIIIIIIIICIIIRIIRRCIIICIIIIICICRIIRCCIIICIIIIICIIRIIIIIRIIIIICIICIIIIRCIIIIIICCIIICCIIIICCCCIIIIIIIIIRCIIIIIICCRIIICCCCIIRIIIIICICCIIIIIIRCIIRCCICCCIIRCIIIIIIICIIIRICIIICRCIICIIICIIIICIIRIIRIIIICCIIIIIIRCCCIIIIIIRCCCIIICIIICIRIIIIIIIICRIIIIIICCIIICCRRIIICIIIRIIIIRIIIIIRIIIRIIIIIIIICIRCIIICCCCCIIRCCIIIIIIIRIICCCCICIIICIIRRCIIRCIIIICIIIIIIRIIIICIIICCCIIICCIIIIIIRCIRIIIIIIIICRIIIIIIIIICCRICRCIIIIIIICIIIIIIIICICRIIIIIIIIICCRICRCIIIIIICCIIIIIIRCIIIIIIICRICCRCIRCIIICCCCCIIRCCICCRIIIRIIIIRCIRIIIIIIIIIRIIIIIIIRCCIIICIICCRIICCIIICCIIIRCIRIIIICIIICIICCRIIIRICCIIIIICCCIIIRIIIIICRCRIIIIIRRCIIICIRIIIIRCIIIRRIIIICIICCRCICCIIIIIIRCIRIIIIIIIICRIIIIIIIRICCIIIIIIIIIRRRIIICIIIIIIIIIRIIIIIIIIIRIIIIIRIIRIICIIIICRIIICIIICIIIICIIRIIRCCCIIIIIIIIIRIIIIIIIICRICCRCICCIIIIIIRRIICCRRIIIIIIIIIIRCRICCRIIIRIIIIRCIIIIIIIIIIICCRCIIIIIIIIIIRIRIIICICIIIIIIIIIRIIIIRCIIIIIIICRIIICIIIRIIICCIRRCCCCRIIIICCRRCRCIIIIIIRCCCIIIIIIICRCIICCIIIICIIICCCIIIIIICCIIICCIIIIRIIIIRCIIIICIIIIICICRIIICIIIRRCIIIIIICCIICCCIIIIIIIRIIIIIIIRRRIIIIIIIIIIRIICIIIIIIIIIIICCIIIIRIIIIIIIIIRIIRIIRRCCIIIIIIIIIRIIIIRCIIIRCIIIIIIIIRIIIRCCIRRCICCRIIRCIIICCCCCIIRCCCIIIIIIICRIIIIIRIIIIIIIRRRCCCRIIIIIRIIIIIRIIIIIIIICIIICRCIIIIIICCIRRCCIRCIIIIRIIIRRCIIIIIIIIIIRIICIICIIIICIIICIIIIIIIIRIIIIIIIICRIIIIIIIIIIIIIICRCRIIIIIICRICCRCICCIIIIRIIICCCIRCCIIRIIIRIIIIRICCIIRCCIICIIIRCIIIRIIIIIICCCIIIIIIRRCRRIICCCIICCICCRCICCIIIIIIICIRCIIIIIIICRIIICCCCCIIIRRCIIICRCIIICIIIR

    #87376
    madness
    Participant

    Morse code is for 19th-century throwbacks, amirite? Us hip modern folx
    use prefix-free codes to transmit our messages. A prefix-free code is one
    in which no codeword can be confused for the beginning of another codeword.

    Here is an example. The code is a Huffman code for the 26 letters of English,
    and is more efficient than ASCII or Bacon’s 5-digit binary code.

    A 0001
    B 001111
    C 11001
    D 1101
    E 100
    F 000001
    G 000011
    H 0110
    I 0100
    J 0000000101
    K 00000000
    L 00110
    M 10111
    N 0101
    O 0010
    P 001110
    Q 00000001000
    R 1010
    S 0111
    T 111
    U 10110
    V 0000001
    W 11000
    X 000000011
    Y 000010
    Z 00000001001

    I encoded a short text with it. See if you can decode it.

    000101101011000000100000110111000101011100100101101100010001110001001110
    000110101110100110011011000110000110101110000100011101000010000001001000
    111011101001011100010011000111010101000000010100000000011110010010110110
    011101100001111010001111100100101011110111001001010011000001010110011110
    011010000010010101000110001001110111001101000111011111010001111000111001
    001010111001110101010001110111010000100101111011010000111010100010110011
    000111011100100000010000010100010111010100010100001100101010101100111010
    001010000110111101101100101100001110010010110110000111010100010110011001
    001101011100111100001010111100000101010111001000000101101011000000100000
    110111000101011100100101101010001010000110001010100010011000001100101010
    010011101101011111011000000001100001100010001110100110100111100001011010
    001000000101001101000101101011000000100000110111000101011100001100100001
    101000110100110000001011100010111110011101011111110110110110001011110001
    111101110100111000101011101001110101100011110011001000111011010011010100
    010111101101000011100001001110100101000011011110011101100010110100000100
    101010111011010011001001001010111111101010110110011110100001001010010000
    001101110100010101001011110110101111010100110110110010111010001010111001
    00001011001001011011000111

    MD5 of text: ca70ea7b65a1c30a19e63d394204c847

    Next, I made a new set of codewords. It is still prefix-free, but I won’t
    tell you the codewords. It is not necessarily an efficient code, either.
    I encoded another text. Let’s see if you can decode this:

    011001111111111010110100111101101011010001000111100011110100101011010001
    011010110110100111110100011111110100011110100111101111110001111010010101
    101001011111010010111001110100111110010100111111100110110100110101101011
    100111110100011111101011011110001101110111110111110100011000101101111010
    101011001101111111110111010011101110100111000101011110011111110011111100
    011110100101011010001101110001101010101101011101010101101011100110101101
    110001010111000010110101111111001110100101011111111110100010110100111011
    011111101111010010111011101001011101101011001111010011100010111101001111
    011100111111100111010001111111111010110100111101101011010001000011111111
    110101011110100011111110100111101011001111101000100111110011010110111100
    111110011111101011010011000001011011110101101001011100111111100110110100
    111001111111001110100111101011010001011010111110001011110100010011111001
    101111010011101110100111100011110100101011010001000111101001111010110101
    010110111000110011111110011101001011111010010111001110100111110010100111
    111100110110100110101101011011001111111111010110100111101101011010001000
    011110100111101010101101110001010110100110101100110111011101110100010111
    111110010101001110001100110111101001111011011011100011110100011110100100
    111111100111010011110101111100011110100101011010001000111101001111010110
    101010110111000110011111110011101001011111010010111001110100111110010

    MD5 of text: 18777338689eadab631d30ff6c755c5c

    #87392
    The-Letter-Wriggler
    Participant

    @madness
    For the first Huffman code
    MD5: eb4d5c99f0e612590b51d7aa61775083 (All uppercase, no spaces + TLW)

    #87393
    The-Letter-Wriggler
    Participant

    Same key as your first code.
    010011101000111100000101110000101000101001010110000011011011
    100101011100010000000010011101100100011111001001011011000011
    111011011100000001000101100100111100000101010010111011010010
    101110110010001010000111110010110110011001001011011000100111

    #87389
    f6exb
    Participant

    I have the first but I don’t know how to start the other.

    #87452
    f6exb
    Participant

    @madness
    Can we have a hint to decode the second message?

    #87453
    madness
    Participant

    Hints?
    It’s not Huffman, and is probably not efficient in any way.
    The longest codeword is 9 bits.
    If you make a binary tree, there is no guarantee that every leaf is a codeword or that there are only 26 leaves.
    The first word of the plaintext is “A”.
    The shortest codeword is 3 bits.

    #87545
    The-Letter-Wriggler
    Participant

    @person_314
    I think we are going to need a hint for your ‘easy’ cipher.

    #87551
    f6exb
    Participant

    Sorry, I spoke about Madman’cipher.

    #87552
    person_314
    Participant

    Sure. The cipher was created just after the royal cypher was released and uses the elements of the cypher “C” “R” and “III”. Try to find a way to manipulate the text to only contain these elements. And sorry for calling it easy, it is similar to this week’s challenge in difficulty.

    #87553
    person_314
    Participant

    Sorry to anyone who has attempted my challenge. I’ve just had a look at my original message and I have now realised why you can’t solve it. My hint above still applies but there was an error in my code and thus the encryption wasn’t working correctly. You should still have been able to get to a stage from which it seemed solvable but the last part was impossible to solve. Here is corrected cipher text (which this time hopefully will be easy (especially if you have already tried the original)): IIIIIRIIIICCIIIIIIIIRIIIICRIIIIICRRCRRCIIIIIIIIIRIIIIICIICIIRIIIICIIIRRIIIRIRRRCCRCIIIIIIIRCCCICRRCCIIIIIIIIRICIIICIIICCRRCCCIIIRCCIIIRICIIICRRIIIICRRRIIIICCIIIIIICCCRCCCIIRCCRIIIIIRIIIIICIIIIIRIICIIICCCIIIIRCRIIRCICRCRIIIICRCIIICRIIIRCCIIIIRRCRRCRIIIICRCIIIIIIIRIIIIIRICCIIIRRRCRIIICCIRIIIRCRIIIIICRIRIIIIIRIIIRRCIIICIIIIRRIIIIRIIIIRCCIIICCIIIRRIIIRIIICRCCIIIIRCRCCRRIICRCRRIICRRRIIIIICIIICCCIIICIIIIIIIIIRRCRIIRIIIIICIRIIICIIIIRIIIIIIIIRCICRRCIIIIIIRIIICRRIIICRRCIIIIICIIIRRRIIICRIIIRCRCRRCIIIIICRCIIIRIIIICCIIIRCIICRCIRRCIIIRIICIIIICRCRCCRIIICCIIIIIIIRCCCIIIIIRRIRIIIIIRIIIIICICRRCRIIIIIIIIRIICRRCIIRIIIIICIRCCCCCCIIIICIIIIIIIIIRRCRIIRIICIIIIRRCRCCRIIIRCIIIICIIIIIIIIRCIIIICIIIIICIIIRCCICRCIIIIIIIRCCCIIIIICRCRIIIIICRRIIICRCIIICRCCCIIIIIRIIIICRIIIIICRRIIIIIIIRIIIIIRIRIIICICRRCIIIIICIIIRCCIIIIIICRIRRCRICCIIIRRIIRRCIICIIICRCRCCIIICRCIIIRCCIIIIIICCCRCCCICRCCIIRIIIIIRICIIICICRRCIIIIICIIIRCCIIICIIICCIIICCIIIRIIIIIRRCRICCIIIRCRRCRCIIICIIIRRIIICRCIIICRRCCIIIIIIIIRIIIIICIRCIIRCCIIICRRCRCCIIRCRRCIRIIICRCIIIIRCRRRRRICRIIIIIIRRCIIIRIIIICRCCIIIIICRIRIIIIICIIICCCICRCIIRCIIIIRIIIRRCIIIIIRCIRRCCIIRIICIIIIRRCRCCCIIIICIIIIIIIIIIICRIIICRRIIICIIIIICIIIIRIIIRCRRCRIIICRCIIIRIIIRCRRCRCIIIICIIIIIIIRCRICRCICCCIIIIRRRICRCIRRRIIIRIIIIIIIICRCCCIIIICIIRIICRCRIIIICRCCIIIICCRCIIIIIRIIIRCRCRCRRIIICIIICCRRCCIIIIIIIIRIRRCRRCRRRCIIIICIIIIIRIIIRIIICRCIIIRCCIIIRRCCCIIIICIIRIIIIRCIIIRCIIICRIRRCCIIIIICIIIIIIIIIIIIIRIIRCRCIIRIICCRCIIIIRCCRIIIIIIRRCIIIRIIIIRIIIIICRRCRIIIIIIIIRIICRRCIIRIIIIICIRCCCCCCIIIICIIIIIIIIICRCRIIRIIIIICIRIIICIIIIIIIIRIIIIIIIICCIRIIIICCIIIRCIIICCIIIIRIIIIIRIIIIICICRRCCIIIIIIIIRIIIIICICRIIIIIIICCIIICIIICICCCCIIIIIIRIIICRRIIIIIIIIIRCICRCRIRRIIIIRIIICRCIIIRIIIIRCIIIICIIIICCIRCRRICIIIRIIIIIIICRICIIIIIIIIIIIIRICIIIRIIIRRIIICCIIIRRCRRCRIIRRRCRCCICIIIRIIICRIIIIICIIIICIIIRIIIRRIICCCRRCRIIIIICIIRIICRCCIIRIIIIICIIIIICIIRIIIIIRIIIIIIIIRCIIIICIIIIIIIIIIIIIICCCICRCIIIIIIIRIIIIIRIIIIICIRIIIRIIICCIIIRCRIIICIIIIRICRIIIIIIIRIIIRCRRCRCIIIRIIIRRICRCRICCIIIIIIIIIICRICIIIICRIIIICIIIIIRIIIIIIRRCCIIIIICIIRIIIIICICRIIIIIICCIIIRRIRIIIIIRIIIIIIIIRCIIIICIICIIIIIRIIIIICIICRCCICCIIICCCRCCRRCRIIIIIIIIRIIIIICIIIIIIRRCRIICIIRIIIIIIIIIIIRRIICRCIIIIIICRIIICIIIRRCRCRCCIIIICRCCIIIIIRCRRCIIICRIRIIIRCCIIICRRCRCCIIRCRRCIIIIIRRCRIRIIIRRRIII

    #87549
    madness
    Participant

    @TLW,
    RCIII
    Rex Carolinus Tertius

    #87548
    f6exb
    Participant

    What I have found :
    There is 2 same long strings (117 lettres): the 117 last letters of the cipher text and another before which start at 885.
    So this give me the end of a code word (between 1002 an 1003) and the begining of another.
    There are many strings of 9 and 10 letters “1”, but they are a combination of the end of a letter, a letter with many “1” and the begining of the next letters.
    That’s all folks.

    #87554
    person_314
    Participant

    The problem is that I don’t think we can even be sure that the repetition guarantees that they are parsed to the same characters. It could just be the case that the beginning of one of the blocks extends one character before and then you end up parsing the repeated parts completely differently. This is probably not the case for this repetition and the repetition most likely corresponds to repetition in the plain text, but we can’t be sure. In the general case repetitions not at the end of the text are annoying because we don’t know where the code word ends (the code words for either repetition could extend for more characters past the repeated section). The whole problem seems very NPish and its not like we can find decent approximate solutions by starting with a random code and then hill climbing to a better answer because a random modification won’t necessarily be prefix-free.

    I can also see no way forward, and if madness (or someone who has had more luck/skill with this than me) would like to give further advice that would be most appreciated.

Viewing 15 posts - 16 through 30 (of 59 total)
  • You must be logged in to reply to this topic.
Report a problem