RSA已知明文和公钥能得到私钥加密的密文吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RSA已知明文和公钥能得到私钥加密的密文吗相关的知识,希望对你有一定的参考价值。

破解RSA
已知明文和公钥得到私钥加密的密文

已知明文密文和公钥得到私钥
哪个更难?

首先破解RSA是指 密文 ->明文 的过程!

假设明文m,密文c,私钥d,公钥e,RSA加密的流程如下:

1、两个较大的互不相等的质数p和q

2、n = p * q

3、fn = (p - 1) * (q - 1)

4、e 与 fn 互质, 且1 < e < fn

5、d满足 de % fn = 1

6、加解密:

c = (m^e) % n 

m = (c^d) % n

上面的公式可以理解为通过公钥加密,而通过私钥解密。

第一种情况:已知明文和公钥得到私钥加密的密文,这个是加密过程,与私钥d关系不大,加密过程主要在于n的值!

假设这种情况已知明文m,公钥e,私钥d,密文c有无数种。

第二种情况:已知明文密文和公钥得到私钥。

已知明文m,密文c,公钥e求私钥d,套入次公式:c= (m^e) % n,n的值也是不唯一的,所以私钥d的值也不唯一。


在有正确答案做对比的情况下个人感觉第二种情况比较容易求出吧。

个人见解,欢迎讨论。

参考技术A mod 是一种整数之间的相互运算,就是通常所说的取余数运算。例如: 2187mod20=7就表示2187除以20,余数是7. 更常见的表示方法是2187=7(mod 20) 注意这里的等号通常都写成恒等号(就是三横,我这里打不出恒等号)。相应地读作2187与7关于模(即mod)20同余。关于同余有一套比较完整的理论,这是数论里的内容,本题只需要一些比较基础的数论知识。 一般来讲,公开密钥系统的公钥都是取两个大素数。对这两个大素数进行一系列的运算,详细的内容可以参考百科。本题里由于d与n,e与n互素,所以也可算。 本题就是对消息m=3的加密。利用公钥以及加密方法即得 密文=m^e对n=20取模。 结果就是3^7=2187=7(mod20).反过来,现在得到了密文7,那么利用解密密钥 d=3就知道 原文m=(密文)^3=7^3=343=3(mod 20),也就是原文是3.本回答被提问者和网友采纳

加密解密

传播明文,还是密文;

对称加密解密,非对称加密解密,数据进行对称加密,密钥用非对称加密

  • aes对称加密
  • rsa非对称加密
    客户端:AES密钥动态生成,非硬编码
    明文 + 密钥(AES) = 密文1
    密钥(AES)+公钥(RSA)= 密文2

服务器(持有RSA私钥)
密文2 + 私钥(RSA) = 密钥(AES)
密文1 + 密钥(AES) = 明文

防止篡改

信息摘要 = 明文+hash值
数字签名 = 信息摘要+私钥
信息摘要 + 数字签名
公钥解密

只有一个人有钥匙,那么东西丢了,只因为那一个人的,那么是私钥解密;如果是让每个人都可以开锁,那么是公钥解密,每个人都可以获得公钥,可以使用;

数字证书,证明你是中国人,对方是你大爷

保存和你交流人公钥机构;保存的必定是公钥,大家都可以去拿那把钥匙开锁,

  • 私钥是一个人拥有,公钥是大家领取,一个钥匙,N把锁,

a给b发邮件,a用b的公钥进行加密,b收到后用私钥解密;
为了防止本人,a把b的公钥用自己的私钥再次加密,b用a的公钥进行解密,以此来确定本人;

公钥私钥;私钥公钥;私钥证明信息来源;
两次非对称加密;

证书机构保存了公钥;公钥;那是钥匙之地;

一次对称加密,两次非对称加密,

1把钥匙,10000把锁;10000把钥匙,1把锁,无论是钥匙还是锁,只要是仅有一把那么就是私钥,一个是只能自己开锁,一个是只能自己上锁,只能自己上锁,说明里面的数据是自己发的,只能自己开锁,别人看到数据是没有用的;

https://www.jianshu.com/p/4932cb1499bf

https://juejin.im/post/5b4d8a08f265da0f60130491

Open SSL

通过openssl生成公钥私钥证书
http://www.fzb.me/2015-1-15-openssl-rsa.html

加解密事项
  • 四要素加密,姓名,身份证,手机号,银行卡号
  • 登录注册改密码,转账,充值,rsa非对称
  • https
  • 验签防篡改
  • 请求防重复

《图解HTTP》这本书中曾提过HTTPS是身披SSL外壳的HTTP。HTTPS是一种通过计算机网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS建立全信道,加密数据包。HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。
PS:TLS是传输层加密协议,前身是SSL协议,由网景公司1995年发布,有时候两者不区分。

技术图片

ios配置

以上是关于RSA已知明文和公钥能得到私钥加密的密文吗的主要内容,如果未能解决你的问题,请参考以下文章

加密中 公钥和私钥如何获得?

RSA+AES请求组合加密

RSA公钥密码

加密解密

密码学

RSA 加解密 秘钥对说明