CA2305264C - Method and apparatus for generating a stream cipher - Google Patents

Method and apparatus for generating a stream cipher Download PDF

Info

Publication number
CA2305264C
CA2305264C CA002305264A CA2305264A CA2305264C CA 2305264 C CA2305264 C CA 2305264C CA 002305264 A CA002305264 A CA 002305264A CA 2305264 A CA2305264 A CA 2305264A CA 2305264 C CA2305264 C CA 2305264C
Authority
CA
Canada
Prior art keywords
stream
cipher
data stream
register
linear feedback
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CA002305264A
Other languages
French (fr)
Other versions
CA2305264A1 (en
Inventor
Fatih M. Ozluturk
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
InterDigital Technology Corp
Original Assignee
InterDigital Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by InterDigital Technology Corp filed Critical InterDigital Technology Corp
Priority to CA002474856A priority Critical patent/CA2474856C/en
Publication of CA2305264A1 publication Critical patent/CA2305264A1/en
Application granted granted Critical
Publication of CA2305264C publication Critical patent/CA2305264C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/84Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor

Abstract

A code division multiple access (CDMA) is a type of spread-spectrum communication system having a plurality of subscriber units and at least one base station. In order for a first subscriber unit to communicate with a second subscriber unit, a transmitter unit of the first subscriber unit imprints a unique code upon transmission and the second subscriber unit includes a receiver, which uses the code to decode the transmission. In addition, each transmitter with a CDMA communication system includes a stream cipher generator for enciphering the voice and data communications. Each receiver within a CDMA communication system contains an identical or similar stream cipher generator, which is used to decipher the received enciphered communication.
The present invention relates to a stream cipher generator having a plurality of linear feedback shift registers to produce a stream cipher for increasing security using ciphered messages.

Description

METHOD AND APPARATUS FOR GENERATING A STREAM CIPHER
BACKGROUND OF THE INVENTION
Field of the Invention This invention generally relates to secure transmission of digital voice and data communications. More particularly, the invention relates to a stream cipher with a plurality of linear feedback shift registers generating large pseudo-random bit sequences and having multiple security keys.
Description of the Prior Art Code division multiple access (CDMA) is a type of spread-spectrum communication system wherein each subscriber unit is distinguished from all other subscriber units by the possession of a unique code. In order to communicate with a particular subscriber unit, a transmitter unit imprints the unique code upon transmission and the receiver uses the same code to decode the transmission.
The unique codes used by a CDMA communication system to transmit voice and data communications appear noise-like and random. Since the random sequences are generated by standard deterministic logic elements, the generation of the bit sequences are predictable and repeatable. It is the use of these repeatable binary random sequences that permits easy modulation with any information-bearing signal. These predictable random sequences are called pseudo-random sequences.
Each transmitter within a CDMA communication system includes a stream cipher generator which uses a key to SUBSTITUTE SHEET (RULE 2B) r. n n r ~~ O~ t.' O P ft fn . -. r, n ~ ' o p ' .. fr b ~ . ~ .
_. ~ ~ . r ., n . r C , ~ . f r, ~.
encipher the voice and data communications. An identical stream cipher generator at the receiver deciphers the received enciphered communications using the same key.
As is well known in the prior art, the simplest stream cipher generator is the linear feedback shift register. A
shift register of a finite bit length is clocked at a fixed rate. An exclusive-OR (XOR) gate generates the serial input signal from the XOR combination of some bits of the shift register. The circuit then proceeds through a set of states, eventually repeating itself after a finite number of clock pulses. However, the stream cipher generated by linear feeaback shi t register is related to the length of the shift register and which bits are combined in the XOR to generate the next input. If a complex stream cipher is desired, an expensive shift register having a cumbersome length must be used.
Zeng et al . , "Pseudo Random Bit Generators in Stream-Cipher Cryptography", Computer, Voi. 24, No. 2, February 1, 1991, pages 8-17 discloses various c;~rcuits using linear feedback shift registers for producing stream ciphers. WO-A-80 02349 discloses a system for encoding and decoding a data signal. To encode the data signal, the data signal is summed with a pseudo random bit sequence. To decode the encoded data, the encoded data stream is summed with a pseudo random sequence to recover the data signal. , Accordingly, it is an object of the present invention to provide a method for generating pseudo-random sequences with increased complexity.
N'Eh0~0 SNE
P

- ~ a ~~ ~ p Po CcJ 4N
"., ., c n n a a ~ r. t? t~ r .~ r. . f. O : ~ ~ , n n ? r t. ~ f. , ~ ~1 t1 G
n . ~ .. . n ~
. . ~ r -2a-Accordingly, there is a need for a simple method of increasing the complexity of stream ciphers to increase security of enciphered messages.
SUN~ARY OF THE INVENTION
A stream cipher generating circuit for use in wireless communications systems includes at least two mutually coupled linear Feedback shirt register (LrSR) circuits, wherein one LFSR circuit is used to control the clock of the other. This combina~ion of L: SR circui is generates a stream cipher having a very large linear complexity and a very large period. The total output is balanced with respect to the individual outputs of the LFSR circuits. The stream cipher generating circuit can be used in a multiple stage configuration, in which case security is greatly enhanced since the linear complexity and period of the stream cipher output increase exponentially.
Accordingly, it is an object of the present invention to provide a method for generating pseudo-random sequences with increased complexity.
Other aspects and advantages will become apparent to those skilled in the art after reading the detailed description of the preferred embodiments.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 is a block diagram of a conventional spread spectrum transmitter;
Figure 2 is a block diagram of a conventional spread spectrum receiver;
Figure 3 is a timing diagram of a pseudo-noise (PN) sequence used in Figures 1 and 2;
Figure 4 is a diagram showing a conventional cipher stream generator;
Figure 5 is a block diagram of an embodiment of the spread spectrum transmitter of the present invention;
Figure 6 is a block diagram of a first embodiment of cipher stream generator of the present invention;
Figure 7 is a flow chart of the steps for generating a cipher stream in the first embodiment of the present invention;
SUBSTITUTE SHEET (RULE 26) Figure 8 is a block diagram of an embodiment of the spread spectrum receiver of the present invention; and Figure 9 is a second embodiment of the cipher stream generator of the present invention.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
The preferred embodiments are described with reference to drawing figures wherein like numerals represent like elements throughout.
A typical prior art spread spectrum transmitter 10, as shown in Figure l, includes an analog-to-digital (A/D) converter 12 and a switch 14. The A/D converter 12 receives an analog voice signal, digitizes the signal and outputs the digitized signal to the switch 14. The switch 14 receives the digital voice signal from the A/D converter 12 and a digital data signal from a data terminal (not shown). It should be readily understood by those of skill in the art that the data terminal may comprise a facsimile machine, a computer or any other type of electronic device that can send or receive digital data. The switch 14 connects the spread spectrum transmitter 10 with an input for either digital voice data or digital data. The digital voice data and digital data are hereafter collectively referred to as digital data.
A mixer 16 combines data from the switch 14 to the cipher stream generated by the cipher stream generator 17, which has at least one key 18. After combining the cipher stream to the data, the mixer 16 outputs the enciphered digital data to a spreader 20, which may be a mixer. A pseudo-random sequence SUBSTITUTE SHEET (RULE 26) generated by pseudo-random sequence generator 30 is applied to a first terminal of the spreader 20. The pseudo-random sequence generator 30 and the spreader 20 are shown as being contained within a spread spectrum encoder 40.
The spreader 20 performs a frequency spectrum spreading function by multiplying the data by the pseudo-random sequence in the time domain, which is equivalent to convolving the bimodal spectrum of the data sequence with the approximately rectangular spectrum of the pseudo-random sequence in the frequency domain. The output of the spreader 20 is applied to a low-pass filter 50, whose cutoff frequency is equal to the system chip rate, Fcr. The output of the low-pass filter 50 is then applied to one terminal of a mixer 60 and up-converted, as determined by the carrier frequency Fc which is applied to its other terminal. The up-converted signal is then passed through a band-pass filter 70. The filter 70 has a bandwidth equal to twice the chip rate and a center frequency equal to the center frequency of the spread spectrum system's channel bandwidth. The output of the filter 70 is applied to the input of an RF amplifier 80, whose output drives an antenna 90.
A prior art spread spectrum receiver 100 is shown in Figure 2. An antenna 110 receives the transmitted spread spectrum signal, which is filtered by a bandpass filter 120.
The filter has a bandwidth equal to twice the chip rate, and a center frequency equal to the center frequency of the spread spectrum system's channel bandwidth. The output of the filter 120 is subsequently down-converted by a mixer 130, possibly SUBSTITUTE SHEET (RULE 26) in two stages, to a baseband signal using a local oscillator having a constant frequency which is approximately the same as the carrier frequency Fc of the transmitter 10. The output of the mixer 130 is then despread by applying it to a first terminal of the despreader 140 while applying the same or similar pseudo-random sequence as delivered to the spreader 20 to a second terminal of the despreader 140. The pseudo-random sequence is generated by a despreading code generator 150. The despreader 140 and the despreading code generator 150 are contained within a spread spectrum decoder 160 as shown in Figure 2.
More particularly, it will be appreciated that the pseudo-random sequence used in the receiver 100 of a spread spectrum communication system must be synchronized with the pseudo-random sequence used in the transmitter 10. The output of the despreader 140 is applied to a mixer 170. The decipher stream generator 172 generates the same cipher stream as the cipher stream generator 17 to decipher the enciphered digital data. In the prior art, the key 18 used in the transmitter 10 is the same as the key 174 used in the receiver 100. The receiving key 174 is applied to the cipher stream generator 172 to decipher the enciphered digital data. The output of the mixer 170 is applied to a low-pass filter 180, which has a cutoff frequency at the data rate of the data input to the spread spectrum transmitter 10. The output of the low-pass filter 180 is a replica of the voice or digital data input as shown in Figure 1.
SUBSTITUTE SHEET (RULE 26) _7_ A conventional spreading sequence is a pseudo-random digital sequence as shown in Figure 3. The sequence typically attains two constant values over time, (~1). The sequence is used to spread the signal being transmitted and to despread the signal being received. The stream cipher is generated by a cipher stream generator 17, as shown in Figure 4. An enciphered data stream can be deciphered if the key 18 to the original cipher stream is known and is duplicated at the receiver. The bits are generated by the cipher stream generator i7 and the data bits are XOR'ed to encipher the data. The original data stream is recovered when the enciphered data is XOR'ed with the same cipher stream as shown by Equation 1:
bj~ci~c;=bi Equation (1) where bi is the original data stream and ci is the original cipher stream.
As is well known in the prior art, the simplest cipher stream generator 17 is the linear feedback shift register 34.
The shift register 34 comprises a finite number of bits, 33, 35, 37, or finite bit length, which is clocked by a clock circuit 32 at a predetermined fixed rate. A combination of LFSR bits 35, 37 are XOR'ed to generate the next input bit to the LFSR 34 by XOR gate 38. Coefficients of a primitive polynomial determine which bits to XOR. An XOR 36 gate combines the output of the LFSR 34 and the digital data stream 39 to encipher the data. The LFSR 34 then goes through a set of states eventually repeating itself after a finite number of clock pulses supplied by clock circuit 32.
SU9ST1TUTE SHEET (RULE 2B) _g_ A conventional three bit LFSR 34 is an example of a cipher stream generator 17 as shown in Figure 4. An n-bit shift register has a period of 2°-1. Accordingly, for the three bit shift register 34, the period is seven. Each initial value of zero or one loaded into each bit of register 34 forms a key, except for all zeros. For example, if the key is 111, the shift register 34 will generate the following values:
Initial loading -1 111 Repeat -! 111 The three bit LFSR 34, as shown above, has a very small period (i.e. seven). Accordingly, a LFSR of this size does not provide very secure transmission of data.
A spread spectrum transmitter 200 made in accordance with the present invention is shown in Figure 5. The transmitter 200 includes all of the components of the spread spectrum transmitter 10 shown in Figure 1, which function in the same manner except for the cipher stream generator 220 and keys 210 SUBSTITUTE SHEET (RULE 26) -g_ which will be explained in further detail hereinafter.
Although Figure 5 shows a transmitter 200 for transmitting one channel, multiple channels may be combined and then enciphered by cipher stream generator 220.
Referring to Figure 6, the cipher stream generator 220 includes two LFSR circuits, (L1, Lz). The output of the second LFSR circuit Lz is used to control the clock of the first LFSR
circuit, L1. For example, the output of the second LFSR L2 is preferably connected to an AND gate 222, which is connected to the clock input of the first LFSR L1. The AND gate 222 could be replaced by a NAND gate. Other gates such as OR, NOR, XOR, etc. or a combination of gates may also be used in place of the AND gate 222. Exclusive-OR gates 38 provide feed back to shift registers L1, LZ. The cipher stream generator 220 also includes an exclusive-OR gate 224, which is connected to the outputs of the LFSRs Ll, La. The exclusive-OR gate 224 combines the outputs of the LFSRs L1, LZ and then outputs the cipher stream. The initial states of the two LFSRs Ll, LZ are the two keys that are shared between the cipher stream generator 220 and decipher stream generator 320. The decipher stream generator 320, which will be explained in more detail hereinafter, is preferably the same as the cipher stream generator 220. The cipher stream generator 220 and decipher stream generator 320 are preferably used in synchronous mode (as opposed to self-synchronous mode) because the self-synchronous mode is subject to error propagation due to single bit errors common in wireless transmission. In self-synchronous stream ciphers, the enciphered digital data is SU9STn'UTE SHEET (RULE 26) used as a part of the key for enciphering the following data bits. The problem with this approach is that if a bit is corrupted during transmission and it is deciphered incorrectly, it corrupts the following bits as well since it is also used as the cipher key for the following data bits.
All ciphering schemes other than a one time lookup table are periodic. In order to send a secure transmission, the cipher stream generator 220 and decipher stream generator 320 should have as long a period as practical. The two LFSRs L1, L~ generate the maximum period if the tap coefficients of the feedback correspond to a primitive polynomial. Such a sequence is called a maximum length sequence (m-sequence).
Although it is not required, in one embodiment, the maximum period is obtained when the periods of the individual outputs of the two LFSRs Ll, LZ are relatively prime (the periods of the individual outputs do not have a common factor). For example, if the first LFSR L1 has a bit length of three, the individual output period is seven. If the second LFSR Lz has a bit length of two, the individual output period is three. Therefore, the output periods do not have the same common factor.
A primitive polynomial, which is well known in finite field algebra, generates a period 2L-1 if it is of degree L.
A set of polynomials form a finite field. A finite field has at least one primitive element such that all nonzero elements of the field are powers of this primitive element. A
polynomial that has a primitive element as a root is called a primitive polynomial. Therefore, when the LFSR circuits L1, SUBSTITUTE SHEET (RULE 26) La have lengths L~ and LQ respectively, the output of both the cipher stream generator 220 and decipher stream generator 320 have the period:
LE1 + L~
Output period ~2 Equation (2) When lengths of the two LFSRs L1, LZ are in the order of -.20, the period of the stream cipher is 1012 bits . This means that a 32 kbits/sec data stream can be encrypted continuously for over a year without repeating the stream cipher.
The linear complexity of the cipher stream generator 220 is the length of the shortest LFSR that can generate the output of the cipher stream generator 220. It is often used as a measure of randomness of the cipher stream generator 220 output. The linear complexity of this cipher stream generator 220 is in the order of Linear complexity ~ (2LE') LE2 + (2LE2) LEi Equation (3) If the output of the cipher stream generator 220 were to be repeated using a single equivalent LFSR, the register would _ -have to be over 20 million stages long (for LE1 and L~ ~20 as above ) .
A cipher stream generator 220 is called balanced if its output is the same as the output of each internal LFSR circuit L1, LZ with the same probability. Preferably, the output value should be the same as the output of either one of the LFSR circuits L1, Lz, i.e. a probability of 0.5. It is important to have a cipher that is balanced because it is SUBSTtTUTE SHEET (RULE 28) WO 99/20019 PCT/pS98/10345 easier to break ciphers that are not balanced. If the combinations of the outputs of the LFSR circuits LI, L2 and the output of the cipher stream generator 220 are considered, it can be seen that the cipher stream is perfectly balanced and is the same as each LFSR Ls, LZ output half of the time.
The initial state of the cipher stream generator 220 is determined by the two keys K1 and KZ, which are the initial states of the two LFSRs L~, LZ respectively. To protect against insertion attacks, the keys Kl and Kz should be changed often, (preferably at least once every period of the cipher) . The more combinations for the keys K1 and Kz, the more secure the transmission. The number of key combinations in this example is Lei + LEz Key combinations ~ 2 Equation (4) which is an extremely large number.
The cipher stream generator 220 of the present invention has the following advantages: 1) it has a very large linear complexity; 2) it has a very large period; 3) its output is balanced with respect to the outputs of the two LFSR circuits L1, LZ; 4) it is implemented with minimal hardware; and 5) it _ -takes two keys K1 and KZ which increases its security.
For example, as shown in Figure 6, it is assumed that the f first LFSR circuit L1 has a bit length of 3 and the second LFSR circuit LZ has a bit length of 2. Further, it is assumed that key K1 is "111" and key Ks is "11." The keys K1 and Ra are loaded into L1 and L2 respectively. Table 1 below provides the states of the LFSR circuits L1, Ls; the outputs SU9STtTUTE SHEET (RULE 26) of the LFSR circuits L1, Lz; and the cipher stream for several consecutive clock cycles.
Output Output Cipher Clock L1 LZ of L1 of L2 Stream Cycle state state 2 Oll O1 1 1 0 20 110 Ol 0 1 1 - _ _ _ _ - _ - _ - - - - - - - - - - - - end of one period SUBSTITUTE SHEET (RULE 26) From Table 1, the period of the cipher stream is 21 clocks, which is a multiplication of the individual periods of the LFSR circuits L1(7) and LZ(3).
The cipher stream may also be generated using software as shown in the flow diagram of Figure 7. The initial states, which are the two keys Kl and K2, are loaded into registers or memory locations (Sl). If the current output of the second LFSR circuit L, is "1"(S2), the value of the first LFSR
circuit L1 is updated (S3), and then the second LFSR circuit L2 is updated (S4). However, if the current output of LFSR
circuit L2 is zero (S2), then the LFSR circuit L1 is not updated and only LFSR circuit Lz is updated (S4). The outputs of the LFSR circuits L1, L2 are then forwarded to an XOR gate, which outputs the cipher stream (S5). Steps (S2) through (S5) _ are then repeated.
A spread spectrum receiver 300 made in accordance with the present invention as shown in Figure 8 includes all of the components of the spread spectrum receiver 100 of Figure 2, which function in the same manner, except for the decipher stream generator 310 and the keys 320.
The cipher stream generator 220 or the decipher stream generator 320 can be used in a multiple stage configuration, SUBSTITUTE SHEET (RULE 26) ._. .... , r. nn c:. o' r, n t. c. _ ~ ... .. . .yt:
f f .

