普莱菲尔密码
普及一下
原理可见: https://zh.wikipedia.org/wiki/%E6%B3%A2%E9%9B%B7%E8%B2%BB%E5%AF%86%E7%A2%BC
解法可见: https://www.bilibili.com/video/BV1zE411i7TU?from=search&seid=8244518143984275882
普莱费尔密码(英文:Playfair cipher 或 Playfair square)是一种使用一个关键词方格来加密字符对的加密法,
1854年由一位名叫查尔斯·惠斯通(Charles Wheatstone)的英国人发明。是一种对称式密码,是首种双字母取代的加密法。
用法:
1.选取一个英文字作密钥。除去重复出现的字母。将密钥的字母逐个逐个加入5×5的矩阵内,剩下的空间将未加入的英文字母依a-z的顺序加入。(将Q去除,或将I和J视作同一字。)
2.将要加密的讯息分成两个一组。若组内的字母相同,将X(或Q)插入两字母之间,重新分组(例如 HELLO 将分成 HE LX LO)。若剩下一个字,也加入X字。
3. 在每组中,找出两个字母在矩阵中的地方。
若两个字母不在同一直行或同一横列,在矩阵中找出另外两个字母,使这四个字母成为一个长方形的四个角。
若两个字母在同一横列,取这两个字母右方的字母(若字母在最右方则取最左方的字母)。
若两个字母在同一直行,取这两个字母下方的字母(若字母在最下方则取最上方的字母)。
新找到的两个字母就是原本的两个字母加密的结果。
例子:取“playfair example”为密钥,得
要加密的讯息为:
“Hide the gold in the tree stump”:
HI DE TH EG OL DI NT HE TR EX ES TU MP
就会得到:
“BM OD ZB XD NA BE KU DM UI XM MO UV IF”。