几种经典密码(classic cipher)

凯撒密码(Caesar Cipher)

Alice和Bob通信,Alice和Bob共享一个移位数字,所有的明文都移动相同的位置。
最早的置换密码(substitution cipher)
原理:简单的将字母移位
例如
位移k=3时,对应的置换表如下:

明文ABCXYZ
密文DCDABC

分析:该加密方式能被频率分析(frequency analysis)所破解

多表密码(维吉尼亚密码, Vigenere Cipher)

Alice和Bob共享一个私密的移位单词
原理:将明文以移位单词循环移位
例子
如果移位单词为:HELLO
明文为:NICETOMEETYOU
加密方式为:
多表置换
注意:结果需要mod26
所以Alice要发送的密文为:UMNPHVQPPHFSF
Bob收到密文解密:将对应的密文减去移位单词就可以还原明文
分析:该方式的加密使得简单的频率分析不能再使用;Eve要破解密文,首先得知道移位单词的长度,然后破解移位单词本身(相当于多个Caesar cipher)
移位单词越长,破解越困难

一次一密(One Time Pad-OTP)

随机生成每个数的移位数字
(随机序列的长度与信息序列的长度相同)
原理:每个字母的移位都是随机生成的
分析:一次一密具有完美安全(又叫绝对安全,perfect security)

分组密码加密模式是一种将明文分块加密的方法,常见的分组密码加密模式包括以下几种: 1. 电子密码本模式 (Electronic Codebook, ECB):将明文分成固定大小的块,每个块独立地使用相同的密钥进行加密,相同的明文块将产生相同的密文块。由于每个块独立加密,ECB 模式在安全性和抗攻击性方面存在一些问题,因此在实际中较少使用。 2. 密码分组链接模式 (Cipher Block Chaining, CBC):在 CBC 模式中,每个明文块会与前一个密文块进行异或运算,然后再进行加密。这种链接方式使得每个密文块都依赖于之前的所有明文块,提高了安全性。为了保证第一个明文块的安全性,还需要引入初始化向量 (IV)。 3. 密文反馈模式 (Cipher Feedback, CFB):CFB 模式将前一个密文块作为输入与密钥生成器进行加密运算,然后与当前明文块进行异或运算得到当前密文块。这种模式不需要填充明文,可以处理变长的数据。 4. 输出反馈模式 (Output Feedback, OFB):OFB 模式将前一个输出作为输入与密钥生成器进行加密运算,然后与当前明文块进行异或运算得到当前密文块。与 CFB 类似,OFB 也可以处理变长的数据。 5. 计数器模式 (Counter, CTR):CTR 模式将一个计数器与密钥生成器进行加密运算,然后与明文块进行异或运算得到密文块。计数器可以作为输入参数,从而可以并行地加密或解密多个块。 这些分组密码加密模式在实际中根据应用需求和安全性要求的不同选择使用。需要注意的是,在使用这些模式时,必须合理选择和管理密钥和初始化向量,以保证加密的安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值