Method and system for controlling unauthorized access to information distributed to users
First Claim
1. A method for controlling unauthorized access to information distributed to users, the method comprising the steps of:
- choosing an encryption parameter and generating from it an encryption key using a public key algorithm;
generating a decryption key using the public key algorithm;
encrypting the information using the encryption parameter and the encryption key;
distributing identical copies of the encrypted form of the information to users;
receiving identifying information from a user;
generating a numeric representation of the identifying information;
generating a unique user key using the numeric representation of the identifying information and decryption key information;
providing the user with the unique user key; and
decrypting the encrypted form of the information using the numeric representation of the identifying information, the unique user key, and the encryption parameter.
2 Assignments
0 Petitions
Accused Products
Abstract
A system for controlling unauthorized access to information distributed to users and, more particularly, for controlling unauthorized access to software distributed to users is provided. One method utilizing the system of the present invention enables the software to be encrypted using a single encryption key and to be decrypted using a multiplicity of "decryption" keys, each of which is unique to a particular user. The "decryption" keys are the products of numeric representations of identifying information relating to users and unique user keys generated using the numeric representations and a "true" decryption key. Since each user receives a unique user key and both the numeric representation and the user key are generated using the identifying information, if the user reveals the numeric representation and the user key (or the product of the numeric representation and the user key), the numeric representation and the user key can be traced to the user who revealed them. Another method utilizing the system of the present invention introduces randomness or pseudo-randomness into the decryption scheme to provide an additional level of security to the scheme.
-
Citations
39 Claims
-
1. A method for controlling unauthorized access to information distributed to users, the method comprising the steps of:
-
choosing an encryption parameter and generating from it an encryption key using a public key algorithm; generating a decryption key using the public key algorithm; encrypting the information using the encryption parameter and the encryption key; distributing identical copies of the encrypted form of the information to users; receiving identifying information from a user; generating a numeric representation of the identifying information; generating a unique user key using the numeric representation of the identifying information and decryption key information; providing the user with the unique user key; and decrypting the encrypted form of the information using the numeric representation of the identifying information, the unique user key, and the encryption parameter. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method for controlling unauthorized access to information stored on a storage medium, the method comprising the steps of:
-
generating an encryption key using a public key algorithm; generating a decryption key using the public key algorithm; encrypting the information using the encryption key; storing the encrypted form of the information on the storage medium; receiving identifying information from a user; generating a numeric representation of the identifying information; generating a unique user key using the numeric representation of the identifying information and decryption key information; providing the user with the unique user key; and decrypting the encrypted form of the information using the numeric representation of the identifying information and the unique user key.
-
-
17. A method for controlling unauthorized access to software stored on CD-ROM, the method comprising the steps of:
-
selecting an encryption key e such that e is relatively prime to φ
(n), wherein n is the product of any two prime numbers p and q and φ
(n)=(p-1) (q-1);generating a decryption key d such that d=e-1 (mod φ
(n));encrypting the software using the encryption function E(a)=ae mod n, wherein a is the software to be encrypted; storing the encrypted form of the software on the CD-ROM; receiving identifying information from a user; generating a numeric representation of the identifying information by encoding the identifying information using a Godel numbering and an error-correcting coding; generating a unique user key y using the function y=d/x (mod φ
(n)), wherein x is the numeric representation of the identifying information;providing the user with the unique user key y; and decrypting the encrypted form of the software using the decryption function D(c)=cxy mod n, wherein c is the encrypted form of the software.
-
-
18. A method for generating a unique user key that can be used together with a numeric representation of identifying information relating to a user to decrypt information that has been encrypted using a public key algorithm, the method comprising the steps of:
-
receiving identifying information from a user; generating a numeric representation of the identifying information; and generating a unique user key using the numeric representation of the identifying information and decryption key information.
-
-
19. A method for decrypting information that has been encrypted using a public key algorithm, the method comprising the steps of:
-
receiving identifying information from a user; receiving a unique user key from the user, the unique user key having been generated using a numeric representation of the identifying information and decryption key information; generating the numeric representation of the identifying information; and decrypting the encrypted form of the information using the numeric representation of the identifying information and the unique user key.
-
-
20. A system for controlling unauthorized access to information distributed to users, the system comprising:
-
an encryptor for generating an encryption key and a decryption key using a public key algorithm and for encrypting the information using the encryption key; a user key generator for receiving identifying information from a user, for generating a numeric representation of the identifying information, and for generating a unique user key using the numeric representation of the identifying information and decryption key information; and a decryptor for decrypting the encrypted form of the information using the numeric representation of the identifying information and the unique user key.
-
-
21. A method for controlling unauthorized access to information distributed to users, the method comprising the steps of:
-
generating two encryption keys using a public key algorithm; generating two decryption keys using the public key algorithm; encrypting the information twice using the two encryption keys; distributing the two encrypted forms of the information to users; receiving identifying information from a user; generating two numeric representations of the identifying information; generating two unique user keys using the two numeric representations of the identifying information, decryption key information, and a random number; providing the user with the two unique user keys; decrypting the two encrypted forms of the information using the two numeric representations of the identifying information and the two unique user keys; and multiplying the results of the two decryptions to recover the information. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
-
-
36. A method for controlling unauthorized access to information stored on a storage medium, the method comprising the steps of:
-
generating two encryption keys using a public key algorithm; generating two decryption keys using the public key algorithm; encrypting the information twice using the two encryption keys; storing the two encrypted forms of the information on the storage medium; receiving identifying information from a user; generating two numeric representations of the identifying information; generating two unique user keys using the two numeric representations of the identifying information, decryption key information, and a random number; providing the user with the two unique user keys; decrypting the two encrypted forms of the information using the two numeric representations of the identifying information and the two unique user keys; and multiplying the results of the two decryptions to recover the information.
-
-
37. A method for controlling unauthorized access to software stored on CD-ROM, the method comprising the steps of:
-
selecting two encryption keys e and e'"'"' such that e and e'"'"' are relatively prime to φ
(n), wherein n is the product of any two prime numbers p and q and φ
(n)=(p-1) (q-1);generating two decryption keys d and d'"'"' such that d=e-1 (mod φ
(n)) and d'"'"'=e'"'"'-1 (mod φ
(n));encrypting the software twice using the encryption functions E(a)=ae mod n and E'"'"'(a)=ae'"'"' mod n, wherein a is the software to be encrypted; storing the two encrypted forms of the software on the CD-ROM; receiving identifying information from a user; generating two numeric representations of the identifying information by modifying the identifying information and encoding the identifying information and the modified identifying information using a Godel numbering and an error-correcting coding; selecting a random number r, wherein r ε
Z.sub.φ
(n) and Z.sub.φ
(n) is equal to the set of numbers from 0 to (φ
(n)-1);generating two unique user keys using the functions y=rd/x (mod φ
(n)) and y'"'"'=(1-r)d'"'"'/x'"'"' (mod φ
(n)), wherein x and x'"'"' are the numeric representations of the identifying information and the modified identifying information;decrypting the two encrypted forms of the software using the decryption functions D(c)=cd mod n and D'"'"'(c'"'"')=c'"'"'d'"'"' mod n, wherein c and c'"'"' are the two encrypted forms of the software; and multiplying the results of the two decryptions to recover the software.
-
-
38. A method for decrypting information that has been encrypted using a public key algorithm, the method comprising the steps of:
-
receiving identifying information from a user; receiving two unique user keys from the user, the unique user keys having been generated using two numeric representations of the identifying information and decryption key information; generating the two numeric representations of the identifying information; decrypting the two encrypted forms of the information using the two numeric representations of the identifying information and the two unique user keys; and multiplying the results of the two decryptions to recover the information.
-
-
39. A system for controlling unauthorized access to information distributed to users, the system comprising:
-
an encryptor for generating two encryption keys and two decryption keys using a public key algorithm and for encrypting the information twice using the two encryption keys; a user key generator for receiving identifying information from a user, for generating two numeric representations of the identifying information, and for generating two unique user keys using the two numeric representations of the identifying information, decryption key information, and a random number; and a decryptor for decrypting the two encrypted forms of the information using the two numeric representations of the identifying information and the two unique user keys and multiplying the results of the two decryptions to recover the information.
-
Specification