21 July 2005

See also NSA patent No. 6,912,700, Method and system for non-linear state based satisfiability, issued on June 28, 2005.


Source: http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO1&Sect2=HITOFF&d=PALL&p=1&u=/netahtml/srchnum.htm&r=1&f=G&l=50&s1=6,912,284.WKU.&OS=PN/6,912,284&RS=PN/6,912,284


United States Patent 6,912,284
Palmatier June 28, 2005


Self-Authenticating cryptographic apparatus

Abstract

A self-authenticating apparatus for effecting secure communication of a binary signal. In the encipherment apparatus, key is generated as a function of plain text summed with a pseudorandom linear sequence. The decipherment apparatus performs a reverse function in an autokey mode. Incoming cipher text is summed with generated key to create a plain text stream. As in the encipherment device, key is generated as a function of the resulting plain text summed with a pseudorandom linear sequence.


Inventors: Palmatier; Thomas E. (Laurel, MD)
Assignee: The United States of America as represented by the National Security Agency (Washington, DC)
Appl. No.: 509268
Filed: June 13, 1983

Current U.S. Class: 380/44; 380/42; 380/43; 380/46; 380/28; 380/277
Intern'l Class: H04L 009//28; H04L 009//18; H04L 009//20; H04L 009//22
Field of Search: 178/2213,221.4,221.7,221.9 380/255,259,260-266,277,278,44,45,46,47,28,29,30,287,59,35,36,37,42,43


References Cited [Referenced By]


U.S. Patent Documents
4172213 Oct., 1979 Barnes et al.
RE30957 Jun., 1982 Feistel.
4343967 Aug., 1982 McArdle.
4404426 Sep., 1983 Safford.
4434322 Feb., 1984 Ferrell.


Primary Examiner: Gregory; Bernarr E.
Attorney, Agent or Firm: Utermohle; John R., Maser; Thomas O.


Claims




1. A secure communications system, comprising:

an encryptor including an information signal source, a first pseudorandom signal source, means for summing said information signal and said first pseudorandom signal, means for generating a first key signal, said first key signal being a predetermined function of said summed information and said first pseudorandom signals, and means for summing said information and key signals to produce a cipher signal; and decryptor including means for receiving said cipher signal, a second pseudorandom signal source, means for generating a second key signal, means for summing said cipher signal and said second key signal to produce a plain text signal, and means for summing said second pseudorandom signal and said plain text signal, said second key signal being a predetermined function of said summed plaintext and pseudorandom signals.

2. The apparatus of claim 1 wherein said first and second pseudorandom signal sources are linear sequence generators.

3. The apparatus of claim 1 wherein said means for generating first and second signals each comprise a shift register having an plurality of outputs and combining means connected to said outputs.

4. The apparatus of claim 3 wherein said combining means comprises a plurality of logic gates interconnected so as to receive a plurality of inputs and to provide a single output.

5. The apparatus of claim 3 further comprising a permuter connecting the outputs of said shift register and the inputs of said combiner.

6. An encipherment apparatus, comprising:

an information signal source;

a pseudorandom signal source;

means for summing said information signal and said pseudorandom signal;

means for generating a key signal, said key signal being a predetermined function of said summed information and pseudorandom signals; and

means for summing said information and key signals to produce a cipher signal.

7. The apparatus of claim 6 wherein said pseudorandom signal source is a linear sequence generator.

8. The apparatus of claim 7 wherein said key generating means comprises a shift register having a plurality of outputs and combining means connected to said outputs.

9. The apparatus of claim 8 wherein said combining means comprises a plurality of logic gates interconnected so as to receive a plurality of inputs and provide a single output.

10. The apparatus of claim 9 further comprising a permuter connecting the outputs of said shift register and the inputs of said combiner.

11. A decipherment apparatus, comprising:

means for receiving an enciphered signal;

a pseudorandom signal source;

means for generating a key signal;

means for summing said enciphered signal and said key signal to produce a plain text signal; and

means for summing said pseudorandom signal and said plain text signal;

wherein said key signal is a predetermined function of said summed plain text and said pseudorandom signals.

12. The apparatus of claim 11 wherein said pseudorandom signal source is a linear sequence generator.

13. The apparatus of claim 12 wherein said key generating means comprises a shift register having a plurality of outputs and combining means connected to said outputs.

14. The apparatus of claim 13 wherein said combining means comprises a plurality of logic gates interconnected so as to receive a plurality of inputs and provide a single output.

15. The apparatus of claim 14 further comprising a permuter connecting the outputs of said shift register and the inputs of said combiner.
Description




BACKGROUND OF THE INVENTION

1. Field of the Invention

My invention relates to the field of message enciphering and deciphering, and more particularly to key generating by autokey techniques.

2. Description of the Prior Art

