agn@UNH.CS.CMU.EDU (Andreas Nowatzyk) (04/14/88)
I posted a high quality pseudo-random number generator to comp.sources.misc (xrand), that was written for and is being used in a serious research project. Subsequently, a fair ammount of work went into it. As was pointed out earlier in this newsgroup, a good RNG also makes a good encryption program. A simple encryption program was posted along with (xrand) that is losely based on M.Mauldin's idea of using RNGs to produce one-time pads. If xrand has a flaw, then xcrypt should be breakable. Since I want to know about flaws of xrand, I submit this challenge to xcrypt: $50 and eternal fame :-) will go to the first person to send me a plain-text/key pair that will produce the cipher-text given below. The plain text must agree with the clues given below, that hold true for the original plain text. Naturally, I'll appreciate any comments you might have on xrand. Cheers -- Andreas agn@unh.cs.cmu.edu (412) 268-3617 PS: Hint to local readers: neither the plain-text, nor the key are online on any system at CMU. Clue #1: The character counts of the plain-text are given below. This clue should be useless if my pseudo-random number generator is any good. 0x09 = 18 0x0a = 55 0x20 ' ' = 476 0x21 '!' = 4 0x24 '$' = 1 0x27 ''' = 10 0x28 '(' = 3 0x29 ')' = 3 0x2c ',' = 24 0x2d '-' = 90 0x2e '.' = 22 0x2f '/' = 1 0x30 '0' = 3 0x31 '1' = 11 0x32 '2' = 3 0x33 '3' = 3 0x34 '4' = 1 0x35 '5' = 2 0x36 '6' = 5 0x37 '7' = 1 0x38 '8' = 4 0x39 '9' = 3 0x3a ':' = 6 0x3b ';' = 1 0x3f '?' = 1 0x40 '@' = 1 0x41 'A' = 6 0x43 'C' = 6 0x44 'D' = 2 0x45 'E' = 3 0x46 'F' = 1 0x47 'G' = 1 0x49 'I' = 15 0x4a 'J' = 4 0x4b 'K' = 1 0x4c 'L' = 3 0x4d 'M' = 3 0x4e 'N' = 3 0x50 'P' = 8 0x52 'R' = 2 0x53 'S' = 5 0x54 'T' = 6 0x55 'U' = 1 0x57 'W' = 3 0x5a 'Z' = 1 0x61 'a' = 113 0x62 'b' = 14 0x63 'c' = 51 0x64 'd' = 39 0x65 'e' = 159 0x66 'f' = 23 0x67 'g' = 27 0x68 'h' = 72 0x69 'i' = 92 0x6a 'j' = 1 0x6b 'k' = 10 0x6c 'l' = 64 0x6d 'm' = 37 0x6e 'n' = 117 0x6f 'o' = 125 0x70 'p' = 31 0x71 'q' = 2 0x72 'r' = 98 0x73 's' = 101 0x74 't' = 136 0x75 'u' = 46 0x76 'v' = 16 0x77 'w' = 28 0x78 'x' = 3 0x79 'y' = 39 0x7a 'z' = 3 Clue #2: The Plain-text starts with: "The quick brown fox jumps over the lazy dog." Clue #3: The key fits on one line (it is nowhere near the size of the message). The uuencode-ed version of the cipher-text (2277 bytes, binary) follows: -------------------------------------------------------------------------------- begin 600 cipher.txt MB$Y@(@G,9ZE#YN?EQW,,W&8QEC3W)*5*_I%9&0X>$%:Q)?(P:6V5XG]%0JE" M\8]X?U 7DB:Z!5DF$+M? ""K]"0N!JA4BM,(*O,!N/CIKCVX)V0'L%+&<US, MU8PH)N0K&4)W5QT1W3U8BF3X8T5O]M:_3$X+HX[SB5VCW"5YQM%G_U*RI[7Q M;8AGH;M]F^US4;',A;5(\'L@Z14+G!5@-3JM+M'9,H]U]@"M+L^\<8'^*J63 M) %!&X=JDHN"#[GK:J:.A+^8G-?RG2L)1NGZ0PMD&Y-X1&?"O!!\N*U(285[ M788SO?P"KM)9$8PQ<.TGI2#^.KQ D?Y.8%CW!!W<S4FOFY6OU.H/P^I4TSE\ M: &"Y;D)F<_9#OBY55"V1->U3!C"Q/H24M;9.;)@1U>&*D%3:/S+#GM_<48C MD&'V\OP7!CW,7=G)[_M7ZNW;%4!VL=^4/YANR? 4T'#M!GD6*:JO244XR_+1 M$V(#-.9'\K*CC6252=T%(2P:E$[2_YD4[<P-.>>>"T([#$[;I 0^/5/-MX;O M2S<:T!)R[,DNM J8Z<]MN'JK11:"^B(C/%TSGV-?]AD7,MK-X-'T% ?W M1L M^Z.J,[9A(>BKZ/I$"UDO*3*2,>P\^)USVU'T@TGGE^:EV*1J2I$^D?H6U\R MAX;Y*8,J*CE=VO5S(-Y'E%;: ITU]0IJ-<#G.95L!6[\JNP%I')S!A@EDDX+ M"=XS8AMJW=O$=!>&'_ >1SU%?H)*==H>^[.Y,GV9ED=X?R &@^!"^/;N*(FE M_"LA]QH)\[BVH""E^82X>C7%B<6.0!-1PF(QQU39O+)L;)>_TW!45 1YK?@B MH,P=UVN2K#3TYSWQ-NE\TEXD/S9W2@(K!JB08?>U\!/=@\?JSJU8-LBW/YYM M12:89R%$^@@TL:MHK;]F3(1:&7H+5!"VXFT-!ZN;I-8CF;JQ]J\J>/EK1,G; M\E47K$VPB'&S^!>C);J,YI?W669;]D?CM,2^AGKVC5"_.A-@.UN(I;3#@-LD MD2=C!$JYP;QN681J\#SV"E;KTP\AS.C*L8@AZI1L9MI1.W_!+0C%"JPFO>U@ MT,@]\)U".-LS7/2B8F4@O3T?%QT!G&&I*IZCN/V?/AKZ1FN2+]3&_/27GRN! M&0SVL.J(/-9#3=GE_*)'8;N)M4KC@/ZR6[0[9_TX61V-T[^ME"CTV<SEUVG, M0[$:@OZA>V-*QU&SUU&Q&FM<*4>?D#U])6_:B\> 'J[ S*'LXZP78M8C/1$6 M>DP]8S^;UYNM;4],IJ'TI*8E+>H7JO@X)G9LP43.=?F;0!Y!]6+[#N#Y"Y13 MG;Y>E VF6ZX)>,*T9@-ZRP\9NJZ02;&8?42I-:%5;Y+"4.BZ@4J?+W'>S!T; MS+IH_%I":VL%C7GD_3\W>X'1*YF<26&YAQ3>'G^CK^.!\/&NW#=_0&,4S2%( M&:-JK27 4ZC M$<Y([2SI\.-[Q6>Y[F0T;&,Q!%\\[WH2[E.0V*6=5_JV/5? MBO/YAH@"5M9:(0'H""@_>?&KY[FQO<CU9?&9!WUS9)$37NZA62]7%:K?B]BG M+4^%LV(J2(G[=6GZ6HWFD+6(X=E'/CA]?J/31!3=M/1AK15CN-!M;874Y=/# M>W!Z,XEG>_XEA$.[H,4I^$:8XT9G(C)_"?13@7^<L;G4MCV0<2O>)K#"=.W? ML[[0FI#K"L@>,]*=*'P[NF %D<L"R+_ F68D9AO>6O(QKF\(5$@W>H;<UH>U MO1=A] WKN;O$F/:!TF:2=3L2BOS%X_9>.O9"Y0CG8/B] ]'Q5XLH0/HRA@! M?'.6L%)X1S)/N8 NA&=^N'#>^Y !1W49.8*,0NO\R UP2OU!8U^7CT #1IXK MZDF6 @EHKZO_$$90X'N;YAY(:RZHJ]])CF(/:A$A1TQ]EAW-9OJOSPA7,4E9 MT?,+?G+E$420&TQ=EUFS@*E6D"PWHB0?_Q.0EQ;A<M1&+!1]&XAP!:!S7.D/ M%!T9J\ 0F?TOV9!;^R)&Z+%/+C26\:Z:ZQ(\BEKH\SO-ZLEMI]?HTM<4-^.# MM;Y367#P4.EY96#J9U?J?/<DI_U-E?"SJ#:<Z_C4I2O]D,GA8 6%),LZ0>F3 MEPSZB3V;)J.6&HB*KNOVXXJ*0(6)OF7)CPI"P_,%7P(M3\9HXR90QP4Z&5#Z M1'-0>WM9?.;*]4;QZ]2UG3R=8;#F:C*%\'@ZJ42G+]465F@.U[/QDL0VT@9A M6_E8,T/L,#%EL$PM<A+2(#_87V6NJC8N]?R2%*&=$T<8KTQ%QN%X!AX%9=HD M?O3?:);M>AZ .!*:4DGD"@&2QPS*#4 VW9IVQH[]^0K=/2$'ET@[_Z/[[@"W M6)1KOG%>3%2<J8=(U)#C!0L)2*KYW$RBY"?!&:DS\_RFU>QR.BUQ+[L7'!0R M-EJ%$> 64F#Y<4G$6K?*GQVM<CE$7[Q$N%S9\;8Q'KIHLBD9='CFABEIRJBV M"%)P!$;L-O2\TW_K:CH'^_6G;S=-T[((_!3>RU (;LHT2+\]2R)472)1W>03 M/1#5V>1YCI8HR18:Y D@/%3CXS0=IB/D-8SZ,U-:%P"B:JA:_,IQ&\EHN2E1 M\=LRH@H'FHJ%RMP%C+%>[@.X+,4@KI_,>2ZE'<#-<\6NRV]X@YWX1JL="!>: M&'P:R<$0'<_SX$BR.UA$4Q:["F)ZKKB$D/!I-NQ*H9 ' \H[T! I!&BVO-(: MF>K7O5T2QJ:+P!O@C4BD (<>?QG/Y$ E*$VOE4515XI8^65T,_-ZV$\P$(=$ M)+ZJ%F9W&> #! #A7/DID Z>^%]!;KKO)*1LI78UY#K)6;?X+=?P+O*Q;J3X M90LSC.3("&>$2J>*J/6^/V"T"\<_48C:KPZNM[0:[@"EZT9G [U*K!/;QD(R MN /=GVV1&^BU952W4\"[2$L<+4=L)D TT8&& KK*GA7)Z<IJXR3(FUWJ0J,M M_-]=%D\R?YZ8:J>">3%]*)NBO TFAS!:9Y>B>2,/_H:;!?;N > 50D.J72%# ;]?T2[2F@G.)PFZ2&] $*[>9I >5# '8%@GX: end -------------------------------------------------------------------------------- -- -- Andreas Nowatzyk (DC5ZV) Carnegie-Mellon University Arpa-net: agn@unh.cs.cmu.edu Computer Science Department Usenet: ...!seismo!unh.cs.cmu.edu!agn