Вопрос операции обратимости XOR - PullRequest
5 голосов
/ 24 февраля 2010

Я где-то слышал, что использование XOR необратимо (они говорили о шифровании), но я не понимаю, как это подразумевалось? AFAIK, даже с операцией ИЛИ, вы не можете выяснить, какой из двух битов был 1. Пожалуйста, кто-нибудь, кто знает, как это должно значить, объяснит мне это? Спасибо

Ответы [ 4 ]

8 голосов
/ 24 февраля 2010

если вы делаете

z = x XOR y

тогда

x = z XOR y

так что да, это обратимо

7 голосов
/ 24 февраля 2010

Я думаю, вы, вероятно, слегка их процитировали.

Они, вероятно, имели в виду, что использование одноразовой клавиатуры неразрывно, потому что если у вас нет копии одноразовой клавиатуры, в зашифрованном тексте нет абсолютно никакой информации, которую можно использовать для восстановления открытого текста. Вы не можете использовать статистический анализ или даже поиск методом грубой силы, потому что все входные данные могут дать выходные данные с равной вероятностью, и нет никакого способа узнать, какой вход является правильным.

Одноразовые пэды обычно реализуются с использованием XOR, но необратимость заключается в том, что это однократный пэд, а не из-за операции XOR.

4 голосов
/ 24 февраля 2010

Возможно, они означали, что XOR является обратимым, в отличие от И или ИЛИ. Для шифрования это интересно, прежде всего, в отношении шифров Vernam - тех, где ваш шифр создает поток ключей, который вы XOR с потоком данных. На принимающей стороне вы можете XOR зашифрованный поток с тем же потоком ключей и вернуть открытый текст.

Это также интересно с точки зрения криптоанализа. Например, если два потока были зашифрованы одним и тем же потоком ключей, XOR их друг с другом дает вам XOR двух потоков открытого текста со всеми удаленными эффектами потока ключей. На этом этапе вы можете использовать технику «скользящего окна»: XOR, что, по вашему мнению, может находиться в одном сообщении в разных точках этого потока, и, если оно есть, результатом будет понятный текст другого сообщения. 1005 *

4 голосов
/ 24 февраля 2010

Вы, вероятно, имеете в виду " XOR-шифрование без ключа без ключа"

Если ключ случайный и имеет длину сообщения (поэтому он никогда не повторяется),Шифр XOR более безопасен.Когда поток ключей генерируется генератором псевдослучайных чисел, результатом является потоковый шифр. С ключом, который является действительно случайным, результатом является одноразовый блокнот, который не сломан даже в теории.

...