1、原理国内最安全的股票配资平台
维吉尼亚密码(又译维热纳尔密码)是使用一系列凯撒密码组成密码字母表的加密算法,属于多表密码的一种简单形式。
1508年时,约翰尼斯·特里特米乌斯《隐写术》中发明的表格法成为了维吉尼亚密码的关键部分。这一加密技术也称为特里特米乌斯密码。这一方法真正出现是在吉奥万·巴蒂斯塔·贝拉索于1553年所著的书《吉奥万·巴蒂斯塔·贝拉索先生的算术》中。他以特里特米乌斯的表格法为基础,同时引入了密钥的概念。布莱斯·德·维吉尼亚于1586年亨利三世时期发明了更为简单却又更有效的自动密钥密码(autokey cipher)。之后,19世纪时贝拉索的方法被误认为是由维吉尼亚首先发明的,所以被称为维吉尼亚密码。
在凯撒密码中,每一个字母会有一定的偏移量变成另外一个字母,而维吉尼亚密码就是有多个偏移量不同的凯撒密码组成。维吉尼亚密码加密需要一个表格。表格是一个26*26的矩阵,每一行由26个英文字母组成,每一行由前一行向左偏移一位得到。加密时,明文字母作为列,对应的密钥字母作为行,所确定的坐标上的字母即为对应的密文字母,以此类推,循环使用密钥,得到密文。
用数字0-25代替字母A-Z,维吉尼亚密码加密算法为:
展开剩余50%解密算法为:
2.编程实现
可以打表密码表,也可以取模计算,这也使用取模计算来加解密。
具体代码如下:
默认输入为小写英文字母可以带空格
主函数wjnyCipher.cpp
发布于:四川省汇融优配提示:文章来自网络,不代表本站观点。