华北电力大学-网络信息安全综合试验报告_第1页
华北电力大学-网络信息安全综合试验报告_第2页
华北电力大学-网络信息安全综合试验报告_第3页
华北电力大学-网络信息安全综合试验报告_第4页
华北电力大学-网络信息安全综合试验报告_第5页
免费预览已结束,剩余19页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、综合实验报告(2013 - 2014 年度第1学期)名 称:网络信息安全综合实验题 目:RS心钥加密解密院 系:计算机系班 级: 网络工程学 号:学生姓名:指导教师:李天设计周数: 1 周日期:2013年1月18日一、综合实验的目的与要求要求:了解 RSA产生公钥和私钥的方法,掌握RSA的加密、解密过程,编写程序设计RSA加解密工具。RSA加解密参考:RSA的安全性依赖于大数分解,公钥和私钥都是两个大素数(大于100个十进制位)的函数。据猜测,从一个密钥和密文推断出明文的难度等同于分解两个大素数 的积。密钥的产生:1 .选择两个保密的大素数p和q;2 .计算n=p*q和欧拉函数值 E(n)=(

2、p-1)(q-1);3 .选一整数 e,且满足 1<e<E(n)和 gcd(E(n),e)=1;4 .计算 d,且满足 d*e=1 mod E(n);5 .公钥为e, n,私钥d, n。二、RSA算法的描述1. RSA依赖大数运算,目前主流RSA算法都建立在1024位的大数运算之上。而大多数的编译器只能支持到64位的整数运算,即我们在运算中所使用的整数必须小于等于 64 位,即:0xffffffffffffffff,也就是 18446744073709551615,这远远达不到 RSA 的需要,于是需要专门建立大数运算库来解决这一问题。最简单的办法是将大数当作数组进行处理,也就是将

3、大数用09这十个数字组成的数组进行表示,然后模拟人们手工进行“竖式计算”的过程编写其加减乘除函数。但是这样做效率很低,因为二进制为1024位的大数其十进制也有三百多位,对于任何一种运算,都需要在两个有数百个元素的数组空间上做多 重循环,还需要许多额外的空间存放计算的进退位标志及中间结果。另外,对于某些特殊的运算而言,采用二进制会使计算过程大大简化,这种大数表示方法转化成二进制显然非常麻烦,所以在某些实例中则干脆采用了二进制数组的方法来记录大数,这样效率就更低了。 一个有效的改进方法是将大数表示为一个n进制数组,n可以取彳1为 2的16次方,即0x1000,假如将一个二进制为1024位的大数转化

4、成 0x1000进制,它就变成了 64位,而每一位的取值范围就不是二进制的01或十进制的0 9,而是0-0xffff ,我们正好可以用一个无符号整数来表示这一数值。所以1024位的大数就是一个有64个元素的unsigned int数组,针对 unsigned int数组进行各种运算所需的循环规模至多64次而已。而且0x10000进制与二进制,对于计算机来说,几乎是一回事,转换非常容易。加法: A=Sumi=0 to p(Ai*0x10000*i); B=Sumi=0 to q(Bi*0x10000*i), p>=q ;C=Sumi=0 to n(Ci*0x10000*i)=A+B。如果用

5、 carryi 记录每次 的进位 则有:Ci=Ai+Bi+carryi-1-carryi*0x10000, 其 中 carry-1=0。 若Ai+Bi+carryi-1>0xffffffff,贝U carryi=1 ;反之贝U carryi=0 ,若 carryp=0 ,则n=p;反之则n=p+1。减法与加法同理。因此:Ci=Sumj=0 to q(Ai-j*Bj)+carryi-1-carryi*0x10000,其 中carry-1=0, carryi=(Sumj=0 to q(Ai-j*Bj)+carryi-1)/0x10000, n=p+q-1 ,若 carryn>0 ,贝U

