- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
现代密码学-第5章Hash函数与消息认证习题与解答-20091202
第章
习题及参考答案
指出强抗碰撞Hash函数与弱抗碰撞Hash函数之间的区别。
答:弱抗碰撞Hash函数是任给一个消息x,寻找另一个不同的消息x,使得他们的Hash函数值相等是不可行;强抗碰撞Hash函数是同时寻找两个不同的消息使得他们的Hash函数值相等是计算上不看行的,可以看出强抗碰撞Hash函数一定是弱抗碰撞的。
考虑Gibson Hash函数h。设p、q是两个素数,N=p(q,g是(ZN)*的生成元。N作为公钥,p与q作为签名者的私钥。对任意消息m,其摘要定义为:
h (m)= gm mod N。
(1) 令N=4897,g=2231。分别计算消息m=132748,m(=75676的摘要。
(2) 证明:如果得到了两个碰撞的消息,那么就可以求出N的分解。
(3) 证明:如果得到了N的分解,那么就可以找到碰撞的消息。
解:(1)由h (m)= gm mod N。
所以h (132748)=2231132748mod4897=2611 h(75676)=2611
(2)证明:若h (m)= h (m()则有gm mod N= g m( mod N
假设 N的分解为 N=p*q 所以代入 然后根据中国剩余定理可以解得 p,q。
设p是一个素数,g1、g2是(Zp)*的两个生成元,使得离散对数
的计算是困难的。对任意消息m=(m1, m2),定义Hash函数h的摘要为:
。
(1) 设p=65867,g1=11638,g2=22770。分别计算消息m=(33123, 11789),m(=(55781, 9871)的摘要。
(2) 证明:求解Hash函数h的碰撞等价于计算离散对数。
解:(1)由并把题中数据代入公式中
得 h(33123,11789)=56381 h(55781,9871)=15899
(2)证明:求解Hash函数h的碰撞,即寻找m和m(,使得,也即
使得:
两边同时在关于模p求以为底的对数,整理后得到:
,
这里就涉及到计算离散对数。因此,求解Hash函数h的碰撞等价于计算离散对数。
设H1是一个从(Z2)2n到(Z2)n的Hash函数,这里n(1,Z2={0, 1}。对任意整数i (2,按下述方式定义一个从到(Z2)n的Hash函数Hi:
对任意,设
x= x1||x2,
其中,定义
Hi(x)= H1(Hi(1(x1) || Hi(1(x2) )。
假设H1是强抗碰撞的。试证Hi也是强抗碰撞的。
证明:根据定义,
以此类推:,
……
。
我们不妨假设不是强抗碰撞的,则找得到和已知的碰撞,即有
,根据以上推导,可以找到的一对碰撞和,这与是强抗碰撞是矛盾的。
因此,如果H1是强抗碰撞的那么Hi也是强抗碰撞的。
考虑用公钥加密算法构造Hash函数。假设使用公钥加密算法RSA,首先将消息进行分组;用RSA加密第一个分组;将加密结果与第二个分组作异或,再对其进行加密;一直进行下去。例如,如果消息M被分成二个分组B1和B2,则其Hash值为H(B1, B2)=RSA(RSA(B1)( B2)。证明对任一分组C1,可找到分组C2,使得H(C1, C2)=H(B1, B2)。进一步证明用这种攻击方法,可攻击该Hash函数。
证明:
我们先来证明可以找到,使得在已知的情况下使得。
在RSA密码体制下,设加密密钥是。则即为
,我们这里不妨令,
则,这里的总是能找到的,并且它就满足题目要求,使得H(C1, C2)=H(B1, B2)。
在多个分组的情况下,利用证明的方法,总是能找到满足要求的分组消息,即实现对该Hash函数的攻击。
参考利用分组密码构造Hash函数的方法,试利用公钥加密算法RSA构造一个Hash函数,并分析其安全性能。
解:上题即是一个基于RSA算法构造的Hash函数,其安全性不能好,在实际应用中必须加以改进。
设Ek是一个分组长度为n的分组密码的加密算法,密钥为k。假设密钥长度也为n。对于任意消息x,首先对x进行分组,每组长度为n。如果x的长度不是n的倍数,则在x的最后适当添加一些数据使得x的长度恰好是n的倍数。设
x= x1 x2…xl,
其中xi(GF(2)n (1(i( l)。任选IV(GF(2)n作为初始向量,令y0=IV,按下面四个不同的公式分别计算yi (1(i( l),最后定义H(x)= yl。试分析四个Hash函数H的安全性。
解:Hash函数一的安全性依赖于分组密码加密的安全性。
Hash函数二的安全性依赖反馈序列的安全性和分组加密的安全性。
Hash函数三的安全性依赖于加密密钥的复杂度。
Hash函数四的安全性依赖于序列的安全性以及加密密钥的安全性。
为什么在密钥公开的条件下,基于分组密码的CBC工作模式和CFB工作模式的H
您可能关注的文档
- 教育部参赛_小露珠_朱萌.ppt
- 当代中国行政体制改革的前沿理论及基本走向.doc
- 审计和税收 个人所得税法规名称及索引.doc
- 笔记本装ProE.doc
- 2007级_道桥_路基路面A卷.doc
- 相遇一对一讲义1.doc
- 2012民生新亮点.doc
- 小学一年级美术《数字变变变》.doc
- 机械工程师基础知识解答.doc
- 计算机应用与相关知识概述一.doc
- 2024年江西省高考政治试卷真题(含答案逐题解析).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)物理试卷(含答案详解).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)地理试卷(含答案详解).pdf
- 2024年内蒙通辽市中考化学试卷(含答案逐题解析).docx
- 2024年四川省攀枝花市中考化学试卷真题(含答案详解).docx
- (一模)长春市2025届高三质量监测(一)化学试卷(含答案).pdf
- 2024年安徽省高考政治试卷(含答案逐题解析).pdf
- (一模)长春市2025届高三质量监测(一)生物试卷(含答案).pdf
- 2024年湖南省高考政治试卷真题(含答案逐题解析).docx
- 2024年安徽省高考政治试卷(含答案逐题解析).docx
文档评论(0)