RSA的算法为啥用质数相乘,而不用合数??

就是那个马冰冰 2018-03-05 01:58:54
"对两个质数相乘容易,而将其合数分解很难的这个特点进行的加密算法。 n=p1*p2,已知p1、p2求n简单,已知n求p1、p2困难。"
这句话我怎么就看不明白?
15很容易就能看出来是3*5啊.
21很容易就能看出3*7.
35很容易就能看出是5*7.
我怎么感觉用质数是反而很容易反推出两个质数的呢?
而如果你要用合数
12可能性就有两个,可以是2*6,也可能是3*4,这就两种可能性了,不是更难推算出来到底是2*6还是3*4么?
RSA算法里面这句话到底该怎么理解?怎么求p1,p2就困难了?
请按我所说的给我解释一下,我就是那么想的...不知道我哪里想错了...
...全文
1747 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
idealguy 2018-10-05
  • 打赏
  • 举报
回复
RSA算法选择两个大质数相乘,基于两个原则:

(2)用大质数相乘得到的合数,其分解质因子的结果是唯一的。这点对于加密算法的唯一性原则是非常重要的。
(1)反推得到这两个大质数的难度,随着这两个数的增大将急剧增加。基于二进制128位的RSA密码,目前利用网络云计算的破解也无能为力,只能求助量来的量子计算机。
636f6c696e 2018-09-08
  • 打赏
  • 举报
回复
RSA所用到的数学定理的前提条件是素数,而不是说根据分解的难度。
zyl072 2018-09-08
  • 打赏
  • 举报
回复
引用 6 楼 wangfan027 的回复:
引用
这句话我怎么就看不明白?
15很容易就能看出来是3*5啊.
21很容易就能看出3*7.
35很容易就能看出是5*7.

来算下‭‭188900967593046‬‬是哪2个质数相乘的出来


188900967593046‬‬ 是个偶数, 很明显 188900967593046‬‬ = 94450483796523 * 2。

另外,94450483796523 也不是素数,还可以继续分解出因子:3 、 75401、226203


tanta 2018-09-08
  • 打赏
  • 举报
回复
我来说一下,不一定准确,大致意思应该对。
RSA用到的数学前提是大素数的分解难题。小的数想求它的质因数是很简单,但是如果是一个很大的数,求质因数就非常困难。这是RSA加密难以破解的原因。
为什么不用合数,是因为合数碰撞可能性太多了,无法保持唯一性。这也是为什么要用素数的原因。
举个例子:72既可以8*9,又可以36*2。。。有非常多的可能性,作为算法来说,你加密的东西,不是说必须要你的秘钥才能解,别人的也行,这就比较可怕了,而且可以非常简单的破解。
想象一下:家里的锁,随便拿个钥匙就能打开。。。
636f6c696e 2018-08-06
  • 打赏
  • 举报
回复
你想两个大素数A和B,计算A*B很简单。
但直接给你A*B的值,让你计算是哪两个质数相乘很难。
RSA用质数不用合数的原因是RSA所用到的数学定理的前提条件是素数,而不是说根据分解的难度。
yjx_python 2018-08-06
  • 打赏
  • 举报
回复
因为一般而言,这个数都是比较大的数,p1*p2只是做乘法计算复杂度没那么高,但是分解n=>p1*p2的时候,复杂度较高,所以被暴力破解的可能性较低,安全性有了保障。
其次,如果是采用两个合数相乘,那么乘积依然是合数,两把密匙并不唯一,暴力破解难度会大幅度降低。
dceacho 2018-08-04
  • 打赏
  • 举报
回复
引用
这句话我怎么就看不明白?
15很容易就能看出来是3*5啊.
21很容易就能看出3*7.
35很容易就能看出是5*7.

来算下‭‭188900967593046‬‬是哪2个质数相乘的出来
oyljerry 2018-06-04
  • 打赏
  • 举报
回复
因为公钥私钥还利用了欧拉定理
kernelkoder 2018-06-04
  • 打赏
  • 举报
回复
有本书叫 【图解密码技术】你可以看看
kernelkoder 2018-03-15
  • 打赏
  • 举报
回复
书名是什么?
tanta 2018-03-09
  • 打赏
  • 举报
回复
看下这个:https://baike.baidu.com/item/RSA%E7%AE%97%E6%B3%95/263310?fr=aladdin&fromid=210678&fromtitle=RSA 两个大质数相乘计算相对简单,一个非常大的数求是哪两个素数相乘很难
jamie_chu 2018-03-05
  • 打赏
  • 举报
回复
我也是很想问同一个问题,但是总没人来回答,所以,我把你的问题又复制了一次,然后又发了一次

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