Stream cipher encryption application accelerator and methods thereof
First Claim
Patent Images
1. A system for encrypting and decrypting data formed of a number of bytes using an encryption algorithm, comprising:
- a system bus;
an encryption accelerator arranged to execute the encryption algorithm coupled to the system bus;
a system memory coupled to the system bus arranged to store a secret key array associated with the data; and
a central processing unit coupled to the system bus wherein encryption accelerator uses substantially no central processing unit resources to execute the encryption algorithm.
6 Assignments
0 Petitions
Accused Products
Abstract
A system for encrypting and decrypting data formed of a number of bytes using the ARCFOUR encryption algorithm is disclosed. The system includes a system bus and an encryption accelerator arranged to execute the encryption algorithm coupled to the system bus. A system memory coupled to the system bus arranged to store a secret key array associated with the data and a central processing unit coupled to the system bus wherein encryption accelerator uses substantially no central processing unit resources to execute the encryption algorithm.
43 Citations
22 Claims
-
1. A system for encrypting and decrypting data formed of a number of bytes using an encryption algorithm, comprising:
-
a system bus;
an encryption accelerator arranged to execute the encryption algorithm coupled to the system bus;
a system memory coupled to the system bus arranged to store a secret key array associated with the data; and
a central processing unit coupled to the system bus wherein encryption accelerator uses substantially no central processing unit resources to execute the encryption algorithm. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An efficient encryption accelerator arranged to encrypt and decrypt data formed of a number of bytes using an encryption algorithm, comprising:
-
a combinational logic block arranged to perform a pre-determined logic operation on selected input values;
a state memory array coupled to the combinational logic block arranged to store a plurality of state memory values;
a state machine coupled to the combinational logic block and the state memory array that directs, storing of an incrementing pattern in the state memory array, performing a shuffling operation on the fly while concurrently retrieving a secret key associated with the data, wherein the shuffling operation includes moving each of the plurality of state memory values based upon the secret key, byte-wise transferring the data to the combinational logic block as a first input value, and transferring a corresponding state memory value to the combinational logic as a second input value;
logically operating on the first and the second input values by the combinational logic to form an encrypted data byte; and
outputting the encrypted data byte. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
Specification