天天看點

rsa算法_RSA算法實作過程

RSA算法是實作非對稱加密的一種算法,其用到很多有關數論的内容,在此我們不多讨論。而将目光聚焦于算法的實作過程。

RSA過程:

第一步:挑選兩個質數a,b,比如:a=61和q=53。這兩個質數需要通過HD算法(HD算法可以看另一篇文章)傳送給接收方。

第二步:計算N=a

*

b=61*53=3233

第三步:計算(a-1)*(b-1)=60*52=3120

第四步:選擇與3120互質的一個數e=17,這個e也就是我們的公鑰,需要公開在網絡上。

第五步;計算得出d,這個d就是我們的私鑰用來解密資訊。需要我們自己儲存。d的計算方法是求e關于3120的模逆,得出d=2753。具體的計算過程可以使用Euclid算法得到模逆。

以上我們所得到的公鑰和私鑰已經可以用來傳遞密文。

例如:

如果要傳遞的資訊為5。那麼傳遞到網上的密文為5^17(mod3233)=3086。接收方收到密文3086,解密3086^2753(mod3233)=5,就可以得到傳遞的資訊5。

rsa算法_RSA算法實作過程

實際的RSA公鑰

RSA的應用:數字簽名。

繼續閱讀