IP Library Granted Patent US 9,317,711
Granted Patent B2
US 9,317,711 · App. 14/314,046 · Granted Apr 19, 2016

Privacy restrictions for columnar storage

Inventors: Udo Klein (Walldorf, DE); Jens Odenheimer (Walldorf, DE)
Assignee: SAP SE
G06F21/6227G06F21/602G06F21/6245
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,317,711
App. No.
14/314,046
Granted
Apr 19, 2016
Kind
B2
Abstract

In privacy restrictions for columnar storage, a query including operations on one or more protected columns is received. The one or more protected columns are specified with one or more access restricting metadata in a columnar table. It is determined whether the received query comprises operations on the one or more protected columns specified with the one or more access restricting metadata. The execution of the query is restricted and a constraint violation is displayed, based on the determination.

Claims (58)

1. A non-transitory computer-readable medium to store instructions, which when executed by a computer, cause the computer to perform operations comprising:

split a protected column into a random key column comprising random keys and an encrypted value column comprising encrypted values, wherein the encrypted value column of the protected column is specified with access restricting metadata;

store the random keys in the random key column in a first columnar table;

store the random keys in the random key column and the encrypted values in the encrypted value column in a second columnar table in consecutive memory locations;

determine whether the received query comprises operations on the encrypted value column specified with the access restricting metadata; and

based on the determination, restrict execution of the query and display a constraint violation.

2. The computer-readable medium of claim 1 , further comprising instructions which when executed by the computer further causes the computer to:

encrypt protected values in the protected column using random keys to generate encrypted values.

3. The computer-readable medium of claim 2 , further comprising instructions which when executed by the computer further causes the computer to:

decrypt the encrypted values using random keys to retrieve the protected values in the protected column.

4. The computer-readable medium of claim 1 , further comprising instructions which when executed by the computer further causes the computer to:

receive a query comprising operations to alter the one or more protected columns to remove the specified one or more access restricting metadata; and

in response to the received query, automatically log in an audit file and notify a security violation.

5. The computer-readable medium of claim 1 , further comprising instructions which when executed by the computer further causes the computer to:

automatically traverse a data flow graph associated with the received query to determine whether the one or more protected columns are specified with the one or more access restricting metadata.

6. The computer-readable medium of claim 1 , further comprising instructions which when executed by the computer further causes the computer to:

receive a query on a database view corresponding to the columnar table, wherein the query comprising operations on one or more protected columns specified with one or more access restricting metadata; and

based on the determination, restrict execution of the query and display a constraint violation.

7. A computer-implemented method of privacy restrictions for columnar storage, the method comprising:

splitting a protected column into a random key column comprising random keys and an encrypted value column comprising encrypted values, wherein the encrypted value column of the protected column is specified with access restricting metadata;

storing the random keys in the random key column in a first columnar table;

storing the random keys in the random key column and the encrypted values in the encrypted value column in a second columnar table in consecutive memory locations;

determining whether the received query comprises operations on the encrypted value column specified with the access restricting metadata; and

based on the determination, restricting execution of the query and display a constraint violation.

8. The method of claim 7 , further comprising:

encrypting protected values in the protected column using random keys to generate encrypted values.

9. The method of claim 8 , further comprising:

decrypting the encrypted values using random keys to retrieve the protected values in the protected column.

10. The method of claim 7 , further comprising:

receiving a query comprising operations to alter the one or more protected columns to remove the specified one or more access restricting metadata; and

in response to the received query, automatically logging in an audit file and notifying a security violation.

11. The method of claim 7 , further comprising:

automatically traversing a data flow graph associated with the received query to detect whether the one or more protected columns are specified with the one or more access restricting metadata.

12. The method of claim 7 , further comprising:

receiving a query on a database view corresponding to the columnar table, wherein the query comprising operations on one or more protected columns specified with one or more access restricting metadata;

determine whether the received query comprises operations on the one or more protected columns specified with the one or more access restricting metadata; and

based on the determination, restricting execution of the query and display a constraint violation.

13. A computer system for privacy restrictions for columnar storage, comprising:

a computer memory to store program code; and

a processor to execute the program code to:

split a protected column into a random key column comprising random keys and an encrypted value column comprising encrypted values, wherein the encrypted value column of the protected column is specified with access restricting metadata;

store the random keys in the random key column in a first columnar table;

store the random keys in the random key column and the encrypted values in the encrypted value column in a second columnar table in consecutive memory locations;

determine whether the received query comprises operations on the encrypted value column specified with the access restricting metadata; and

based on the determination, restrict execution of the query and display a constraint violation.

14. The system of claim 13 , wherein the processor further executes the program code to:

encrypt protected values in the protected column using random keys to generate encrypted values.

15. The system of claim 14 , wherein the processor further executes the program code to:

decrypt the encrypted values using random keys to retrieve the protected values in the protected column.

16. The system of claim 13 , wherein the processor further executes the program code to:

automatically traverse a data flow graph associated with the received query to detect whether the one or more protected columns are specified with the one or more access restricting metadata.

17. The system of claim 13 , wherein the processor further executes the program code to:

receive a query on a database view corresponding to the columnar table, wherein the query comprising operations on one or more protected columns specified with one or more access restricting metadata;

determine whether the received query comprises operations on the one or more protected columns specified with the one or more access restricting metadata; and

based on the determination, restrict execution of the query and display a constraint violation.

18. The system of claim 13 , wherein the processor further executes the program code to:

receive a query comprising operations to alter the one or more protected columns to remove the specified one or more access restricting metadata; and

in response to the received query, automatically log in an audit file and notify a security violation.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2015
From: KLEIN, UDO; ODENHEIMER, JENS
To: SAP AG
Reel/Frame 034874/0238 →
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0223 →
Continuity (1)
Related Publication 20150379299A1 · Dec 31, 2015