读书笔记一【加密——替换法】

1.简单的替换法

替换法即为将一个字(或字母)替换为另一个字(或字母),通过一张对应表进行加密或解密。

例如,将每个字母替换为原先字母后面的一个字母

【I'm a programmer】将被替换ASCII后面的字符为【J(n!b!qsphsbnnfs】

简单的替换法会被【频率分析】方法攻击,例如英文中最常出现的字母为E,最常见的组合为TH;同理,中文中“的”字也是最常用的字。攻击者可以通过最常出现的字或字母反推对应表,从而破解密文。

 

2.变化替换模式

为了防止替换法被频率分析方法破解,可以对替换表格进行扩展,这种方法叫做【多表替换】。

多表替换的一种形式叫做【tabularecta】,即为下图

根据上表,不同明文与密钥对应的密文字母就不同

例如明文是HELLO,密钥是CATCH

那么密文第一个字母就是H行C列的J

简单来说 就是密文第i个字母为表中行为明文第i字母,列为密钥第i个字母的那个值

代码即为:密文[i]=表格[明文[i]][密钥[i]]

 

3.替换法密钥扩展

像上面的例子,每个字母只有5个被替换的可能性(密钥长度),所以加密要足够强,就必须要有一个与原文一样长的密钥。

这种方法通常是使用某本书的某个章节来做,例如以莎士比亚作品为密码本,密钥为2.2.4.9

则密码表为

按字母表顺序第二个戏剧《As You Like It》,第二个2位该剧第二幕,4指其中第四个场景,9指其中第9句

这种方法通常这电影里出现

 

转载于:https://www.cnblogs.com/punkrocker/p/10351635.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值