Patent ID: 9727742
Date: 2017-08-08
CPC Classifications: G06F,H04L

Claim:
1. A computer implemented method comprising: receiving a write request to a database, the write request specifying an original table (OT) name of one of a plurality of tables in the database, a column name of one of a plurality of columns in the OT, and a data entry to be written; accessing an OT primary key where the data entry is to be written, the OT primary key identifying a row of the OT; writing the data entry to a first location in the OT corresponding to the column name and the row corresponding to the OT primary key; preparing an additional authenticated data (AAD) comprising the OT name, the column name, and the OT primary key; obtaining a cipher text based on the data entry and the AAD; writing the cipher text to a second location in a cipher text column of an encrypted table (ET) different than the OT, the second location being in a row of the ET where the row also stores the OT name, the column name, and the OT primary key; accessing the row of the ET corresponding to the OT primary key; creating a second AAD based on at least some of the contents of the row other than the cipher text; communicating the cipher text and the second AAD to a cryptography service; responsive to the cryptography service returning the data entry, validating the encryption as successful; and responsive to the cryptography service returning a decryption error, reporting that the encryption was unsuccessful or that a write attack has occurred.