RSA中dp,dq ,npp的求解方法

本文详细介绍了RSA加密算法的解密过程,包括已知n、e、c和npp时如何求解明文,以及已知p、q、dp、dq和c时的解密步骤。同时阐述了在只有e、n、dp/dq和c的情况下如何求解明文。文章通过数学方程和步骤解释了如何找到关键参数并进行解密操作,深入浅出地解析了RSA算法的核心原理。
摘要由CSDN通过智能技术生成

1.已知n,e,c,npp求解明文

					npp = (p+2) * (q+2)

解密过程:
e , p1=p , q1=q , n1=p * q , φ(n1)=(p1-1) * (q1-1) , p2=(p+2) , q2=(q+2) , n2=(p+2) * (q+2) , φ(n2)=(p2-1) * (q2-1)
首先根据e和φ(n2)求出d2,对c解密求得明文m2,再根据e和φ(n1)求出d1,对m2解密求出明文m。
如何求p,q:
可以构造一个方程: x2 - (p+q)x+pq =0,此方程中的(p+q)和(p*q)都可以通过n和npp求出,并且p,q是该方程的两个根。

2.已知p,q,dp,dq,c求明文

首先有如下公式:

dp ≡ d mod (p-1) ,dq ≡ d mod (q-1) ,m ≡ cd (mod n) ,n = p * q

在这里插入图片描述

至此,求出了m1,m2,p^(-1),从而可以求出明文m = ((m1 + ((m2 - m1) * p-1 mod q)) * p) mod n。

3.已知e,n,dp/(dq),c求明文

首先有如下公式:

dp ≡ d mod (p-1) ,e * d ≡ 1 mod φ(n) ,n = p * q ,φ(n) = (p-1) * (q-1)

在这里插入图片描述

  • 9
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值