System and method for generating encryption seed values
First Claim
Patent Images
1. A method of generating a seed value for use in symmetric encryption, the method comprising the computer-implemented steps of:
- (a) creating and storing a first data set;
(b) generating a hashed value based on the first data set;
(c) selecting, based on a time-based value associated with the step of generating the hashed value, a replacement position in the first data set;
(d) writing at least a portion of the hashed value into the first data set at the replacement position;
(e) selecting, as the seed value, a seed portion of the first data set;
(f) generating a symmetric encryption key based on the seed value; and
(g) encrypting, using the symmetric encryption key, data communicated to a computer system.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for generating a seed value for use in symmetric encryption includes creating and storing a first data set and generating a hashed value based on the first data set. A replacement position in the first data set is selected, and at least a portion of the hashed value is written into the first data set at the replacement position. A seed portion of the first data set is selected as the seed value. By varying a number of iterations, a balance can be struck between performance (fewer iterations) and security (more iterations).
-
Citations
37 Claims
-
1. A method of generating a seed value for use in symmetric encryption, the method comprising the computer-implemented steps of:
-
(a) creating and storing a first data set; (b) generating a hashed value based on the first data set; (c) selecting, based on a time-based value associated with the step of generating the hashed value, a replacement position in the first data set; (d) writing at least a portion of the hashed value into the first data set at the replacement position; (e) selecting, as the seed value, a seed portion of the first data set; (f) generating a symmetric encryption key based on the seed value; and (g) encrypting, using the symmetric encryption key, data communicated to a computer system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 13)
-
-
8. A method of generating a seed value for use in symmetric encryption, the method comprising the computer-implemented steps of:
-
(a) creating and storing a first data set; (b) generating a first index value; (c) generating a hashed value based on the first data set; (d) generating a second index value; (e) selecting a hash portion from the hashed value, wherein the hash portion has a size equal to the second index value; (f) writing the hash portion into the first data set at a replacement position specified by the first index value; (g) generating a seed index value; (h) selecting, as the seed value, a portion of the first data set at a seed position specified by the seed index value; (i) generating a symmetric encryption key based on the seed value; and (j) encrypting, using the symmetric encryption key, data communicated to a computer system. - View Dependent Claims (9, 10, 11, 12)
-
-
14. A computer-readable medium carrying one or more sequences of instructions for generating a seed value for use in symmetric encryption, which instructions, when executed by one or more processors, cause the one or more processors to carry out the steps of:
-
(a) creating and storing a first data set; (b) generating a hashed value based on the first data set; (c) selecting, based on a time-based value associated with the step of generating the hashed value, a replacement position in the first data set; (d) writing at least a portion of the hashed value into the first data set at the replacement position; (e) selecting, as the seed value, a seed portion of the first data set; (f) generating a symmetric encryption key based on the seed value; and (g) encrypting, using the symmetric encryption key, data communicated to a computer system. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
-
21. An apparatus for generating a seed value for use in symmetric encryption, the apparatus comprising:
-
means for creating and storing a first data set; means for generating a hashed value based on the first data set; means for selecting, based on a time-based value associated with the step of generating the hashed value, a replacement position in the first data set; means for writing at least a portion of the hashed value into the first data set at the replacement position; means for selecting, as the seed value, a seed portion of the first data set; means for generating a symmetric encryption key based on the seed value; and means for encrypting, using the symmetric encryption key, data communicated to a computer system. - View Dependent Claims (22, 23, 24, 25, 26, 27)
-
-
28. An apparatus for generating a seed value for use in symmetric encryption, the apparatus comprising:
-
a network interface that is coupled to a data network for receiving one or more packet flows therefrom; a processor; one or more stored sequences of instructions which, when executed by the processor, cause the processor to carry out the steps of; creating and storing a first data set; generating a hashed value based on the first data set; selecting, based on a time-based value associated with the step of generating the hashed value, a replacement position in the first data set; writing at least a portion of the hashed value into the first data set at the replacement position; selecting, as the seed value, a seed portion of the first data set; generating a symmetric encryption key based on the seed value; and encrypting, using the symmetric encryption key, data communicated to a computer system. - View Dependent Claims (29, 30, 31, 32, 33, 34)
-
-
35. A computer-readable medium carrying one or more sequences of instructions for generating a seed value for use in encryption, which instructions, when executed by one or more processors, cause the one or more processors to carry out the steps of:
-
(a) creating and storing a first data set; (b) generating a first index value; (c) generating a hashed value based on the first data set; (d) generating a second index value; (e) selecting a hash portion from the hashed value, wherein the hash portion has a size equal to the second index value; (f) writing the hash portion into the first data set at a replacement position specified by the first index value; (g) generating a seed index value; (h) selecting, as the seed value, a portion of the first data set at a seed position specified by the seed index value; (i) generating a symmetric encryption key based on the seed value; and (j) encrypting, using the symmetric encryption key, data communicated to a computer system.
-
-
36. A system for generating a seed value for use in encryption, the system comprising:
-
(a) means for creating and storing a first data set; (b) means for generating a first index value; (c) means for generating a hashed value based on the first data set; (d) means for generating a second index value; (e) means for selecting a hash portion from the hashed value, wherein the hash portion has a size equal to the second index value; (f) means for writing the hash portion into the first data set at a replacement position specified by the first index value; (g) means for generating a seed index value; (h) means for selecting, as the seed value, a portion of the first data set at a seed position specified by the seed index value; (i) means for generating a symmetric encryption key based on the seed value; and (j) means for encrypting, using the symmetric encryption key, data communicated to a computer system.
-
-
37. An apparatus for generating a seed value for use in symmetric encryption, the apparatus comprising:
-
a network interface that is coupled to a data network for receiving one or more packet flows therefrom; a processor; one or more stored sequences of instructions which, when executed by the processor, cause the processor to carry out the steps of; (a) creating and storing a first data set; (b) generating a first index value; (c) generating a hashed value based on the first data set; (d) generating a second index value; (e) selecting a hash portion from the hashed value, wherein the hash portion has a size equal to the second index value; (f) writing the hash portion into the first data set at a replacement position specified by the first index value; (g) generating a seed index value; (h) selecting, as the seed value, a portion of the first data set at a seed position specified by the seed index value; (i) generating a symmetric encryption key based on the seed value; and (j) encrypting, using the symmetric encryption key, data communicated to a computer system.
-
Specification