IP Library Granted Patent US 10,693,626
Granted Patent B2
US 10,693,626 · App. 15/306,072 · Granted Jun 23, 2020

Method and system for generating/decrypting ciphertext, and method and system for searching ciphertexts in a database

Inventors: Shuqin Ren (Singapore, SG); Benjamin Hong Meng Tan (Singapore, SG); Khin Mi Mi Aung (Singapore, SG); Sivaraman Sundaram (Singapore, SG)
Assignee: AGENCY FOR SCIENCE, TECHNOLOGY AND RESEARCH
H04L9/008H04L9/0618H04L9/30H04L2209/08
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 10,693,626
App. No.
15/306,072
Granted
Jun 23, 2020
Kind
B2
Abstract

There is provided a method of generating a ciphertext. The method includes encrypting an input data to produce an encrypted data, and randomizing the encrypted data to produce the ciphertext. In particular, the randomizing process includes performing an exclusive-or (xor) operation on the encrypted data with a cipher pad, whereby the cipher pad is generated based on an xor-homomorphic function of a first key using a second key generated based on the encrypted data. There is also provided a corresponding system for generating a ciphertext, a corresponding method and system for decrypting a ciphertext, and a corresponding method and system for searching ciphertexts in a database, such as at an untrusted server.

Claims (21)

1. A computer-implemented method of generating a ciphertext, the method comprising:

encrypting, by a first computer processing system, an input data to produce an encrypted data; and

randomizing the encrypted data to produce the ciphertext prior to providing the ciphertext to a second computer processing system,

wherein said randomizing comprises performing, by the first computer processing system, an exclusive-or (xor) operation on the encrypted data with a cipher pad, and wherein the cipher pad is generated by the first computer processing system based on an xor-homomorphic function of a first key using a second key generated based on the encrypted data,

wherein said performing the xor operation on the encrypted data with the cipher pad comprises performing a first xor operation on a first portion of the encrypted data with the first key to produce a first portion of the ciphertext, and performing a second xor operation on a second portion of the encrypted data with the output of the xor-homomorphic function of the first key to produce a second portion of the ciphertext,

wherein the second key for the xor-homomorphic function is generated based on the first portion of the ciphertext.

2. The method according to claim 1 , wherein the cipher pad comprises the first key and an output of the xor-homomorphic function of the first key.

3. The method according to claim 1 , wherein the first key is a session key for the input data, the session key being a pseudorandom number.

4. The method according to claim 1 , wherein the xor-homomorphic function is a pseudorandom bit-permutation function or a circular shift function.

5. The method according to claim 1 , wherein the second key for the xor-homomorphic function is generated based on a hash function or a circular shift function of the first portion of the ciphertext.

6. A system for generating a ciphertext, the system comprising:

a memory to store one or more processor executable instructions; and

a processor, coupled with the memory, configure to execute the one or more instructions to:

encrypt an input data to produce an encrypted data, and

randomize the encrypted data to produce the ciphertext prior to providing the ciphertext to a second computer processing system,

wherein randomizing the encrypted data comprises the processor performing an exclusive-or (xor) operation on the encrypted data with a cipher pad, and wherein the cipher pad is generated by the system based on an xor-homomorphic function of a first key using a second key generated based on the encrypted data,

wherein performing the xor operation on the encrypted data with the cipher pad comprises the processor performing a first xor operation on a first portion of the encrypted data with the first key to produce a first portion of the ciphertext, and performing a second xor operation on a second portion of the encrypted data with the output of the xor-homornorphic function of the first key to produce a second portion of the ciphertext, and wherein the second key for the xor-homomorphic function is generated based on the first portion of the ciphertext.

7. The system according to claim 6 , wherein the cipher pad comprises the first key and an output of the first xor-homomorphic function of the first key.

8. The system according to claim 6 , wherein the first key is a session key for the input data, the session key being a pseudorandom number.

9. The system according to claim 6 , wherein the xor-homomorphic function is a pseudorandom bit-permutation function or a circular shift function.

10. The system according to claim 6 , wherein the second key for the xor-homomorphic function is generated based on a hash function or a circular shift function of the first portion of the ciphertext.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2017
From: REN, SHUQIN; TAN, BENJAMIN HONG MENG; AUNG, KHIN MI MI; SUNDARAM, SIVARAMAN
To: AGENCY FOR SCIENCE, TECHNOLOGY AND RESEARCH
Reel/Frame 041186/0655 →
Priority Claims (1)
SG 10201401730T · Apr 23, 2014 · national
Continuity (1)
Related Publication 20170048058A1 · Feb 16, 2017
Cited By (2)
US 12,362,906 US 12,547,749