6、 n=n+1, Cn=carry除 法设 A=Sumi=0 to p(Ai*0x10000*i),B=Sumi=0 to q(Bi*0x10000*i), p>=q, C=Sumi=0 to n(Ci*0x10000*i)=A/B。由于无法将B对A “试商”,我们只能转换成 Bq对Ap的试商来得到一个近似值, 所以 我们不能够直接计算Co但是,我们可以一步一步地逼近Co显然, (Ap/Bq-1)*0x10000*(p-q)<C,令 X=0, 重 复 A=A-X*B ,X=X+(Ap/Bq-1)*0x10000*(p-q),直至U A<R 则有 X=C。1、选取长度相等的两个大

7、素数p和q,计算其乘积:n = pq然后随机选取加密密钥e,使e和(p - 1)(q - 1)互素。最后用欧几里德扩展算法计算解密密钥d,以满足ed = 1(mod(p - 1) ( q - 1) 即 d = e - 1 mod(p - 1)(q - 1) e和n是公钥,d是私钥2、加密公式如下:ci = miAe(mod n)3、解密时,取每一密文分组ci并计算:mi = ciAd (mod n)Wd = (miAe) Ad = miA(ed) = miAk (p-1) (q-1) +1 =mi miAk (p - 1) (q-1) = mi *1 = mi4、消息也可以用 d加密用e解密

8、三、编程思路编程思路总共分为以下部分:1、检验两个数是否互素;2、由欧拉公式算出相应的密钥 d;3、实现募函数的取余,从而得以进行解密或加密。4、实现主要函数编写。实现RSA算法。并加解密。说明:为了方便实现,分组可以小一点,比如两个字母一组。(1) .选择两个大的素数 p和q (典型情况下为1024位)(2) .计算 n = p * q 和 z = ( p-1 ) * (q-1 ).(3) .选择一个与z互素的数,将它称为 d(4) . 找到e,使其满足 e*d = 1 mod z提前计算出这些参数以后, 我们就可以开始执行加密了。首先将明文分成块,使得每个明文 消息P落在间隔0*P<

9、n中。为了做到这一点,只要将明文划分成 k位的块即可,这里k是满 足2”<n的最大整数。为了加密一个消息 P,只要计算 C=PAe(mod n)即可。为了解密 C,只要计算 P=CAd(mod n) 即可。可以证明,对于指定范围内的所有P,加密盒解密互为反函数。为了执行加密,你需要e和n;为了执行解密,你需要d和n。因此,公钥是有(e, n)对组成,而私钥是有(d,n)对组成。实例:根据已知参数:p=3, q=11, M=2计算公私钥,并对明文进行加密,然后对密文 进行解密。由题意知:n = p * q = 33, z = (p-1 ) * (q-1 ) = 20,选 d = 7,计算得

10、e=3,所以C=MAe(mod n) = 8 M=QAd(mod n) = 2四、主要程序说明1.关键环节1.求模逆元的扩展欧几里德算法原理:正整数 a 和 b 满足 sn*a + tn*b =(a,b), 当(a,b)=1 时,sn = aA-1 mod b其中 s0 = 1,s1 = 0,sj = (sj-2) (qj-1)*s(j-1; t0 = 0,tj = (tj-2) (qj-1)*t(j-1)输入大数a和b输出:aA-1 mod b 或0 (不存在逆元)(1) s0 = 1,s1 = 0(2) while b>0 do2.1 q = a/b;s2 = s0-q*s1;2.2

11、 s0 = s1;s1 = s2;2.3 t = b;b = a%b;a = t;(3) if a=1 return s0;else return 0;2.明文(数值)长度要小于key_N,才符合RSA算法,否则很容易出错,我选择了一个大于key_N的明文,发现经过验证并不符合RSAM法。那么,处理那些明文(数值)很大的办法就是将明文分成一小段一小段,否则,解密的信息必然是一堆乱码(除非原明文数值并不大)。 分成一小段之后,然后利用加密公式和解密公式对其进行处理,这样得到的结果就是准确结果了 °2.主要函数公钥和私钥的生成 void generate_key()(1)首先利用stro

12、ngprime 函数生成两个素数 key_P_Q0,key_P_Q1,然后利用multiply 函数得到 key_N = key_P_Q0 * key_P_Q1, 用 subtract 函数和 add 函数实现 key_Z = (key_P_Q0 - 1 ) * (key_P_Q1- 1) = key_N -(key_P_Q0 + key_P_Q1) + 1。(2)随机生成一个密钥key_D,然后利用extend_gcd函数求同余方程 key_D *key_E modkey_Z = 1 。得到key_E,作为公钥。(3)至此将公钥(key_N,key_E )写入文件中,将私钥(key_N,ke

13、y_D )写入文件中保存。力口密信息 void encode_information()将加密的信息长度判断是否大于key_N的长度,如果大于key_N的长度,应该将加密信息分成一小段一小段,各小段长度均小于 key_N长度,然后利用读取已经保存在文件中的公钥和 私钥,对加密信息每小段每小段进行加密,并将加密信息密文存放到加密文件中。加密将用至U 的函数为 powmod(key_P,key_E,key_N, key_C)。解密信息 void decode_information()解密信息和加密信息采用同样的道理,即利用保存好的密钥对密文一段一段进行解密。解密将用到的函数为 Powmod(ke

14、y_C,key_D,key_N,key_P)五、实验结果(1)公钥长度为1024位进行验证:20D12432DebTie£0042432. exe7R4F5RD7178CF88?公钥长芟依y_N -x kR_P_Qri 1 管 1024 位 1正在产生公钥和私翎,请等候请输入你要选择的菜单项力-1!-输出加密密钥My E上生=输出解密密钥 k3J)= = = h2C9312b&EUb27A7A147AHAFH9HFl>B3CACUe473*?52?2AG38CF2C510»a512&17EFE3AC77FC939DlB3905E25C?图(1 )生成公

15、钥和私钥一董密密出选注那®9请1:z:3;4!=m=专 元=口*147 聿铜念息 帝公信信a2"=m=输出公钥ltesJ_M=-= = - =D£0B963?4DDF73D3315E5i2fi4E0B5D23528BBS3B8BFD86BflFni4390?67D238EE36?DECT9B20911;* *E:20042432Debug20042432 exe*|前入碣选点累晕要加密的文件为=e;20D12132Xl.lxl正在加密信息The only 如ay to trauel ±s on footTh静 Past a口必零 of mam Eaua

16、a 11 b型型匕 cair*Fullii lab#l»rt h" Anth>«ap<t>l<aigiststions like Palaeolithic ManNeolithic Man> etc., neatly suin up uhole periods. U hen the tine comes fof antliropDlog)ists to tiirin their attention to the twentieth camuryitlio511 will auurly dioose tho laJbe 1 Legl目谷

17、白 M-an. H orxes of <ho 七上n曰 hri 11 go sometiiing Like tills - in the tvientieth centur;/, people forgot how to use th eip leg(s. Men and women omoued about in cars, buses and ti*ains f r-nni a uery early 4亨金 . Fhcrc were Lifts and c sc a Lait; a r-s in all larc buildiing's ta prevent people F

18、 r on talking. This situation uas fopced upon eairth duellers of that time because o f niles each day. But the sinrprisingr tiling Is that they didri11 use theii* legs eu en 幡hen they on hol$Qy. They built cable railway, ski-lifts and 肝口口等 to* the: top of every hucre mouintain. All the beautv spots

19、on earth were narred bv the presence of laryre car parlks.I Ite futore histoF books might also recoml cbat we wer deprived of the use of o n>* r 厚或- I n 0111* 卜111*胖沙 tn gff t from nna jilarfi? tow«> Fail 塾H fro 主一比 anything on the way- Aiir* tpauel giies you a bii*d零=eye vieur of the wor

20、ld - gf even less if the wing of the aircrft happens to get in you* way. Whenyou trauel by cai* oifc tiain ablurrodl Imago of t ho coitnconatzant nearoth。 windawa BC息,* diftlyers, in particulat*, are forever obseed with the iu:*ge to go on and on: they n eyer »antto 尊七up. Is it tlie lure of tli

21、egreat mjtnii*丽yw叫 ofwhat? And asfor sen tiravG工七 liOLi'dl dtcaetuic寺 ntcrit:jldh. It;is perfect 1 surmimcdup in 七he寻 ofthe old songf: I joined tlie nauy to see the world, and what did I see? I sau1 tlie sea- The topical twentieth-centULry traueler is the man uha aluaj/s sas 1J1 ue been theie H

22、You nen&ion the renoes;t.和iu睿t euocaitiye place-nanes in the 3口即 141 likeEl Dorado, Kabul. Irkutsk and someone is bound to say Ive bee it there - meaniiritr). I dmoe through it at IBS mile首 ai houir on th>e wy to someuhei'e eIse.VJien yoiii rayel at higti speeds.« the present nearni

23、nothing: you liue ndinly ini th e Pii1;>Bir*? h肥北n.总后 yew 黏炉mnd iw看* oF nair 肝 1 oqIciitiiq FfipwAird to fiv1*iuinu 通七薜<nn>e other jjlace. But actual arrivals wlwn it is achieved, is ne an in griefs« Vou vant to move on agr«in. By traveling like thi零. you suspend all experience; t

24、he prestn t Goaooo to ho a 1*0alites you nisfht juot ao wo 11 bo d口6d. TJio trolor 0n foot, on the othei* hand, liues constantly in the presents For hin traveling and arriwi图(2)加密文件 e:200424321.txt,并显示加密文件中信息或 *E:120D42432Debwe20042432. exe请输入赤莫选洋的菜单项7要解容出的支住有留在-c;SLlt.txt 一髀密出的明文信息,一一rlhc 口mly way

25、<to trsvcl is qmi fvutTheaytxs uf mam«11carefully labeled by an thro pa loyists. Dcxscr ipL iu”百 likr Fwle携uliLhit Ham.Hanu 修七心mn ui whuIe periods. Wlien the tiii» cuf'ies. fur ahthropoloyiL to Lurn their atlentiun tu tlrn LwenJq u&iiturx Limy will yurtr ly 器 huu* e the Idlwl Le

26、g lex 等 Mdii B Histurlvy uf live t Jlihe wl 11 yu KOURf Hiliiy like tills» In Che LwenLletil 心EiituFy. people foryul huw Lu use tli elr lgsf Xit diid W'Uiven muved About li)1tMi 男七靠 and 1fl ”时 f tupi d very trrtrls/aye. Tliere wejre IlfandJji dll Idrye bullillus tu preueiit pifuijle frun dl

27、kliiy Tills situation 加也 s forced upun edrt h dwellers uf Lliat timeuf miles eeicli day. But the surpjf*lslug thing is that they didri* c use clieli* legs eu eh hen they went onThey built cable railways, ski-lifts and roads toearth were marred hy thedepriued of the use of ue failed to see anvtliinth

28、e top of euery hugfe mouncain. fill the heduty spots on presence of large car parks.1 he fut011*6 tiistory books miglit also record that ue were uf eyes. 1 ri our hurry to gfet fron ome place to another.S( on the 邸式少. fiir trauel gives you a birds-eye uiew ol the yorld - or euen less if the wing of

29、tine aircraft happens to get In your way. When yuii traue 1 hy car or train a iversF In eweir najit a trauielj,blurred image of the coimtrysiile constantly snears the wlnd!nvj>s. Gar dr part icular, are f opewep obsessedl uitli the urge to go an and on - they n to stop Is it the lure of the sprea

30、t motDFuaisj, or what? And as for se it hekirdly de&erues mention. It is perfectly slimned up in the uords of the old wong: I joined the nauy to see the uorld apd what did I see? I saw the sea« rhe typical twentieth-century ti*veler is the nan uho al町ys sa驶 11 ue Jjeen there. Vou Rentioin t

31、he remotest most euocatlve place-names in the world likeEl Dorado Kabul, Irkutsk andis bound to s$si Ive been there - meaniingI droe through it at 100 oile$ an hour on tTie way to svmcuhere else.Wheri you travel at hi grit speeds« the present neans nothing: you Live nainly in th e futuire becau

32、se you spend most of your tine looking forwHsrd to arriving at some otJier plce. But act ual arFiul when it is acki总ued, is mean ingless . Vou want to Fioe on agtin. By traveling8 like this* you suspend all experience; the prsen t cerates to be a reality: you night just as: well be dead. The tpauele

33、p on foot oh th& othei* hamd Hues constantly in the presentH For him traveling and airivi图(3)解密文件,并显示解密文件中信息图(4)选择键。可以选择 4程序结束P key C. dat - 祀事本文件3)编辑® 格式Q)查看处)都助寓9111156ADEB26DF3tlD67 07DD0ll10821B16BEC30fi35C6EE64D8C8AB4F766A1F61ED65527fiC11fiD2_i 52AASFt7WB2F5C84512»F9IW55A4lA75D6C5

