IP Library › Granted Patent US 12,368,569
Granted Patent B2
US 12,368,569 · App. 18/301,343 · Granted Jul 22, 2025

Apparatus and method with homomorphic encryption

Inventors: Yongwoo Lee (Suwon-si, KR); Andrey Kim (Suwon-si, KR); Maksim Deriabin (Suwon-si, KR); Jieun Eom (Suwon-si, KR); Rakyong Choi (Suwon-si, KR)
Assignee: Samsung Electronics Co., Ltd.
H04L9/008H04L9/0618H04L9/16
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 12,368,569
App. No.
18/301,343
Granted
Jul 22, 2025
Kind
B2
Abstract

An apparatus including a receiver and a processor configured to generate a modulus switch ciphertext by performing modulus switching with respect to data received by the receiver, the modulus switching including mapping a component of an input ciphertext generated from the received data to an odd number, generate a blind rotated ciphertext by performing a blind rotation operation based on the modulus switched ciphertext, and generate encrypted data, as a homomorphic encryption operation result, by performing key switching based on the blind rotated ciphertext.

Claims (55)

1. An apparatus, comprising:

a receiver; and

a processor configured to:

generate a modulus switch ciphertext by performing modulus switching with respect to data received by the receiver, the modulus switching including mapping a component of an input ciphertext generated from the received data to an odd number;

generate a blind rotated ciphertext by performing a blind rotation operation based on the modulus switched ciphertext; and

generate encrypted data, as a homomorphic encryption operation result, by performing key switching based on the blind rotated ciphertext.

2. The apparatus of claim 1 , wherein the processor is further configured to generate the input ciphertext by generating a learning with errors (LWE) ciphertext based on the received data.

3. The apparatus of claim 1 , wherein the processor is further configured to:

obtain a first component and a second component of the input ciphertext based on the received data,

generate a first product of the first component and a value “2”;

generate a second product of the second component and the value “2”; and

generate the input ciphertext by adding or subtracting “1” to or from the first product and the second product.

4. The apparatus of claim 1 , wherein the processor is further configured to:

obtain a first component and a second component of the input ciphertext based on the received data,

determine whether the first component of the input ciphertext is even or odd, and

generate the input ciphertext by adding “1” to the first component in response to the first component being determined to be an even value.

5. The apparatus of claim 4 , wherein the processor is further configured to obtain the second component by performing sampling from an odd set.

6. The apparatus of claim 1 , wherein the processor is further configured to perform the modulus switching based on determining ordering of a polynomial of the input ciphertext and a modulus of the input ciphertext.

7. The apparatus of claim 6 , wherein the processor is further configured to:

convert the component based on the determined ordering of the polynomial and the modulus of the input ciphertext, and

perform the modulus switching by performing a round-to-odd operation on the converted component.

8. The apparatus of claim 1 , wherein the processor is further configured to:

generate a subset of odd numbers; and

perform the modulus switching by mapping the component to the subset.

9. The apparatus of claim 8 , wherein the processor is further configured to generate the subset based on determined powers of an arbitrary odd number or a multiplication result between the powers.

10. A processor implemented method, the method comprising:

generating a modulus switch ciphertext by performing modulus switching with respect to input data, the modulus switch including by mapping a component of an input ciphertext generated from input data to an odd number;

generating a blind rotated ciphertext by performing a blind rotation operation based on the modulus switched ciphertext to generate a blind rotated ciphertext; and

generating encrypted data, as a homomorphic encryption operation result, by performing key switching based on the blind rotated ciphertext.

11. The method of claim 10 , wherein the performing of the modulus switching comprises generating the input ciphertext by generating a learning with errors (LWE) ciphertext based on the input data.

12. The method of claim 10 , wherein the performing of the modulus switching comprises:

obtaining a first component and a second component of the input ciphertext based on the input data;

generating a first product of the first component and a value “2”;

generating second product of the second component and the value “2”; and

generating the input ciphertext by adding or subtracting “1” to or from the first product and the second product.

13. The method of claim 10 , wherein the performing of the modulus switching comprises:

obtaining a first component and a second component of the input ciphertext based on the input data;

determining whether the first component of the input ciphertext is even or odd; and