as shown in Figure 9, in which case the security is greatly enhanced since the linear complexity and period increase exponentially.
If L1-L2-L, then the linear complexity of the multiple stage configuration with N stages is approximately ~2L21''° and the period of the output becomes approximately =2'LN~ The stream cipher algorithm explained above can be used in a cascade structure as in Figure 9 to further increase its security. Each stage may have the same bit length or the stages may have different bit lengths. In cascade form, prior stages generate clocks for the following stages. As shown in Figure 9, the output of the first LFSR circuit L1 from stage 1 and the output of the second LF SR circuit LZ from stage 2 are coupled to an AND gate to form a digital signal which is used as the clock for the first LFSR circuit L1 of stage 2. Similarly, output of the second LFSR circuit Lz from stage 1 becomes the clock for the second LFSR circuit L2 of stage 2. More stages can be added in the same manner. An LFSR is clocked when the signal in its clock input changes from 0 to 1. Although the LFSRs L1, LZ at each stage preferably have the same bit length, they may also be different.
Although the invention has been described by making detailed reference to certain specific embodiments, such details are intended to be instructive rather than restrictive. It will be appreciated by those skilled in the art that many variations may be made in a structure and mode of operation without departing from the scope of this invention as disclosed in the teachings herein.
* *
S~ ~Z

