在 Vigenere 密码方法中使用多个密钥进行加密是不是安全?
Posted
技术标签:
【中文标题】在 Vigenere 密码方法中使用多个密钥进行加密是不是安全?【英文标题】:Is it safe to use several keys in Vigenere cipher method to encrypt?在 Vigenere 密码方法中使用多个密钥进行加密是否安全? 【发布时间】:2018-10-15 11:14:00 【问题描述】:我只是好奇使用下面显示的这种加密方法是否安全。 假设我们有一个要在加密过程中使用的密钥列表,例如 ['apple','coco','piano']。对于列表中的每个密钥,我们使用此密钥和 Vigenere 密码方法来加密文本。所以在这个例子中,我们将首先使用'apple'对目标文本进行加密,然后使用'coco'再次加密,最后使用'piano'进行加密。 那么,使用这种方法安全吗?谢谢。
【问题讨论】:
【参考方案1】:如果您使用不同的密钥应用 Vigenere 密码严重时间,则可以构造一个(通用)密钥,它会给出相同的结果。
使用 Vigenere 加密时,您会重复密钥以匹配您要加密的数据。如果您想使用密钥 apple
加密文本 the secret message is we attack a dawn
,您可以这样设置:
Text: the secret message is we attack a dawn
Key: appleappleappleappleappleappleappleapp
--------------------------------------
Encrypted: uxu xfshqy cuexbwu nt mq bjjmhl q ibmd
如果您随后使用coco
再次对其进行加密,您将拥有:
Text: uxu xfshqy cuexbwu nt mq bjjmhl q ibmd
Key: cococococococococococococococococococo
--------------------------------------
Encrypted: xmx auvwtn rxtaqzj cw pf qmypwo t lqps
还要注意coco
实际上是一个“弱” 键,它在co
处给出相同的结果!无论如何..在这种情况下apple
和coco
的组合键是desahpseot
所以你有:
Text: the secret message is we attack a dawn
Key: desahpseotdesahpseotdesahpseotdesahpse
--------------------------------------
Encrypted: xmx auvwtn rxtaqzj cw pf qmypwo t lqps
注意desahpseot
键是如何组合成这样的:
key 1: appleapple
key 2: cococococo
----------
Combined key: desahpseot
【讨论】:
【参考方案2】:哪个“安全”?它既安全又不危险,因为它不会破坏任何东西。它不像安全中那样特别安全,因为您可以找到由这三个键组合而成的键(尽管它可能不是英文单词)。当您重复它们时,有些加密方案会变得更加安全; Vigenere 不是其中之一。
【讨论】:
以上是关于在 Vigenere 密码方法中使用多个密钥进行加密是不是安全?的主要内容,如果未能解决你的问题,请参考以下文章