密碼學08 RSA密碼 EIGamal密碼

2021-09-29 19:57:28 字數 856 閱讀 9798

非對稱密碼,分組密碼

數學基礎

φ(n) = p*q-(q-1)-(p-1) -1 = (p-1) * (q-1)

最後-1是減去n本身

rsa加密與解密
已知p、q如何求d?

①算出n = p * q,φ(n) = (p-1) * (q-1)

②隨機選擇乙個小於φ(n)且互質的整數e

③使用擴充套件的歐幾里得演算法求d

素數q和其本原根α是兩個公開的整數,

使用者a先選擇一數字xa

< q作為私鑰,再計算ya = αxa作為公鑰,將ya傳送給b。

使用者b先選擇一數字xb

< q作為私鑰,再計算yb = αxb作為公鑰,將yb傳送給a。

兩人都可以計算出公共金鑰k = yb

xa mod q和k = ya

xb mod q,

這兩個k是相同的。

攻擊者在知道q、α、ya、yb的情況下想要知道k的值就必須要算出私鑰xa或xb,xa = dlogα、q(yb),這是非常困難的。

破解方法:中間人攻擊

假設此時攻擊者c截獲了傳送過程中的ya和yb,由於q和α是公開的,所以c可以選擇兩個私鑰xc,偽造兩份yc發給a和b,這樣a、b會錯以為他們之間已經共享金鑰k,然而實際上a、b只是分別和c共享了金鑰k1和k2,這樣a、b之間傳送的加密訊息都會被c竊聽和篡改。

這是基於離散對數問題上的公開金鑰密碼體系。

數學基礎

71 mod 19 = 7

72 mod 19 = 11

73 mod 19 = 1

階為3

eigamal的加密和解密

密碼學演算法 RSA

rsa演算法安全瓶頸 rsa演算法的乘法同態特性 rsa第一次在r.l.rivest,a.shamir和l.adleman的1978年的 a method for obtaining digital signatures and public key cryptosystems 中,作為一種新的數字...

密碼學之RSA加密

最近在學習網易公開課上可汗學院現代密碼學的課程,整理了一下自己的筆記3 rsa加密 非對稱金鑰,公開金鑰演算法 rsa加密利用了單向函式正向求解很簡單,反向求解很複雜的特性。具體是利用了 1.對兩個質數相乘容易,而將其合數分解很難的這個特點進行的加密演算法。n p1 p2,已知p1 p2求n簡單,已...

密碼學之RSA加密

最近在學習網易公開課上可汗學院現代密碼學的課程,整理了一下自己的筆記3 rsa加密 非對稱金鑰,公開金鑰演算法 rsa加密利用了單向函式正向求解很簡單,反向求解很複雜的特性。具體是利用了 1.對兩個質數相乘容易,而將其合數分解很難的這個特點進行的加密演算法。n p1 p2,已知p1 p2求n簡單,已...