資源描述:
《加密算法介紹》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、RSA加密算法介紹? 首先,找出三個(gè)數(shù),p,q,r, 其中p,q是兩個(gè)相異的質(zhì)數(shù),r是與(p-1)(q-1)互質(zhì)的數(shù)?! ,q,r這三個(gè)數(shù)便是privatekey。接著,找出m,使得rm==1mod(p-1)(q-1).....這個(gè)m一定存在,因?yàn)閞與(p-1)(q-1)互質(zhì),用輾轉(zhuǎn)相除法就可以得到了.....再來,計(jì)算n=pq.......m,n這兩個(gè)數(shù)便是publickey?! 【幋a過程是,若資料為a,將其看成是一個(gè)大整數(shù),假設(shè)a=n的話,就將a表成s進(jìn)位(s<=n,通常取s=2^t),則每一位數(shù)均小於
2、n,然後分段編碼......接下來,計(jì)算b==a^mmodn,(0<=b若p,q是相異質(zhì)數(shù),rm==1mod
3、(p-1)(q-1),a是任意一個(gè)正整數(shù),b==a^mmodpq,c==b^rmodpq,則c==amodpq證明的過程,會(huì)用到費(fèi)馬小定理,敘述如下:m是任一質(zhì)數(shù),n是任一整數(shù),則n^m==nmodm(換另一句話說,如果n和m互質(zhì),則n^(m-1)==1modm)運(yùn)用一些基本的群論的知識(shí),就可以很容易地證出費(fèi)馬小定理的........<證明>因?yàn)閞m==1mod(p-1)(q-1),所以rm=k(p-1)(q-1)+1,其中k是整數(shù)因?yàn)樵趍odulo中是preserve乘法的(x==ymodzandu==vmodz=>xu==yvm
4、odz),所以,c==b^r==(a^m)^r==a^(rm)==a^(k(p-1)(q-1)+1)modpq1.如果a不是p的倍數(shù),也不是q的倍數(shù)時(shí),則a^(p-1)==1modp(費(fèi)馬小定理)=>a^(k(p-1)(q-1))==1modpa^(q-1)==1modq(費(fèi)馬小定理)=>a^(k(p-1)(q-1))==1modq所以p,q均能整除a^(k(p-1)(q-1))-1=>pq
5、a^(k(p-1)(q-1))-1即a^(k(p-1)(q-1))==1modpq=>c==a^(k(p-1)(q-1)+1)==amodpq
6、2.如果a是p的倍數(shù),但不是q的倍數(shù)時(shí),則a^(q-1)==1modq(費(fèi)馬小定理)=>a^(k(p-1)(q-1))==1modq=>c==a^(k(p-1)(q-1)+1)==amodq=>q
7、c-a因p
8、a=>c==a^(k(p-1)(q-1)+1)==0modp=>p
9、c-a所以,pq
10、c-a=>c==amodpq3.如果a是q的倍數(shù),但不是p的倍數(shù)時(shí),證明同上4.如果a同時(shí)是p和q的倍數(shù)時(shí),則pq
11、a=>c==a^(k(p-1)(q-1)+1)==0modpq=>pq
12、c-a=>c==amodpqQ.E.D.這個(gè)定理說明a
13、經(jīng)過編碼為b再經(jīng)過解碼為c時(shí),a==cmodn(n=pq)....但我們?cè)谧鼍幋a解碼時(shí),限制0<=a14、1585042342618102595143352719113605244366355473931231576254493830221466153453729211352820124III.把變換后的密鑰等分成兩部分,前28位記為C[0],后28位記為D[0].IV.計(jì)算子密鑰(共16個(gè)),從i=1開始。1.分別對(duì)C[i-1],D[i-1]作循環(huán)左移來生成C[i],D[i].(共16次)。每次循環(huán)左移位數(shù)如下表所示:i.輪12345678910111213141516位數(shù)11222222122222212.串聯(lián)C[i],D[i],得
15、到一個(gè)56位數(shù),然后對(duì)此數(shù)作如下變換以產(chǎn)生48位子密鑰K[i]。變換過程如下:1.1417112415328156211023191242681672720132415231374755304051453348444939563453