User access to a unique data subset of a database
First Claim
Patent Images
1. A method for allowing a user access to a unique data subset of a database, the method comprising:
- partitioning the database into segments;
associating a prime number with each segment in the database to derive a prime set;
deriving an integer modulus;
choosing a random value;
assigning a segment key to each segment in the database, each segment key being a function of the prime set, the random value and the integer modulus;
encrypting each segment with the associated segment key to derive an encrypted database;
identifying prime numbers associated with the segments in the unique data subset as a prime subset;
identifying prime numbers in the prime set that are not included in the prime subset as a complement prime subset;
raising the random value to a power, modulo the modulus, of the product of all primes in the complement prime subset to generate a compressed key; and
wherein the user can derive each segment key associated with the data subset from the compressed key and decrypt each segment of the unique data subset to access the unique data subset.
1 Assignment
0 Petitions
Accused Products
Abstract
Described herein is one or more implementations for allowing a user access to a unique data subset of a database.
46 Citations
82 Claims
-
1. A method for allowing a user access to a unique data subset of a database, the method comprising:
-
partitioning the database into segments; associating a prime number with each segment in the database to derive a prime set; deriving an integer modulus; choosing a random value; assigning a segment key to each segment in the database, each segment key being a function of the prime set, the random value and the integer modulus; encrypting each segment with the associated segment key to derive an encrypted database; identifying prime numbers associated with the segments in the unique data subset as a prime subset; identifying prime numbers in the prime set that are not included in the prime subset as a complement prime subset; raising the random value to a power, modulo the modulus, of the product of all primes in the complement prime subset to generate a compressed key; and wherein the user can derive each segment key associated with the data subset from the compressed key and decrypt each segment of the unique data subset to access the unique data subset. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. One or more computer-readable media having computer-executable instructions thereon that, when executed by a computer, perform acts for allowing a user access to a unique data subset of a database, the acts comprising:
-
partitioning the database into segments; associating a prime number with each segment in the database to derive a prime set; deriving an integer modulus; choosing a random value; assigning a segment key to each segment in the database, each segment key being a function of the prime set, the random value and the integer modulus; encrypting each segment with the associated segment key to derive an encrypted database; identifying prime numbers associated with the segments in the unique data subset as a prime subset; identifying prime numbers in the prime set that are not included in the prime subset as a complement prime subset; raising the random value to the power, modulo the modulus, of the product of all primes in the complement prime subset to generate a compressed key; and wherein the user can derive each segment key associated with the data subset from the compressed key and decrypt each segment of the unique data subset to access the unique data subset. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A system for allowing a user access to a unique data subset of a database, the system comprising means for performing functions comprising:
-
partitioning the database into segments; associating a prime number with each segment in the database to derive a prime set; deriving an integer modulus; choosing a random value; assigning a segment key to each segment in the database, each segment key being a function of the prime set, the random value and the integer modulus; encrypting each segment with the associated segment key to derive an encrypted database; identifying prime numbers associated with the segments in the unique data subset as a prime subset; identifying prime numbers in the prime set that are not included in the prime subset as a complement prime subset; raising the random value to the power, modulo the modulus, of the product of all primes in the complement prime subset to generate a compressed key; and wherein the user can derive each segment key associated with the data subset from the compressed key and decrypt each segment of the unique data subset to access the unique data subset. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
-
-
47. A method for allowing a user access to a unique data subset of a database, the method comprising:
-
partitioning the database into segments; associating an ordinal with each segment in the database to derive an ordinal set; deriving an integer modulus; choosing a random value; assigning a segment key to each segment in the database, each segment key being a function of the ordinal set, the random value and the integer modulus; encrypting each segment with the associated segment key to derive an encrypted database; identifying ordinals associated with the segments in the unique data subset as an ordinal subset; identifying ordinals in the ordinal set that are not included in the ordinal subset as a complement ordinal subset; raising the random value to the power, modulo the modulus, of the product of all ordinals in the complement ordinal subset to generate a compressed key; and wherein the user can derive each segment key associated with the data subset from the compressed key and decrypt each segment of the unique data subset to access the unique data subset. - View Dependent Claims (48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59)
-
-
60. One or more computer-readable media having computer-executable instructions that, when executed by a computer, perform acts for allowing a user access to a unique data subset of a database, the acts comprising:
-
partitioning the database into segments; associating an ordinal with each segment in the database to derive an ordinal set; deriving an integer modulus; choosing a random value; assigning a segment key to each segment in the database, each segment key being a function of the ordinal set, the random value and the integer modulus; encrypting each segment with the associated segment key to derive an encrypted database; identifying ordinals associated with the segments in the unique data subset as an ordinal subset; identifying ordinals in the ordinal set that are not included in the ordinal subset as a complement ordinal subset; raising the random value to the power, modulo the modulus, of the product of all ordinals in the complement ordinal subset to generate a compressed key; and wherein the user can derive each segment key associated with the data subset from the compressed key and decrypt each segment of the unique data subset to access the unique data subset. - View Dependent Claims (61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72)
-
-
73. A system for allowing a user access to a unique data subset of a database, the system comprising:
-
a partitioning means for partitioning the database into segments; an association means for associating an ordinal with each segment in the database to derive an ordinal set; a derivation means for deriving an integer modulus; a selection means for choosing a random value; an assignment means for assigning a segment key to each segment in the database, each segment key being a function of the ordinal set, the random value and the integer modulus; an encryption means for encrypting each segment with the associated segment key to derive an encrypted database; an identification means for identifying ordinals associated with the segments in the unique data subset as an ordinal subset; another identification means for identifying ordinals in the ordinal set that are not included in the ordinal subset as a complement ordinal subset; a raising means for raising the random value to the power, modulo the modulus, of the product of all ordinals in the complement ordinal subset to generate a compressed key; and wherein the user can derive each segment key associated with the data subset from the compressed key and decrypt each segment of the unique data subset to access the unique data subset. - View Dependent Claims (74, 75, 76, 77)
-
-
78. A method for allowing a user access to a unique data subset of a database, the method comprising:
-
partitioning the database into segments; associating a prime number, pi, with each segment, Si, in the database to derive a prime set, P; deriving an integer modulus, N, as the product of two large prime numbers; choosing a random value, x; assigning a segment key, ki, to each segment of the database, each segment key being a function of P, x and N; encrypting each segment, S1, with the associated segment key, k1; identifying the prime numbers associated with the segments in the unique data subset as a prime subset, Ps; identifying the prime numbers in the prime set that are not included in the prime subset as a complement prime subset, Pc; generating a compressed key with the following equation;
CK=xIIPc mod N; andwherein the user can derive each segment key from the compressed key and decrypt each segment of the unique data subset to access the unique data subset. - View Dependent Claims (79, 80, 81, 82)
-
Specification