日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

RSA加密算法破解及原理

發(fā)布時間:2023/11/27 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RSA加密算法破解及原理 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?RSA加密算法是一種非對稱加密算法,目前被廣泛應(yīng)用。本文介紹RSA算法的基本原理和破解方法。



RSA在互聯(lián)網(wǎng)上被廣泛應(yīng)用,典型的如各個網(wǎng)站的證書。



很多應(yīng)用數(shù)據(jù)的加密也是使用RSA。


本文介紹RSA算法的原理,并介紹其破解方法和工具。




01




RSA算法原理



RSA加密算法是一種非對稱加密算法,它能抵抗目前絕大多數(shù)密碼攻擊。RSA算法基于以下事實(shí):


兩個大素數(shù)相乘十分容易,但是對其乘積進(jìn)行因式分解卻極其困難,因此,RSA的安全性取決于對極大整數(shù)做因數(shù)分解的難度。


RSA加密體制中,有兩個密鑰,即一個公鑰,一個私鑰,它們組成一對密鑰,公鑰用來加密,私鑰用來解密,公鑰被公開,私鑰要藏好了,如果私鑰泄漏或者被爆破,則這對密鑰就基本沒用了。


加密的一般過程為:






02


公鑰和私鑰


RSA公鑰與私鑰的生成過程如下:


  1. 隨機(jī)選定兩個大素數(shù)p, q。

  2. 計算公鑰和私鑰的公共模數(shù) n = pq。

  3. 計算模數(shù)n的歐拉函數(shù)φ(n)=lcm(p-1,q-1).(即最小公倍數(shù)) 。


  4. 選定一個正整數(shù)e,使1 < e < φ(n) , 且e與φ(n)互質(zhì)。

  5. 計算e關(guān)于φ(n)的模反元素d, 滿足de ≡ 1?(mod φ(n) ). (計算方法de=xφ(n) +1)。

  6. 公鑰為(e,n),私鑰為(n,d)。


RSA成立的條件依賴于如下等式:

??



03


加密與解密


在RSA中,Bob想給Alice發(fā)一個消息X,Alice公鑰為(e,n),私鑰為(n,d)。

加密和解密的過程如下:

  1. Bob先把X轉(zhuǎn)換為一個大數(shù)m < n, 再用Alice的公鑰(e,n)把m加密為另一個大數(shù):?



  2. Alice收到Bob發(fā)來的大數(shù)c, 進(jìn)行解密。 通過自己的私鑰(p,q,d)得到大數(shù)m:?


  3. 再把m轉(zhuǎn)換為X, Alice即得到Bob的原始消息,轉(zhuǎn)換方法二人提前約定。





04


RSA暴力破解


RSA暴力破解,簡單理解,就是根據(jù)公鑰(e,n)獲取私鑰(n,d)的方法。


對一個RSA證書來說,公鑰是公開的,e及n值可以使用openssl庫進(jìn)行獲取,重要的是模數(shù)n值,假設(shè)公鑰文件問pub.pem,則模數(shù)n值其獲取命令如下:


openssl rsa -in pub.pem -pubin -modulus -noout



RSA爆破就是對大數(shù)n值使用工具分解成pq的過程,得到pq,就得到了d。


RSA爆破,是根據(jù)數(shù)學(xué)原理,按數(shù)學(xué)步驟進(jìn)行一步步計算,不是使用openssl這類通用的工具進(jìn)行的,具體的步驟,太專業(yè)了,這里不做描述。


目前,RSA-220 即729位的數(shù),已經(jīng)有破解成功的案例。對RSA-155即512位的數(shù),使用服務(wù)器集群很快就能得到結(jié)果。而對RSA-1024而言,已經(jīng)不夠安全了,所以現(xiàn)在SSL證書都升級到了2048位。


在互聯(lián)網(wǎng)大發(fā)展的時代,最幸福的是,目前已經(jīng)有很多開源的爆破工具供我們使用。



05


RSA爆破工具


RSA爆破的工具有很多,如:CADO-NFS,ggnfs,MSIEVE,yafu、sage等,還有在線破解的網(wǎng)站如cocalc.com。

有的工具可以在Linux,有的可以在Windows下使用。在線破解工具則是大伙玩的,實(shí)用性有限。

在爆破工具的選擇上,如果需要分解的數(shù)字不大,可以使用yafu等工具,如果需要爆破的是大數(shù),則需要使用CADO-NFS這類Linux平臺下可以并行運(yùn)算的爆破工具。

CADO-NFS官方提供的實(shí)驗(yàn)結(jié)果如下:

實(shí)際上,如果服務(wù)器夠多,CPU夠多,破解速度會更快。

當(dāng)然,對協(xié)議分析而言,如果需要爆破,則這個數(shù)不會小,我推薦的爆破工具肯定就是CADO-NFS啦。


如果在RSA爆破過程中需要獲取幫助,可以留言找我進(jìn)行了解。


掃我關(guān)注。






總結(jié)

以上是生活随笔為你收集整理的RSA加密算法破解及原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

歡迎分享!

轉(zhuǎn)載請說明來源于"生活随笔",并保留原作者的名字。

本文地址:RSA加密算法破解及原理