實驗二rsa公鑰密碼體制

實驗二rsa公鑰密碼體制

ID:24157628

大小:101.85 KB

頁數(shù):4頁

時間:2018-11-13

實驗二rsa公鑰密碼體制_第1頁
實驗二rsa公鑰密碼體制_第2頁
實驗二rsa公鑰密碼體制_第3頁
實驗二rsa公鑰密碼體制_第4頁
資源描述:

《實驗二rsa公鑰密碼體制》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學術(shù)論文-天天文庫

1、實胗工,完公翎密鵒加、解密技術(shù)一,實獪fl的通過編寫RSA算法(小素數(shù))程序,并運行此程序?qū)嶒灁?shù)據(jù)進行加密和解密操作,使學生進一步掌握RSA公鑰密碼體制。工、實臉要求(1)用VC++寫出加密、解密程序代碼。(要求完成加密和解密,明文僅限為英文字母、數(shù)字、空格和標點符號):(2)運行自己編寫的程序,輸入素數(shù)p=7,q=13:明文為最多兩位整數(shù)學號:如2,23等,得出和應(yīng)的密文,并對其解密,驗證解密后得到的明文是否與輸入的學號相Mo三、相襄知識1976年,W.DiffieM.E.Heilman提出了公鑰密碼學的思想。在公鑰密碼體制中,加密密鑰和

2、解密密鑰是不一樣的,加密密鑰可以公幵傳播而不危及密碼體制的安全性。公鑰密碼體制主要有三種:RSA公鑰密碼體制、EIGamal公鑰密碼體制、Menezes-Vanstone公鑰密碼體制。本次實驗內(nèi)容是關(guān)于RSA公鑰密碼體制。RSA公鑰密碼體制的安全性是基于大整數(shù)的素分解問題的難解性。其有自身的優(yōu)缺點,優(yōu)點是加密密鑰可以公幵傳播,缺點是運算速度較慢。算法描述:(本次試驗只要求對小素數(shù)實現(xiàn)RSA算法)1.密鑰的產(chǎn)生1)找出兩個相異的素數(shù)P和Q,$N=PXQ,1=(P-1)(Q—1)。2)找出與M互素的整數(shù)E,且1〈E〈M利用歐氏算法計算出整數(shù)D,

3、使DXE=1MODMo歐氏算法:①nl-M,n2-E,bl-0,b2-l;②k=[nl/n2],r*-nl-k*n2;③如果1^0,則nl^-n2,n2<-r,t<-b2,b2—bl-k*b2,bl—t;轉(zhuǎn)第②步;④如果n2#l,則E模M不存在逆元;⑤如果n2=l,則E模M的逆元為b2modM為什么有:E模M的逆元為b2modM根據(jù)課本屮定理5.6,只要E,M互素且1〈E

4、a2(0)nl(0)+b2(0)n2(0)假設(shè)時成立,則有nl(j)=al(j)nl(O)+bl(j)n2(0)n2(j)=a2(j)nl(0)+b2(j)n2(0)當i=j+l時有:nl(j+l)=n2(j)=a2(j)nl(0)+b2(j)n2(0)n2(j+l)=nl(j)-q(j)n2(j):al(j)nl(0)+bl(j)n2(0)-q(j){a2(j)nl(0)+b2(j)n2(0)}=(al(j)-q(j)a2(j))nl(0)+(bl(j)-q(j)b2(j))n2(0)這樣循環(huán)下去,直到q(i)=0,n2(i)=l則b2(i

5、)滿足:b2(i)氺E+a本M=1令:b2=b2(i)modM,則b2*EmodM=1故:b2是E關(guān)于模M的逆元3)丟棄P和Q,公開E,D和N。E和N即加密密鑰,D和N即解密密鑰。2.明文加密字符a屬于明文集A,進行c=a"EMODN運算。c就是密文數(shù)據(jù)的一個字符塊,將所有密文塊合并起來,就得到丫密文數(shù)據(jù)C。3.密文解密C-字符塊c屬于密文C,進行a=cFilesBicrosoftVisualStudioMyProjectsgfgsdgsD

6、ebuggf.卜****RSA加密瑕密才程的'演示障輸入小整數(shù)萌文:3入兩個小素數(shù)P,q:35計算后得到:卜=15sn=8睛輸入與卯互素的小整數(shù)。時7/*RSAalgorithm*/#include^include#include^include#include〈stdio.h>〈iostream〉〈math.h>usingnamespacestd;intgcd(intx,inty)/*求xy的最大公因子*/{intt;while(y)t=x,x=y,y=t%y;returnx;longcmp(longa

7、)/*求與a互素的數(shù)*/{longx,y;for(longi=3;i〈a;i++){y=i;x=gcd(i,a);/*如果兩個數(shù)的最大公因子為1則這兩個數(shù)互素*/if(x==l)break;}returny;}intniyuan(intsn,inte){intd,nl,n2,b2=l,bl=0,k,r,t;nl=sn;n2=e;while(1){k=nl/n2;r=nl-k氺n2;if(r!=0)nl=n2;n2=r;t=b2;b2=bl_k氺b2;bl=t;else{break;if(n2!=l){cout〈〈"e關(guān)于模sn的逆元不存在。"

8、<

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。