Ciphertext nullification operations
AssigneeInternational Business Machines Corporation
InventorsNir Drucker, Hayim Shaul, Gilad Ezov
Life of this patent
Estimating the term…
Abstract
Mechanisms are provided for performing ciphertext nullification operations. The mechanisms receive a ciphertext in nullification logic of a cryptographic circuit, where the cryptographic circuit comprises one or more cryptographic functions to be performed on the ciphertext. The mechanisms determine, by the nullification logic, whether the received ciphertext is to be nullified. In response to the determination indicating that the ciphertext is to be nullified, the mechanisms generate, by the nullification logic, a nullified ciphertext and output the nullified ciphertext. In response to the determination indicating that the ciphertext is not to be nullified, the nullification logic outputs the received ciphertext.
Claims14
A computer-implemented method, in a data processing system, comprising:
- receiving a ciphertext in nullification logic of a cryptographic circuit, wherein the cryptographic circuit comprises one or more cryptographic functions to be performed on the ciphertext;
- determining, by the nullification logic, whether the received ciphertext is to be nullified;
- in response to the determination indicating that the ciphertext is to be nullified, generating, by the nullification logic, a nullified ciphertext and outputting the nullified ciphertext;
- and
- in response to the determination indicating that the ciphertext is not to be nullified, outputting, by the nullification logic, the received ciphertext,
- wherein determining that the ciphertext is unauthenticated and should be nullified comprises receiving, by the nullification logic, a ciphertext selection input, wherein the ciphertext selection input specifies whether or not the ciphertext is to be nullified, and wherein the nullification logic outputs either the ciphertext or the nullified ciphertext based on the ciphertext selection input,
- wherein the ciphertext selection input is an encrypted value of a cleartext selection value, and
- wherein in response to the cleartext selection value being in the range of [−e, e], where e is the error of an approximated homomorphic encryption used to generate the ciphertext, the ciphertext selection input indicates the ciphertext should be output by the nullification logic.
A computer program product comprising a non-transitory computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed on a computing device, causes the computing device to:
- receive a ciphertext in nullification logic of a cryptographic circuit, wherein the cryptographic circuit comprises one or more cryptographic functions to be performed on the ciphertext;
- determine, by the nullification logic, whether the received ciphertext is to be nullified;
- in response to the determination indicating that the ciphertext is to be nullified, generate, by the nullification logic, a nullified ciphertext and output the nullified ciphertext;
- and
- in response to the determination indicating that the ciphertext is not to be nullified, output, by the nullification logic, the received ciphertext,
- wherein determining that the ciphertext is unauthenticated and should be nullified comprises receiving, by the nullification logic, a ciphertext selection input, wherein the ciphertext selection input specifies whether or not the ciphertext is to be nullified, and wherein the nullification logic outputs either the ciphertext or the nullified ciphertext based on the ciphertext selection input,
- wherein the ciphertext selection input is an encrypted value of a cleartext selection value, and
- wherein in response to the cleartext selection value being in the range of [−e, e], where e is the error of an approximated homomorphic encryption used to generate the ciphertext, the ciphertext selection input indicates the ciphertext should be output by the nullification logic.
An apparatus comprising:
- at least one processor;
- and
- at least one memory coupled to the at least one processor, wherein the at least one memory comprises instructions which, when executed by the at least one processor, cause the at least one processor to:
- receive a ciphertext in nullification logic of a cryptographic circuit, wherein the cryptographic circuit comprises one or more cryptographic functions to be performed on the ciphertext;
- determine, by the nullification logic, whether the received ciphertext is to be nullified;
- in response to the determination indicating that the ciphertext is to be nullified, generate, by the nullification logic, a nullified ciphertext and output the nullified ciphertext;
- and
- in response to the determination indicating that the ciphertext is not to be nullified, output, by the nullification logic, the received ciphertext,
- wherein the nullification logic is a logic block inserted into a circuit for performing a homomorphic encryption (HE) operation, wherein the circuit comprises one or more HE computations, and wherein the instructions, when executed by the at least one processor, further cause the at least one processor to:
- receive a specification of the HE operation to be performed on one or more workloads comprising one or more input ciphertexts;
- generate the circuit, wherein the circuit comprises authentication tag checking logic at one or more inputs of the circuit, and the nullification logic inserted into the circuit at a location determined by a cost function and one or more tradeoff parameters;
- process the one or more workloads by the circuit to generate one or more output ciphertexts that are results of the HE operation executed on the one or more input ciphertexts;
- and
- return the one or more output ciphertexts to a source computing system of the one or more workloads, wherein the nullification logic masks an input ciphertext of the one or more input ciphertexts which, based on authentication information associated with the input ciphertext, cannot be authenticated.
Dependencies are inferred from the claim text.