第六章作业参考答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第六章作业参考答案

1.在DSS数字签名标准中,取p=83=2×41+1,q=41,h=2,于是g≡22≡4 mod 83,若取x =57,则y≡g x≡457=77 mod 83。在对消息M=56签名时选择k=23,计算签名并进行验证。解:这里忽略对消息M求杂凑值的处理

计算r=(g k mod p) mod q=(423 mod 83) mod 41=51 mod 41=10

k-1mod q=23-1 mod 41=25

s=k-1(M+xr) mod q=25(56+57*10) mod 41=29

所以签名为(r,s)=(10,29)

接收者对签名(r',s')=(10,29)做如下验证:

计算w=(s')-1 mod q=29-1 mod 41=17

u1=[M'w] mod q=56*17 mod 41=9

u2=r'w mod q=10×17 mod 41=6

v=(g u1y u2 mod p) mod q=(49×776 mod 83) mod 41=10

所以有v=r',即验证通过。

2.在DSA签字算法中,参数k泄漏会产生什么后果?

解:如果攻击者获得了一个有效的签名(r,s),并且知道了签名中采用的参数k,那么由于在签名方程s=k-1(M+xr) mod q中只有一个未知数,即签名者的秘密钥x,因而攻击者可以求得秘密钥x=r-1(sk-M) mod q,即参数k的泄漏导致签名秘密钥的泄漏。

4.2. 试述DSA数字签名算法,包括密钥产生、签名算法和验证算法,并给出验证过程正确性证明

参考ppt

4.4. 已知schnorr签名的密钥产生和签名算法,试给出验证方程,并证明其正确性。

参考ppt

5.1.试证DSA签名中两次使用相同的会话密钥k,是不安全的

分别给出对m1和对m2的签名表达式,然后将两个关于s的方程联立,这时如果会话密钥k 相同则可直接解出k和秘密钥x,证明过程可根据此思路进行

相关文档
最新文档