34、EVE12D2C2C54393A2fl8ABUDE891l>C4B086F44114-BE73AE7F803CBB87FD3C04879D87F67989Ffl9ABE79E4EC1CD1F42DDF8A42E40E9B56BEOA8D3F4 A08CDF911IE5FAB70BC48DACBliF9Efl2C19E5D£7727EE9B13558CA3A762CB61BDD22CBEC«C81651D3CB9F69476FDEF77#5B79F nH5DE2gC7E,569729由367BF1 她 882A4DRBga2C5R57F55555DMB6327ADD5N

35、D1g50F6E87gRAF8A cm?C3F7CBi»2O1?F»9C72)CAiiOn9flR9OFB2D7RO5l6lD9DOA92211B5FED439WB13ftCnD745DfiS2C 63DWCF6S7A17DO7F8D1ClC2DEFDFEl62S9DliE6F72BB1D3D2C2£SDDB9 711B&DA4£57C717DFB7£AEhBC391DeC5S17 D681i58A9nASSlS0123B7B9FB8B3585nD36aBFCBS276inACCBAC83ABB42EB8eF8C5lA25926DE8D

36、C E6D«i669 4719aA98eC6ACF3FEB11FC127a9FKED6499eaF92eE0i1F1AA99649a4FC55D5S74aA8D3 B5323675D874A963A264EC8O55375OAP3C19DZ2F3C9263913BD7QOBOB2627B0BE7E43D328F9B 0BD2DD7078871F0B2D - 3F68MB3c4931g779CB9DD9BE4A1AFE19C8F1F1 鼬 8BA 呢 UgEE9699FEFBAB20B294G72 事 A78g86F aR33E7EC28 9Z/rF21OC*lF7i!bZyB0Efi

