Query information processing method for fully homomorphic encrypted database using plaintext index and computing device for performing the same
AssigneeSupergate Co., Ltd.
InventorSeung Min Han
Life of this patent
Estimating the term…
Abstract
According to the present disclosure, a query information processing method of a database performed on a computing device includes: pre-building a plaintext index corresponding to a fully homomorphic encrypted structured database; generating an encryption index by homomorphically encrypting the plaintext index; identifying query information requested from a client; indexing the encryption index in response to the query information; acquiring search result data through a homomorphic operation corresponding to a result value indexed by the encryption index; and providing the search result data to the client.
Claims13
A query information processing method of a database performed on a computing device, comprising:
- pre-building a plaintext index corresponding to a fully homomorphic encrypted structured database;
- determining a block size for partitioning records based on a comparison between a data capacity of a single ciphertext and a maximum size among sets of records, wherein, when the maximum size exceeds the data capacity, dimensions of a ciphertext matrix are determined based on the data capacity and a cumulative size derived from dividing each set of records by the data capacity, so as to minimize a total number of ciphertexts required for an encrypted index;
- partitioning the records into a plurality of row blocks having the determined block size;
- generating the encrypted index by homomorphically encrypting the plaintext index in a form of the ciphertext matrix in which each element corresponds to a respective row block and a respective key value;
- identifying query information requested from a client;
- searching the encrypted index in response to the query information;
- acquiring search result data through a homomorphic operation that selectively retrieves ciphertexts corresponding to row blocks associated with a key value matching the query information;
- and
- providing the search result data to the client.
A computing device, comprising:
- a processor;
- and
- a memory communicating with the processor,
- wherein the memory stores instructions that cause the processor to perform operations, and the operations include:
- an operation of pre-building a plaintext index corresponding to a fully homomorphic encrypted structured database;
- an operation of determining a block size for partitioning records based on a comparison between a data capacity of a single ciphertext and a maximum size among sets of records, wherein, when the maximum size exceeds the data capacity, dimensions of a ciphertext matrix are determined based on the data capacity and a cumulative size derived from dividing each set of records by the data capacity, so as to minimize a total number of ciphertexts required for an encrypted index;
- an operation of partitioning the records into a plurality of row blocks having the determined block size;
- an operation of generating the encrypted index by homomorphically encrypting the plaintext index in a form of the ciphertext matrix in which each element corresponds to a respective row block and a respective key value;
- an operation of identifying query information requested from a client;
- an operation of searching the encrypted index in response to the query information;
- an operation of acquiring search result data through a homomorphic operation that selectively retrieves ciphertexts corresponding to row blocks associated with a key value matching the query information;
- and
- an operation of providing the search result data to the client.
A non-transitory computer-readable recording medium in which a computer program for causing a computing device to execute a method, the method comprising:
- pre-building a plaintext index corresponding to a fully homomorphic encrypted structured database;
- determining a block size for partitioning records based on a comparison between a data capacity of a single ciphertext and a maximum size among sets of records, wherein, when the maximum size exceeds the data capacity, dimensions of a ciphertext matrix are determined based on the data capacity and a cumulative size derived from dividing each set of records by the data capacity, so as to minimize a total number of ciphertexts required for an encrypted index;
- partitioning the records into a plurality of row blocks having the determined block size;
- generating the encrypted index by homomorphically encrypting the plaintext index in a form of the ciphertext matrix in which each element corresponds to a respective row block and a respective key value;
- identifying query information requested from a client;
- searching the encrypted index in response to the query information;
- acquiring search result data through a homomorphic operation that selectively retrieves ciphertexts corresponding to row blocks associated with a key value matching the query information;
- and
- providing the search result data to the client.
Dependencies are inferred from the claim text.