home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 4 / DATAFILE_PDCD4.iso / utilities / utilsm / numbers / !NumModTxt / RSA4 < prev   
Unknown  |  1992-08-01  |  4.3 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
100% file data default
100% xdgMime image/x-tga default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 0a f4 20 3e 52 | 53 41 0d 00 14 28 f4 20 |..... >R|SA...(. |
|00000010| 28 43 29 20 43 6f 70 79 | 72 69 67 68 74 20 4e 69 |(C) Copy|right Ni|
|00000020| 63 6b 20 43 72 61 69 67 | 2d 57 6f 6f 64 20 31 39 |ck Craig|-Wood 19|
|00000030| 39 32 0d 00 1e 04 0d 00 | 28 45 f4 20 54 68 69 73 |92......|(E. This|
|00000040| 20 66 69 6e 64 73 20 74 | 68 65 20 6e 65 63 65 73 | finds t|he neces|
|00000050| 73 61 72 79 20 6e 75 6d | 62 65 72 73 20 74 6f 20 |sary num|bers to |
|00000060| 70 72 6f 64 75 63 65 20 | 61 6e 20 52 53 41 20 63 |produce |an RSA c|
|00000070| 72 79 70 74 6f 73 79 73 | 74 65 6d 0d 00 32 04 0d |ryptosys|tem..2..|
|00000080| 00 3c 28 2a 52 4d 45 6e | 73 75 72 65 20 4e 75 6d |.<(*RMEn|sure Num|
|00000090| 62 65 72 73 20 30 2e 30 | 20 52 4d 4c 6f 61 64 20 |bers 0.0| RMLoad |
|000000a0| 4e 75 6d 62 65 72 73 0d | 00 46 3a 2a 52 4d 45 6e |Numbers.|.F:*RMEn|
|000000b0| 73 75 72 65 20 4e 75 6d | 62 65 72 73 20 30 2e 30 |sure Num|bers 0.0|
|000000c0| 20 45 72 72 6f 72 20 31 | 20 4e 75 6d 62 65 72 73 | Error 1| Numbers|
|000000d0| 20 6d 6f 64 75 6c 65 20 | 6e 6f 74 20 66 6f 75 6e | module |not foun|
|000000e0| 64 0d 00 50 04 0d 00 5a | 14 48 65 61 70 53 69 7a |d..P...Z|.HeapSiz|
|000000f0| 65 3d 36 34 2a 31 30 32 | 34 0d 00 64 16 de 20 4e |e=64*102|4..d.. N|
|00000100| 75 6d 62 65 72 73 20 48 | 65 61 70 53 69 7a 65 0d |umbers H|eapSize.|
|00000110| 00 6e 3c c8 99 20 22 4e | 75 6d 5f 48 65 61 70 49 |.n<.. "N|um_HeapI|
|00000120| 6e 69 74 22 2c 4e 75 6d | 62 65 72 73 2c 48 65 61 |nit",Num|bers,Hea|
|00000130| 70 53 69 7a 65 20 b8 20 | 68 70 25 2c 7a 65 72 6f |pSize . |hp%,zero|
|00000140| 25 2c 6f 6e 65 25 2c 74 | 77 6f 25 0d 00 78 26 c8 |%,one%,t|wo%..x&.|
|00000150| 99 20 22 4e 75 6d 5f 4d | 61 6b 65 53 6d 61 6c 6c |. "Num_M|akeSmall|
|00000160| 50 72 69 6d 65 73 22 2c | 35 30 30 30 20 b8 20 61 |Primes",|5000 . a|
|00000170| 25 0d 00 82 1f f1 20 3b | 61 25 3b 22 20 73 6d 61 |%..... ;|a%;" sma|
|00000180| 6c 6c 20 70 72 69 6d 65 | 73 20 66 6f 75 6e 64 22 |ll prime|s found"|
|00000190| 0d 00 8c 04 0d 00 96 0b | ef 20 32 36 2c 31 32 0d |........|. 26,12.|
|000001a0| 00 a0 28 f1 20 22 54 68 | 69 73 20 63 72 65 61 74 |..(. "Th|is creat|
|000001b0| 65 73 20 61 6e 20 52 53 | 41 20 63 72 79 70 74 6f |es an RS|A crypto|
|000001c0| 73 79 73 74 65 6d 22 0d | 00 aa 05 f1 0d 00 b4 47 |system".|.......G|
|000001d0| f1 20 22 54 68 65 20 52 | 53 41 20 63 72 79 70 74 |. "The R|SA crypt|
|000001e0| 6f 73 79 73 74 65 6d 20 | 69 73 20 73 70 65 63 69 |osystem |is speci|
|000001f0| 61 6c 20 62 65 63 61 75 | 73 65 20 69 74 20 64 6f |al becau|se it do|
|00000200| 65 73 20 6e 6f 74 20 72 | 65 71 75 69 72 65 20 79 |es not r|equire y|
|00000210| 6f 75 22 0d 00 be 4b f1 | 20 22 74 6f 20 73 65 6e |ou"...K.| "to sen|
|00000220| 64 20 61 20 6b 65 79 20 | 69 6e 20 73 65 63 72 65 |d a key |in secre|
|00000230| 74 20 74 6f 20 74 68 65 | 20 70 65 72 73 6f 6e 20 |t to the| person |
|00000240| 79 6f 75 20 77 69 73 68 | 20 74 6f 20 63 6f 6d 6d |you wish| to comm|
|00000250| 75 6e 69 63 61 74 65 20 | 77 69 74 68 2e 22 0d 00 |unicate |with."..|
|00000260| c8 4a f1 20 22 41 6c 6c | 20 74 68 65 20 65 6e 63 |.J. "All| the enc|
|00000270| 72 79 70 74 69 6f 6e 20 | 6b 65 79 73 20 61 72 65 |ryption |keys are|
|00000280| 20 70 75 62 6c 69 63 20 | 6b 6e 6f 77 6c 65 64 67 | public |knowledg|
|00000290| 65 2c 20 68 6f 77 65 76 | 65 72 20 79 6f 75 20 6b |e, howev|er you k|
|000002a0| 65 65 70 20 74 68 65 22 | 0d 00 d2 47 f1 20 22 64 |eep the"|...G. "d|
|000002b0| 65 63 72 79 70 74 69 6f | 6e 20 6b 65 79 20 73 65 |ecryptio|n key se|
|000002c0| 63 72 65 74 2e 20 20 49 | 74 20 69 73 20 69 6d 70 |cret. I|t is imp|
|000002d0| 6f 73 73 69 62 6c 65 20 | 74 6f 20 6d 61 6b 65 20 |ossible |to make |
|000002e0| 74 68 65 20 64 65 63 72 | 79 70 74 69 6f 6e 22 0d |the decr|yption".|
|000002f0| 00 dc 24 f1 20 22 6b 65 | 79 20 66 72 6f 6d 20 74 |..$. "ke|y from t|
|00000300| 68 65 20 65 6e 63 72 79 | 70 74 69 6f 6e 20 6b 65 |he encry|ption ke|
|00000310| 79 2e 22 0d 00 e6 05 f1 | 0d 00 f0 04 0d 00 fa 45 |y.".....|.......E|
|00000320| f1 20 22 54 68 65 20 52 | 53 41 20 63 72 79 70 74 |. "The R|SA crypt|
|00000330| 6f 73 79 73 74 65 6d 20 | 6e 65 65 64 73 20 32 20 |osystem |needs 2 |
|00000340| 6c 61 72 67 65 20 70 72 | 69 6d 65 73 20 28 70 20 |large pr|imes (p |
|00000350| 26 20 71 29 20 69 6e 20 | 6f 72 64 65 72 20 74 6f |& q) in |order to|
|00000360| 22 0d 01 04 47 f1 20 22 | 66 75 6e 63 74 69 6f 6e |"...G. "|function|
|00000370| 20 61 6e 64 20 74 68 65 | 20 66 69 72 73 74 20 74 | and the| first t|
|00000380| 68 69 6e 67 20 6e 65 65 | 64 65 64 20 74 6f 20 64 |hing nee|ded to d|
|00000390| 6f 20 69 73 20 74 6f 20 | 63 61 6c 63 75 6c 61 74 |o is to |calculat|
|000003a0| 65 20 74 68 65 6d 2e 22 | 0d 01 0e 47 f1 20 22 46 |e them."|...G. "F|
|000003b0| 6f 72 20 61 20 73 65 63 | 75 72 65 20 73 79 73 74 |or a sec|ure syst|
|000003c0| 65 6d 20 79 6f 75 20 77 | 6f 75 6c 64 20 63 68 6f |em you w|ould cho|
|000003d0| 73 65 20 31 30 30 20 64 | 69 67 69 74 20 70 72 69 |se 100 d|igit pri|
|000003e0| 6d 65 73 2e 20 32 35 20 | 64 69 67 69 74 73 22 0d |mes. 25 |digits".|
|000003f0| 01 18 2a f1 20 22 77 69 | 6c 6c 20 67 69 76 65 20 |..*. "wi|ll give |
|00000400| 79 6f 75 20 61 20 67 6f | 6f 64 20 64 65 6d 6f 6e |you a go|od demon|
|00000410| 73 74 72 61 74 69 6f 6e | 22 0d 01 22 05 f1 0d 01 |stration|".."....|
|00000420| 2c 25 e8 20 22 48 6f 77 | 20 6d 61 6e 79 20 64 69 |,%. "How| many di|
|00000430| 67 69 74 73 20 69 6e 20 | 70 20 22 3b 70 64 69 67 |gits in |p ";pdig|
|00000440| 69 74 73 0d 01 36 25 e8 | 20 22 48 6f 77 20 6d 61 |its..6%.| "How ma|
|00000450| 6e 79 20 64 69 67 69 74 | 73 20 69 6e 20 71 20 22 |ny digit|s in q "|
|00000460| 3b 71 64 69 67 69 74 73 | 0d 01 40 04 0d 01 4a 20 |;qdigits|..@...J |
|00000470| c8 99 20 22 4e 75 6d 5f | 49 6e 69 74 22 2c 68 70 |.. "Num_|Init",hp|
|00000480| 25 20 b8 20 70 6d 69 6e | 75 73 31 25 0d 01 54 20 |% . pmin|us1%..T |
|00000490| c8 99 20 22 4e 75 6d 5f | 49 6e 69 74 22 2c 68 70 |.. "Num_|Init",hp|
|000004a0| 25 20 b8 20 71 6d 69 6e | 75 73 31 25 0d 01 5e 1a |% . qmin|us1%..^.|
|000004b0| c8 99 20 22 4e 75 6d 5f | 49 6e 69 74 22 2c 68 70 |.. "Num_|Init",hp|
|000004c0| 25 20 b8 20 61 25 0d 01 | 68 1a c8 99 20 22 4e 75 |% . a%..|h... "Nu|
|000004d0| 6d 5f 49 6e 69 74 22 2c | 68 70 25 20 b8 20 62 25 |m_Init",|hp% . b%|
|000004e0| 0d 01 72 1a c8 99 20 22 | 4e 75 6d 5f 49 6e 69 74 |..r... "|Num_Init|
|000004f0| 22 2c 68 70 25 20 b8 20 | 70 25 0d 01 7c 1a c8 99 |",hp% . |p%..|...|
|00000500| 20 22 4e 75 6d 5f 49 6e | 69 74 22 2c 68 70 25 20 | "Num_In|it",hp% |
|00000510| b8 20 71 25 0d 01 86 1a | c8 99 20 22 4e 75 6d 5f |. q%....|.. "Num_|
|00000520| 49 6e 69 74 22 2c 68 70 | 25 20 b8 20 6e 25 0d 01 |Init",hp|% . n%..|
|00000530| 90 1a c8 99 20 22 4e 75 | 6d 5f 49 6e 69 74 22 2c |.... "Nu|m_Init",|
|00000540| 68 70 25 20 b8 20 67 25 | 0d 01 9a 1a c8 99 20 22 |hp% . g%|...... "|
|00000550| 4e 75 6d 5f 49 6e 69 74 | 22 2c 68 70 25 20 b8 20 |Num_Init|",hp% . |
|00000560| 64 25 0d 01 a4 1a c8 99 | 20 22 4e 75 6d 5f 49 6e |d%......| "Num_In|
|00000570| 69 74 22 2c 68 70 25 20 | b8 20 65 25 0d 01 ae 1a |it",hp% |. e%....|
|00000580| c8 99 20 22 4e 75 6d 5f | 49 6e 69 74 22 2c 68 70 |.. "Num_|Init",hp|
|00000590| 25 20 b8 20 6d 25 0d 01 | b8 1a c8 99 20 22 4e 75 |% . m%..|.... "Nu|
|000005a0| 6d 5f 49 6e 69 74 22 2c | 68 70 25 20 b8 20 63 25 |m_Init",|hp% . c%|
|000005b0| 0d 01 c2 1c c8 99 20 22 | 4e 75 6d 5f 49 6e 69 74 |...... "|Num_Init|
|000005c0| 22 2c 68 70 25 20 b8 20 | 74 65 6e 25 0d 01 cc 18 |",hp% . |ten%....|
|000005d0| c8 99 20 22 4e 75 6d 5f | 53 65 74 22 2c 74 65 6e |.. "Num_|Set",ten|
|000005e0| 25 2c 31 30 0d 01 d6 12 | 74 69 6d 65 73 74 6f 74 |%,10....|timestot|
|000005f0| 65 73 74 3d 31 30 0d 01 | e0 04 0d 01 ea 0b 74 69 |est=10..|......ti|
|00000600| 6d 65 25 3d 91 0d 01 f4 | 16 f1 20 27 22 4c 6f 6f |me%=....|.. '"Loo|
|00000610| 6b 69 6e 67 20 66 6f 72 | 20 70 22 0d 01 fe 1a f2 |king for| p".....|
|00000620| 66 69 6e 64 70 72 69 6d | 65 28 70 25 2c 70 64 69 |findprim|e(p%,pdi|
|00000630| 67 69 74 73 29 0d 02 08 | 1d f1 20 22 50 72 69 6d |gits)...|.. "Prim|
|00000640| 65 20 70 20 3d 20 22 3b | a4 70 72 69 6e 74 28 70 |e p = ";|.print(p|
|00000650| 25 29 0d 02 12 04 0d 02 | 1c 16 f1 20 27 22 4c 6f |%)......|... '"Lo|
|00000660| 6f 6b 69 6e 67 20 66 6f | 72 20 71 22 0d 02 26 1a |oking fo|r q"..&.|
|00000670| f2 66 69 6e 64 70 72 69 | 6d 65 28 71 25 2c 71 64 |.findpri|me(q%,qd|
|00000680| 69 67 69 74 73 29 0d 02 | 30 1d f1 20 22 50 72 69 |igits)..|0.. "Pri|
|00000690| 6d 65 20 71 20 3d 20 22 | 3b a4 70 72 69 6e 74 28 |me q = "|;.print(|
|000006a0| 71 25 29 0d 02 3a 04 0d | 02 44 19 c8 99 20 22 4e |q%)..:..|.D... "N|
|000006b0| 75 6d 5f 4d 75 6c 22 2c | 70 25 2c 71 25 2c 6e 25 |um_Mul",|p%,q%,n%|
|000006c0| 0d 02 4e 18 f1 20 27 22 | 6e 20 3d 20 22 3b a4 70 |..N.. '"|n = ";.p|
|000006d0| 72 69 6e 74 28 6e 25 29 | 0d 02 58 04 0d 02 62 24 |rint(n%)|..X...b$|
|000006e0| c8 99 20 22 4e 75 6d 5f | 53 63 61 6c 61 72 53 75 |.. "Num_|ScalarSu|
|000006f0| 62 22 2c 70 25 2c 31 2c | 70 6d 69 6e 75 73 31 25 |b",p%,1,|pminus1%|
|00000700| 0d 02 6c 24 c8 99 20 22 | 4e 75 6d 5f 53 63 61 6c |..l$.. "|Num_Scal|
|00000710| 61 72 53 75 62 22 2c 71 | 25 2c 31 2c 71 6d 69 6e |arSub",q|%,1,qmin|
|00000720| 75 73 31 25 0d 02 76 25 | c8 99 20 22 4e 75 6d 5f |us1%..v%|.. "Num_|
|00000730| 47 63 64 22 2c 70 6d 69 | 6e 75 73 31 25 2c 71 6d |Gcd",pmi|nus1%,qm|
|00000740| 69 6e 75 73 31 25 2c 67 | 25 0d 02 80 22 f1 20 22 |inus1%,g|%...". "|
|00000750| 67 63 64 28 70 2d 31 2c | 71 2d 31 29 20 3d 20 22 |gcd(p-1,|q-1) = "|
|00000760| 3b a4 70 72 69 6e 74 28 | 67 25 29 0d 02 8a 25 c8 |;.print(|g%)...%.|
|00000770| 99 20 22 4e 75 6d 5f 4d | 75 6c 22 2c 70 6d 69 6e |. "Num_M|ul",pmin|
|00000780| 75 73 31 25 2c 71 6d 69 | 6e 75 73 31 25 2c 61 25 |us1%,qmi|nus1%,a%|
|00000790| 0d 02 94 1c c8 99 20 22 | 4e 75 6d 5f 44 69 76 22 |...... "|Num_Div"|
|000007a0| 2c 61 25 2c 67 25 2c 67 | 25 2c 61 25 0d 02 9e 26 |,a%,g%,g|%,a%...&|
|000007b0| f1 20 22 67 20 3d 20 6c | 63 6d 28 70 2d 31 2c 71 |. "g = l|cm(p-1,q|
|000007c0| 2d 31 29 20 3d 20 22 3b | a4 70 72 69 6e 74 28 67 |-1) = ";|.print(g|
|000007d0| 25 29 0d 02 a8 04 0d 02 | b2 1c f1 20 27 22 53 65 |%)......|... '"Se|
|000007e0| 61 72 63 68 69 6e 67 20 | 66 6f 72 20 6b 65 79 20 |arching |for key |
|000007f0| 22 3b 0d 02 bc 05 f5 0d | 02 c6 0b 20 f1 20 22 2e |";......|... . ".|
|00000800| 22 3b 0d 02 d0 17 20 c8 | 99 20 22 4e 75 6d 5f 52 |";.... .|. "Num_R|
|00000810| 6e 64 22 2c 67 25 2c 65 | 25 0d 02 da 26 20 c8 99 |nd",g%,e|%...& ..|
|00000820| 20 22 4e 75 6d 5f 53 63 | 61 6c 61 72 44 69 76 22 | "Num_Sc|alarDiv"|
|00000830| 2c 65 25 2c 32 2c 64 25 | 20 b8 20 72 65 6d 25 0d |,e%,2,d%| . rem%.|
|00000840| 02 e4 39 20 e7 20 72 65 | 6d 25 3d 30 20 8c 20 c8 |..9 . re|m%=0 . .|
|00000850| 99 20 22 4e 75 6d 5f 53 | 63 61 6c 61 72 41 64 64 |. "Num_S|calarAdd|
|00000860| 22 2c 65 25 2c 31 2c 65 | 25 20 3a f4 20 6d 61 6b |",e%,1,e|% :. mak|
|00000870| 65 20 65 25 20 6f 64 64 | 0d 02 ee 1d 20 c8 99 20 |e e% odd|.... .. |
|00000880| 22 4e 75 6d 5f 49 6e 76 | 22 2c 65 25 2c 67 25 2c |"Num_Inv|",e%,g%,|
|00000890| 64 25 2c 61 25 0d 02 f8 | 21 20 c8 99 20 22 4e 75 |d%,a%...|! .. "Nu|
|000008a0| 6d 5f 45 71 75 61 6c 73 | 22 2c 61 25 2c 31 20 b8 |m_Equals|",a%,1 .|
|000008b0| 20 66 6f 75 6e 64 0d 03 | 02 0b fd 20 66 6f 75 6e | found..|... foun|
|000008c0| 64 0d 03 0c 05 f1 0d 03 | 16 04 0d 03 20 18 f1 20 |d.......|.... .. |
|000008d0| 27 22 65 20 3d 20 22 3b | a4 70 72 69 6e 74 28 65 |'"e = ";|.print(e|
|000008e0| 25 29 0d 03 2a 17 f1 20 | 22 64 20 3d 20 22 3b a4 |%)..*.. |"d = ";.|
|000008f0| 70 72 69 6e 74 28 64 25 | 29 0d 03 34 19 c8 99 20 |print(d%|)..4... |
|00000900| 22 4e 75 6d 5f 4d 75 6c | 22 2c 65 25 2c 64 25 2c |"Num_Mul|",e%,d%,|
|00000910| 61 25 0d 03 3e 19 c8 99 | 20 22 4e 75 6d 5f 4d 6f |a%..>...| "Num_Mo|
|00000920| 64 22 2c 61 25 2c 67 25 | 2c 61 25 0d 03 48 1f f1 |d",a%,g%|,a%..H..|
|00000930| 20 22 65 2a 64 20 4d 4f | 44 20 67 20 3d 20 22 3b | "e*d MO|D g = ";|
|00000940| a4 70 72 69 6e 74 28 61 | 25 29 0d 03 52 11 74 69 |.print(a|%)..R.ti|
|00000950| 6d 65 25 3d 91 2d 74 69 | 6d 65 25 0d 03 5c 04 0d |me%=.-ti|me%..\..|
|00000960| 03 66 2c f1 20 27 22 45 | 6e 63 6f 64 65 20 74 68 |.f,. '"E|ncode th|
|00000970| 65 6e 20 44 65 63 6f 64 | 65 20 61 20 72 61 6e 64 |en Decod|e a rand|
|00000980| 6f 6d 20 6d 65 73 73 61 | 67 65 22 0d 03 70 16 c8 |om messa|ge"..p..|
|00000990| 99 20 22 4e 75 6d 5f 52 | 6e 64 22 2c 6e 25 2c 6d |. "Num_R|nd",n%,m|
|000009a0| 25 0d 03 7a 2d f1 20 22 | 6d 65 73 73 61 67 65 20 |%..z-. "|message |
|000009b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000009c0| 3d 20 22 3b a4 70 72 69 | 6e 74 28 6d 25 29 0d 03 |= ";.pri|nt(m%)..|
|000009d0| 84 1f c8 99 20 22 4e 75 | 6d 5f 50 6f 77 4d 6f 64 |.... "Nu|m_PowMod|
|000009e0| 22 2c 6d 25 2c 65 25 2c | 6e 25 2c 63 25 0d 03 8e |",m%,e%,|n%,c%...|
|000009f0| 2d f1 20 22 65 6e 63 6f | 64 65 28 6d 65 73 73 61 |-. "enco|de(messa|
|00000a00| 67 65 29 20 20 20 20 20 | 20 20 20 20 3d 20 22 3b |ge) | = ";|
|00000a10| a4 70 72 69 6e 74 28 63 | 25 29 0d 03 98 1f c8 99 |.print(c|%)......|
|00000a20| 20 22 4e 75 6d 5f 50 6f | 77 4d 6f 64 22 2c 63 25 | "Num_Po|wMod",c%|
|00000a30| 2c 64 25 2c 6e 25 2c 61 | 25 0d 03 a2 2d f1 20 22 |,d%,n%,a|%...-. "|
|00000a40| 64 65 63 6f 64 65 28 65 | 6e 63 6f 64 65 28 6d 65 |decode(e|ncode(me|
|00000a50| 73 73 61 67 65 29 29 20 | 3d 20 22 3b a4 70 72 69 |ssage)) |= ";.pri|
|00000a60| 6e 74 28 61 25 29 0d 03 | ac 04 0d 03 b6 48 f1 20 |nt(a%)..|.....H. |
|00000a70| 27 22 44 65 63 6f 64 65 | 20 74 68 65 6e 20 45 6e |'"Decode| then En|
|00000a80| 63 6f 64 65 20 61 20 72 | 61 6e 64 6f 6d 20 6d 65 |code a r|andom me|
|00000a90| 73 73 61 67 65 20 28 61 | 73 20 69 66 20 73 69 67 |ssage (a|s if sig|
|00000aa0| 6e 69 6e 67 20 74 68 65 | 20 6d 65 73 73 61 67 65 |ning the| message|
|00000ab0| 29 22 0d 03 c0 16 c8 99 | 20 22 4e 75 6d 5f 52 6e |)"......| "Num_Rn|
|00000ac0| 64 22 2c 6e 25 2c 6d 25 | 0d 03 ca 2d f1 20 22 6d |d",n%,m%|...-. "m|
|00000ad0| 65 73 73 61 67 65 20 20 | 20 20 20 20 20 20 20 20 |essage | |
|00000ae0| 20 20 20 20 20 20 20 3d | 20 22 3b a4 70 72 69 6e | =| ";.prin|
|00000af0| 74 28 6d 25 29 0d 03 d4 | 1f c8 99 20 22 4e 75 6d |t(m%)...|... "Num|
|00000b00| 5f 50 6f 77 4d 6f 64 22 | 2c 6d 25 2c 64 25 2c 6e |_PowMod"|,m%,d%,n|
|00000b10| 25 2c 63 25 0d 03 de 2d | f1 20 22 64 65 63 6f 64 |%,c%...-|. "decod|
|00000b20| 65 28 6d 65 73 73 61 67 | 65 29 20 20 20 20 20 20 |e(messag|e) |
|00000b30| 20 20 20 3d 20 22 3b a4 | 70 72 69 6e 74 28 63 25 | = ";.|print(c%|
|00000b40| 29 0d 03 e8 1f c8 99 20 | 22 4e 75 6d 5f 50 6f 77 |)...... |"Num_Pow|
|00000b50| 4d 6f 64 22 2c 63 25 2c | 65 25 2c 6e 25 2c 61 25 |Mod",c%,|e%,n%,a%|
|00000b60| 0d 03 f2 2d f1 20 22 65 | 6e 63 6f 64 65 28 64 65 |...-. "e|ncode(de|
|00000b70| 63 6f 64 65 28 6d 65 73 | 73 61 67 65 29 29 20 3d |code(mes|sage)) =|
|00000b80| 20 22 3b a4 70 72 69 6e | 74 28 61 25 29 0d 03 fc | ";.prin|t(a%)...|
|00000b90| 04 0d 04 06 31 f1 20 27 | 22 48 65 72 65 20 61 72 |....1. '|"Here ar|
|00000ba0| 65 20 74 68 65 20 52 53 | 41 20 63 72 79 70 74 6f |e the RS|A crypto|
|00000bb0| 73 79 73 74 65 6d 20 70 | 61 72 61 6d 65 74 65 72 |system p|arameter|
|00000bc0| 73 22 0d 04 10 4a f1 20 | 22 59 6f 75 20 70 75 62 |s"...J. |"You pub|
|00000bd0| 6c 69 73 68 20 6e 20 26 | 20 65 20 61 6e 64 20 6b |lish n &| e and k|
|00000be0| 65 65 70 20 64 20 73 65 | 63 72 65 74 2e 20 20 49 |eep d se|cret. I|
|00000bf0| 66 20 73 6f 6d 65 6f 6e | 65 20 77 61 6e 74 73 20 |f someon|e wants |
|00000c00| 74 6f 20 73 65 6e 64 20 | 79 6f 75 22 0d 04 1a 4a |to send |you"...J|
|00000c10| f1 20 22 61 20 6d 65 73 | 73 61 67 65 20 74 68 65 |. "a mes|sage the|
|00000c20| 79 20 65 6e 63 6f 64 65 | 20 77 69 74 68 20 6e 20 |y encode| with n |
|00000c30| 26 20 65 20 28 61 73 20 | 61 62 6f 76 65 29 2e 20 |& e (as |above). |
|00000c40| 20 54 68 65 20 6f 6e 6c | 79 20 77 61 79 20 73 6f | The onl|y way so|
|00000c50| 6d 65 6f 6e 65 22 0d 04 | 24 48 f1 20 22 63 61 6e |meone"..|$H. "can|
|00000c60| 20 72 65 61 64 20 74 68 | 65 20 6d 65 73 73 61 67 | read th|e messag|
|00000c70| 65 20 69 73 20 69 66 20 | 74 68 65 79 20 66 61 63 |e is if |they fac|
|00000c80| 74 6f 72 20 6e 2e 20 20 | 57 69 74 68 20 31 30 30 |tor n. |With 100|
|00000c90| 20 64 69 67 69 74 20 70 | 72 69 6d 65 73 22 0d 04 | digit p|rimes"..|
|00000ca0| 2e 4a f1 20 22 61 6e 64 | 20 63 75 72 72 65 6e 74 |.J. "and| current|
|00000cb0| 20 74 65 63 68 6e 6f 6c | 6f 67 79 20 74 68 69 73 | technol|ogy this|
|00000cc0| 20 69 73 20 69 6d 70 6f | 73 73 69 62 6c 65 2e 20 | is impo|ssible. |
|00000cd0| 20 59 6f 75 20 64 65 63 | 6f 64 65 20 74 68 65 20 | You dec|ode the |
|00000ce0| 6d 65 73 73 61 67 65 22 | 0d 04 38 13 f1 20 22 75 |message"|..8.. "u|
|00000cf0| 73 69 6e 67 20 6e 20 26 | 20 65 22 0d 04 42 05 f1 |sing n &| e"..B..|
|00000d00| 0d 04 4c 17 f1 20 22 6e | 20 3d 20 22 3b a4 70 72 |..L.. "n| = ";.pr|
|00000d10| 69 6e 74 28 6e 25 29 0d | 04 56 17 f1 20 22 65 20 |int(n%).|.V.. "e |
|00000d20| 3d 20 22 3b a4 70 72 69 | 6e 74 28 65 25 29 0d 04 |= ";.pri|nt(e%)..|
|00000d30| 60 17 f1 20 22 64 20 3d | 20 22 3b a4 70 72 69 6e |`.. "d =| ";.prin|
|00000d40| 74 28 64 25 29 0d 04 6a | 27 f1 20 22 54 68 61 74 |t(d%)..j|'. "That|
|00000d50| 20 74 6f 6f 6b 20 22 3b | 74 69 6d 65 25 2f 31 30 | took ";|time%/10|
|00000d60| 30 3b 22 20 73 65 63 6f | 6e 64 73 22 0d 04 74 05 |0;" seco|nds"..t.|
|00000d70| e0 0d 04 7e 04 0d 04 88 | 04 0d 04 92 04 0d 04 9c |...~....|........|
|00000d80| 04 0d 04 a6 30 f4 20 54 | 68 69 73 20 70 72 69 6e |....0. T|his prin|
|00000d90| 74 73 20 4e 55 4d 20 61 | 25 20 72 65 74 75 72 6e |ts NUM a|% return|
|00000da0| 69 6e 67 20 61 20 6e 75 | 6c 6c 20 73 74 72 69 6e |ing a nu|ll strin|
|00000db0| 67 0d 04 b0 04 0d 04 ba | 28 dd 20 a4 70 72 69 6e |g.......|(. .prin|
|00000dc0| 74 28 61 25 29 3a 20 c8 | 99 20 22 4e 75 6d 5f 50 |t(a%): .|. "Num_P|
|00000dd0| 72 69 6e 74 22 2c 61 25 | 3a 20 3d 22 22 0d 04 c4 |rint",a%|: =""...|
|00000de0| 04 0d 04 ce 04 0d 04 d8 | 47 f4 20 54 68 69 73 20 |........|G. This |
|00000df0| 66 69 6e 64 73 20 61 20 | 70 72 69 6d 65 20 70 25 |finds a |prime p%|
|00000e00| 20 73 75 63 68 20 74 68 | 61 74 20 69 74 20 68 61 | such th|at it ha|
|00000e10| 73 20 61 62 6f 75 74 20 | 64 69 67 69 74 73 25 20 |s about |digits% |
|00000e20| 64 69 67 69 74 73 20 69 | 6e 20 69 74 0d 04 e2 04 |digits i|n it....|
|00000e30| 0d 04 ec 1c dd 20 f2 66 | 69 6e 64 70 72 69 6d 65 |..... .f|indprime|
|00000e40| 28 70 25 2c 64 69 67 69 | 74 73 25 29 0d 04 f6 18 |(p%,digi|ts%)....|
|00000e50| ea 20 72 25 2c 61 25 2c | 63 6f 6d 70 6f 73 69 74 |. r%,a%,|composit|
|00000e60| 65 2c 69 25 0d 05 00 04 | 0d 05 0a 08 69 25 3d 30 |e,i%....|....i%=0|
|00000e70| 0d 05 14 04 0d 05 1e 1b | 20 c8 99 20 22 4e 75 6d |........| .. "Num|
|00000e80| 5f 49 6e 69 74 22 2c 68 | 70 25 20 b8 20 61 25 0d |_Init",h|p% . a%.|
|00000e90| 05 28 1c 20 c8 99 20 22 | 4e 75 6d 5f 53 65 74 22 |.(. .. "|Num_Set"|
|00000ea0| 2c 61 25 2c 64 69 67 69 | 74 73 25 0d 05 32 1c 20 |,a%,digi|ts%..2. |
|00000eb0| c8 99 20 22 4e 75 6d 5f | 50 6f 77 22 2c 74 65 6e |.. "Num_|Pow",ten|
|00000ec0| 25 2c 61 25 2c 70 25 0d | 05 3c 17 20 c8 99 20 22 |%,a%,p%.|.<. .. "|
|00000ed0| 4e 75 6d 5f 52 65 6d 6f | 76 65 22 2c 61 25 0d 05 |Num_Remo|ve",a%..|
|00000ee0| 46 45 20 c8 99 20 22 4e | 75 6d 5f 52 6e 64 22 2c |FE .. "N|um_Rnd",|
|00000ef0| 70 25 2c 70 25 20 20 3a | f4 20 61 20 72 61 6e 64 |p%,p% :|. a rand|
|00000f00| 6f 6d 20 6e 75 6d 62 65 | 72 20 77 69 74 68 20 61 |om numbe|r with a|
|00000f10| 62 6f 75 74 20 64 69 67 | 69 74 73 25 20 64 69 67 |bout dig|its% dig|
|00000f20| 69 74 73 0d 05 50 04 0d | 05 5a 1f 20 c8 99 20 22 |its..P..|.Z. .. "|
|00000f30| 4e 75 6d 5f 53 63 61 6c | 61 72 4d 75 6c 22 2c 70 |Num_Scal|arMul",p|
|00000f40| 25 2c 32 2c 70 25 0d 05 | 64 36 20 c8 99 20 22 4e |%,2,p%..|d6 .. "N|
|00000f50| 75 6d 5f 53 63 61 6c 61 | 72 41 64 64 22 2c 70 25 |um_Scala|rAdd",p%|
|00000f60| 2c 31 2c 70 25 20 3a f4 | 20 6d 61 6b 65 20 73 75 |,1,p% :.| make su|
|00000f70| 72 65 20 72 25 20 69 73 | 20 6f 64 64 0d 05 6e 04 |re r% is| odd..n.|
|00000f80| 0d 05 78 28 20 f1 20 22 | 50 52 4f 43 66 69 6e 64 |..x( . "|PROCfind|
|00000f90| 70 72 69 6d 65 28 22 3b | a4 70 72 69 6e 74 28 70 |prime(";|.print(p|
|00000fa0| 25 29 3b 22 29 20 22 3b | 0d 05 82 04 0d 05 8c 06 |%);") ";|........|
|00000fb0| 20 f5 0d 05 96 0b 20 20 | 69 25 2b 3d 31 0d 05 a0 | ..... |i%+=1...|
|00000fc0| 0c 20 20 f1 20 22 2e 22 | 3b 0d 05 aa 29 20 20 c8 |. . "."|;...) .|
|00000fd0| 99 20 22 4e 75 6d 5f 53 | 6d 61 6c 6c 46 61 63 74 |. "Num_S|mallFact|
|00000fe0| 6f 72 22 2c 70 25 20 b8 | 20 63 6f 6d 70 6f 73 69 |or",p% .| composi|
|00000ff0| 74 65 0d 05 b4 15 20 20 | e7 20 63 6f 6d 70 6f 73 |te.... |. compos|
|00001000| 69 74 65 3d 30 20 8c 0d | 05 be 1c 20 20 20 63 6f |ite=0 ..|... co|
|00001010| 6d 70 6f 73 69 74 65 3d | 74 69 6d 65 73 74 6f 74 |mposite=|timestot|
|00001020| 65 73 74 0d 05 c8 15 20 | 20 20 c8 95 20 63 6f 6d |est.... | .. com|
|00001030| 70 6f 73 69 74 65 3e 30 | 0d 05 d2 0e 20 20 20 20 |posite>0|.... |
|00001040| f1 20 22 7c 22 3b 0d 05 | dc 2a 20 20 20 20 c8 99 |. "|";..|.* ..|
|00001050| 20 22 4e 75 6d 5f 50 72 | 6f 62 61 62 6c 79 50 72 | "Num_Pr|obablyPr|
|00001060| 69 6d 65 22 2c 70 25 20 | b8 20 70 70 72 69 6d 65 |ime",p% |. pprime|
|00001070| 0d 05 e6 12 20 20 20 20 | e7 20 70 70 72 69 6d 65 |.... |. pprime|
|00001080| 20 8c 0d 05 f0 15 20 20 | 20 20 20 63 6f 6d 70 6f | ..... | compo|
|00001090| 73 69 74 65 2d 3d 31 0d | 05 fa 09 20 20 20 20 cc |site-=1.|... .|
|000010a0| 0d 06 04 42 20 20 20 20 | 20 e7 20 63 6f 6d 70 6f |...B | . compo|
|000010b0| 73 69 74 65 3c 3e 74 69 | 6d 65 73 74 6f 74 65 73 |site<>ti|mestotes|
|000010c0| 74 20 8c 20 f1 20 22 55 | 6e 75 73 75 61 6c 20 70 |t . . "U|nusual p|
|000010d0| 72 69 6d 65 3a 20 22 3b | a4 70 72 69 6e 74 28 70 |rime: ";|.print(p|
|000010e0| 25 29 0d 06 0e 15 20 20 | 20 20 20 63 6f 6d 70 6f |%).... | compo|
|000010f0| 73 69 74 65 3d 2d 31 0d | 06 18 09 20 20 20 20 cd |site=-1.|... .|
|00001100| 0d 06 22 08 20 20 20 ce | 0d 06 2c 07 20 20 cd 0d |..". .|..,. ..|
|00001110| 06 36 2e 20 20 e7 20 63 | 6f 6d 70 6f 73 69 74 65 |.6. . c|omposite|
|00001120| 20 8c 20 c8 99 20 22 4e | 75 6d 5f 53 63 61 6c 61 | . .. "N|um_Scala|
|00001130| 72 41 64 64 22 2c 70 25 | 2c 32 2c 70 25 0d 06 40 |rAdd",p%|,2,p%..@|
|00001140| 12 20 fd 20 63 6f 6d 70 | 6f 73 69 74 65 3d 30 0d |. . comp|osite=0.|
|00001150| 06 4a 04 0d 06 54 06 20 | f1 0d 06 5e 05 e1 0d ff |.J...T. |...^....|
+--------+-------------------------+-------------------------+--------+--------+