37、BIL&32HF4«3413FB0U8tM5E5G?riJEF0»araBA1Ob9t>1bC927Z& FBM5B »1730A47791DF51D A1D77AC48D75B6EA9853391ftCftD12B7S58E7HED838DFSB8414CD0FGADF5SAC1。2匚皿田皿。25 加 F75BADC21lFR2B6q65FB 舶 F57E56 口 85C&65 帕DCDA%9C1681BFAGE9FB5EUC©C2887616FDg2382F F61EE3fi3C917OD6fi6871D7E95A419

38、ilE09673068C79DF5EE4D0CA0BU1firOC0ft75E(»A1CEC74FflB7C 56c2EM 0EAFeUED563D31A 4&DBE8*7C4EFD472F5nD4&O2F79SBD5E&9il1FB6B76D26F29277EC8F3C62nfiBDF43C294&870EF17 9RR9D1834DftDCDAlHF183E3,;fift12fili7295CD67FQ42C1EftCft3a93FWF9Ri>2Rflfi42FnRF2Fft06CD2 66E7OAE0CBa9e6aBEee9B?7FA68C

39、71B3FE98B2S4SES9e5693BA53C9BFDOFAlB3C7UFEaiBOSO7E94 DADOBCAlinB0D8BDfi2DEF&B3A7A1C9CEEDBD839AB49DEF8D35B73BB93E6AB41C4IECB3FDSEF3E2F7B9FE3AA9274303982A1E8 23CDAB1CD2BFEr0066241 31E 0Cn9Q911CE&eEB52E99O2FDOAE1CO9E276E6C29 77BFFF3 自4与白BF41 53862B98C836E836622D15A26DFC21ABE0D 3B1CSD36BEFC2FEF62

40、3C58F6E5DE D65DC23A42A215D E2>iE9Z19a81 FR911«f4C528FDCBCG7E99E5BC82EF159D6dA9CFFFD8ABB447D402ECiri08BDF922D31D5756F96D3AF2F1C4D B”B42E9Df41 U369yiCDZS79Oa3A6H0i|3EZi»9C42BFai HC9D3961 ULBBSOSE4aP&CbaaZHUIZGSI DB89F562B9FaFEA559F53?106597C15922Bfi3AE93B2fl86E0B6734iJ?1RF523C4fiD6ft2

41、F582f7FC3Z图(5) e:200424321.txt 加密后的密文(2)公钥长度为2048位进行验证:输出公物key_ H公钥箕度k”"keyJ>_Q0 * k«y_P_QLl与 2048 位?7F在产生公钥和私钥.请等候+谓输入你要选择的买单项工Ki 3A7CariF9flCP22 5 74A R hH29BCfi9H9P2HBnF9DCB4ft471一输出加密密铝key J2KHlBJSJ3tSJFBbSl!57VlbS;AbJBbFBfl9输H解密密钥人u DCA *E: V20O42432DebnA20042432. ere-图(6)生成公钥和私钥5翎

42、私和 一 隼钥息息一一 B公信信一一 房密密出 选生加解退 王月l:H?:n 1 i 2 3 4*1: 20D42+32DebTjr20 04232 e,e'-in x声. 既密密出 1加暴二口曹秣私钥110心4fW*通物人你要选洋的菜单项0 要;JC密的文件为-e:2tJlHZ43Z7Jja正在加密信息Cliclf on £cuvco Pilon in the 1«£t hand panoaldsfki;Lds*fkdtl&kf sdlkfj Ada. fas df ddddddddddddddd dd ddiidddddtlH<ldddd

43、dddd<ldddddd Adi dddd ddd aaadrfrrffrrfrr rfff ffrr rrr请按任意疑继续-图(7)对e:200424322.txt文本文件进行加密生成公钥和私钱要解密日Click3 :解密信息 =4:退出=df dd dd dd ddddddddd dd dd dddd dddaa dLaaaaaaaaaaaaaaiaaaaaaaa-7-解密信息结束20O42432Debn;20042432. ene123erev44S32565376776878aJ-dlcf kJ ; Id后打射 dslakfsdlkf J黑选择的菜单项T 储在- p !222.t

44、vt 出的明文信息一 the le£ t liand pane图(8)对加密密文 e:20042432key_C.dat 进行解密,并存放在 e:222.txt 中,并在屏幕上显示解密后的信息。2004Z432图(9)图中可以看到其中原明文信息为2.txt ,对它加密后key_P_Q.dat中存放两个大素数,key_N.dat存放两个素数相乘后的结果。Key_D为随机生成的与 key_Z (存放在key_Z.dat 文件中)(即 key_Z = key_N - key_P_Q0 - key_P_Q1 + 1) 互素的大整数, 存放在key_D.dat文件中。key_E为解同余方程后的

45、大数,存放在 key_E.dat文件中。其中key_C为加密后的明文信息,存放在 key_C.dat文件中,并在解密时对这个密文文件进行解密。立件加)编帽 格式®I等看出帮助(WAft128AE3A73A55F82M4DBFflF4eE92814EFF3292F059E5Cft625BBF7ft70297*l8OE188CB78E26A79 . O619781BOCECCD007A73P8O91F>26DOF8REFBCDO»OA931E23OABC3FtrG83BEO4EC7?3AOCCAnO 58177A86D75BE377fii11B56D91C35758BD3

46、146F7E39B0E9F9F879DBBE7E5AA73924BB11ACBF8*4 03405B7EUri56DRVS2FB53215FUF26EZ/HJVVAUH/FA4l>/6U5fllHFBE8UlS57475V7ti&6SD2EU9 9A6F841000C32E33CB9FF621CDE52JlC8BC9873FAil5C271fiEAEDE3931E951C4E87FftFE6C2DF50FA9 362B7DFFO561B91935EF3OK832B5AFA4EFUS7201SSFD8ftE69CCS219B35114EFC1FBFDCD378«B F&a

47、mp;2A4229A8AA184B79B8270F67F&23930623DA03Da331F6699DDI6D7ID>2330DEA0FACF7DKEF335617DBC1384145A 01 «F71 VUE3U21E Ft D7EC K« A 2EBIA5a5A7B00eEtlBFH&B2422DBC4AS2CA152A62BDAI91BAA792BI5296a2588B700C391B317A7 CF11UE 的1C527glM蚊DM9E&174M8F 叫CC7592D1F565F5CD 蚓 1。*5435cl)WC 既 1心由帕肝白3

