(1)選擇一對不同的、足夠大的素數p,q。
(2)計算n=pq。
(3)計算f(n)=(p-1)(q-1),同時對p, q嚴加保密,不讓任何人知道。
(4)找乙個與f(n)互質的數e,且1
取p =3 ,q = 11; 則 n = pq = 33; f(n) = (p-1)(q-1) = 20, 在1到20中取e與20互質,取e=3(也可以取其他);
d*3≡1 mod 20 ;取d = 7(d也可以為27等)
公鑰ku為e,n : 3,33
私鑰kr為d, n : 7, 33
原文11,5,25進行加密
113 mod 33 = 11
53 mod 33 = 26
253 mod 33 = 16
對11,26, 16解密
117 mod 33 = 11
267 mod 33 = 5
167 mod 33 = 25
引用自:
例項講解RSA演算法
圖為 rsa公開金鑰演算法的發明人,從左到右ron rivest,adi shamir,leonard adleman.攝於1978年 素數是這樣的整數,它除了能表示為它自己和1的乘積以外,不能表示為任何其它兩個整數的乘積。例如,15 3 5,所以15不是素數 又如,12 6 2 4 3,所以12也...
用例項講解RSA加密演算法 精
rsa是第乙個比較完善的公開金鑰演算法,它既能用於加密,也能用於數字簽名。rsa以它的三個發明者ron rivest,adi shamir,leonard adleman的名字首字母命名,這個演算法經受住了多年深入的密碼分析,雖然密碼分析者既不能證明也不能否定rsa的安全性,但這恰恰說明該演算法有一...
c 實現rsa演算法 RSA演算法實現過程
rsa演算法是實現非對稱加密的一種演算法,其用到很多有關數論的內容,在此我們不多討論。而將目光聚焦於演算法的實現過程。rsa過程 第二步 計算n a b 61 53 3233 第三步 計算 a 1 b 1 60 52 3120 第四步 選擇與3120互質的乙個數e 17,這個e也就是我們的公鑰,需要...