序列密码就是对密文进行逐一的加密或者解密安全
和分组密码比起来,分组密码是一组一组加密,序列密码就是逐个加密函数
序列密码的安全性能主要取决于密钥流或者密钥流产生器的特性。性能
优势:实现简单、加密和解密速度快、安全性能较好、没有或少有差错传播加密
序列密码的基本结构
1.同步序列密码spa
同步序列密码的原理:
种子密钥k通过由安全信道传送给收、发双方后,由密钥流产生器生成加密和解密所须要的密钥流,而加、解密自己就是简单的模2加法运算。
同步序列密码的特色:
① 密钥流仅仅依赖于种子密钥和密钥流产生器的结构,而与明文流(或密文流)无关。
② 若是密钥流彻底随机产生且长度至少和明文流同样长,则可实现绝对安全的“一次一密”。但实际上,这很难作到。
③ 无差错传播。由于密钥流独立于密文流,因此一个密文的传输错误不会影响下一个密文的解密。
④ 为了保障接收端可以正确解密,要求收、发双方必须严格同步。blog
2.自同步序列密码同步
自同步序列密码的简介:原理
与同步序列密码须要收、发双方严格同步不一样,自同步序列密码可以依靠自身的能力“自动地”实现收、发双方的同步,于是是一种不须要外部同步的序列密码系统。
自同步序列密码的特色:
① 密钥流不只依赖于种子密钥和密钥流产生器的结构,还与密文流(或明文流)有关。初始向量IV在这里至关于初始密文的做用,要求收、发双方必须相同。
② 自同步。解密只取决于先前特定数量的密文字符,所以,即便出现删除、插入等非法攻击,收方最终都可以自动重建同步解密,于是收、发双方再也不须要外部同步。
③ 有差错传播。由于密钥流与密文流有关,因此一个密文的传输错误会影响下面有限个密文的解密。 密码
密钥流产生器im
密钥流产生器是决定序列密码安全性能的主要因素,于是线性反馈寄存器是密钥流产生器最基本也是最重要的部件。
1.线性反馈移位寄存器
定义:若是将移位寄存器的某些级的输出经过异或(模2加)运算函数运算后反馈回它的第一级输入端,便构成了线性反馈移位寄存器。
该式为用右移方式的n级线性反馈移位寄存器的反馈函数,其中
若是n级线性反馈移位寄存器产生的输出序列的周期为2^n-1,则称为m序列产生器。m序列不只周期长,并且伪随机特性好,这正是序列密码的密钥流所须要的特性。
2.基于LFSR的密钥流产生器