维吉尼亚 Vigenère 密码

工作原理

本质上,Vigenère 密码是几个凯撒密码,其移位值取决于密钥。它可以通过使用Vigenère 表格简单地手动计算。在代码中,可以使用模算术来实现。

编码
编码时,我们首先将每个字母转换为0到25之间的数字,其中A是0,Z是25。如果密钥比消息短,就将其重复直到它们长度相同,例如,如果消息是cryptography,密钥是secretkey:

msg = cryptography
key = secretkeysec
输出O的第i个字符可以使用以下公式从消息M和密钥K计算得出:

O[i] = (M[i] + K[i]) mod 26
解码
将输出O解码为消息M,已知密钥K,同样简单:

M[i] = (O[i] - K[i]) mod 26

本文标题:《维吉尼亚 Vigenère 密码》作者:Scar
原文链接:https://cxk.me/post/100.html
特别注明外均为原创,转载请注明。

分享到微信

扫描二维码

可在微信查看或分享至朋友圈。

相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。