2 Answers
You know that the two ciphertext you are given are formed as $$C_1 = S_1 \oplus R\\C_2 = S_2 \oplus R$$ with the same $R$ in both cases. So you can get rid of $R$ by calculating $$C^\ast = C_1 \oplus C_2 = S_1 \oplus S_2$$ Then you know that there are only two words, $111$ and $0000$. Thus, in $C^\ast$ $1$ can only occur if one sentence contains $A$ while the other contains $B$. From there, since the two words have different lengths, you should be able to determine candidate sentences.
I think I've gotten the solution
After reading the following posts:
and the answer of @Emme above/below, I came out with this solution:
Let M1 and M2 be the original messages.
S1 ⊕ S2 = M1 ⊕ M2 since R is the same for S1 and S2
We calculate S1 ⊕ S2
S1 ⊕ S2 = 0 0 0 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 1 1 1
Since the language has just two words, A
and B
, I could guess the value of M1
by taking a random combination of A
and B
.
let M1 = AABBBA
. Converting M1
gives M1 = 111 111 0000 0000 0000 111
let, S1 ⊕ S2 = S3
. Then, M1 ⊕ S3 = M2
We calculate M1 ⊕ S3
M1 ⊕ S3 = 111 0000 111 111 0000 0000
Therefore, M2 = M1 ⊕ S3 = 111 0000 111 111 0000 0000
Decoding M2
gives M2 = ABAABB
Therefore, M1 = AABBBA
and M2 = ABAABB
Proof
Remeber we said S1 ⊕ S2 = M1 ⊕ M2 since R is the same for S1 and S2
If we calculate M1 ⊕ M2
, we will have:
111 111 0000 0000 0000 111 ⊕ 111 0000 111 111 0000 0000 = 0 0 0 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 1 1 1
Which is the same as S1 ⊕ S2
as seen above