我对密码学很陌生,有一件事困扰着我。我希望你能帮助我理解。
假设攻击者从一次Pad (OTP)加密的消息中获取明文和密文。我知道OTP使用反向XOR操作加密数据,但问题是“是否可以通过XORing消息(明文)和密文实际获得密钥?”
注意:加密只实现了一次。
发布于 2017-10-14 20:52:11
是的,就像你建议的:-
明文⊕密文=密钥
但我会问你为什么要这么做?如果你有明文,那么你的攻击就成功了。你知道消息怎么说的。获得钥匙是没有意义的。一个组织良好的OTP操作将只对您拥有的消息使用这些密钥位一次。他们甚至可能被摧毁,/deleted。他们永远不应该再需要,所以没有必要让他们在第一。发送者的下一条信息将利用新的关键材料。混乱的表情符号。
除非,您怀疑密钥是通过算法/pseudo随机数生成器生成的。有一些人认为他们已经发现了对受人尊敬的选择的改进。这个网站有几个问题,关于聪明技术的准确性,以避免使用真正的随机数生成器。如果你怀疑你的发件人是这些困惑的人之一,是的,为了攻击生成算法,获取关键材料是有价值的。OTP -重用密钥但添加IV和哈希函数生成一个时间垫是好的(?)OTP v2尝试的示例。
发布于 2017-10-14 18:24:44
“是否可以通过XORING消息(明文)和密文实际获得密钥?”
当然是这样,其实很容易。
另一方面,这些特定的密钥位被使用过一次;它们的唯一用途是保护特定的明文;如果攻击者(通过任何方法)知道这些密钥位是什么,他就会知道明文是什么。如果攻击者已经知道明文(通过任何方法),那么通过学习这些特定的OTP密钥位,他就没有什么可以获得的了。
https://crypto.stackexchange.com/questions/52250
复制相似问题