網路安全 練習RSA演算法

2021-09-11 05:47:21 字數 1105 閱讀 4312

已知rsa演算法中,素數p=5,q=7,模數n=35,公鑰e=5,明文為bed,對明文進行加解密,使用手工完成rsa公開秘鑰密碼體制演算法加密運算。字母數字對映表如下:

請參考:

(1)設計公私金鑰(e,n)和(d,n)根據題設,p=5,q=7,故

模數n=5×7=35;f(n)=(p-1)(q-1)=4×6=24;取e=7,則e×d≡1 mod f(n),即

7×d≡1 mod 24。

下面通過試算的辦法來確定d的取值:見下表

通過試算我們找到,當d=7時,e×d≡1 mod f(n)同餘等式成立。所以,令d=7。此時,加密金鑰(公鑰)為:ku=(e,n)=(5,35),解密金鑰(私鑰)為kr=(d,n)=(7,35)。

(2)英文數位化

將明文資訊數位化,並將每塊兩個數字分組。假定明文英文本母編碼表為按

字母按字母排序排列數值,即:

則得到分組後的key的明文資訊為02,05,04。

(3)明文加密

使用者加密金鑰(5,35)將數位化明文分組資訊加密成密文。由c≡me(mod n)得:

相應的密文資訊為23,5,4。

(4)密文解密

使用者b收到密文,通過計算m≡cd(mod n)得到明文:02,05,04。根據上面的編碼表將其轉換成英文,得到原文「bed」。

rsa加密演算法是一種非對稱的加密演算法,非常的巧妙,需要有比較深的相應的數學知識的學習和理解,才能更好地理解rsa加密演算法,這裡只是簡單的模擬了一下rsa演算法的加密和解密過程,從而使我們對rsa演算法有乙個初步的了解。

網路安全 簡單RSA演算法的實現 C

這是課程學習中的乙個作業,把手寫過程轉成程式實現 4 已知rsa演算法中,素數p 5,q 7,模數n 35,公鑰e 5,明文為bed,對明文進行加解密,使用手工完成rsa公開秘鑰密碼體制演算法加密運算。字母數字對映表如下 可以參考,用例項給新手講解rsa加密演算法 但並不保證網頁內容完全正確,請自行...

網路安全 6 安全體系(二) RSA演算法詳解

文章是從網上覆制過來的,原文有很多錯別字和錯誤的地方,我在這裡已經更正了,可直接閱覽。另外我還在文中新增了一些注釋,以便初學者能更好更快的理解。本文主要講述rsa演算法使用的基本數學知識 秘鑰的計算過程以及加密和解密的過程。rsa公鑰加密演算法是1977年由羅納德 李維斯特 ron rivest 阿...

網路安全常見練習靶場

注 靶場在精不在多,靶場在練不在收藏!二 靶場學習記錄 三 工具學習記錄 四 enjoy webgoat是由著名的owasp負責維護的乙個漏洞百出的j2ee web應用程式,這些漏洞並非程式中的bug,而是故意設計用來講授web應用程式安全課程的。這個應用程式提供了乙個逼真的教學環境,為使用者完成課...