Claims (19)

1. A communication transmitter (200) for transmitting communication signals represented by a digital data stream comprising means for generating a cipher stream (220) to encipher the digital data stream of the communication signals and means for associating (16) the cipher stream with the digital data stream to produce a selectively encoded data stream, characterized by:
said cipher stream generation means (22) includes first (L1) and second (L2) linear feedback shift registers, each having a clock in put and an output; the outputs being combined to generate said cipher stream and the output of said second register (L2) being combined with a clock signal which is inputted to the clock input of said first register (L1).
2. The communication transmitter (200) of claim 1 wherein said cipher stream generating means (220) is a cipher stream generator (220) and said associating means (16) is a data stream mixer (16) which mixes the cipher stream with the digital data stream to produce the selectively encoded data stream.
3. A communication transmitter (200) as in claim 2, characterized by said first (L1) and second (L2) registers have different bit lengths.
4. A communication transmitter (200) as in claim 3, characterized by the period of said first register (L1) is relatively prime to the period of said second register (L2).
5. A communication transmitter (200) as in claim 4, characterized by the output of said first linear feedback shift register (L1) and the output of said second linear feedback shift register (L2) is combined by an exclusive-OR gate.
6. The communication transmitter (200) as in claim 4, characterized by said first linear feedback (L1) shift register receives the output of said second linear feedback shift register (L2) by way of an AND gate or a NAND gate.
7. A communication transmitter (200) as in claim 2, characterized by said cipher stream generator (220) includes a series of associated first (L1) and second (L2) linear feedback shit registers wherein the output of said series generates said cipher stream, and wherein each said respective first (L1) linear feedback shift register is arranged to receive feedback from said respective second (L2) linear feedback shift register.
8. A communication transmitter (200) as in claim 7, characterized by each of said first (L1) linear feedback shift registers has a different bit length than each of said second (L2) linear feedback shift registers.
9. A communication transmitter (200) as in claim 8, characterized by each first (L1) linear feedback shift register has the same bit length and each second (L2) linear feedback shift register has the same bit length.
10. A communication transmitter (200) as in claim 8, characterized by the first period is relatively prime to the second period.
11. A communication transmitter (200) as in claim 7, characterized by said cipher stream generator (220) has N first (L1) linear feedback shift registers and M second (L2) linear feedback shift registers, wherein the output of the Nth first (L1) linear feedback shift register and the output of the Mth second (L2) linear feedback shift register are combined by an exclusive-OR gate.
12. A communication transmitter (200) as in claim 1 characterized by the clock signal being inputted into the clock input of said second register (L2).
13. A communication receiver (300) for receiving communication signals represented by an enciphered digital data stream comprising means for generating a cipher stream (310) to decipher the enciphered digital data stream of the communication signals and means for associating (170) the cipher stream with the digital data stream to produce a selectively deciphered data stream, characterized by:

said cipher stream generation means (310) includes first (L1) and second (L2) linear feedback shift registers, each having a clock input and an output; the outputs being combined to generate said cipher stream and the output of said second register (L2) being combined with a clock signal which is inputted to the clock input of said first register (L1).
14. A communication receiver (300) according to claim 13, characterized by said cipher stream generating means (310) includes a series of associated first (L1) and second (L2) linear shift registers wherein the output of said series generates said cipher stream, and wherein each said respective first (L1) linear feedback shift register receives feedback from said respective second (L2) linear feedback shift register.
15. A communication receiver (300) according to claim 13, characterized by said cipher stream generating means (310) is a cipher stream generator (310) and said associating means (170) is a data stream mixer (170) which mixes the cipher stream with the enciphered digital data stream to produce a selectively deciphered data stream.
16. A communication receiver (300) according to claim 13 characterized by the clock signal being inputted into the clock input of said second register.
17. A communication system for transmitting and receiving communication signals represented by a digital data stream comprising a communication transmitter (200) of claim 1 and a communication receiver 300 of claim 13, the communication transmitter (200) including first means (220) for generating a cipher stream for enciphering the digital data stream of the communication signals and second means (16) for associating the cipher stream with the digital data stream to produce an enciphered data stream, the communication receiver (300) including third means (310) for generating a second cipher stream for deciphering the enciphered data stream of the communication signals and fourth means (170) for associating the second cipher stream with the enciphered data stream to decipher the enciphered data stream to reproduce the digital data stream, characterized by:
said first cipher stream generation means (220) includes first (L1) and second (L2) linear feedback shift registers, each having a clock input and output; the outputs of said first (L1) and second (L2) registers being combined to generate said cipher stream and the output of said second register (L2) being combined with a first clock signal which is inputted to the clock input of said first register; and said third cipher stream generation means (310) includes third (L1) and fourth (L2) linear feedback shift registers, each having a clock input and an output; the outputs of said third (L1) and fourth (L2) registers being combined to generate the second cipher stream and the output of said fourth register (L2) being combined with a clock signal which is inputted to the clock input of said third register (L1).
18. The communication system of claim 17 characterized by each of said first (220) and third (310) means is a cipher stream generator (220, 310), said second means (16) is a first data stream mixer (16) which mixes the first cipher stream with the digital data stream to produce the enciphered data stream, and said fourth means (170) is a second data stream mixer (170) which mixes the second cipher stream with the enciphered digital data stream to reproduce the digital data stream.
19. The communication system of claim 17 characterized by the first clock signal being inputted into the clock input of said second register (L2) and the second clock signal being inputted into the clock input of said fourth register (L2).
CA002305264A 1997-10-10 1998-05-21 Method and apparatus for generating a stream cipher Expired - Fee Related CA2305264C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA002474856A CA2474856C (en) 1997-10-10 1998-05-21 Method and apparatus for generating a stream cipher

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/949,027 US6009135A (en) 1997-10-10 1997-10-10 Method and apparatus for generating a stream cipher
US08/949,027 1997-10-10
PCT/US1998/010345 WO1999020019A1 (en) 1997-10-10 1998-05-21 Method and apparatus for generating a stream cipher

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CA002474856A Division CA2474856C (en) 1997-10-10 1998-05-21 Method and apparatus for generating a stream cipher