48、时9 7E7fi799996r6fifl9fl485fl1D36FA39DRftFD1?C9flF9!;lDa94fi74FCFI>49,;C?7fl334375FF3sn7FFF BB302B9B971EF6D3E7C8D9。目 CFG8DB9C4623D6 07CBE4C3c96 fm 2 葡 53部75川心4加心566匕匕20274 2D9e6Dli2EEECB17eO2EeAa67 7FE6FEE9939 7 0C:iOECAD9E9S22C:EeDE36DA1EC37999FlE122F 8ACBD66FAD2BDEEDBC0B8E5OB547EC635B977DC17E269

49、3EECAAFF2ei>C5B3DDDrQ9D36 39 69 0366i1Cn 9 93 D1 D66S015A32&36eE67F13FDS 66 F7F269ri>3 D88B41 7F3FE3C1»FD3EAE3E79F37C92F38419931i8 28B35B9Ii39EIiBFC97EEIiOFCB15A8762A049O MB977500AEC09ai 2152848 3F1?E9lt002AGOfE<f2SC5E50A6FBCeC67288D79B675191CECC39F B73H993EBFEA8OO2OA9CD7O2AE5CE11C

50、1CFV33FC8927B69FBD52AC778FE3893D270C142D375696 P5F?6t W9UtJCCB2D7E09B30Kei9EDB5SflfltBM771F290DlZF4n2319a2BftH9E425 7D3FD(JBEE2B3y 68701D68B65C3CB02838DD9C8C6EfiC42358DD54F2BCEA8DDA214518B1FF7413ilEf1F3560B32Eei D1C90FF76DF217H>2827F6665C4CDEB171B0F1BE1EDF8F8E28817 晶 S1E2E118054D 口 16E70c22U79SE8

51、22696U9275F1E62 0 E2A825F28533CC56HDA 膛A3F F4C7A75CAC889Dl175EEDEa7D159281 0ABF1A173HBW582B84AF5BIBA83DA2CFD31WE6AK8E2C 9377263EHCB5362 岫 6ER93E45F34MCB 岫 DFD35FF4 日 WEF215D8A4681E2E6E8M 仙 9E9R93E6 gM 69enA6D96D3EF0766MEFe7C48723ED708278EAD39D8E1A7ftEeiDB:73ECCFDl47B8r3eF4F4C4BB9F 11823EE236718FD575

52、E4Dii8FDFCrt85CEOA8C53fiFC655ii260152fiD01fiE070F82C1*E«857939Efi83 C4UM0B3D3CC6FAFg948D6F5BCgg5UOnA3FE15CgF34FDE1U3949EFn5ADAAFO45EM38U247 88 0170?1B1B1?42l238EJlC1ftii39l7F96F9ft5C7D5C7742C8F68F9B7BA4B98i|HF49E29A8E772n71lEF303EDlF 6DFaei4 0SnS2aFO&BaJi8A2EECHAFe2C42ee7E3CA1flAiirO&DC

53、6CECfi64iiDB776FS3DEP6A2D16 035 C629E5O62AC12A96795n5>iBA2B2EeF9582A52BFS96ESB6D5A92a956E6984FBC9FCSSllD015AO4l BB7C739BFA1BDD9A3ADe556C5493B4432F8A5C06C79A7981E11C1EABAD)CF049 0B431 E1 599354C332日1445超137E640C196哂2109D4a442U7F1EBEN363DRUEFia2R5触2FCB7UBDECQ34101313AF4图(10) e:200424322.txt 加密后的密文六

