現代密碼-公鑰密碼RSA

纤秾發表於2024-11-10

實驗介紹:

一個金鑰(公鑰)是公開的,另一個金鑰(私鑰)必須保密,且由公鑰求解私鑰的計算是不可行的。

RSA

1選取質數p和q(pq不可公開)

2計算n=pq,φ(n)=(p-1)(q-1)
3隨機選取整數e作為公鑰,要求1<e<φ(n),e和φ(n)互質
如果不互質,就沒有逆元,算不出私鑰。
4計算私鑰d,怎麼計算呢,使用歐幾里得演算法先算出e在φ(n)下的逆元,再求e逆元在modφ(n)下的值。
image

舉例:p=43,q=59,n=pq=43x59=2537.
φ(n)=(p-1)(q-1)=42x58=2436
選取e=13,滿足1<e<φ(n),e和φ(n)互質,ed=1modφ(n)
d=937

加密

image

解密

image
私信發python程式碼

相關文章