密碼學中的RSA算法
2018-03-20 15:59:29 | 來源:中培企業IT培訓網
2.RSA算法
RSA公鑰密碼算法是以發明者R.Rivest、A.Shamir和L.Adleman的名字命名的,它的安全性是基于整數因子分解問題的困難性。RSA算法是第一個能同時用于加密和數字簽名的算法,易于理解和操作;是被研究得最廣泛的公鑰算法,經歷了各種攻擊的考驗,逐漸為人們接受;也被普遍認為是目前最優秀、應用最廣泛的公鑰算法之一。
1) RSA算法描述
選取兩個大素數p和q,計算其乘積:n= pq和歐拉函數巾(n)=(p一1)(q-l);然后隨機選取加密密鑰e,l<e<中(n),滿足e和( p-1)(q-l‘)互素。最后用歐幾里德擴展算法計算解密密鑰d,以滿足ed=l(mocl(p-l)(q-l)),即
d= e-1 mod((p-l) (q-l)) e和n是公鑰,d和n是私鑰。
RSA算法對明文以分組為單位進行加密,每個分組的二進制均小于n。即分組的大小必須小于或等于1092(朋)位;在實際應用中,分組的大小是啦,其中2k<n≤2.k+1。對明文分組M,加密過程如下C=lVfmodn:。對密文分曉亂,解密過程如下:M_Cdmodn。
標簽:
RSA算法
- 上一篇:密碼學中的其他算法特點
- 下一篇:密碼學中RSA算法舉例