IP Library Granted Patent US 9,281,941
Granted Patent B2
US 9,281,941 · App. 13/746,713 · Granted Mar 8, 2016

Homomorphic evaluation including key switching, modulus switching, and dynamic noise management

Inventors: Craig B. Gentry (New York, NY); Shai Halevi (Elmsford, NY); Nigel P. Smart (Bristol, GB)
Assignees: International Business Machines Corporation; University of Bristol
H04L9/08H04L9/008
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,281,941
App. No.
13/746,713
Granted
Mar 8, 2016
Kind
B2
Abstract

Homomorphic evaluations of functions are performed. The functions include operation(s). Variants of key switching and modulus switching are described and are performed prior to or after the operation(s). A key switching transformation converts a ciphertext with respect to a first secret key and a first modulus to a ciphertext with respect to a second secret key and a second modulus. A key switching transformation converts a first version of a ciphertext with respect to a first secret key and with some number r bits of precision to a second version of the selected ciphertext with respect to a second keys and with some other number r′ bits of precision. The ciphertexts may be operated on as polynomials represented using evaluation representation, which has benefits for multiplication and automorphism. Further, ciphertexts are associated with an estimate of noise, which is used to determine when to perform modulus switching on the ciphertexts.

Claims (14)

1. A method, comprising:

Performing, by a computing device, homomorphic evaluation of a function on one or more input ciphertexts, where the one or more input ciphertexts were encrypted using a public key of an encryption scheme that also comprises a plurality of secret keys and a plurality of moduli, where the moduli are integers, and where performing the homomorphic evaluation of the function comprises performing one or more operations on the input ciphertexts, where the function comprises one or multiple operations comprising one of more of addition, multiplication, and automorphism;

Performing a key-switching transformation on selected ones of the one or more input ciphertexts, where performing a key-switching transformation on a selected ciphertext comprises converting a first version of the selected ciphertext with respect to a first of the plurality of secret keys and a first modulus to a second version of the selected ciphertext with respect to a second of the plurality of secret keys and a second secret modulus, where the second modulus is an integer factor p times the first modulus, where p>1,

Where each of the key switching transformations is performed prior to or after the one or more operations are evaluated; and outputting one or more results of the one or more operations.

2. The method of claim 1 , further comprising, subsequent to the key switching transformation, switching, using the second version of the selected ciphertext, the second modulus to a third modulus, which can be equal to or different from the first modulus, to determine a third version of the selected ciphertext with respect to the second secret key and the third modulus.

3. The method of claim 1 , where the portion of the public key used for the performing the key switching transformation is a matrix W=W[ps′→s] modulo pq, where the matrix W is included in the public key, s′ is the first secret key, s is the second secret key, p is the integer factor, and q is a value of the first modulus.

4. The method of claim 3 , where performing a key switching transformation comprises setting c=W·c′ modulo pq, where c′ is the first version of the selected ciphertext and c is the second version of the selected ciphertext.

5. The method of claim 1 , where the integer factor p is larger than q, where q is the first modulus.

6. The method of claim 1 , where q is the first modulus, where performing the homomorphic evaluation further comprises, prior to performing the key switching transformation, decreasing a norm of the first version of the selected ciphertext, by representing every number in the selected ciphertext as a sum of a number d>1 of smaller digits, and were the integer factor p is larger than q 1/d .

7. A computer program product comprising a computer readable storage device having program code embodied therewith, the program code readable/executable by a computer to perform

a method, comprising:

Performing, by a computing device, homomorphic evaluation of a function on one or more input ciphertexts, where the one or more input ciphertexts were encrypted using a public key of an encryption scheme that also comprises a plurality of secret keys and a plurality of moduli, where the moduli are integers, and where performing the homomorphic evaluation of the function comprises performing one or more operations on the input ciphertexts, where the function comprises one or multiple operations comprising one of more of addition, multiplication, and automorphism;

Performing a key-switching transformation on selected ones of the one or more input ciphertexts, where performing a key-switching transformation on a selected ciphertext comprises converting a first version of the selected ciphertext with respect to a first of the plurality of secret keys and a first modulus to a second version of the selected ciphertext with respect to a second of the plurality of secret keys and a second secret modulus, where the second modulus is an integer factor p times the first modulus, where p>1,

Where each of the key switching transformations is performed prior to or after the one or more operations are evaluated; and outputting one or more results of the one or more operations.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 2, 2014
From: SMART, NIGEL P.
To: THE UNIVERSITY OF BRISTOL
Reel/Frame 033652/0040 →
CONFIRMATORY LICENSE Recorded Oct 22, 2013
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: AFRL/RIJ
Reel/Frame 031467/0279 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2013
From: GENTRY, CRAIG B.; HALEVI, SHAI
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 029669/0832 →
Continuity (2)
Provisional Application 61600265 · Feb 17, 2012
Related Publication 20130216044A1 · Aug 22, 2013