可以使用xor?
获取用于加密字符序列的密钥让我们说我有以下字符串:1456,所以:
Key:100
然后我执行以下操作:1 ^ 100(以二进制:00110001 ^ 01100100说话),并得到以下结果:“UPQR”,我怎么知道我在xor中使用了密钥100来加密“1456”获取结果是“UPQR”。
提前致谢!
答案 0 :(得分:3)
如果您知道原始序列和编码序列,那么对于每个组件,它必须是
original[i] ^ encoded[i] == key
如果你不知道原始内容,那么你必须尝试使用每个可能的密钥,看看结果是否有意义(对某些感觉的定义)。
答案 1 :(得分:1)
注意维基百科关于XOR cipher
的评论使用常量重复键本身,可以使用frequency analysis轻松破解简单的XOR密码。
虽然密钥是邮件的大小(并且是随机的,并且仅使用一次),但您有一个one-time pad。那段时间是牢不可破的。虽然对大多数人来说太麻烦了。
答案 2 :(得分:0)
如果您处于代码破解的位置,那么您一定要查看Sinkov's Elementary Cryptanlysis和Gaines's Cryptanalysis: A Study of Ciphers and Their Solution。这两本书都很好地深入了解Vigenère Cipher的密钥恢复,这与顺序应用XOR操作非常相似。