home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / sci / crypt / 6549 < prev    next >
Encoding:
Internet Message Format  |  1993-01-08  |  10.1 KB

  1. Xref: sparky sci.crypt:6549 alt.security.pgp:470
  2. Newsgroups: sci.crypt,alt.security.pgp
  3. Path: sparky!uunet!paladin.american.edu!howland.reston.ans.net!usc!cs.utexas.edu!qt.cs.utexas.edu!yale.edu!ira.uka.de!Sirius.dfn.de!news.DKRZ-Hamburg.DE!rzsun2.informatik.uni-hamburg.de!fbihh!bontchev
  4. From: bontchev@fbihh.informatik.uni-hamburg.de (Vesselin Bontchev)
  5. Subject: Re: Zimmermann's responses to Sidelnikov's PGP critique
  6. Message-ID: <bontchev.726522074@fbihh>
  7. Sender: news@informatik.uni-hamburg.de (Mr. News)
  8. Reply-To: bontchev@fbihh.informatik.uni-hamburg.de
  9. Organization: Virus Test Center, University of Hamburg
  10. References: <1993Jan8.173701.8858@ncar.ucar.edu>
  11. Date:  8 Jan 93 19:41:14 GMT
  12. Lines: 193
  13.  
  14. prz@sage.cgd.ucar.edu (Philip Zimmermann) writes:
  15.  
  16. > >    - the  sequence  of  random numbers has strong prevalences on
  17. > >bytes (up to 0.05 ...  0.1 on material of 10000 byte) and  strong
  18. > >correlation dependence between contiguous bytes;
  19.  
  20. > Really?  How so?  What does "strong prevalences" mean?  Is he talking
  21. > about the internal random number source in random.c, used for making
  22. > RSA keys?  Or is he talking about the output of the IDEA cipher?  In
  23.  
  24. Seems that he is talking about random.c. I think we saw here another
  25. message that described a patch how to make it "more random". What
  26. Sidelnikov probably means is that if you generate a lot of random
  27. numbers with the random number generator, they do not look random
  28. enough to him - e.g., there is a corelation of 0.05 to 0.1 between the
  29. bytes in a 10,000-byte sample. We should try to generate a lot of
  30. random numbers and verify whether it is indeed so...
  31.  
  32. > either case, evidence should be presented that allows others to
  33. > reproduce his results.  The random.c code for getting randomness from
  34.  
  35. Uh, what kind of evidence? A sample of 10,000 random bytes?
  36.  
  37. > >    - the program doesn't check it's own integrity,  so it can be 
  38. > >infected by "virus"  which  intercept  confidential   keys   and 
  39. > >passwords used for  their protection and save them onto magnetic 
  40. > >carriers;
  41.  
  42. > The PGP manual warns of this problem.  A well-designed virus could
  43. > defeat any self-checking logic by attacking the self-checking logic.
  44. > It would create a false sense of security if PGP claimed to check
  45. > itself for viruses when you run it.
  46.  
  47. It is strange that a Russian does not know that self-checking programs
  48. can be easily fooled (at least in MS-DOS) by stealth viruses... There
  49. are enough stealth viruses known (and some even made) in Russia...
  50.  
  51. But maybe he means that a self check will help catch at least the
  52. simple (i.e., non-stealth) viruses. This is true, but there is another
  53. problem. Since the program is designed to be portable, obviously its
  54. checksum cannot be hard-coded in it - because it will be different
  55. when you compile the program on a different platform or even with a
  56. different compiler. Therefore, the only way to add self-checking
  57. capabilities to it is to run an external program on the compiled
  58. executable that computes the checksum (say, MD5) of the file and
  59. stores it somewhere in the executable, which is marked somehow.
  60. Unfortunately, in order to keep the portability, this program has also
  61. to be published in source and the "marker" of the place where the
  62. checksum is stored must be also made public. Not to speak that the
  63. checksum algorithm must be also well-known. In this case, it becomes
  64. trivial to modify (e.g., infect) the executable, then compute its new
  65. checksum, locate the place where it is stored and patch it to the new
  66. value. As you mentioned, such direct attack is always possible (i.e.,
  67. even if the checksum algorithm is not well known and the place where
  68. the checksum is stored is not publicised), but with the source
  69. available the attack becomes just trivial. No, there is really no
  70. point to make PGP check itself. The most one can do is to distribute a
  71. detached signature of the files in the archive. This is currently done
  72. with the MS-DOS executable, but maybe it should be done with the
  73. source files too...
  74.  
  75. > >    - the program has not  optimal  exponentiation  algorithm  in
  76. > >GF(P) field,   when  P  -  prime  number,  which  result  in  low
  77. > >performance;
  78.  
  79. > PGP is freeware.  Maybe the exponentiation is not as optimal as it
  80. > could be if the PGP development effort were funded.  In any case,
  81. > improvements in the math algorithms have made PGP 2.0 faster than
  82. > version 1.0, and version 2.1 is faster still.  Of course, suggestions
  83. > for improving the performance of the algorithms are always welcome.
  84.  
  85. I think we have seen another comment on that... Was it by Robert
  86. Silverman? He is an expert in number theory and factoring, so he
  87. should be the most competent person to comment...
  88.  
  89. > >    - the prime numbers reception using in this program (R and  q
  90. > >in RSA  algorithm)  permits  not less than on two order to reduce
  91. > >the labour-intensiveness of factorization;  with 256 bit blocks
  92. > >of  data lenght it is possible to execute the cryptanalysis in
  93. > >real time;
  94.  
  95. > I don't know what this means.  PGP does not normally work with RSA
  96. > keys as small as 256 bits.  No claims are made that this is a safe
  97. > key length.  Larger RSA keys are specifically recommended in the
  98. > manual.  And what does "real time" mean in this case?
  99.  
  100. Either he has found a bug in the RSA implementation or he just does
  101. not understand the algorithm... :-)
  102.  
  103. > >    - before using RSA the program executes compression and block
  104. > >encryption that  positively  affects  on  the  common   stability
  105. > >encryption.
  106.  
  107. > What does this mean, in English?  It sounds like a positive remark,
  108. > not a criticism.  Is a better English translation available?  
  109.  
  110. I am able to understand Russian perfectly, although I cannot speak it
  111. that well. I also have the necessary utilities to display Russian text
  112. on my screen (well, after some hacking - after converting the
  113. character set of the Russian Cyrillics to Bulgarian Cirillics, because
  114. we are using different encoding schemes for the Cyrillic letters). If
  115. the person who has forwarded Dr. Sidelnikov's message could provide me
  116. a reliable e-mail contact with him, I could try to understand what he
  117. means and to post it here...
  118.  
  119. > >    - for  signature  calculation the program originally executes
  120. > >hashing of file into number of given  length  (256, 512 or 1024 bit),
  121. > >but hashing function does not corresponds the ISO recommendations;
  122.  
  123. > The MD5 hash used in PGP is widely respected in the crypto community.
  124. > Not conforming to some particular ISO specification does not imply the 
  125. > hash function is weak.  The MD5 hash is used in certain other crypto 
  126. > standards-- so why should the ISO standard be somehow better than other
  127. > crypto standards?
  128.  
  129. Either he has never heard about MD5, or he is somehow not happy with
  130. the block length of the hashed blocks... Would be nice if he posts the
  131. particular ISO recomendations he has mentioned...
  132.  
  133. > >    - when considering the hashing function as the automatic  device
  134. > >without output,  it  is  enough  simply possible to construct the
  135. > >image of reverse automatic device and with using  the  blanks  in
  136. > >text files  (or  free fields in some standard formats as in DBF),
  137. > >to  compensate  the  hashing function  at  changed  file  to  former
  138. > >significance.
  139.  
  140. > >    Thus, it  is  possible  to  forge  the  electronic  signature
  141. > >without analysis of RSA algorithm.
  142.  
  143. > How?  This claim sounds alarming, if true.  But it requires that one
  144. > of the following be true:
  145.  
  146. >  a)  The RSA algorithm itself has a weakness.
  147. >  b)  The MD5 hash algorithm has a weakness.
  148. >  c)  PGP has a programming bug in implementing either RSA or MD5.
  149.  
  150. I think that he means b). He probably means that he is able to forge
  151. it, which would be understandable if he has never heard of it... :-)
  152.  
  153. > >    - when executing analysis on  plaintext  and  ciphertext  the
  154. > >linear correlation  dependences  with encryption key were founded
  155. > >(0.01 and more degree);
  156. > >
  157. > >    - also the effective method  of  decreasing security which
  158. > >reduces the  order  of  time  necessery  to key definition in two
  159. > >times in comparison with exhaustive search of all keys  (i.e.
  160. > >algorithm has the labour-intensiveness which is equal the root
  161. > >square from labour-intensiveness of the exhaustive search algorithm)
  162. > >have been found.
  163.  
  164. > Again, a better English translation is required to decipher this
  165. > claim.  Also, where is the evidence?  This sounds like he's saying
  166. > the IDEA cipher is weak.  Or maybe PGP has a bug in implementing it. 
  167. > If so, it should be fixed.  But more information is needed to help
  168. > reproduce the problem, if indeed there is a problem.
  169.  
  170. He is saying (I think) that the output of the IDEA is not completely
  171. random - like if it doesn't change very much if you change a single
  172. bit of the key. I would be very curious to see how does he compute his
  173. "correlations"... Also, he is mentioning for the second time that
  174. there is a problem in the RSA implementation that allows you to reduce
  175. the time to factor the key to the square root of the number of tries,
  176. if you just try all possible factors (brute force). But he doesn't
  177. explain -how- this can be done and -why- it can be done...
  178.  
  179. > >    The block encryption algorithm has temporary stability.
  180.  
  181. > What does "temporary stability" mean?
  182.  
  183. Maybe he means that a single bit change in the plain text does not
  184. change the cyphertext considerably? Strange...
  185.  
  186. > >                       The MSU mathematical cryptography
  187. > >                       problems Laboratory Manager
  188. > >                       Academician
  189.  
  190. This is probably translated incorrectly too... "Academician" is the
  191. highest academical degree in Russia (and many other East European
  192. countries, including Bulgaria) and I sincerely doubt that an
  193. academician will be just a "laboratory manager" and will play with
  194. PGP... He would be much more likely to be a director of an
  195. institute...
  196.  
  197. I would really like to sort that out. Could the person who forwarded
  198. the message provide me contact with Dr. Sidelnikov?
  199.  
  200. Regards,
  201. Vesselin
  202. -- 
  203. Vesselin Vladimirov Bontchev          Virus Test Center, University of Hamburg
  204. Tel.:+49-40-54715-224, Fax: +49-40-54715-226      Fachbereich Informatik - AGN
  205. < PGP 2.1 public key available on request. > Vogt-Koelln-Strasse 30, rm. 107 C
  206. e-mail: bontchev@fbihh.informatik.uni-hamburg.de    D-2000 Hamburg 54, Germany
  207.