Если предположить, что K_1 и K_2 являются допустимыми ключами, должно существовать следующее:
gcd(K_1, φ(φ(N))=1
и gcd(K_2, φ(N))=1
, где φ
- это функция Эйлера.
Учитывая, чтомы знаем, что K_1 и K_2 должны быть нечетными .С информацией о том, что эти ключи отличаются только на 1 бит, мы знаем, что gcd(K_1, K_2)=1
.Это означает, что существует r s
, например rK_1 + sK_2 = 1
(определение gcd
).
Мы знаем, что C_1 = E(M,K_1)
и C_2 = E(M,K_2)
.
Давайте умножим C_1^r
на C_2^s
и посмотрим, что мы получим:
C_1^r * C_2^s = (M^K_1)^r * (M^K_2)^s = M^(rK_1 + sK_2) = M^1 = M
Мы нашли оригинальное сообщение M.