摘要:RSA的安全性在于大整數因子分解的難度,其體制構造是基于數論的歐拉定理,產生公開密鑰和秘密密鑰的方法為:(1)取2個互異的大素數p和q;(2)計算n=p×q;(3)隨機選取整數e,且e與(p-1)×(q-1)互為素數;(4)另找一個數d,使其滿足(e×d)mod[(p-1)×(q-1)]=1;(n,e)即為公鑰;(n,d)為私鑰。對于明文M,用公鑰(n,e)加密可得到密文C,
RSA的安全性在于大整數因子分解的難度,其體制構造是基于數論的歐拉定理,產生公開密鑰和秘密密鑰的方法為:
(1)取2個互異的大素數p和q;
(2)計算n=p×q;
(3)隨機選取整數e,且e與(p-1)×(q-1)互為素數;
(4)另找一個數d,使其滿足(e×d)mod[(p-1)×(q-1)]=1;(n,e)即為公鑰;(n,d)為私鑰。對于明文M,用公鑰(n,e)加密可得到密文C,C=Me mod n;對于密文C,用私鑰(n,d)解密可得到明文M,M=Cd mod n。
利用當今可預測的計算能力,在十進制下,分解2個250位質數的積要用數十萬年的時間,并且質數用盡或2臺計算機偶然使用相同質數的概率小到可以被忽略。由此可見,企圖利用公鑰和密文推斷出明文或者企圖利用公鑰推斷出私鑰的難度極其巨大,幾乎是不可行的。因此,這種機制為信息傳輸提供了很高的安全保障。
由上述內容可以發現,無論是對稱加密和非對稱加密的過程都是完成如下的過程:
(1)產生密鑰key;
(2)C=F(M,Key),即使用已經產生的密鑰,通過加密算法將明文轉換為密文。
(3)數據傳輸;
(4)M=F’(C,key),即接收方使用解密算法,將密文轉換為明文。
通信工程師備考資料免費領取
去領取
專注在線職業教育25年