Autokey encipherment or encryption refers generally to a substitution cipher in which the key, following the application of an initial key, is determined in whole or in part by preceeding elements of the key or cipher. The most common autokey systems include those known by the terms key autokey and cipher text autokey. In a key autokey encryptor, each key bit generated is a function of one or more prior key bits. Key in a cipher text autokey encryptor is a function of a prior sum of key and plain text bits, that sum comprising the enciphered message.

An important advantage of an autokey system is its ability to self-synchronize; i.e., the receiving key generator is not required to be preset to a previously determined value prior to receiving and decoding cipher messages. Cipher text autokey systems continuously self-synchronize throughout the transmission, while key autokey systems may be initially synchronized by temporarily operating in a CTAK mode until synchronization is achieved. Inherent in prior autokey systems is the feature of limited error extension. That is, a transmission error affects the key generated by the receiver for only a limited number of steps while the bit in error passes through the key generator register, after which the error no longer has any effect. The reverse of limited error extension would be infinite error extension, i.e., an incorrectly received data bit would be inserted into the receiver key generator with the result that all succeeding key bits could be affected.

An advantage of infinite error extension is its capability to insure to a high degree of probability that a message has been received without error. For example, a message to be enciphered might have a plurality of zeros or ones appended to it prior to encipherment and transmission. The receiver would decipher the message, utilizing the received signal to develop the decipherment key. The recovered message would contain the string of appended zeros or ones only if each bit in the enciphered message had been received without error, thereby insuring accuracy to a very high degree of probability. In general, it is well known that m check bits can give at most 2-;m protection, i.e., the likelihood that an incorrectly received message will test out as correct is ½m. An encipherment system employing a 2n state key generator can give at most 2-;n protection. A system utilizing both of the above will provide protection against an error going undetected with a probability equal to the lesser of 2-;m or 2-;n.

Heretofore, infinite error extension has not been available in any form having acceptable cryptographic characteristics. My invention overcomes this deficiency in the art of enciphered message communications by providing an enciphering/deciphering system having infinite error extension plus a high degree of cryptographic security.

SUMMARY OF THE INVENTION

It is an object of my invention to provide message authenticity with a low probability of error.

A further object is a message encryptor/decryptor having infinite error extension.

A still further object is an improved autokey cipher.

Another object is an autokey system incorporating a linear sequence generator.

Still another object is an autokey system which provides authentication without the need for a parity check code.

It is also an object to present a cryptographic apparatus having self-authenticating capability.

Also, it is an object to provide for encipherment and authentication in a single process, thereby reducing the complexity of the required equipment.

Finally, an object is to provide a capability for self authentication of arbitrary length messages.

An autokey encipherment/decipherment system having these and other desirable capabilities comprises an encryptor including an information signal source, a first pseudorandom signal source, means for summing said information signal and said first pseudorandom signal, means for generating a first key signal, said first key signal being a predetermined function of said summed information and said first pseudorandom signals and means for summing said information and key signals to produce a cipher signal; and

a decryptor including means for receiving said cipher signal, a second pseudorandom signal source, means for generating a second key signal, means for summing said cipher signal and said second key signal to produce a plain text signal, and means for summing said second pseudorandom signal and said plain text signal, said second key signal being a predetermined function of said summed plaintext and pseudorandom signals.

DESCRIPTION OF THE PREFERRED EMBODIMENT


FIG. 1 illustrates a digital data encryption device, or encryptor, embodying the essential elements of my invention. It includes a sequence generator 11 having a shift register, the last stage of which is connected to a first input of a modulo-2 adder (exclusive OR logic gate) 12. A source of binary plain text signals 13 is connected to a second input of adder 12 and also to a first input of a second modulo-2 adder 16. The output of adder 12 is connected to the input of the first stage of a second multi-stage shift register 17. A permuter 18 receives a plurality of inputs from register 17 and provides outputs to a combiner 21, described further hereinbelow. The combiner sends a signal output to adder 16. Terminal 22 connects the encoder output to any conventional means (not shown) for conveying the enciphered signal to the decryptor, such as a transmitter or wire line.

Register 17 may be a conventional serial shift register. The number of stages in the register is not of significance to the operation of my invention, although the security of the encrypted message may be improved by the use of a longer register. A typical system might employ a register 17 of about 64 stages.

The function of sequence generator 11 is to produce a binary bit sequence which is reproducable by one having knowledge of the device and the initial fill, but which appears random to one not having such knowledge. It is further desirable-that the sequence not be repetitive except over very long periods. One method of achieving such results is to feed the content of selected stages of a shift register into a mod-2 adder and the sum back into the first stage of the register. Maximal length linear sequence generator cycles are readily achievable by proper selection of the register taps, as further described in Peterson, Wesley W., Error-Correcting Codes, (New York: John Wiley & Sons, 1961) pp. 118-123. For example, FIG. 3 illustrates a 17-bit long shift register 26 which will produce a non-repeating cycle of length. 217-;1 by feeding back the binary sum of stages 14 and 17 via exclusive OR gate 27. In practice, a shift register of 41 or more stages might be used to increase the length of the cycle. It is considered desirable to choose registers having a prime number of stages for this purpose.

