Claims
- 1. A digital storage medium for storing programming instructions that, when read by a processing unit, causes the processing unit to secure a data element in a database that stores a plurality of data elements, the digital storage medium comprises:first storage means for storing programming instructions that, when read by the processing unit, causes the processing unit, to encrypt a first security parameter based on a second security parameter to produce a secured first security parameter, wherein the first security parameter is associated with a first securing process, and wherein the second security parameter is associated with a second securing process; second storage means for storing programming instructions that, when read by the processing unit, causes the processing unit, to receive a data element for storage in the database; third storage means for storing programming instructions that, when read by the processing unit, causes the processing unit, to retrieve the secured first security parameter; fourth storage means for storing programming instructions that, when read by the processing unit, causes the processing unit, to decrypt the secured first security parameter based on the second security parameter to recapture the first security parameter; fifth storage means for storing programming instructions that, when read by the processing unit, causes the processing unit, to secure the data element based on the recaptured first security parameter to produce a secured data element within the database; and sixth storage means for storing programming instructions that, when read by the processing unit, causes the processing unit, to store the secured data element in the database to produce a secured data element within the database.
- 2. The digital storage medium of claim 1 further comprises programming instructions that, when read by the processing unit, causes the processing unit to encode a first symmetric key based on a second symmetric key to produce the secured first security parameter.
- 3. The digital storage medium of claim 1 further comprises programming instructions that, when read by the processing unit, causes the processing unit to:encode a symmetric key based on an encryption public key to produce the secured first security parameter; and decoding the secured first security parameter based on a decryption private key to produce a recaptured symmetric key, wherein the decryption private key corresponds to the encryption public key.
- 4. The digital storage medium of claim 3 further comprises programming instructions that, when read by the processing unit, causes the processing unit to re-securing the recaptured symmetric key after the secured data element has been stored.
- 5. The digital storage medium of claim 3 further comprises programming instructions that, when read by the processing unit, causes the processing unit to:receive a second data element; secure the second data element based on the recaptured symmetric key to produce a second secured data element; and store the second secured data element in the database.
- 6. The digital storage medium of claim 3 further comprises programming instructions that, when read by the processing unit, causes the processing unit to:interpret the data element to determine a data type; and retrieve the secured symmetric key when the data element is of a first data type, wherein the secured first security parameter is bound to the first data type.
- 7. The digital storage medium of claim 6 further comprises programming instructions that, when read by the processing unit, causes the processing unit to:retrieve a second secured symmetric key when the data element is of a second data type, wherein the second secured symmetric key is bound to the second data type, and wherein the second secured symmetric key is secured based on the encryption public key; decrypting the second secured symmetric key based on the decryption private key to produce a second recaptured symmetric key; and securing the data element based on the second recaptured symmetric key to produce the secured data element.
- 8. The digital storage medium of claim 6 further comprises programming instructions that, when read by the processing unit, causes the processing unit to:retrieve a second secured symmetric key when the data element is of a second data type, wherein the second secured symmetric key is bound to the second data type, and wherein the second secured symmetric key is secured based on a second encryption public key; decrypt the second secured symmetric key based on a second decryption private key to produce a second recaptured symmetric key, wherein the second decryption private key corresponds to the second encryption public key; and secure the data element based on the second recaptured symmetric key to produce the secured data element.
- 9. The digital storage medium of claim 6 further comprises programming instructions that, when read by the processing unit, causes the processing unit to:within the first storage means, secure the symmetric key based on a plurality of encryption public keys to produce the secured first security parameter; within the second storage means, receive the data element from a first entity, wherein the first entity is associated with one of the plurality of encryption public keys; and within the fourth, decode the secured first security parameter based on a decryption private key associated with the one of the plurality of encryption public keys to produce the recaptured symmetric key.
- 10. A digital storage medium for storing programming instructions that, when read by a processing unit, cause the processing unit to access at least one data element that is stored in a database, the digital storage medium comprises:first storage means for storing programming instructions that, when read by the processing unit, cause the processing unit to receive a request for access to at least one of a plurality of data elements from a requesting entity; second storage means for storing programming instructions that, when read by the processing unit, cause the processing unit to retrieve a secured data element from within the database in response to the request, wherein the secured data element is secured based on a secured symmetric key; third storage means for storing programming instructions that, when read by the processing unit, cause the processing unit to retrieve the secured symmetric key; fourth storage means for storing programming instructions that, when read by the processing unit, cause the processing unit to decrypt the secured symmetric key based on a decryption private key to produce a recaptured symmetric key, wherein the secured symmetric key is secured based on an encryption public key that corresponds to the decryption private key; fifth storage means for storing programming instructions that, when read by the processing unit, cause the processing unit, to recapture the data element from the secured data element based on the recaptured symmetric key to produce a recaptured data element; and sixth storage means for storing programming instructions that, when read by the processing unit, cause the processing unit to provide the recaptured data element to the requesting entity.
- 11. The digital storage medium of claim 11 further comprises programming instructions that, when read by the processing unit, causes the processing unit to re-secure the recaptured symmetric key after the recaptured data element has been provided.
- 12. The digital storage medium of claim 11 further comprises programming instructions that, when read by the processing unit, causes the processing unit to:retrieve a second secured data element in response to a second request; recapture the second data from the second secured data element based on the recaptured symmetric key to produce a second recaptured data element; and provide the second recaptured data element to the requesting entity.
- 13. The digital storage medium of claim 11 further comprises programming instructions that, when read by the processing unit, causes the processing unit to:determine a data type based on the requesting entity; and retrieve the secured symmetric key when the data element is of a first data type, wherein the secured symmetric key is bound to the first data type.
- 14. The digital storage medium of claim 13 further comprises programming instructions that, when read by the processing unit, causes the processing unit to:retrieve a second secured symmetric key when the data element is of a second data type, wherein the second secured symmetric key is bound to the second data type, and wherein the second secured symmetric key is secured based on the public key; decrypt the second secured symmetric key based on the decryption private key to produce a second recaptured symmetric key; and recapture the data element from the secured data element based on the second recaptured symmetric key to produce the recaptured data element.
- 15. The digital storage medium of claim 13 further comprises programming instructions that, when read by the processing unit, causes the processing unit to:retrieve a second secured symmetric key when the data element is of a second data type, wherein the second secured symmetric key is bound to the second data type, and wherein the second secured symmetric key is secured based on a second public key; decrypt the second secured symmetric key based on a second decryption private key to produce a second recaptured symmetric key, wherein the second decryption private key corresponds to the second encryption public key; and recapture the data element from the secured data element based on the second recaptured symmetric key to produce the recaptured data element.
Parent Case Info
This patent application is a divisional patent application of co-pending patent application entitled METHOD AND APPARATUS FOR SECURING AND ACCESSING DATA ELEMENTS WITHIN A DATABASE, having a Ser. No. of 09/047,286, and a filing date of Mar. 24, 1998 now pending.
US Referenced Citations (3)