Publications (2)

Publication Number Publication Date
CA2305264A1 CA2305264A1 (en) 1999-04-22
CA2305264C true CA2305264C (en) 2004-10-19

Family

ID=25488495

Family Applications (2)

Application Number Title Priority Date Filing Date
CA002305264A Expired - Fee Related CA2305264C (en) 1997-10-10 1998-05-21 Method and apparatus for generating a stream cipher
CA002474856A Expired - Fee Related CA2474856C (en) 1997-10-10 1998-05-21 Method and apparatus for generating a stream cipher

Family Applications After (1)

Application Number Title Priority Date Filing Date
CA002474856A Expired - Fee Related CA2474856C (en) 1997-10-10 1998-05-21 Method and apparatus for generating a stream cipher

Country Status (10)

Country Link
US (5) US6009135A (en)
EP (2) EP1021887B1 (en)
JP (2) JP2001520482A (en)
AT (2) ATE271734T1 (en)
CA (2) CA2305264C (en)
DE (2) DE69835842T2 (en)
DK (1) DK1021887T3 (en)
ES (2) ES2271730T3 (en)
HK (2) HK1029685A1 (en)
WO (1) WO1999020019A1 (en)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6252958B1 (en) * 1997-09-22 2001-06-26 Qualcomm Incorporated Method and apparatus for generating encryption stream ciphers
US6510228B2 (en) * 1997-09-22 2003-01-21 Qualcomm, Incorporated Method and apparatus for generating encryption stream ciphers
JP3556461B2 (en) * 1998-03-18 2004-08-18 富士通株式会社 M-sequence phase shift coefficient calculation method
US6408317B1 (en) * 1999-02-19 2002-06-18 Integrated Device Technology, Inc. Random number conditioner
EP1111785A1 (en) * 1999-12-22 2001-06-27 TELEFONAKTIEBOLAGET L M ERICSSON (publ) Method and device for self-clock controlled pseudo random noise (PN) sequence generation
US6647054B1 (en) * 1999-12-29 2003-11-11 Koninklijke Philips Electronics N.V. Multiple mask arrangement for jumping in pseudo-noise sequences
US7190475B2 (en) * 2000-03-16 2007-03-13 Nikon Corporation Method for providing a print and apparatus
US20070191991A1 (en) * 2000-06-05 2007-08-16 Aqua Conserve, Inc. Irrigation Controller Communication System
US6981010B1 (en) 2000-08-02 2005-12-27 Board Of Regents Of The University Of Nebraska System and method for generating psuedo-noise sequences
DE10062924A1 (en) * 2000-12-16 2002-09-12 Atmel Germany Gmbh Contactless data transmission system
CA2330166A1 (en) * 2000-12-29 2002-06-29 Nortel Networks Limited Data encryption using stateless confusion generators
DE10110049A1 (en) * 2001-03-02 2002-09-05 Bosch Gmbh Robert Encryption of program data for use in control devices or controllers, involves using decryption key within the control device, to reduce the amount of data to transfer
US7003109B2 (en) * 2001-04-19 2006-02-21 City University Of Hong Kong Compact crypto-engine for random number and stream cipher generation
GB0123302D0 (en) * 2001-09-28 2001-11-21 Hw Comm Ltd Cipher apparatus
US7826613B2 (en) * 2002-08-19 2010-11-02 Qualcomm Incorporated Stream cipher cryptographic system and method
WO2004080020A2 (en) * 2003-03-03 2004-09-16 Matsushita Electric Industrial Co. Ltd. Methods and apparatus for reducing discrete power spectral density components of signals transmitted in wideband communication systems
US7502468B2 (en) * 2003-09-02 2009-03-10 Ncipher Corporation Ltd. Method and system for generating a cryptographically random number stream
US20110064214A1 (en) * 2003-09-09 2011-03-17 Ternarylogic Llc Methods and Apparatus in Alternate Finite Field Based Coders and Decoders
US8577026B2 (en) 2010-12-29 2013-11-05 Ternarylogic Llc Methods and apparatus in alternate finite field based coders and decoders
US20070110229A1 (en) * 2004-02-25 2007-05-17 Ternarylogic, Llc Ternary and Multi-Value Digital Signal Scramblers, Descramblers and Sequence of Generators
US7505589B2 (en) * 2003-09-09 2009-03-17 Temarylogic, Llc Ternary and higher multi-value digital scramblers/descramblers
DE10347455B4 (en) * 2003-10-13 2010-08-26 Infineon Technologies Ag Pseudo-random number generator for a stream cipher
US8364977B2 (en) * 2004-02-25 2013-01-29 Ternarylogic Llc Methods and systems for processing of n-state symbols with XOR and EQUALITY binary functions
DE102004042756B3 (en) * 2004-09-03 2005-12-01 Siemens Ag Method of generating pseudo random numbers using shift registers and feedback coupled inputs
US7725779B2 (en) * 2005-01-25 2010-05-25 Ternarylogic Llc Multi-valued scrambling and descrambling of digital data on optical disks and other storage media
DE102006028944B3 (en) * 2006-06-23 2007-09-13 Infineon Technologies Ag Circuit arrangement and method for initializing a random number generator
CN101040306B (en) * 2005-09-09 2012-01-04 三菱电机株式会社 Pseudo random number generation device
US7835524B2 (en) * 2006-02-08 2010-11-16 Panasonic Corporation Encrypting of communications using a transmitting/receiving apparatus via key information based on a multi-level code signal and a pseudo-random number sequence for modulation with an information signal
US7734044B2 (en) * 2006-02-23 2010-06-08 Texas Instruments Incorporated Method and apparatus for synchronous stream cipher encryption with reserved codes
FR2899352B1 (en) 2006-03-29 2008-06-20 Eads Secure Networks Soc Par A RANDOM NUMBER GENERATOR
JP4870495B2 (en) * 2006-08-04 2012-02-08 パナソニック株式会社 Data transmission device
US8345873B2 (en) * 2007-04-04 2013-01-01 Ternarylogic Llc Methods and systems for N-state signal processing with binary devices
ATE534072T1 (en) * 2008-03-04 2011-12-15 Sandisk Il Ltd DIGITAL RANDOM NUMBER GENERATOR BASED ON DIGITALLY CONTROLLED OSCILLATORS
US8848914B2 (en) * 2008-11-18 2014-09-30 Qualcomm Incorporated Spectrum authorization and related communications methods and apparatus
CA2664620A1 (en) * 2009-05-07 2009-07-20 Avalon Microelectronics, Inc. Pseudo-random bit sequence generator
US8718278B2 (en) * 2011-01-20 2014-05-06 International Business Machines Corporation Method and system for encryption of a datastream
JP2013127547A (en) * 2011-12-19 2013-06-27 Kddi Corp Encryption device of clock control type stream cipher, decryption device of clock control type stream cipher, encryption method of clock control type stream cipher, decryption method of clock control type stream cipher and program
US10708043B2 (en) 2013-03-07 2020-07-07 David Mayer Hutchinson One pad communications
KR101881143B1 (en) * 2016-09-26 2018-07-24 동서대학교산학협력단 Clock controlled random password generator for minimizing bit error rate in wireless communication

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3963905A (en) * 1974-09-11 1976-06-15 Bell Telephone Laboratories, Incorporated Periodic sequence generators using ordinary arithmetic
JPS5394169A (en) * 1977-01-28 1978-08-17 Toshiba Corp Generating device for pulse duration modulated wave
US4202051A (en) * 1977-10-03 1980-05-06 Wisconsin Alumni Research Foundation Digital data enciphering and deciphering circuit and method
US4264781A (en) * 1979-04-16 1981-04-28 Ncr Corporation Apparatus for encoding and decoding data signals
US4663500A (en) * 1982-02-22 1987-05-05 Nec Corporation Cryptographic system
US5237615A (en) * 1982-05-20 1993-08-17 The United States Of America As Represented By The National Security Agency Multiple independent binary bit stream generator
US4601033A (en) * 1984-01-16 1986-07-15 Siemens Corporate Research & Suppport, Inc. Circuit testing apparatus employing signature analysis
CH668340A5 (en) * 1985-10-17 1988-12-15 Bbc Brown Boveri & Cie GENERATOR FOR GENERATING BINARY CIFFERENTIAL SEQUENCES.
US4864525A (en) * 1986-07-11 1989-09-05 Clarion Co., Ltd. Maximum length shift register sequence generator
US4893339A (en) * 1986-09-03 1990-01-09 Motorola, Inc. Secure communication system
US4905262A (en) * 1988-07-28 1990-02-27 Tektronix, Inc. Synchronous programmable two-stage serial/parallel counter
US5091942A (en) * 1990-07-23 1992-02-25 Ericsson Ge Mobile Communications Holding, Inc. Authentication system for digital cellular communications
US5148485A (en) * 1990-07-20 1992-09-15 Ericsson Ge Mobile Communications Holding, Inc. Encrypton system for digital cellular communications
US5361302A (en) * 1991-02-28 1994-11-01 Motorola, Inc. Method for encryption sync compression in an encrypted radio telephone interconnect system
US5195136A (en) * 1991-09-30 1993-03-16 Motorola, Inc. Method and apparatus for data encryption or decryption
US5230020A (en) * 1991-10-16 1993-07-20 Motorola, Inc. Algorithm independent cryptographic key management
US5412665A (en) * 1992-01-10 1995-05-02 International Business Machines Corporation Parallel operation linear feedback shift register
ATE200169T1 (en) * 1992-12-30 2001-04-15 Telstra Corp Ltd METHOD AND DEVICE FOR GENERATING A CIPHERING SEQUENCE
US5365588A (en) * 1993-03-12 1994-11-15 Hughes Aircraft Company High speed encryption system and method
US5375169A (en) * 1993-05-28 1994-12-20 Tecsec, Incorporated Cryptographic key management method and apparatus
US5365585A (en) * 1993-08-30 1994-11-15 Motorola, Inc. Method and apparatus for encryption having a feedback register with selectable taps
JP2541480B2 (en) * 1993-10-06 1996-10-09 日本電気株式会社 Pseudo random number generator
US5570307A (en) * 1995-01-06 1996-10-29 Vlsi Technology, Inc. Digital randomizer for on-chip generation and storage of random self-programming data block
US5729559A (en) * 1995-03-27 1998-03-17 Motorola, Inc. Method and apparatus for correcting errors using multiple estimates
US6201870B1 (en) * 1997-03-20 2001-03-13 Massachusetts Institue Of Technology Pseudorandom noise sequence generator