54、、综合实验总结通过这次试验我对非对称密码算法RSA的理解加深了,会运用一些现成的算法进行编程,对一些比较复杂的算法开始基本认识并深刻的掌握。对对称密码算法DES更加的深刻,程序要仔细耐心调试察看,不要被错误吓到,同时在修改老师给的源程序的时候懂得了如何 细心的认真的仔细的看每一个编程程序。通过这次的实验,了解了非对称密码算法RSA会运用一些现成的算法进行编程,对一些比较复杂的算法开始基本认识并深刻的掌握。在以后所涉及这方面的知识将会有全新的了解和掌握。RSA的安全性依赖于大数分解,但是否等同于大数分解一直未能得到理论上的证明,因 为没有证明破解 RSA就一定需要作大数分解。经过这次设计,使我学

55、到了很多很多。首先 为对大数的认识。大数的存储形式灵活多样,可以 1, 0二进制存储,可以十进制存储,也可以2*n进制存储。对于讲究空间效率来讲,显然,寻找合适的n,使用2*n进制存储数据将会高效的多。而且,对于大数的运算技巧也要要求思考的严密一些。我通过参考miracl大数库,通过阅读相关代码, 弄懂了其大数存储及实现机制。而且,现在想来,我觉得我在阅读代码所花费的时间上有所不值。我想,如果我将花费的大半时间用来自己写一个大数库,将会实在的多。已经为我们设计好的大数库虽然用起来方便,但阅读起来,并弄懂其思想并不简单。特别是我认识到老外写的代码灵活性太强,他们写代码没有规矩的,想到哪写到哪,非

