图解密码技术--阅读笔记(一)

对称密码 加密与解密的密钥相同
共钥密码 加密与解密密钥不同

单向散列函数 hash 保证完整性
消息认证码 不仅能够保证完整性,提供认证消息是否来自期待的对象
数字签名 还能够防止否认

DES 64比特明文加密成64比特密文的对称密码算法 密钥的64bit,每7比特有一比特用于错误检测,实质上密钥长度56比特,这个64比特的单位成为分组,以分组为单位处理的密码算法叫做分组密码。
DES的结构称为feistel网络,加密的步骤称为轮,DES是一种16轮循环的feistel网络
一轮步骤:输入数据等分,右侧发送到输出右侧,右侧发送到轮函数,轮函数根据右侧数据和子密钥,计算出比特序列,再与左侧数据异或,结果发送到输出左侧。
并且使用不同子密钥对一轮的数据处理若干次,并且在两轮之间对调
特点:加密无论使用任何函数作为轮函数都可解密,加密和解密可以使用相同的结构实现。feistel网络实际上从加密算法中抽取“密码的本质部分”,并将其封装在一个轮函数中。设计算法的人只需设计复杂算法即可。
攻击方法:差分分析,线性分析 前提 由可选择任意明文得到密文, 称为选择明文攻击
三重DES,密钥长度56*3 当三个密钥相同,相当于普通DES

AES 即rijndael 分组长度128bit,密钥长度128,192,256bit
使用spn结构,每一轮为:subbytes shiftrows mixcolumns addroundkey
解密,即逆运算

分组密码只能加密固定长度的明文,如果需要加密任意长度,就需要迭代,迭代方法称为模式

分组密码的模式:
ECB模式 分组加密直接成为密文分组 无需破译就可以操纵明文
CBC模式 密文分组链接模式,明文与前一个密文进行xor,再加密 特点:第一个明文分组需要初始化向量 无法单独加密,一个密文损坏,解密影响两个分组。 攻击:初始化向量比特反转,填充提示攻击,初始化向量攻击
CFB模式 前一个密文分组送回到输入端,明文分组与密文分组之间只有xor (类似于一次性密码本) 攻击: 重放攻击
OFB模式 输出反馈模式,明文分组和密码算法的输出进行XOR产生密文分组,与CFB相似 生成密钥流与xor可并行
CTR模式 每次加密都生成一个不同的值(nonce)作为初始值,计数器前半部分为nonce,后半部分为分组序号。优势:与OFB对比,CTR支持任意顺序处理分组,可以并行。


CBC与CFB
ECB与CBC
CFB与OFB

总结:

模式比较

公钥密码(非对称密码): 解决密钥配送问题
解决密钥配送问题:

  1. 事先共享 量大不方便,安全性差
  2. 密钥分配中心解决 密钥数量大引起分配中心负载增大,中心故障则无法通信
  3. 公钥密码

密钥分为加密密钥(公钥),解密密钥(私钥)两种,一对公钥和私钥称为密钥对(key pair)。
公钥密码 无法解决公钥认证问题

时钟运算: 时钟运算中对数称为离散对数,快速求出离散对数对算法还未发现

RSA:
加密: 密文=明文的E次方mod N 公钥是(E,N)
解密: 明文=密文的D次方mod N 私钥是(D,N)

生成密钥对:
求N N=p * q (p,q为质数)
求L L=lcm (p-1,q-1) lcm最小公倍数
求E 1<E<L gcd(E,L) =1 (E,L最大公约数为1,即E,L互质)
求D 1<D<L E * D mod L =1

公钥密码存在的问题: 算法本身无法防御中间人攻击,处理速度低
强度大保证: 质因数分解

混合密码: 会话密钥是对称密码的密钥,同时也是公钥密码的明文

伪随机数生成器生成会话密钥,对称密码加密消息,公钥密码加密会话密钥
举例:
数字签名,由单向散列函数和公钥密码组合而成。
证书,由公钥和数字签名构成
消息认证码,由单向散列函数和密钥组合(对称密码也可)
伪随机数生成器也可

单向散列函数:
散列值:抗碰撞性
盐,(salt,通过伪随机数生成器产生的随机的值)

弱抗碰撞性:找到和该消息具有相同散列值的另一消息是很困难的
强抗碰撞性:找到散列值相同的两条不同的消息是很困难的

SHA-3之前的单向散列函数都是通过循环执行压缩函数的方式来生成散列值,称为MD结构
SHA-3采用海绵结构
攻击: 暴力破解 破解“弱碰撞性”
生日攻击 破解“强碰撞性”

由于单向散列函数能够辨别出“篡改”,但不能辨别“伪装” ,认证技术包括消息认证码和数字签名

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 《图解密码技术》一书介绍了很多关于密码的知识,通读一遍需要不少时间。为了方便学习,我对书中关键的部分进行了总...
    咖枯阅读 7,335评论 1 25
  • 对称加密: DES DES是1977年美国联邦信息处理标准中使用的一种对称密码技术,曾今被美国和其他国家政府银行使...
    十三亿少女梦丶阅读 1,170评论 0 10
  • 本文主要介绍移动端的加解密算法的分类、其优缺点特性及应用,帮助读者由浅入深地了解和选择加解密算法。文中会包含算法的...
    苹果粉阅读 11,624评论 5 29
  • 这篇文章主要讲述在Mobile BI(移动商务智能)开发过程中,在网络通信、数据存储、登录验证这几个方面涉及的加密...
    雨_树阅读 2,887评论 0 6
  • 在深入学习区块链时,不可避免的需要了解密码学。区块链算是对密码学的一次整合运用,虽然并无太多创新的密码算法,但也值...
    Kerwong阅读 44,612评论 4 25