Also Published As

Publication number Publication date
DE69835842T2 (en) 2007-01-04
DK1021887T3 (en) 2004-11-22
JP2001520482A (en) 2001-10-30
DE69835842D1 (en) 2006-10-19
EP1021887B1 (en) 2004-07-21
EP1458130B1 (en) 2006-09-06
CA2474856C (en) 2005-06-28
JP2007151201A (en) 2007-06-14
HK1029685A1 (en) 2001-04-06
US6148053A (en) 2000-11-14
DE69825171D1 (en) 2004-08-26
ES2224400T3 (en) 2005-03-01
ATE271734T1 (en) 2004-08-15
CA2474856A1 (en) 1999-04-22
US6009135A (en) 1999-12-28
US6944253B2 (en) 2005-09-13
EP1458130A2 (en) 2004-09-15
ATE339044T1 (en) 2006-09-15
WO1999020019A1 (en) 1999-04-22
US6430246B1 (en) 2002-08-06
ES2271730T3 (en) 2007-04-16
DE69825171T2 (en) 2005-08-04
EP1458130A3 (en) 2005-03-02
CA2305264A1 (en) 1999-04-22
HK1068512A1 (en) 2005-04-22
US6714614B2 (en) 2004-03-30
EP1021887A1 (en) 2000-07-26
US20030026323A1 (en) 2003-02-06
US20040208322A1 (en) 2004-10-21

Similar Documents

Publication Publication Date Title
CA2305264C (en) Method and apparatus for generating a stream cipher
AU665254B2 (en) Multiple access coding for radio communications
US6014446A (en) Apparatus for providing improved encryption protection in a communication system
EP0672273B1 (en) Method and apparatus for encryption having a feedback register with selectable taps
EP0752772B1 (en) Cryptographic system for wireless communications
US5771288A (en) Multiple access coding for radio communications
US6295606B1 (en) Method and apparatus for preventing information leakage attacks on a microelectronic assembly
EP0757459B1 (en) Cryptographic system for wireless communications
NZ238651A (en) Encryption system for digital cellular communications
US5859912A (en) Digital information privacy system
EP1049288B1 (en) Pseudo-noise sequence
US20140056425A1 (en) One Pad Communications
JPS62178086A (en) Enciphering device
Ferland et al. Performance of BCH codes with DES encryption in a digital mobile channel
RU2184423C2 (en) Method for iterative block encryption of digital data
JPS58218252A (en) Scrambling system
Ng A time-variant approach for encrypted digital communications
NZ248445A (en) Generating pseudo-random bit sequences for enciphering digital data

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed

Effective date: 20160524