Permuter 18, which is an optional feature of my invention, might be a matrix arrangement by means of which stages of register 17 may be selectively routed to inputs of combiner 21. The setting of the permuter should include a large number of possibilities, and comprises the primary variable in the security of the apparatus. In the alternative, the permuter might be as complex as that utilized for the Data Encryption Standard (DES), described in U.S. Pat. No. 3,796,830 to Smith, entitled "Recirculating Block Cipher Cryptographic System", and U.S. Pat. No. 3,798,359 to Feistel, entitled "Block Cipher Cryptographic System."

Combiner 21 may be any of 22n multi-input, single output logic networks where n is the number of stages in register 17. It might be as simple as a 2-input adder or multiplier or as complex as a multi-level network comprising many gates. An eight input combiner is illustrated in FIG. 4 as a representative example. It is desirable that the combiner have a statistically equal likelihood of producing a 0 or a 1 at its output for all possible combinations of inputs. In this particular example, selected stages of shift register 17 are connected either directly or through permuter 18 to the inputs a through h. AND gate 41 multiplies the value of inputs a and b and the product is provided as a first input to OR gate 42. AND gate 43 similarly multiplies the value on inputs c and d, with the product routed to a second input of OR gate 42. The product of inputs e and f from gate 46 and of inputs g and h from gate 47 are ORed together by gate 48. An exclusive OR gate 51 sums the outputs of gates 42 and 48, with the result made available at output terminal 52.



FIG. 2 illustrates a decryptor embodying the essential features of my invention. A sequence generator 31 must be identical to sequence generator 11 in the encryptor of FIG. 1. A terminal 33 connected to a source of enciphered information provides a first input to a modulo-2 adder (exclusive OR gate) 36. A second shift register 37, which must be the same size as register 17 of FIG. 1, is fed by modulo-2 adder 38. Inputs to adder 38 include the output of adder 36 and the output from sequence generator 31. A permuter 41, configured and preset in the same way as permuter 18 of FIG. 1 receives a plurality of inputs from register 37 and routes them to a combiner 42. The output of combiner 42 is connected to a second input of adder 36. The output of the decoder may be detected at terminal 43 for subsequent use.

OPERATION OF THE APPARATUS

My invention finds its primary utility in A digital data encipherment system, the purpose of which is to disguise transmitted information in such away that one having access to the enciphered signal transmitted between terminal 22 of the encryptor and terminal 33 of the decryptor will be unable to figure out the underlying information.

It is necessary that permuters 18 and 41 be preset to an identical state prior to transmission or receipt of data. Also, each of the sequence generators 11 and 31 must be preset to a common state. During the initialization process, the input from formation source 13 is blocked (or set to a constant 0) and generator 11 allowed to step an equal number of times at least equal to the number of stages in register 17. Simultaneously in the receiver, both inputs to adder 36 are blocked and generator 31 is caused to step an equal number of times as generator 11. The result of the foregoing is to fill registers 17 and 37 with an identical, bit sequence. The apparatus is ready to transmit and receive enciphered data when the previously blocked inputs are activated. Referring to FIG. 1, it may be seen that the bit sequence designated CT (cipher text) is the modulo-2 sum of the sequences designated PT (plain text) and KEY. The input to register 17 is the sum of PT and LS, and KEY is uniquely determined by the content of register 17. Referring to FIG. 2, PT is the sum of CT and KEY, and the input to register 37 is the sum of PT and LS.

Note that in both the encryptor and the decryptor, the key register is filled by an identical sequence (PT plus LS) and thus KEY will also be the same in both devices. It necessarily follows that plain text entering the encryptor at terminal 13 will emerge as an identical sequence at terminal 43 of the decryptor.

A unique feature of my invention lies in its ability to insure with a high degree of probability that a message has been received without error. Previously used encipherment systems have not utilized feedback in the decryptor portion of the system. The inclusion of feedback in my invention causes a transmission error to be perpetuated throughout the remainder of the message because KEY is a function of all previous received signals. It is possible therefore to establish with near certainty that a message has been received without error by appending a string of zeros (or ones, or any other preestablished string) at the end of the message to be transmitted. The string of zeros will be present in the deciphered message if all previous bits of the message were received and decoded without error. The preferred embodiment described herein above is subject to many modifications, which will be readily apparent to one skilled in the art, without departing from the scope and spirit of my invention. The claims enumerated below set forth the limits of the invention.

* * * * *