[工学]密码学复习.ppt

[工学]密码学复习

* MIT英文全称Massachusetts Institute of Technology,麻省理工学院 * 在RSA算法中,选取公钥(n,e)时,为什么要求gcd(e, ?(n))=1? 如果不满足,则后面没法求e的乘法逆元d 图6.6 SHA-1 消息处理框图 SHA-1 与MD5的比较 安全性: SHA-1的报文摘要比MD5的长32比特 抗密码分析攻击的强度, SHA-1似乎高于MD5 效率: MD5效率比SHA-1高。 MD5已被破解;SHA-1目前还可以应用 总的说来, SHA-1的安全性是以牺牲效率为代价的,类似于分组密码的加密 第七章 消息认证码 MAC实质上是一个双方共享的密钥k和消息m作为输入的函数 记为MAC = CK(M) MAC----”带密钥的hash函数” MAC: 消息认证码是什么 一种是基于分组密码的 一种是基于带密钥的Hash函数的。 7.1 消息认证码的构造 基于分组密码的MAC CBC-MAC (1)接收者确信消息未被更改过。 (2)接收者确信消息来自所谓的发送者。 消息认证码实现认证 公钥密码体制的基本概念 公钥密码所依赖的数学难题 背包问题 二次剩余问题 模n的平方根问题 多变量方程系统 格规约:NTRU 大整数分解问题(The Integer Factorization Problem, RSA体制) 离散对数问题: 有限域的乘法群上的离散对数问题(The Discrete Logarithm Problem, ELGamal体制) 定义在有限域的椭圆曲线上的离散对数问题(The Elliptic Curve Discrete Logarithm Problem,类比的ELGamal体制) RSA算法 概况: MIT三位年青数学家R.L.Rivest,A.Shamir和L.Adleman 在1978年发现了一种用数论构造双钥体制的方法,称作MIT体制,后来被广泛称之为RSA体制。 它既可用于加密、又可用于数字签名。 RSA算法的安全性基于数论中大整数分解的困难性。 2、RSA算法 算法描述-密钥产生KG( ): 独立地选取两大素数p和q(各100~200位十进制数字) 计算 n=p×q,其欧拉函数值?(n)=(p-1)(q-1) 随机选一整数e,1?e?(n),gcd(?(n), e)=1 在模?(n)下,计算e的有逆元d=e -1 mod ?(n) 以n,e为公钥。私钥为d。(p, q不再需要,可以销毁。) 算法描述-加密E( )和解密D( ): 加密 将明文分组,各组对应的十进制数小于n c=me mod n 解密 m=cd mod n 3、RSA的安全性 RSA的安全性是基于分解大整数的困难性假定(尚未证明分解大整数是NP问题) 如果分解n=p×q,则立即获得?(n)=(p-1)(q-1),从而能够确定e的模?(n)乘法逆d RSA-129历时8个月被于1996年4月被成功分解,RSA-130于1996年4月被成功分解 n的长度应该介于1024bit到2048bit之间 1、大素数的产生 试除法 费马法 Rabin-Miller算法 未通过检测的整数一定是合数 但,并非所有通过检测的整数都是素数 实用最广泛,是一种概率算法 2、求乘法逆元:扩展的欧几里得算法 RSA的实现 3、快速指数计算 利用反复平方乘算法 每次乘法运算后就取模 3、椭圆曲线密码体制的优点 安全性高(椭圆曲线群上的离散对数更难计算) 攻击有限域上的离散对数可用指数积分法,运算复杂度为亚指数复杂。 对ECC上离散对数攻击并不有效。 攻击ECC上离散对数问题的方法只有大步小步法,复杂度为指数。因此ECC上的密码体制比基于有限域上离散对数问题的公钥体制更安全 数字签名 ElGamal数字签名 公钥数学基础 Euler定理--费马定理 Euler定理:对任意互素的a和n, 有aφ(n) mod n=1 费马定理 :ap-1 mod p = 1 密码学考试感想 一 简答 1 密码体制 2 什么是强无碰撞的散列函数,解释强无碰撞与弱无碰撞的含义 二 RSA密码,给定N=11*7,从e1=3和e2=17,选择一个合适的公钥,并计算出私钥 三 实数域上的椭圆曲线,即由y2=x3 - 36x定义的曲线,推导曲线上点的加法公式,并已知P=(-3, 9), Q=(-2, 8),计算P+Q和2P。(课后作业的改造) 四 简述AES的特征,它与DES的本质区别是什么? 五 证明由如下方式中构造的Hash函数是强无碰撞的:q=(p-1)/2,p和q都是素数,α是本原根

文档评论(0)

1亿VIP精品文档

相关文档