IP Library Granted Patent US 8,005,215
Granted Patent B2
US 8,005,215 · App. 11/886,753 · Granted Aug 23, 2011

Table shuffle cipher system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,005,215
App. No.
11/886,753
Granted
Aug 23, 2011
Kind
B2
Abstract

A system including a pseudo-random number generator having a register to store an extended state having a reduced state and a dynamic constant, an initialization module to initialize a part of the extended state based on a Key and/or an Initial Value, a state update module to update the reduced state, an output word module to generate output words, the state update module and the output word module being adapted to operate through cyclical rounds, each round including updating the reduced state and then generating one of the output words, and an update dynamic constant module to update the dynamic constant, wherein in a majority of the rounds, updating of the reduced state and/or generation of the output word is based on the dynamic constant, and the dynamic constant is only updated in a minority of the rounds. Related apparatus and method are also described.

Claims (36)

1. A table-shuffle stream cipher system comprising:

physical computing machinery including:

a pseudo-random number generator adapted to maintain at least one stream cipher table having N entries, at least one traversal index and at least one pseudo-random index;

a state update module adapted to update a state of the at least one stream cipher table by:

determining a new value of the traversal index such that the new value of the traversal index is a function of a constant integer having an absolute value greater than one, the new value of the traversal index being independent of the pseudo-random index and the entries of the at least one stream cipher table;

determining a new value of the pseudo random index based upon at least one of the entries of the at least one stream cipher table; and

swapping the entry associated with the new value of the traversal index with the entry associated with the new value of the pseudo-random index;

and an output word module adapted to generate an output word as a function of the new value of the traversal index and the new value of the pseudo-random index.

2. The system according to claim 1 , wherein the state update module is adapted to determine a new value of the at least one traversal index by adding, or subtracting, the constant integer to, or from, the at least one traversal index, respectively.

3. The system according to claim 1 , wherein the constant is an integer which is determined such that the constant equals N divided by the sum of b and C, wherein:

a greatest common divisor of the at least one dynamic constant and N is 1;

b is less than 5 and is a positive divider of N; and

C is one of less than 5 or greater than N−5.

4. A table-shuffle stream cipher system comprising:

physical computing machinery including:

a pseudo-random number generator adapted to maintain at least one stream cipher table having N entries, one traversal index and at least one pseudo-random index;

a state update module adapted to update a state of the at least one stream cipher table by:

determining a new value of the traversal index, the new value of the traversal index being independent of the pseudo-random index and the entries of the at least one stream cipher table;

determining a new value of the pseudo-random index based upon at least one of the entries of the at least one stream cipher table such that the new value of the pseudo-random index is at least biased away from at least one undesirable value of the N possible values of the pseudo-random index; and

swapping the entry associated with the new value of the traversal index with the entry associated with the new value of the pseudo-random index;

and an output word module adapted to generate an output word as a function of the new value of the traversal index and the new value of the pseudo-random index.

5. The system according to claim 4 , wherein the state update module is adapted to determine the new value of the pseudo-random index so that the new value of the pseudo-random index excludes the at least one undesirable value.

6. A method for operating a table-shuffle stream cipher comprising:

maintaining at least one stream cipher table having N entries, at least one traversal index and at least one pseudo-random index;

updating a state of the at least one stream cipher table by:

determining a new value of the traversal index such that the new value of the traversal index is a function of a constant integer having an absolute value greater than one, the new value of the traversal index being independent of the pseudo-random index and the entries of the at least one stream cipher table;

determining a new value of the pseudo random index based upon at least one of the entries of the at least one stream cipher table; and

swapping the entry associated with the new value of the traversal index with the entry associated with the new value of the pseudo-random index;

and generating an output word as a function of the new value of the traversal index and the new value of the pseudo-random index.

7. A method for operating a table-shuffle stream cipher comprising:

maintaining at least one stream cipher table having N entries, one traversal index and at least one pseudo-random index;

updating a state of the at least one stream cipher table by:

determining a new value of the traversal index, the new value of the traversal index being independent of the pseudo-random index and the entries of the at least one stream cipher table;

determining a new value of the pseudo-random index based upon at least one of the entries of the at least one stream cipher table such that the new value of the pseudo-random index is at least biased away from at least one undesirable value of N possible values of the pseudo-random index; and

swapping the entry associated with the new value of the traversal index with the entry associated with the new value of the pseudo-random index; and

generating an output word as a function of the new value of the traversal index and the new value of the pseudo-random index.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2013
From: NDS LIMITED
To: CISCO TECHNOLOGY, INC.
Reel/Frame 030258/0465 →
RELEASE OF PATENT SECURITY INTERESTS Recorded Mar 29, 2011
From: J.P.MORGAN EUROPE LIMITED
To: NDS LIMITED; NEWS DATACOM LIMITED
Reel/Frame 026042/0124 →
RELEASE OF INTELLECTUAL PROPERTY SECURITY INTERESTS Recorded Mar 11, 2011
From: NDS HOLDCO, INC.
To: NDS LIMITED; NEWS DATACOM LIMITED
Reel/Frame 025940/0710 →
SECURITY AGREEMENT Recorded May 18, 2009
From: NDS LIMITED; NEWS DATACOM LIMITED
To: NDS HOLDCO, INC.
Reel/Frame 022703/0071 →
SECURITY AGREEMENT Recorded May 14, 2009
From: NDS LIMITED; NEWS DATACOM LIMITED
To: J.P. MORGAN EUROPE LIMITED
Reel/Frame 022678/0712 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2007
From: MANTIN, ITSIK; SELLA, YARON; WAISBARD, EREZ
To: NDS LIMITED
Reel/Frame 020221/0071 →