56、常难以阅读,特别在实现RSA算法中加密解密的算法时,我始终就没有看懂到底在写些什么,后来我干脆自己来写,一写,发现错误百出。但经过我一遍又一遍的调试,终于能够顺利实现了课程设计所要求的功能,而且,我自己写的代码结构性非常强,很好阅读。算法实现也简单易懂。然而,唯一遗憾之处就是借用了大数库里现成的一些函数,我觉得这是我比较惭愧的,如果我自己来写个大数库,也许心里会心安理得一些。不过,我完全弄懂了miracl大数库里相关函数的运算机制。 并掌握了其实现机制。可以说,通过阅读别人的代码,也学到了不少。总的来说,我这次课程设计时间分配不大合理,花在阅读代码的时间太长,事实上它占 据了我大部分时间,如果我用这个时间自己来写大数运算库,恐怕早写完了。活儿非常苦。不过我依然欣慰,我从别人哪里的确学到了不少。程序运行相对顺利,通过读取代码我们了解到密钥生成中和加密处理一般都是依赖于数 据的位运算。位运算,对于计算机而言是最简单的运算。对于加密这种需要频繁执行的程序应用安慰运算应是最为合适的。可以修改成为大数分解算法。目前,RSA的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显然的攻击方法。现在, 人们已能分解多个十进制位的大素数。因此,模数n必须选大一些,因

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论