generating the input ciphertext by adding “1” to the first component in response to the first component being determined to be an even value.

14. The method of claim 13 , wherein the obtaining of the first component and the second component comprises obtaining the second component by performing sampling from an odd set.

15. The method of claim 10 , wherein the performing of the modulus switching comprises performing the modulus switching based on determined ordering of a polynomial of the input ciphertext and a modulus of the input ciphertext.

16. The method of claim 15 , wherein the performing of the modulus switching based on the order of the polynomial of the input ciphertext and the modulus of the input ciphertext comprises:

converting the component based on the determined ordering of the polynomial and the modulus of the input ciphertext; and

performing the modulus switching by performing a round-to-odd operation on the converted component.

17. The method of claim 10 , wherein the performing of the modulus switching comprises:

generating a subset of odd numbers; and

performing the modulus switching by mapping the component to the subset.

18. The method of claim 17 , wherein the generating of the subset comprises generating the subset based on determined powers of an arbitrary odd number or a multiplication result between the powers.

19. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, cause the processor to perform the method of claim 10 .

20. A device, comprising:

a processor configured to execute a plurality of instructions; and

a memory storing the plurality of instructions, wherein execution of the plurality of instructions by the process configures the processor to:

generate a modulus switched ciphertext by mapping a component of an input ciphertext generated from received data to an odd value;

generate a blind rotated ciphertext by performing a blind rotation operation based on the modulus switched ciphertext; and

performing key switching based on the blind rotated ciphertext.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2023
From: LEE, YONGWOO; KIM, ANDREY; DERIABIN, MAKSIM; EOM, JIEUN; CHOI, RAKYONG
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 063341/0398 →
Priority Claims (2)
KR 10-2022-0126544 · Oct 4, 2022 · national
KR 10-2022-0158554 · Nov 23, 2022 · national
Continuity (1)
Related Publication 20240121076A1 · Apr 11, 2024
References Cited (22)
US 10057057B2 · Gentry et al. · 2018 [cited by applicant]
US 20130170640A1 · Gentry · 2013 [cited by examiner]
US 20150180659A1 · Youn · 2015 [cited by examiner]
US 20150358153A1 · Gentry · 2015 [cited by examiner]
US 20160164676A1 · Gentry · 2016 [cited by examiner]
US 20180109376A1 · Gentry · 2018 [cited by examiner]
US 20210399872A1 · Chen · 2021 [cited by examiner]
US 20220376890A1 · Eom et al. · 2022 [cited by applicant]
US 20220385461A1 · Eom et al. · 2022 [cited by applicant]
US 20230171085A1 · Lee et al. · 2023 [cited by applicant]
US 20230246807A1 · Lee et al. · 2023 [cited by applicant]
US 20240064000A1 · Koskas · 2024 [cited by examiner]
KR 1020220120410A · 2022 [cited by applicant]
KR 1020220121221A · 2022 [cited by applicant]
Chillotti et al., Concrete: Concrete Operations on Ciphertexts Rapidly Extending by TfhE, Dec. 2020, Hal Open Science, pp. 1-7 (Year: 2020). [cited by examiner]
Li et al., Homomorphic Modular Reduction and Improved Bootstrapping for BGV Scheme, 2021, Springer Nature Switzerland, pp. 466-484 (Year: 2021). [cited by examiner]
Chillotti et al., Improved Programmable Bootstrapping with Larger Precision and Efficient Arithmetic Circuits for TFHE, 2021, International Association for Cryptographic Research, pp. 670-699 (Year: 2021). [cited by examiner]
Micciancio, Daniele, et al. “Bootstrapping in FHEW-like cryptosystems.” [cited by applicant]
Lee, Yongwoo, et al. “Efficient FHEW bootstrapping with small evaluation keys, and applications to threshold homomorphic encryption.” [cited by applicant]
Ducas, Léo, et al. “FHEW: bootstrapping homomorphic encryption in less than a second.” [cited by applicant]
Kim, Andrey, et al. “General bootstrapping approach for RLWE-based homomorphic encryption.” [cited by applicant]
Chillotti, Ilaria, et al. “TFHE: fast fully homomorphic encryption over the torus.” [cited by applicant]