Abstract:
This system enhances the security of a digital communication system by adding a new axis of encryption. This is achieved by randomly varying the connection pattern of the interleaver utilized in a Turbo coding system.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    This invention involves an improved security technique for coded, encrypted digital communication.  
           [0003]    2. Description of the Related Art  
           [0004]    In a conventional digital communication system, the information bits are encrypted with some technique and then some form of Forward Error Correction (FEC) is applied. In the decoder, the order is reversed: the FEC is removed and then decrypted. The security is whatever is contained in the encryption of the information bits.  
         SUMMARY OF THE INVENTION  
         [0005]    In 1993, the discovery of Turbo codes permitted transmission approaching the Shannon limits. At least for broadcast applications, Turbo codes are rapidly being implemented. In an example, the encoder for a Turbo code consists of a convolutional encoder, an interleaver, a second encoder, and puncturing electronics.  
           [0006]    Normally, the interleaver is fixed. For example, it may be written by columns and read out by rows. In this invention the connection of the interleaver is pseudo random. Consider, as an example that a frame consists of one use of all of the storage elements in the interleaver. By changing the interleaver connection pseudo randomly after some number of frames, the attacker has to not only solve the original encryption problem, but now must also solve the pseudo random interconnection of the interleaver.  
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0007]    [0007]FIG. 1 shows the block diagram for an example Turbo encoder.  
         [0008]    [0008]FIG. 2 shows the block diagram for the convolutional decoder.  
         [0009]    [0009]FIG. 3 shows a schematic of the interleaver. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0010]    [0010]FIG. 1 shows the basic structure of an example Turbo encoder. An information data stream enters the encoder and goes to both the Recursive Systematic Convolution (RSC) coder C1 and the Pseudo Random Interleaver (PRI). As an example, let RSC C1 be ½ rate, so it generates 2 bits for each input bit. When the PRI has been filled, its outputs are coded by RSC C2. Each input bit thus generates 4 output bits. However, since the coders are systematic, the input bit is the same from both coders, one can be discarded. Thus, without puncturing, the natural code rate would be ⅓. However, with puncturing every other code bit can be discarded with the result being a rate ½ code.  
         [0011]    The Interleaver can be considered as an array of storage elements. One implementation is as a 1 bit layer Random Access Memory (RAM).  
         [0012]    For completeness, a Turbo decoder is shown in FIG. 2. The maximum a posteriori (MAP) decoders correspond to the 2 encoders in the encoder (FIG. 1). The two interleavers are the same as the interleaver in FIG. 1. The Deinterleaver in FIG. 2 is the inverse of the interleaver. It is the feedback represented by the Deinterleaver that provides the power of the Turbo codes to iteratively improve performance.  
         [0013]    There are a number of ways in which one might pseudo randomly vary the interleaver connection. This means changing the location where each incoming bit is stored in the Interleaver memory. One such technique is shown in FIG. 3. It is assumed that the Interleaver memory is a RAM organized in a rectangular array where each memory cell is selected by an XY address. Referring to FIG.  3 , two Random Process generators create independent random values(the noise output of a resistor for example). These values are each converted to digital form by an Analog to Digital (ADC) converter. These digital signals become the address for the Interleaver memory and are stored in the First In First Out memory.  
         [0014]    The Checker compares an incoming location with those already stored in the FIFO and selects a new, unused value.  
         [0015]    At the beginning of a new cycle(Interleaver connection) the contents of the FIFO are encrypted and broadcast to all of the receivers for that broadcast.  
         [0016]    For example, the FIFO contents could be encrypted with DES (AES) and this key could be delivered by a public key cryptography technique.  
         [0017]    The essence of this technique is to force an attacker to first solve the random interleaver before an attack can be made on the data encryption.