RSA加密算法計算題

1、假設p=5,q=7,e=5,m=2.計算d,公鑰,私鑰。

方法一:

n=p*q=5*7=35

Φ(n)=(p-1)*(q-1)=4*6=24

由公式:e d mod Φ(n)=== 1   

帶入數字得:5 d mod 24 ===1

把上訴公式看成:5x+24y = 1

拆分:

24 = 5*4+4

5 = 4*1+1

4 = 24 - 5*4*1

1 = 5 - (24-5*4)*1 = 5-24+5*4 = 5*4+5-24=5(4+1)-24 = 5*5-24

5*5-24=1 與 5x+24y = 1 格式相等。則 x=d=5

公鑰(n,e)=(35,5)    私鑰(n,d)=(35,5) 


方法二:

公式:Φ(n) * k  + 1 =ed      k:爲係數,且從1開始,例如:(1,2,3,4,5........)

公式推出:(Φ(n) * k  + 1 )/ e = d

假設k=1時:

24*k+1/ 5 = d  

d = 5

若 k=1 時除不盡的話那就將 k =2 帶入計算,還是不行則取 k =3,依次類推。直到(Φ(n) * k  + 1 )/ e = d 能除盡沒有餘數爲止


2、用RSA算法加密時,已經公鑰是(e=7,n=20),私鑰是(e=3,n=20),用公鑰對消息M=3加密,得到的密文是_____?

n=20
d=7 公鑰
e=3 私鑰
對M=3 進行加密
M'=M^d%n (M的d次方,然後除以n取餘數)
M'=3^7%20=2187%20=7 加密後等於7
對M'=7進行解密
M=M'^e%n=7^3%20=343%20=3 解密後又變成3了




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章