2013 Xmas Cipher Challenge Part 4 Solution

2018/08/03 --Working backwards

cipher-4.PNG
[cipher-4.PNG]

Which gives us this SVG:

[challenge4.svg]

It does not take much research to deduce that what we are looking at is baudot code, a 5-bit precursor to ASCII used in telegraphs and ticker tape machines. SVG is, of course, XML and luckily and I'm sure intentionally the binary is represented in the image inside title tags. A bit of xpath gets us some data we can work with:

00000 00000 00000 00000 01010 10101 01010 10101 01010 10101 01010 10101 10011 11001 00010 11000 11010 00100 00110 10110 01000 11001 00011 01101 01101 10110 00011 01101 11000 11110 00001 11101 11110 01100 11111 00101 11100 11011 11001 10110 11100 11011 01010 00110 01000 00001 01010 01100 11100 11101 00101 00111 11111 00010 01111 11110 11011 10110 10001 00101 10001 01100 10011 00001 11100 11100 01001 11011 01101 00010 11010 01100 11101 10000 11100 10100 01100 01011 10100 11011 10001 11001 11001 11101 11110 11110 00100 10110 01110 10101 00100 11110 10100 11011 00101 10001 10110 10000 10101 00110 01000 01010 11011 10100 11011 10011 00101 11101 11010 11110 01000 00010 11100 10111 11000 00110 11111 00100 11110 01100 00010 01011 00101 01000 00110 11001 01100 11110 11110 00001 11101 11110 01100 11111 00101 10101 01110 11001 11110 10110 11001 11011 11111 00101 01000 00010 10010 11110 01000 10101 10011 11010 01101 00100 00111 01000 11110 00000 01101 10011 11010 00111 00000 11110 10111 11111 01110 10111 00001 11010 01000 11101 01010 11100 00011 00010 01101 10001 10001 11010 11001 00101 10000 11000 10000 00011 11111 10100 11001 11001 10010 11010 10010 11010 11101 11000 11010 11111 00100 10000 10100 11001 00100 01001 10000 10110 00011 10011 00001 00100 00101 11101 11010 01110 00001 00101 00011 00001 11101 00101 01010 10011 10110 01100 00000 00110 00100 11001 11110 00000 00110 00010 11010 00010 00001 00110 11110 10110 10110 00000 10110 01000 00111 00100 11110 10101 00010 10010 00101 00111 00110 00110 00001 11001 10100 10011 11100 00010 10110 10000 00010 01111 10000 00000 01010 11100 01100 01010 10100 00101 01111 11101 10001 00010 01010 10111 00110 11010 00010 00000 11110 11111 11111 11111 00010 00000 00101 11101 01010 10101 01010 10101 01010 10101 01010 10101 00000 00000 00000 00000 00000 

Which running through an online baudot decoder gives some gibberish:

RYRYRYRYBW
 AJ NF
 WOPPFOPAKTQKIHU2!74,
 54871#.
 VK!"#"8?577)0
 '8137␇8&␇"221(( !:6 (␇#"!36,
 4␇?#1'(

 7/–, KI
 GH
 NWIKKTQKIHYCWKFWH

 DK
 YBJP M
 KPBJMKXCXTJ
 QRUO
 PZZJWHEAEOSWWDJDJQAJ ESW LEFOBT HQJCTHOTQHRBFIN WKN
 J
 TNKFFF
 M KY
 DHMNNTWSBU
 FE
 VERUIRSHVQZ
 RXNJ
 K
 HQRYRYRYRY

There is not much to go on. There is a repeating pattern RYRYRY bookending the message, which is likely to be just that, message start/end markers and not part of the ciphertext. We are given a clue in the instructions that there is a missing key. Typically a XOR operation would be applied for this. [https://en.wikipedia.org/wiki/XOR_gate]

To encrypt a message you XOR the plaintext with the key. To decrypt a message you XOR the ciphertext with the key. A third property is that if you XOR the plaintext with the ciphertext you get the key. We don't know the plaintext! That's what we are trying to find! But perhaps we know /part/ of the plaintext!

Challenge 1 to 3 results:

1: Dear Santa, The first code you need is:...
2: DEARSANTATHESECRETCODEISE4XVADOTUCXR4FROMMRMORSE
3: DEAR SANTA I HOPE YOU LIKE THE CUTE PICTURE

There's a high chance that challenge 4 also begins "Dear Santa".

Let's convert "dear santa" to baudot code:

01001 00001 00011 01010 00100 00101 00011 01100 10000 00011 

Then take what we think is the beginning of our encrypted message:

10011 11001 00010 11000 11010 00100 00110 10110 01000 11001

XORing both of those gives us:

11010 11000 00001 10010 11110 00001 00101 11010 11000 11010

Let's convert that back to alphanumeric:

GOELVESGOG

This looks promising! "Go Elves Go". If this is indeed the key it is simply repeated for the length of the message:

GOELVESGOGOELVESGOGOELVESGOGOELVESGOGOELVESGO

XORing the whole message reveals the solution:

DEAR SANTA,

 I'VE BEEN GOOD THIS YEAR AND ALL I WANT FOR CHRISTMAS IS THE NEXT CHALLENGE. TO PROVE HOW GOOD I'VE THE CODE FOR THE NEXT ONE IS KSPPW DOT BGNAK.

 FROM

 MR VERNAM

 P.S. I'LL LEAVE OUT A MINCE PIE FOR YOU AND A CARROT FOR RUDOLPH AS USUAL.(()()£9␇

PrevNext
2013 Xmas Cipher Challenge Part 3 Solution2013 Xmas Cipher Challenge Part 5 Solution