1. Field of the Invention
This invention relates in general to a parallel cipher text scrambler, and more particularly to cipher text scrambler and method for scrambling multiple, parallel data streams so that the data streams are uncorrelated and have a fixed delay therebetween.
2. Description of Related Art
Communication information encryption is performed in digital data communications to provide security. Furthermore, communication applications require the sequence of data bits transmitted over a communication channel to be statistically random. In order to achieve the required degree of randomness, the data can be scrambled using a Maximal Length Pseudo Random Sequence. Maximal Length Pseudo Random Sequences are known to have the lowest possible auto-correlation, and are therefore the optimal choice for scrambling.
Two techniques have been generally used in the prior art to perform the scrambling operation: block scrambling and stream scrambling. Both techniques take advantage of the fact that when a first sequence of bits is exclusively OR'ed with a second sequence of bits and is then again exclusively OR'ed with the second sequence of bits identically aligned, the output is the first sequence just as it was before any exclusive OR operations were performed.
Block scrambling uses a framing pattern or other known means to provide the bits into some definable blocks of information. These bits are then exclusively OR'ed with a fixed pattern of bits synchronized to the boundaries of the block. Since a pattern of scrambling bits is fixed with respect to the block, the same pattern can be used at the receiver end to unscramble the bits. Any bit error occurring in the transmission channel between the transmitter and receiver will cause an error in that particular bit, but will not cause other bits to be in error, provided only that the receivers remain synchronized with the transmitters to the block boundaries. However, the longest framing pattern is not usually equal to the 2.sup.n-1 length of the pseudo random pattern desired, so that only part of the pattern is used repetitively, introducing undesirable correlations in the data.
Stream scrambling of the known prior art generally operates on a continuous stream of bits. In typical implementation, the bits at the transmitting end of a communication channel to be scrambled are passed through one input of a two input exclusive OR gate. The output of the gate is the output of the scrambler and also the input to an N-stage shift register. This shift register is tapped at the Nth stage and one or more other stages, and the outputs of these taps are exclusively OR'ed together. The result of this exclusive OR operation is applied to the other input of the exclusive OR gate that has the data to be scrambled, as the first input. The tap positions are chosen so that a Galois polynomial represented by the tap weight is irreducible, and if the input data were all zeros and the shift register started out at any state other than all zeros, a Maximal Length Pseudo Random Sequence would be produced.
As mentioned, pulse patterns can have an energy component which is particularly high at certain discrete frequencies. In order to avoid these pulse patterns, the digital signal to be transmitted must be scrambled at the transmitting side with a pseudo random sequence. The descrambling occurs at the receiving side with the pseudo random sequence which was employed at the transmitting side. The synchronization of the pseudo random generators employed at the transmitting receiving sides which is thereby necessary, can be avoided by employing freewheeling and, therefore, self synchronizing scrambler and descrambler arrangements. In order to achieve high bit rates, modulating signals having a high clock frequency are often scrambled in a plurality of parallel channels having a lower bit repetition frequency. However, the bit streams must be synchronized in order to reconstruct the original signal.
Thus it can be seen that there is a need for a cipher text scrambler which enables multiple data streams to be scrambled in parallel in such a way that the data streams are uncorrelated with respect to each other.
It can also be seen that there is a need for a cipher text scrambler that provides a large fixed delay relationship between the scrambler bits over the multiple streams.
It can also be seen that there is a need to provide a cipher text scrambler that can correctly identify the ordering of the multiple data streams with the respect to each other, correct for any polarity or wore swap misconnections and align the received multiple data streams despite differential delays between the data streams.