首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vigenere密码碰撞

Vigenere密码碰撞
EN

Cryptography用户
提问于 2022-08-10 04:02:30
回答 2查看 121关注 0票数 1

我一直在阅读奥马松的“严肃密码学”一书,开始学习密码学。有一部分作者建议使用置换的加密应该如何保证这些属性的安全。

  1. 它应该是一个置换,它是字母A到Z的重排,这样每个字母都有一个唯一的逆序。例如,将字母A、B、C和D分别转换为C、A、D和B的替换是一个置换,因为每个字母映射到另一个字母上。但是一个把A,B,C,D转换成D,A,A,C的替换不是置换,因为B和C都映射成A,有置换,每个字母正好有一个逆。
  2. 排列应由键决定。
  3. 不同的键应该导致不同的排列。
  4. 排列应该是随机的。

对于第一个属性,我想知道Vigenere密码是否可以被认为是安全的(主要基于上述这些排列规则),因为某些密钥会导致冲突。

例如,Message = "ABBA“// Key = "BA”

=> Ciphertext = "BBCA",与"A“和"B”发生碰撞。

EN

回答 2

Cryptography用户

回答已采纳

发布于 2022-08-10 11:56:24

您所规定的规则适用于使用一个字母的替换密码,例如,当每个字母被同一个密钥加密时。

Vigenere密码使用多个字母(每个键的字母各一个),因此所述规则分别适用于每个字母。

在你的例子中,你使用长2的键,这意味着:1,3,5,7.字母使用相同的排列(A键)2,4,6,8加密.字母使用相同但不同的排列加密(键"B")

“键A置换”和“键B置换”之间的省略不算在内,因为您使用的是两个不同的键。

基本上,您可以理解使用Vigenere密码作为一个明文的n个替换密码,逐个字母地修改它们。

票数 1
EN

Cryptography用户

发布于 2022-08-10 11:00:55

您所说的碰撞实际上是一个不动点,加密映射不会“移动”或“更改”符号。

如果vigenere键是均匀分布的,有时会发生这种情况。这不是问题。事实上,没有不动点的密码是弱的,因为它看起来不够随机。

即使是像AES这样的现代分组密码,也被设计成像一个随机排列。因此,它们有时会产生一个定点。

具体来说,Enigma在第二次世界大战中受到攻击,因为插件的设计避免了一个定点,因此在Enigma下没有任何字母可以映射到自己。请参阅这个问题关于更改Enigma设计以避免此弱点的可能性。

一般情况下,由于密码运算方式等因素的影响,现代密码能否在实践中被攻击是一个复杂得多的问题。不动点自由排列是否存在缺陷?问题得到了很好的讨论,并给出了一些非常详细的答案。

票数 1
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/101417

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档