了解维涅雷密码


Vignere Cipher 包含了用于加密和解密的 Caesar Cipher 算法的变化。Vignere Cipher 的工作原理与 Caesar Cipher 算法类似,只有一个主要区别:Caesar Cipher 包括单字符移位算法,而 Vignere Cipher 包括具有多个字母移位的密钥。

数学方程

对于加密,数学方程如下 -

$$E_{k}\left ( M{_{i{}}} \right ) = \left ( M_{i}+K_{i} \right )\;\;\; 模组\;\; 26$$

对于解密,数学方程如下 -

$$D_{k}\left ( C{_{i{}}} \right ) = \left ( C_{i}-K_{i} \right )\;\;\; 模组\;\; 26$$

Vignere 密码使用多于一组的替换,因此它也称为多表密码。Vignere Cipher 将使用字母密钥而不是数字密钥表示:字母 A 将用于密钥 0,字母 B 将用于密钥 1,依此类推。加密过程之前和之后的字母数量如下所示 -

多表密码

基于 Vignere 密钥长度的可能密钥数量的可能组合如下,给出了 Vignere 密码算法的安全性结果 -

维涅尔密码

维涅尔画面

Vignere 密码使用的表格如下所示 -

维涅尔画面