0
votes


Currently im doing online challenges in cryptography. One challenge is to crack a "One Time Pad". I'd like to kindly ask you guys for a hint. Im stuck with this now for a while.

The cipher text looks like this:

4de61dd9dab5e0701f5e664ff522de12bd588051da4d3f62df
3c3303e696139af0280308f5720d5e45efaa03bc6d37d84294
06b25cded0e2fb74045f681bd4378a5bba10901fd6513b2cc0
343c0aa3c6138df02d1f46e63a090d07f3b602bc653bcd5ad1
00fa5890c4f0e062175d2348bd30c25dbb44c951c0503f6fd8
3d3114b28e1390b4611146e53a091c45f8bc01f56f2ac1459f
07be1dc2ccf8fc67131a3355f326c957ba438403cc03362adf
213b14b5ca5290b537155aa1680d0b54eff916bc7e3fcc06d1
15fc5990c1f4e574565b665cf22cce12ac5e8a04d24b7a3dca
3b3a09abc60191a533134da17c070c07eeb803fd207efc4294
54f552dccdb5fd64115d234fbd2ad912eb7d841fc142372adc
3c324684871599b92f0340ee68065c09

(Each line of the cipher has 50 chars btw)
I know that the pad is 50 chars long. So is has been used for about 11.7 times. I also have done a lot of researches online so I know

M = Message | P = Pad | C = Cipher

  • M1 = C1 XOR P1
  • C1 XOR C2 = M1 XOR M2

So I XORed the first line with the second line (I assume it's additionaly converted as HEX). The result is the following:

71d51e3f4ca67a80375d6eba872f805752f283edb77ae7204b

After this I converted it to ASCII and received this:

qÕ?L¦z7]nº/WRòí·zç K

So here I knew something is wrong,nevertheless I tried to decrypt the first line with my result and hoped I get a result.
But surprise, the result is

VæÙÚµàp^rOõ"Þ½XQÚM?bß

What have I done wrong? What would be a possible method to solve this challenge? Nothing on the internet really helped me.

Thanks in advance :)

1
See coursera.org: Cryptography, Week 2, "Limitations of the One-Time Pad. tldr; It is not that simple. - zaph
The second byte starts with a high bit set, this could mean something is not right. I don't think these are separate cipher texts. - Maarten Bodewes

1 Answers

1
votes

You're looking at hexadecimal characters. Two hex characters are a single byte. A single byte is one ASCII character. It seems to me that you have to take line 1 & 2 together (etc.). The values in the bytes seem to show this as well. In other words, the cipher has been used about 5.8 times.

4de61dd9dab5e0701f5e664ff522de12bd588051da4d3f62df3c3303e696139af0280308f5720d5e45efaa03bc6d37d84294
06b25cded0e2fb74045f681bd4378a5bba10901fd6513b2cc0343c0aa3c6138df02d1f46e63a090d07f3b602bc653bcd5ad1
00fa5890c4f0e062175d2348bd30c25dbb44c951c0503f6fd83d3114b28e1390b4611146e53a091c45f8bc01f56f2ac1459f
07be1dc2ccf8fc67131a3355f326c957ba438403cc03362adf213b14b5ca5290b537155aa1680d0b54eff916bc7e3fcc06d1
15fc5990c1f4e574565b665cf22cce12ac5e8a04d24b7a3dca3b3a09abc60191a533134da17c070c07eeb803fd207efc4294
54f552dccdb5fd64115d234fbd2ad912eb7d841fc142372adc3c324684871599b92f0340ee68065c09

Note that the result of XOR-ing the values will not result in ASCII; it will result in M1 XOR M2. Now if both are e.g. digits then '1' XOR '2' will translate into 31 XOR 32 (hex) or 00110001 XOR 00110010 (bin) which will result in 00000011 (bin), 03 (hex) or the non-printable control character End-of-Text in ASCII.