那么,让我们假设古典密码真的会在此现身吧。</P>
那么对于对方到底会是使用的什么古典密码这件事已经不再重要了。</P>
毕竟古典密码的本质,就可以用一句话概括:</P>
单表移位或是多表替换。</P>
什么意思?</P>
比如凯撒密码,多么经典的单表移位密码啊?</P>
以26字母为表,规定明文加密就是向前移位或是向后移位共同的位数得到密文。</P>
您瞅瞅儿,密钥空间才26位,基本上扔入计算机,几毫秒就能得出正确的答案。</P>
密文解密同理。</P>
单表移位的典型。</P>
再比如维吉尼亚密码,凯撒密码的升级版。</P>
曾经被誉为古典密码中不可被攻破的存在。</P>
它就更类似于多表替换。</P>
讲道理,到这一步。</P>
要是没有计算机电脑的存在,只是依靠人脑的话,维吉尼亚密码的安全程度就已经相当高了......</P>
前提是要防的人不能更深一层的知道你们密钥空间的更多信息。</P>
维吉尼亚密码,大致的加密流程是什么呢?</P>
很简单。</P>
比如一位5位的明文,按照古典密码学的常识,它会被加密成5位的密文。</P>
维吉尼亚自然不可能例外。</P>
“多表”就是这类加密算法的关键。</P>
比如其中最脑残的加密方式,都用上维吉尼亚了还改不过来的密钥:</P>
AbcdE。</P>
那么实际操作下来就是:</P>
密钥第一位移动一位;第二位移动两位;第三位移动三位......直到第五位移动五位;</P>
再一次陷入循环,第六位向后移动一位。</P>
以此类推下去,直到明文被加密完毕。</P>
当然,密钥的位数自然是由加密人自己决定。</P>
更加具体的加密方式如下:</P>
首先列出26*26的26字母图标,需注意要满足每一排每一列均有26个不同的字母,如下图:</P>
维吉尼亚图表</P>
然后选定唯一的单词作为密钥,如love。</P>
确定好明文,将明文划分成为数个等段区域。</P>
每个等段区域原则上需与密钥的位数等同,</P>
但若因出现余数,导致最后一组有所残缺也并无影响。</P>
随后在图表的第一排找出明文,在图表的第一列找到与之对应的密钥。</P>
(eg:明文ertq,密钥love。则e对应l,以此类推。)</P>
横排与竖排的相交点便是密文。</P>
毫无疑问,综合它的难度与知名度,若是对方想使用古典密码学考别人,</P>
那么综合这里的别人有可能会不知道用的什么密码与对方的智商综合考虑,</P>
凯撒密码,栅栏密码,维吉尼亚密码无疑会迅速变成三个等级的代表。</P>
三号自然不可能那么乐观的觉得自己的等级会被评定的很低。</P>
既然如此,试一试维吉尼亚密码无疑是一个相当不错的选择。</P>
那么,密钥呢?</P>
眼前的东西想要被电脑破解直接破解明显不是那么复杂的事情,</P>
但是既然对方决定拿出维吉尼亚密码来作为考题,应该还是会留下密钥的吧?</P>