Field level database encryption using a transient key
AssigneeInternational Business Machines Corporation
InventorsWilliam C. Freeman, Richard V Hom
Life of this patent
Estimating the term…
Abstract
Embodiments of the present invention disclose a method, system, and computer program product for implementing user specific encryption in a database system. A computer receives a query statement including a user specific key and data, the data including data needing encryption and non-encrypted data. The computer encrypts the data needing encryption using the user specific key. The computer inserts both the encrypted data and the non-encrypted data into a table row in a database. The computer creates a hash of the user specific key, and stores the hash of the user specific key in the table row with the data.
Claims20
A method for implementing user specific encryption in a database system, the method comprising:
- a computer receiving a query statement including a user specific key and data, the data comprising a data field requiring encryption and a data field not requiring encryption;
- the computer identifying the data field requiring encryption;
- the computer encrypting the data field requiring encryption by using the user specific key;
- the computer inserting both the encrypted data field and the non-encrypted data field into a table row in a database;
- the computer creating a hash of the user specific key;
- and
- the computer inserting the hash of the user specific key in the table row with the data.
A computer program product for implementing user specific encryption in a database system, the computer program product comprising:
- one or more computer-readable storage media and program instructions stored on the one or more computer-readable storage media, the program instructions comprising:
- program instructions to receive a query statement including a user specific key and data, the data comprising a data field requiring encryption and a data field not requiring encryption;
- program instructions to identify the data field requiring encryption;
- program instructions to encrypt the data field requiring encryption by using the user specific key;
- program instructions to insert both the encrypted data field and the non-encrypted data field into a table row in a database;
- program instructions to create a hash of the user specific key;
- and
- program instructions to insert the hash of the user specific key in the table row with the data.
A computer system for implementing user specific encryption in a database system, the computer system comprising:
- one or more computer processors;
- and
- one or more computer-readable storage media storing program instructions, wherein at least one of the one or more computer processors executes the program instructions to:
- receive a query statement including a user specific key and data, the data comprising a data field requiring encryption and a data field not requiring encryption;
- identify the data field requiring encryption;
- encrypt the data field requiring encryption by using the user specific key;
- insert both the encrypted data field and the non-encrypted data field into a table row in a database;
- create a hash of the user specific key;
- and
- insert the hash of the user specific key in the table row with the data.
Dependencies are inferred from the claim text.