home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / sci / crypt / 2930 < prev    next >
Encoding:
Text File  |  1992-08-17  |  11.2 KB  |  306 lines

  1. Newsgroups: sci.crypt
  2. Path: sparky!uunet!cs.utexas.edu!milano!cactus.org!ritter
  3. From: ritter@cactus.org (Terry Ritter)
  4. Subject: Multiplexing Ciphers
  5. Message-ID: <1992Aug18.054600.26533@cactus.org>
  6. Keywords: Braided, Mass Encryption
  7. Organization: Capital Area Central Texas UNIX Society, Austin, Tx
  8. Date: Tue, 18 Aug 1992 05:46:00 GMT
  9. Lines: 295
  10.  
  11.  
  12.  
  13.  Recently, several messages have proposed cipher systems which use
  14.  a multiplexer to combine two (or more) messages, or different parts
  15.  of a single message, to form ciphertext.  When this was proposed
  16.  last year in The Braided Stream Cipher, I posted a long forgotten
  17.  analysis, which I will now revive.  But first:
  18.  
  19.  
  20.  One of the problems we have in cryptology is that our few texts
  21.  do not adequately describe the various techniques and capabilities
  22.  of cryptanalysis, nor the major role cryptanalysis plays in the
  23.  design of new systems.  When new cryptosystems are proposed here,
  24.  we inevitably we end up with "it's obviously strong," "no it's not"
  25.  arguments, ad infinitum.  And almost nobody has the kind of time
  26.  to spare that it would take to develop the techniques to attack
  27.  particular systems and prove weakness.  We rely on the literature
  28.  to guide us, but newbies do not know the literature.
  29.  
  30.  We need to find a different way to handle the discussion of new
  31.  designs, especially newbie designs.  For a start, I would like to
  32.  see more comments and more participation.
  33.  
  34.  Moreover, many academics seem to view stream ciphers merely as
  35.  historical oddities.  Few of the common crypto texts describe them
  36.  otherwise.  Consequently, most any newbie in this field convinces
  37.  his or herself that his or her particular stream cipher is new,
  38.  unique, and obviously impossible to crack.  In reality, this is
  39.  almost always wrong.
  40.  
  41.  But the problem is larger than just stream ciphers:  We need to
  42.  find a way to convey the history of cipher designs and failures,
  43.  even without a good design text to lean on.
  44.  
  45.  Yes, discussions with newbies are time-consuming and often
  46.  irritating.  But everybody is a newbie at least once (indeed, as
  47.  things progress, we may all be newbies many times).  Somehow we
  48.  need to include these people, rather than just ignoring them, or
  49.  running them off.
  50.  
  51.  
  52.  Anyway, my Braided analysis, from a year ago:
  53.  
  54.  
  55. Article 3606 in sci.crypt:
  56. Path: cactus.org!ritter
  57. From: ritter@cactus.org (Terry Ritter)
  58. Newsgroups: sci.crypt
  59.  
  60. Subject: The Braided Stream cipher
  61. Message-ID: <8300@cactus.org>
  62. Date: 24 Jul 91 05:37:40 GMT
  63. Organization: Capital Area Central Texas Unix Society, Austin, TX
  64. Lines: 237
  65.  
  66.  
  67.  
  68. Definition:
  69.  
  70.      The Braided Stream cipher, described by William Simon, consists of a
  71. cryptographic combiner and a key stream:
  72.  
  73.      * The combiner is a data multiplexer, which takes a single bit from
  74. one of multiple data channels.  The unselected channels do not advance,
  75. and their data bits remain ready until selected.
  76.  
  77.      * There are at least two data channels.  One or more of the channels
  78. may be a random key stream for confusion purposes.
  79.  
  80.      * The original key stream is supposed to be really random.
  81.  
  82.  
  83.  
  84. Claimed Advantages:
  85.  
  86.      * "simple," "fast," "high levels of confidence"
  87.  
  88.      * "key management is inherent in the design"
  89.  
  90.      * "not vulnerable to progress in mathematics or computational
  91. technologies"
  92.  
  93.  
  94.  
  95. Some Implications:
  96.  
  97.      * The original key may be "really random."  But, if so, then we might
  98. as well use that key with XOR and get the provably-secure one-time pad.
  99.  
  100.      * ANY secure cipher can also handle "key management" data simply by
  101. enciphering it as a message.  The reason this is not done is that the
  102. cipher key may have been "obtained," and the plaintext may be fully
  103. exposed, INDEPENDENT of the security of the cipher itself.  Shipping key
  104. material under these conditions will just assure that the cipher will
  105. continue to be insecure.  Key management is not a special feature of this
  106. particular cipher.
  107.  
  108.      * Key material which is reused, even in a complex way, is no longer
  109. "really random," and thus may, at least potentially, be broken.
  110.  
  111.      * For the one-data one-confusion system, if the key stream has a
  112. balanced distribution, the ciphertext expansion will be 100% (or the data
  113. rate will be reduced to 50% of the unenciphered rate).  In contrast,
  114. a one-time pad does not expand the ciphertext at all.
  115.  
  116.      * Dynamically, any particular data channel may run fast (and thus be
  117. less hidden and more exposed) or slow (for an even slower data rate).
  118. Transiently, one channel may be selected repeatedly, and thus have no
  119. protection at all.  Clearly, at some point, a "less hidden" message will
  120. become recoverable.  Cryptanalysis of the two-channel system could proceed
  121. from the standpoint that the message is passing through a noisy channel.
  122. In this peculiar kind of noisy channel, data bits are not lost, but an
  123. arbitrary number of arbitrary confusion bits may separate data bits.  Thus,
  124. any statistics in the plaintext are not lost, but merely "mellowed out" by
  125. intervening confusion data.
  126.  
  127.  
  128. Analysis
  129.      If we are to avoid analyzing EVERY POSSIBLE configuration, we must
  130. pick one and stay with it.  The weakest system may be the two-channel
  131. scheme. We choose the weakest system to analyze in the hopes that it may
  132. help us learn to attack a stronger system.
  133.  
  134. The obvious way to analyze the system is to analyze its component parts.
  135. Because "key management" can be applied to any stream cipher, its analysis
  136. is irrelevant to the strength of this particular cipher.  Moreover, the
  137. original key is supposed to be "really random," and no precise technique has
  138. been described for the extension of that key, so no precise analysis can be
  139. applied.  Thus, we are left with the combiner:
  140.  
  141.  
  142. Combiner Characteristics
  143.      Stream cipher combiners have been one of the major research topics
  144. in the past decade [4,5,7], although most of those in the literature are
  145. non-reversible.  Such combiners mix multiple LFSR sequences and yield a
  146. resulting sequence with large linear complexity, in which the input
  147. sequences are statistically independent of the output.
  148.  
  149.      Statistical independence can be measured by taking the Walsh
  150. transform of the combiner output for every possible input value [5].  But
  151. for simple combiners, it is probably easier to analyze every possible
  152. case by hand:
  153.  
  154.  
  155.  
  156. The Exclusive-OR Combiner:
  157.  
  158.      Invented by a cryptographic novice, using electro-mechanical relays
  159. (and without mention of "additive" or "mod 2" or "finite fields" or
  160. "Boolean logic"), exclusive-OR is the conventional stream cipher combiner.
  161. It is also directly susceptible to "known plaintext" or "probable word"
  162. attacks.
  163.  
  164.  
  165.      A ---)\                -   -
  166.           )X)--- Z     Z = AB + AB
  167.      B ---)/
  168.  
  169.  
  170.      A  B   Z   A=Z  B=Z
  171.  
  172.      0  0   0    1    1
  173.      0  1   1    0    1
  174.      1  0   1    1    0
  175.      1  1   0    0    0
  176.            ---  ---  ---
  177.            50%  50%  50%
  178.  
  179.  
  180. Note that exclusive-OR produces a balanced result.  Moreover, for any
  181. given output, neither input has a preferred value.
  182.  
  183.  
  184.  
  185. The Geffe Combiner:
  186.  
  187.      First described in a popular industry magazine [1], the Geffe combiner
  188. was intended to combine three LFSR's into a complex confusion sequence.
  189. One LFSR was used solely to select between two other LFSR's.  Because this
  190. combining function is nonlinear, it took a long time to be deeply
  191. understood.  Note that the Geffe combiner is actually a multiplexer.
  192.  
  193.  
  194.      A ------|\
  195.              |&)--+
  196.           +--|/   +--)\                    -        IF C THEN
  197.      C ---+          )+)--- Z    Z = AC + BC   or      Z := A
  198.           +-o|\   +--)/                             ELSE
  199.              |&)--+                                    Z := B;
  200.      B ------|/
  201.  
  202.  
  203.      A  B  C   Z   A=Z  B=Z  C=Z
  204.  
  205.      0  0  0   0    1    1    1
  206.      0  0  1   0    1    1    0
  207.      0  1  0   1    0    1    0
  208.      0  1  1   0    1    0    0
  209.      1  0  0   0    0    1    1
  210.      1  0  1   1    1    0    1
  211.      1  1  0   1    1    1    0
  212.      1  1  1   1    1    1    1
  213.               ---  ---  ---  ---
  214.               50%  75%  75%  50%
  215.  
  216.  
  217. The Geffe combiner also produces a balanced result (for balanced input
  218. sequences).  But whatever the output value Z, the probability is 75% that
  219. input A has that same value, and the same can be said for B.  This fact
  220. was finally used to break the system.
  221.  
  222.  
  223. Correlation Attacks
  224.  
  225.      Siegenthaler [5] reasoned that, when a combiner has inputs which are
  226. correlated to the output value, it might be possible to attack each input
  227. separately with a statistical attack.  We might choose to view this as a
  228. sort of biased "brute force" attack, but, given a 75% probability that
  229. the output is also the desired input, we clearly know where to start.
  230. Then, only about 25% of our decisions will be wrong, and if we are
  231. breaking a LFSR, we will soon be able to tell if we have taken the wrong
  232. path.  Thus, Geffe was broken.  Note that this attack is independent of
  233. the characteristics of the confusion sequence, so that various possible
  234. attempts to "hide" or "improve" the sequence are simply irrelevant.
  235.  
  236.  
  237.  
  238. The Braided Stream Combiner:
  239.  
  240.      Proposed as a "simple and fast system which allows for high levels
  241. of confidence without having recourse to weak, dubious, or controlled
  242. technologies," the Braided Stream combiner is in fact a simple
  243. multiplexer.  It is, therefore, exactly the same mechanism which was
  244. broken by Siegenthaler.
  245.  
  246.  
  247.  
  248.      A ---*                         -        IF C THEN
  249.            ----*--- Z     Z = AC + BC   or      Z := A
  250.      B ---*                                  ELSE
  251.              ^                                  Z := B;
  252.              |
  253.      C ------+
  254.  
  255.  
  256.  
  257. Now, obviously, Siegenthaler was working with LFSR's, and these
  258. mechanisms can be attacked efficiently.  In contrast, the Braided Stream
  259. system works on streams of data.  Certainly it could be argued that
  260. these two situations are different, and that must affect the analysis.
  261. Moreover, there could be 4 streams or more, most could be noise, so on
  262. and so forth.
  263.  
  264.      But to the extent that each of the streams carry identifiable
  265. statistics, those streams become susceptible to some sort of correlation
  266. attack.  Can we ever hope to guarantee that different channels will have
  267. similar statistics?  And if we must pre-process the data to obtain this
  268. situation, then why bother with this combiner?
  269.  
  270.  
  271.  
  272. References
  273.  
  274. [1]  Geffe, P.  1973.  How to protect data with ciphers that are really
  275.      hard to break.  Electronics.  Jan 4.  99-101.
  276.  
  277. [2]  Meier, W. & O. Staffelbach.  1988.  Fast Correlation Attacks on
  278.      Stream Ciphers.  Advances in Cryptology: EUROCRYPT '88 Proceedings.
  279.      301 - 314.  Springer-Verlag.
  280.  
  281. [3]  Mund, S. D. Gollman & T. Beth.  1987.  Some Remarks on the Cross
  282.      Correlation Analysis of Pseudo Random Generators.  Advances in
  283.      Cryptology: EUROCRYPT '87 Proceedings.  25-35.  Springer-Verlag.
  284.  
  285. [4]  Rueppel, R.  1985.  Correlation Immunity and the Summation Generator.
  286.      Advances in Cryptology: CRYPTO '85 Proceedings.  260-272.  Springer-
  287.      Verlag.
  288.  
  289. [5]  Rueppel, R.  1986.  Analysis and Design of Stream Ciphers.
  290.      Springer-Verlag.
  291.  
  292. [6]  Siegenthaler, T.  1985.  Decrypting a Class of Stream Ciphers Using
  293.      Ciphertext Only.  IEEE Transactions on Computers.  C-34(1): 81-85.
  294.  
  295. [7]  Siegenthaler, T.  1986.  Design of Combiners to Prevent Divide and
  296.      Conquer Attacks.  Advances in Cryptology: CRYPTO '85 Proceedings.
  297.      Springer-Verlag.
  298.  
  299.  
  300.  ---
  301.  Terry Ritter   cs.utexas.edu!cactus.org!ritter   (512) 892-0494
  302.  
  303.  ---
  304.  Terry Ritter   ritter@cactus.org
  305.  
  306.