×

Structure preserving database encryption method and system

  • US 8,639,947 B2
  • Filed: 05/30/2005
  • Issued: 01/28/2014
  • Est. Priority Date: 06/01/2004
  • Status: Active Grant
First Claim
Patent Images

1. A Structure Preserving Database Encryption system for encrypting a content stored in cells of a database, comprising:

  • A) a computer provided with a client having access right definition to data stored in said database, wherein said client is used for communicating with said database by generating a communication session, and for allowing a person operating said client to retrieve data from said database;

    B) a computerized authentication server for identifying said client and for transferring one or more encryption keys to said client; and

    C) a computerized database server for encrypting data stored in each cell of a table within said database and for communicating with said client via said generated communication session, thereby providing said client according its access right definition a decrypt data;

    wherein a value stored in a corresponding cell is determined, and each of said cells within said database has a unique cell coordinates represented by table, row and column identifiers, and wherein a concatenation function is activated on said cell table, row and column identifiers and as a result, a number based on said identifiers is obtained, and wherein a XOR operation between said number and said value stored in said cell is operated or a concatenation of said number with said value stored in said cell is performed;

    wherein the decrypt data is obtained by a process, comprising;

    a) identifying the client by means of an authentication server communicating over a conventional identification protocol;

    b) receiving one or more encryption keys from said authentication server by said client, wherein said one or more encryption keys being relevant for performing at least one query from said client, according to the access right definition of said client;

    c) generating a session by means of said client with a database server;

    d) transferring from said client to said database server the corresponding one or more encryption keys received from said authentication server;

    e) generating at least one query by said client;

    f) searching by means of said database server an encrypted database for a corresponding data requested in said at least one query;

    g) after finding said corresponding data, decrypting said corresponding data by means of said one or more corresponding encryption keys; and

    h) transferring the results of said at least one query from said database server to said client.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×