System and method for data encryption
First Claim
1. A method of encrypting an input data string including a plurality of bits of binary data with a processing device communicatively coupled to a memory having executable instructions stored therein which cause the processing device to implement a method of encryption, the method comprising:
- receiving the input data string for encryption at the processing device;
providing a control code index in the memory, the control code index being defined prior to encryption at the processing device, the control code index including a plurality of control codes each defining respective orders of n bit combinations of binary data, the respective orders of bit combinations of each control code defining control code segments;
determining an order in which to query the presence of each of 2n different configurations of n bits within the input data string, the determined order being selected without any analysis of the input data string;
identifying a control code associated with the determined order using the control code index;
generating a position code using the identified control code in cooperation with a position cede routine associated with the identified control code to determine positions of each of the 2n different configurations of n bits in the input data string by comparing the 2n different configurations of n bits within the input data string with a first one of the control code segments of the identified control code to identify which n bit segments of the input data string correspond to a first n bit segment within the control code, comparing additional ones of the control code segments in a serial fashion to previously unidentified ones of the n bit segments of the input data string, correspondences to the control code segment comparisons resulting in output values dictated by the position code routine which defines the generated position code; and
combining the identified control code and the generated position code as components of an encrypted data string.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for encrypting and/or compressing an input data string is disclosed. The input data string is divided into a plurality of blocks of data that each contains a plurality of bits of data. A block code is used to identify the size of each of the blocks of data. The blocks of data are analyzed to determine how frequently different groups of bits of data are present within each block of data. The blocks of data are also analyzed to determine whether certain relationships among the groups of bits of data exist within the blocks of data. After the blocks of data are analyzed, and in response to the analyses, a control code is generated for each block of data through the use of a control code index. After the control code for each block of data is generated, a position code is also generated for each block of data in response to the control code for the corresponding block of data. The control code, block code, and position code for each of the blocks of data can then be combined to produce an encrypted data string.
-
Citations
33 Claims
-
1. A method of encrypting an input data string including a plurality of bits of binary data with a processing device communicatively coupled to a memory having executable instructions stored therein which cause the processing device to implement a method of encryption, the method comprising:
-
receiving the input data string for encryption at the processing device; providing a control code index in the memory, the control code index being defined prior to encryption at the processing device, the control code index including a plurality of control codes each defining respective orders of n bit combinations of binary data, the respective orders of bit combinations of each control code defining control code segments; determining an order in which to query the presence of each of 2n different configurations of n bits within the input data string, the determined order being selected without any analysis of the input data string; identifying a control code associated with the determined order using the control code index; generating a position code using the identified control code in cooperation with a position cede routine associated with the identified control code to determine positions of each of the 2n different configurations of n bits in the input data string by comparing the 2n different configurations of n bits within the input data string with a first one of the control code segments of the identified control code to identify which n bit segments of the input data string correspond to a first n bit segment within the control code, comparing additional ones of the control code segments in a serial fashion to previously unidentified ones of the n bit segments of the input data string, correspondences to the control code segment comparisons resulting in output values dictated by the position code routine which defines the generated position code; and combining the identified control code and the generated position code as components of an encrypted data string. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method for encrypting an input data string, including a plurality of bits of binary data, the method comprising:
-
receiving the input data string for encryption; providing a control code index, the control code index being defined prior to encryption, the control code index including a plurality of control codes each defining respective orders of n bit combinations, of binary data the respective orders of bit combinations of each control code defining control code segments; determining an order in which to query the presence of each of 2n different configurations of n bits within the input data string, the determined order being selected without any analysis of the input data string; identifying a control code associated with the determined order using the control code index; generating a position code using the identified control code in cooperation with a position code routine associated with the identified control code to determine positions of each of the 2n different configurations of n bits in an input data string by comparing the 2n different configurations of n bits within the input data string with a first one of the control code segments of the identified control code to identify which n bit segments of the input data string correspond to a first n bit segment within the control code, comparing additional ones of the control code segments in a serial fashion to previously unidentified ones of the n bit segments of the input data string correspondences to the control code segment comparisons resulting in output values dictated by the position code routine which defines the generated position code; and combining the identified control code and the generated position code as components of an encrypted data string. - View Dependent Claims (17)
-
-
18. A computer readable storage medium including computer program instructions that cause a computer to implement a method of encrypting an input data string, including a plurality of bits of binary data, the method comprising:
-
receiving the input data string for encryption; providing a control code index that is defined prior to encryption, the control code index including a plurality of control codes each defining respective orders of n bit combinations of binary data, the respective orders of bit combinations of each control code defining control code segments; determining an order in which to query the presence of each of 2n different configurations of n bits within the input data string, the determined order being selected without any analysis of the input data string; identifying a control code associated with the determined order using the control code index; generating a position code using the identified control code in cooperation with a position code routine associated with the identified control code to determine the positions of each of the 2n different configuration of n bits in the input data string by comparing the 2n different configurations of n bits within the input data string with a first one of the control code segments of the identified control code to identify which n bit segments of the input data string correspond to a first n bit segment within the control code, comparing additional ones of the control code segments in a serial fashion to previously unidentified ones of the n bit segments of the input data string, correspondences to the control code segment comparisons resulting in output values dictated by the position code routine which defines the generated position code; and combining the identified control code and the generated position code as components of an encrypted data string. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. An electronic device for encrypting an input data string, including a plurality of bits of binary data, comprising:
-
a processor configured to receive the input data string for encryption; a memory configured to include a control code index, the control code index being defined prior to encryption by the processor, the control code index including a plurality of control codes, the control codes having corresponding values each defining respective orders of n bit combinations of binary data, the respective orders of bit combinations of each control code defining control code segments, wherein the processor is operably linked to the memory for determining upon reception of the input data string, an order in which to query the presence of each of two 2n different configurations of n bits within the input data string, the determined order being selected without any analysis of the input data string, and identifies a control code associated with the determined order by access of the control code index, the processor generating a position code, using the identified control code in cooperation with a position code routine associated with the identified with the identified control code to determine positions of each of the two 2n different configurations of n bits in the input data string by comparing the 2n different configurations of n bits within the input data string with a first one of the control code segments of the identified control code to identify which n bit segments of the input data string correspond to a first n bit segment within the control code, comparing additional ones of the control code segments in a serial fashion to previously unidentified ones of the n bit segments of the input data string, correspondences to the control code segment comparisons resulting in output values dictated by the position code routine which defines the generated position code to combine the identified control code and the generated position code as components of an encrypted data string.
-
Specification