AI智能
改变未来

playfair 加密与解密


PIayfair加密与解密

  • 普莱费尔密码(英文:Playfair cipher 或 Playfair square)是一种使用一个关键词方格来加密字符对的加密法,1854年由一位名叫查尔斯·惠斯通(Charles Wheatstone)的英国人发明。

  • 密钥由25个英文字母(J与I相同)组成的5阶方阵。

  • 编写分三步:1.编制密码表 2.整理明文 3.编写密文 构成部分:1.密钥 2.明文3.密文4.注明的某个字母代替的另一个字母

  • 它有一些不太明显的特征:密文的字母数一定是偶数;任意两个同组的字母都不会相同,如果出现这种字符必是乱码和虚码。

  • 加密
    1. 编制密码表
    第一步是编制密码表。在这个5*5的密码表中,共有5行5列字母。第一列(或第一行)是密钥,其余按照字母顺序。密钥是一个单词或词组,若有重复字母,可将后面重复的字母去掉。当然也要把使用频率最少的字母去掉。如:密钥是Live and learn,去掉后则为liveandr。如果密钥过长可占用第二列或行。
    同时字母I和J会被当成一个字母
    如密钥crazy dog,可编制成

    C D F M T
    R O H N U
    A G I(j) P V
    Z B K Q W
    Y E L S X

2. 整理明文
第二步整理明文。将明文每两个字母组成一对。如果成对后有两个相同字 母紧挨或最后一个字母是单个的,就插入一个字母X(或者Q)。
如,communist,应成为co,mx,mu,ni,st。

3. 编写密文
最后编写密文。对明文加密规则如下:

  1. 若p1 p2在同一行,对应密文c1 c2分别是紧靠p1 p2 右端的字母。其中第一列被看做是最后一列的右方。如,按照前表,ct对应dc。
  2. 若p1 p2在同一列,对应密文c1 c2分别是紧靠p1 p2 下方的字母。其中第一行被看做是最后一行的下方
  3. 若p1 p2不在同一行,不在同一列,则c1 c2是由p1 p2确定的矩形的其他两角的字母(至于横向替换还是纵向替换要事先约好,或自行尝试)。如,按照前表,wh对应ku或uk。

如,依照上表,
明文where there is life,there is hope.
可先整理为:WH ER ET HE RE IS LI FE TH ER EI SH OP EX
然后密文为:KU YO XD OL OY PL FK DL FU YO LG LN NG LY
将密文变成大写,然后几个字母一组排列。
如5个一组就是KUYOX DOLOY PLFKD LFUYO LGLNN GLY

  • 解密
    Playfair解密算法首先将密钥填写在一个5*5的矩阵中(去Q留Z),矩阵中其它未用到的字母按顺序填在矩阵剩余位置中,根据替换矩阵由密文得到明文。

对密文解密规则如下:

  1. 若c1 c2在同一行,对应明文p1 p2分别是紧靠c1 c2 左端的字母。其中最后一列被看做是第一列的左方。
  2. 若c1 c2在同一列,对应明文p1 p2分别是紧靠c1 c2 上方的字母。其中最后一行被看做是第一行的上方。
  3. 若c1 c2不在同一行,不在同一列,则p1 p2是由c1 c2确定的矩形的其他两角的字母。
    其实就是反其道而行之。

练习

  1. 例:25个字母组成5阶方阵如下(J与I相同):
    关键词: telegram
t e l g r
a m b c d
f h i k n
o p q s u
v w x y z
例:明文:next time, jay , try something different处理后:ne xt qt im ei ay tr ys om et hi ng di fq fe re nt密文: hr vl  ol hb lh cv et gy pa le ik kr bn io ht tl fr
  1. 假设密钥是cipher,使用Playfair算法加密Playfair cipher was actually invented by wheatston
    由密钥词cipher可构建密钥矩阵:
C I P H E
R A B D F
G K L M N
O Q S T U
V W X Y Z

将明文按照两个字母分组为

pl ay fa ir ci ph er wa sa ct ua lx ly in ve nt ed by wh ea ts to nx

则密文为

BS DW RB CA IP HE CF IK QB HO QF SP MX EK ZC MU HF DX YI IF UT UQ LZ

Playfair密码的安全性
Playfair密码的安全性比单表代换密码提高了许多

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » playfair 加密与解密