Claims
- 1. An encryption method for generating a unique keystream output value for every frame of bearer traffic to provide an output from a combination of x(n+1).sub.low and x(n+1).sub.high in accordance with equations of a form:
- x(n+1).sub.low ={x(n).sub.low *R1.sub.low +R2.sub.low } mod R3.sub.low
- x(n+1).sub.high ={x(n).sub.high *R2.sub.high +R1.sub.high } mod R3.sub.high
- where R1, R2, and R3 are linear feedback shift registers, R4 is a shift control register coupled to a clock utilized for tap configuration control of R1, R2 and R3, and values x(n) and x(n+1) represent previous and current output values, the encryption method comprising the steps of:
- initializing R1, R2, R3 and R4 according to a predetermined scheme;
- generating the output by operating on one of:
- a first and second predetermined selection of bits of registers R1, R2, and R3; and
- where the first selection of bits are represented by Rx.sub.low and the second selection of bits are represented by Rx.sub.high, respectively, where x=1, 2, 3;
- setting a two most significant bits of the first selection of bits and of the second selection of bits in register R3 to `11`;
- processing x(n+1) in separate low and high bit portions, wherein the low and high bit portions are determined by computing:
- x(n+1).sub.low ={x(n).sub.low *R1.sub.low +R2.sub.low } mod R3.sub.low
- x(n+1).sub.high ={x(n).sub.high *R2.sub.high +R1.sub.high } mod R3.sub.high
- then rotating the low portion a first predetermined number of bits, and the high portion a second predetermined number of bits and producing a keystream output value by a logic exclusive-OR operation on rotated high and low portions.
- 2. The method of claim 1 wherein the low portion is rotated 3 bits to the left, and the high portion is rotated 3 bits to the right.
- 3. An encryption device for generating a unique keystream output value for every frame of bearer traffic to provide an output from a combination of x(n+1).sub.low and x(n+1).sub.high in accordance with equations of a form:
- x(n+1).sub.low ={x(n).sub.low *R1.sub.low +R2.sub.low } mod R3.sub.low
- x(n+1).sub.high ={x(n).sub.high *R2.sub.high +R1.sub.high } mod R3.sub.high
- where R1, R2, and R3 are linear feedback shift registers, R4 is a shift control register coupled to a clock utilized for tap configuration control of R1, R2 and R3, and values x(n) and x(n+1) represent previous and current output values, the encryption device comprising:
- three linear feedback shift registers R1, R2, and R3, each coupled to a separate switch and a fourth linear feedback shift register R4 to provide alternate tap configurations to an logical exclusive-OR unit that provides an logical exclusive-OR output wherein a clock is coupled to R4 and to a summer that is coupled to R1, R2 and R3, wherein R4 and the switch are utilized to select a tap configuration, and R1, R2, R3 and R4 are initialized prior to each output determination according to a predetermined scheme,
- wherein the R1, R2, and R3 generate an output by operating on one of a first and second predetermined selection of bits of registers R1, R2, and R3; and
- where the first selection of bits are represented by Rx.sub.low and the second selection of bits are represented by RX.sub.high, respectively, where x=1, 2, 3;
- a two most significant bits of the first selection of bits and of the second selection of bits in register R3 are set to `11`;
- x(n+1) is processed in separate low and high bit portions, wherein the low and high bit portions are determined by computing:
- x(n+1).sub.low ={x(n).sub.low *R1.sub.low +R2.sub.low } mod R3.sub.low
- x(n+1).sub.high ={x(n).sub.high *R2.sub.high +R1.sub.high } mod R3.sub.high
- then rotating the low portion a first predetermined number of bits, and the high portion a second predetermined number of bits and producing a keystream output value by a logical exclusive-OR operation on rotated high and low portions.
- 4. The encryption device of claim 3 wherein the low portion is rotated 3 bits to the left, and the high portion is rotated 3 bits to the right.
- 5. A computer usable medium/memory having computer readable program code means thereon comprising:
- means for generating a unique keystream output value for every frame of bearer traffic to provide an output from a combination of x(n+1).sub.low and x(n+1).sub.high in accordance with equations of a form:
- x(n+1).sub.low ={x(n).sub.low *R1.sub.low +R2.sub.low } mod R3.sub.low
- x(n+1).sub.high ={x(n).sub.high *R2.sub.high +R1.sub.high } mod R3.sub.high
- where R1, R2, and R3 are linear feedback shift registers, R4 is a shift control register coupled to a clock utilized for tap configuration control of R1, R2 and R3, and values x(n) and x(n+1) represent previous and current output values, the computer readable program code means including the steps of:
- initializing R1, R2, R3 and R4 according to a predetermined scheme;
- generating the output by operating on one of:
- a first and second predetermined selection of bits of registers R1, R2, and R3; and
- where the first selection of bits are represented by Rx.sub.low and the second selection of bits are represented by Rx.sub.high, respectively, where x=1, 2, 3;
- setting a two most significant bits of the first selection of bits and of the second selection of bits in register R3 to `11`;
- processing x(n+1) in separate low and high bit portions, wherein the low and high bit portions are determined by computing:
- x(n+1).sub.low ={x(n).sub.low *R1.sub.low +R2.sub.low } mod R3.sub.low
- x(n+1).sub.high ={x(n).sub.high *R2.sub.high +R1.sub.high } mod R3.sub.high
- then rotating the low portion a first predetermined number of bits, and the high portion a second predetermined number of bits and producing a keystream output value by a logical exclusive-OR operation on rotated high and low portions.
- 6. The computer usable medium/memory of claim 5 wherein the low portion is rotated 3 bits to the left, and the high portion is rotated 3 bits to the right.
Parent Case Info
This application is a continuation of Ser. No. 08/877,686, filed Jun. 17, 1997, now abandoned, which in turn is a continuation in part of Ser. No. 08/393,975, filed Feb. 24, 1995, now abandoned.
US Referenced Citations (5)
Continuations (1)
|
Number |
Date |
Country |
Parent |
877686 |
Jun 1997 |
|
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
393975 |
Feb 1995 |
|