playfair密码(密码编码学与网络安全习题2.9)

playfair密码

是什么

是一种使用一个关键词方格来加密字符对的加密法。

为什么

引入PlayFair密码的原因

因为单表代替的密钥量很小,不能抵抗穷尽搜索攻击
表代替密码没有将明文字母出现的概率隐藏起来。很容易收到频率分析的攻击

怎么做

编写密码表

  1. 密码表为5×5的字母矩阵,由密钥来填充矩阵内容,填充的规则是:在矩阵中从左到右、从上到下,依次填入密钥的字母,在填写的过程中,若当前准备填入的字母在矩阵中已经存在,则跳过该字母,保证矩阵字母的唯一性。

  2. 5*5的矩阵,容量为25,填入26个字母,其中字母 I 和 J 或者字母u和v算作一个字母 。

  3. 填入数据示例:royal new zealand navy。

    royal
    newzd
    vbcfg
    hi/jkmp
    qstux

加密方法:

  1. 将明文两两分组
  • 明文个数为偶数个:
    • ro—ya–ln–ew–……
  • 明文个数为奇数个
    • 解决办法:缺补:在最后一个明文字母的后面补上其下一位字母AB——C,补完变为AB——CD
  • 分组后同一组字母相同
    • 解决办法:同插,在相同的字母中间插入其下一位字母示例:
      AA——BC 插完变为 AB——AB——CD
    • PS:同插缺补操作不分先后,执行结果相同
  1. 移位和替换规则:
  • 若p1 p2在同一行,对应密文c1 c2分别是紧靠p1 p2 右端的字母。其中第一列被看做是最后一列的右方。
  • 若p1 p2在同一列,对应密文c1 c2分别是紧靠p1 p2 下方的字母。其中第一行被看做是最后一行的下方。
  • 若p1 p2不在同一行,不在同一列,则c1 c2是由p1 p2确定的矩形的其他两角的字母

解密方法

逆推加密方法

示例 (密码编码学与网络安全习题2.9)

2.9 当海军上尉 John F.Kennedy管理的美国巡逻船PT-109被日本毁灭者击沉时,位于澳大利亚的一个无线站截获的一条用Playfair密码加密的消息:

KXJEY UREBE ZWEHE WRYTU HEYFS KREHE GOYFI WTTTU OLKSY CAJPO BOTEI ZONTX BYBNT GONEY CUZWR GDSON SXBOU YWRHE BAAHY USEDQ

密钥为royal new zealand navy,请解密这条消息,将TT换为tt。

解:

(1)编制密码表

royal
newzd
vbcfg
hi/jkmp
qstux

(2)依照解密规则,整理密文

KX JE YU RE BE ……

PT BO AT ON EO ……

(3)最终结果

PT BOAT ONE OWE NINE LOST IN ACTION IN BLACKETT STRAIT TWO MILES SW MERESU COVE X CREW OF TWELVE X REQUEST ANY INFORMATION



  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值