Data decryption system
First Claim
1. A system for data decryption, the system comprising the steps of:
- an input operable to receive encrypted data associated with a plurality of plain characters, the encrypted data comprising a plurality of offsets;
a memory operable to store a key block comprising a plurality of key characters, each plain character corresponding to a key character of the plurality of key characters;
processor operable to repeat the following for a subsequent offset of the plurality of offsets to decrypt the encrypted data;
locate a current key character;
locate a next key character corresponding to the offset applied to the current key character; and
determine a plain character corresponding to the next key character.
2 Assignments
0 Petitions
Accused Products
Abstract
A system (100) and method (400, 500) for data encryption and decryption are disclosed. The encryption system is operable at encryption rates in excess of 10 Mbps and is expandable to over 200 Mpbs. For encryption, plain characters are received, and a key block (120) includes key characters corresponding to the plain characters is accessed. A current key character corresponding to a current plain character is located. A next key character corresponding to a next plain character is located. An offset between the current key character and the next key character is determined to encrypt the plain characters. Aliases are used to facilitate the encryption and decryption. Vector distances of offsets are utilized for the encryption and decryption, using many variables and many dimensions, such as using coordinates.
-
Citations
34 Claims
-
1. A system for data decryption, the system comprising the steps of:
-
an input operable to receive encrypted data associated with a plurality of plain characters, the encrypted data comprising a plurality of offsets;
a memory operable to store a key block comprising a plurality of key characters, each plain character corresponding to a key character of the plurality of key characters;
processor operable to repeat the following for a subsequent offset of the plurality of offsets to decrypt the encrypted data;
locate a current key character;
locate a next key character corresponding to the offset applied to the current key character; and
determine a plain character corresponding to the next key character.
-
-
2. The system of claim 1 wherein each of the key characters are associated with variables that hold the position of the key character within a coordinate space of the key block.
-
3. The system of claim 1 wherein each key character has an associated coordinate, wherein the offset is the difference between the current key character'"'"'s coordinate and the next key character'"'"'s coordinate.
-
4. The system as specified in claim 1 wherein the key characters are represented in at least n-dimensions.
-
5. The system specified in claim 4 wherein each of the key characters has a variable for each dimension.
-
6. The system of claim 1 wherein the processor is operable to insert a predetermined character to signify an end of the data when there are no further plain characters.
-
7. The system of claim 1 wherein at least two key characters correspond to one of the plain characters.
-
8. The system of claim 1 wherein the key characters are associated with geometric coordinates, and the offset is represented as a geometric offset.
-
9. The system of claim 1 wherein the processor is operable to determine a key character as a starting key character.
-
10. The system as specified in claim 1 wherein the offset is integer based.
-
11. The system of claim 1 wherein the data has a header and a body wherein the processor is operable to decrypt the header with a first set of key characters and decrypt the body with a second set of key characters being different than the first set of key characters, specifically this first set being arranged differently from the second set of key characters.
-
12. The system as specified in claim 1 wherein an alias is associated with the offset.
-
13. The system of claim 12 wherein the key matrix comprises a de-alias table adapted to identify the offset from the alias.
-
14. The system of claim 12 wherein the key block has n-dimensions, wherein the processor is operable to define a de-alias table for each dimension of the key block.
-
15. The system of claim 14 wherein the processor is operable to define a plurality of de-alias tables for each dimension.
-
16. The system of claim 15 wherein the processor is operable to permute the de-alias tables within a dimensional set.
-
17. The system of claim 12 wherein the coordinates of a key character are represented as the offset from the coordinate of the previous key character.
-
18. The system of claim 12 wherein the offset is represented as a function of one aliased geometric offset with respect to another alias geometric offset.
-
19. The system as specified in claim 12 wherein the aliases are represented in at least n-dimensions.
-
20. The system as specified in claim 19 wherein each of the aliases has a variable for each dimension.
-
21. The system of claim 20 wherein a dimensional output is reordered according to a permutation table.
-
22. The system of claim 13 wherein the processor is operable to permute the de-alias table.
-
23. The system of claim 23 wherein the processor is operable to convert an alias parameter to an offset parameter using a de-alias table having elements.
-
24. The system of claim 22 where in each element in the de-alias table holds a non-aliased offset value.
-
25. The system of claim 12 wherein the encrypted data is associated with an alias table, wherein there are as many de-alias tables as there are alias tables.
-
26. The system of claim 12 wherein the encrypted data is associated with an alias table, wherein the length of the de-alias table equals the key character with the largest bit representation in the alias table.
-
27. The system of claim 12 wherein starting de-alias tables are reserved for a starting key character.
-
28. The system of claim 12 wherein the processor is operable to permute the de-alias tables.
-
29. The system of claim 12 wherein the offsets reside in a de-alias table, wherein the processor is operable to permute the de-alias tables.
-
30. The system of claim 1 wherein the key block comprises a plurality of access blocks.
-
31. The system of claim 1 wherein there are a plurality of key blocks.
-
32. The system of claim 1 wherein the processor is operable to permute a plurality of key blocks.
-
33. The system of claim 1 wherein an axis of the key block wraps around the key block.
-
34. The system of claim 1 wherein the processor is operable to decompress the decrypted data.
Specification