密码学题目 - RSA签名方案
在RSA签名方案中,设p=7,q=17,公钥e=5,消息m的Hash值为19,试计算私钥d并给出对消息的签名和验证过程。
求私钥 的计算过程
已知参数:
- 公钥
我们需要找到私钥 ,满足:
即:
5×d 与 1 在模 96 下是同余的
使用扩展欧几里得算法求解逆元
扩展欧几里得算法步骤:
使用欧几里得算法找到 和 的最大公约数:
这里我们得到了 。
改写成扩展欧几里得算法形式:
即:
从而:
因此: 。
将负数转为正数形式:
因此,私钥 为:
签名和验证过程
对消息的签名
消息 的 Hash 值 。
签名 为:
计算
用模重复平方方法计算 :
1 | |
所以签名 。
签名验证
验证签名过程:
用模重复平方方法计算 :
1 | |
因此:
验证通过,计算结果为19,等于消息的 Hash 值 。
总结
- 私钥 :77
- 签名 :66
- 验证:,验证通过。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Moyuan"s website!
