On Distributed Communications Series

IX. Security, Secrecy, and Tamper-Free Considerations

Appendix

Use of a Function of N-Boolean Variables as a Second-Order Modifier for "Next-Key" Generation

In the foregoing text, little was said about the types and the range of operations possible in modifying the key in the end-to-end auto-key subsystem. This Appendix lends some insight into the added complexity of analysis that can be created for the eavesdropper by simply varying the logical addition operator.

In Fig. 5 three drum bands, each containing 866 bits, are shown. The first band contains the key used to decrypt the last Message Block; the second drum band stores text in the clear that has been derived by use of the old key; and the third drum band stores a new key computed by a "black box," labeled "Z".

A, B, and C, could, for example, represent three magnetic heads on the Multiplexing Station drum, 16 bits apart. Similarly, D, E, and F, would represent a second set of three heads. The box, Z, contains Boolean logic which performs "some" operational function upon the old key for the sake of increasing complexity. Consider the six separate heads to form six separate inputs. We ask, "How many different ways can six inputs be logically organized to form separate and distinct output functions?"

Any Boolean function can be expressed as the logical addition of a series of "min-terms.[1] Each min-term is a logical product of each of the fundamental inputs or its logical complement. Any logical function can be expressed as a series of points on a Veitch Diagram (see Fig. 6).

Thus, we can have

allowable combinations for only six variables. This number almost "explodes" when the number of variables is raised. For example, let N equal the number of variables and compute the number of separate logical functions possible:

As any single one of the six input min-terms can be implemented with only six diodes, and as all combinations of min-terms can be implemented with 64 or fewer min-terms, it follows that every complicated function possible can be implemented with two-level logic, requiring 384 diodes (six diodes per min-term, times 64 diodes for all min), for any of the

Of course, rather complex logic circuitry is required for many of these combinations, but many of the functions can be created with only a small portion of the full complement of 384 diodes.

Thus, it is seen that rather simple straightforward techniques can be used at this point to add another layer of complexity, further compounding the problems of the would-be eavesdropper.


[1] See: Ware, W. H., Digital Computer Technology and Design, Vol. I, Wiley, New York, 1963, pp. 4.13-4.16.


Contents
Previous chapter
List of ODC reports