IP Library › Granted Patent US 12,519,613
Granted Patent B2
US 12,519,613 · App. 18/502,539 · Granted Jan 6, 2026

Apparatus for calculating matrix multiplication of homomorphic encryption and method thereof

Inventors: Seewoo Lee (Chungju-si, KR); Jung Woo Kim (Seoul, KR); Junbum Shin (Suwon-si, KR)
Assignee: CRYPTO LAB INC.
H04L9/008H04L9/0618
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,519,613
App. No.
18/502,539
Granted
Jan 6, 2026
Kind
B2
Abstract

An operation apparatus performing matrix multiplication of a homomorphic encryption is disclosed. The operation apparatus includes a memory configured to store at least one instruction and a plurality of homomorphic ciphertexts, and a processor configured to execute the at least one instruction. The processor is configured to generate first matrix data having a row of a predetermined size and a column of a predetermined size using the plurality of homomorphic ciphertexts, generate a plurality of third matrix data having a row which is the size of the predetermined column and the column of the predetermined size by arranging second matrix data having a row which is 1/n size of the predetermined column and the column of the predetermined size sequentially n-times, and perform a homomorphic multiplication operation between same rows and same columns using the first matrix data and the generated respective third matrix data.

Claims (57)

1 . An operation apparatus, comprising:

a memory configured to store at least one instruction and a plurality of homomorphic ciphertexts; and

a processor configured to perform a homomorphic matrix multiplication operation on the plurality of homomorphic ciphertexts by executing the at least one instruction,

wherein the processor is configured to

generate first matrix data having a row of a predetermined size and a column of a predetermined size using the plurality of homomorphic ciphertexts,

generate second matrix data having a row which is 1/n size of the predetermined column and the column of the predetermined size,

generate a plurality of third matrix data having a row which is the size of the predetermined column and the column of the predetermined size by arranging a plurality of rows of the second matrix data sequentially in a predetermined row order n-times,

generate a plurality of fourth matrix data performed with a homomorphic multiplication operation between an i th row of the first matrix data and an i th row of each of the plurality of third matrix data,

generate a plurality of fifth matrix data having data in which respective column values in a row are homomorphically added with a plurality of column values of the corresponding row in a row basis of each of the plurality of fourth matrix data, and

generate a matrix multiplication operation result of the first matrix and the second matrix by applying a predetermined mask to each of the plurality of fifth matrix data.

2 . The operation apparatus according to claim 1 , wherein

the processor is configured to

perform encoding by converting a matrix of a homomorphic ciphertext input according to a size of the homomorphic ciphertext and a predetermined size of a unit matrix to a single block or multiple blocks.

3 . The operation apparatus according to claim 2 , wherein

the processor is configured to

perform, based on a converted encoding block being formed as a single block, encoding by applying zero padding to a position which remains after data of the homomorphic ciphertext is filled in the unit matrix.

4 . The operation apparatus according to claim 2 , wherein

the processor is configured to

divide, based on a converted encoding block being formed as multiple blocks, an encoding block into submatrices in the unit matrix form for a number of rows and columns of the encoded block to be multiples of rows and columns of the unit matrix, respectively, and perform encoding of the divided respective submatrices in a row-major method.

5 . The operation apparatus according to claim 1 , wherein

the processor is configured to

perform at least one from among tiling and complexification to reduce complexity in calculation of a matrix multiplication operation.

6 . The operation apparatus according to claim 1 , wherein

the mask is configured to

sequentially convert a masking position so as to correspond to an arrangement position of the third matrix data arranged sequentially in a predetermined order.

7 . An operation method for performing a matrix multiplication of a homomorphic encryption, the method comprising:

receiving input of a plurality of homomorphic ciphertexts;

performing a homomorphic matrix multiplication operation on the plurality of homomorphic ciphertexts; and

outputting an operation result,

wherein the performing the homomorphic matrix multiplication operation comprises

generating first matrix data having a row of a predetermined size and a column of a predetermined size using the plurality of homomorphic ciphertexts;

generating second matrix data having a row which is 1/n size of the predetermined column and the column of the predetermined size;

generating a plurality of third matrix data having a row which is the size of the predetermined column and a column of the predetermined size by arranging a plurality of rows of the second matrix data sequentially in a predetermined row order n-times;

generating a plurality of fourth matrix data performed with a homomorphic multiplication operation between an i th row of the first matrix data and an i th row of each of the plurality of third matrix data;

generating a plurality of fifth matrix data having data in which respective column values in a row are homomorphically added with a plurality of column values of the corresponding row in a row basis of each of the plurality of fourth matrix data; and

generating a matrix multiplication operation result of the first matrix and the second matrix by applying a predetermined mask to each of the plurality of fifth matrix data.

8 . The operation method according to claim 7 , further comprising:

performing, after receiving input of the plurality of homomorphic ciphertexts, encoding by converting a matrix of a homomorphic ciphertext input according to a size of the homomorphic ciphertext and a predetermined size of a unit matrix to a single block or multiple blocks.

9 . The operation method according to claim 8 , further comprising performing, based on a converted encoding block being formed as a single block, encoding by applying zero padding to a position which remains after data of the homomorphic ciphertext is filled in the unit matrix.

10 . The operation method according to claim 8 , further comprising

dividing, based on a converted encoding block being formed as multiple blocks, an encoding block into submatrices in the unit matrix form for a number of rows and columns in the encoding block to be multiples of rows and columns of the unit matrix, respectively, and performing encoding of the divided respective submatrices in a row-major method.

11 . The operation method according to claim 7 , further comprising

performing, after performing the homomorphic matrix multiplication operation, at least one from among tiling and complexification to reduce a complexity in calculation of a matrix multiplication.

12 . The operation method according to claim 7 , wherein

the mask comprises

sequentially converting a masking position so as to correspond to an arrangement position of the third matrix data which is sequentially arranged in a predetermined order.

13 . A non-transitory computer-readable recording medium comprising a program for executing an operation method for performing matrix multiplication of a homomorphic encryption, the operation method comprising:

receiving input of a plurality of homomorphic ciphertexts;

performing a homomorphic matrix multiplication operation on the plurality of homomorphic ciphertexts; and

outputting an operation result,

wherein the performing the homomorphic matrix multiplication operation comprises

generating first matrix data having a row of a predetermined size and a column of a predetermined size using the plurality of homomorphic ciphertexts;

generating second matrix data having a row which is 1/n size of the predetermined column and the column of the predetermined size;

generating a plurality of third matrix data having a row which is the size of the predetermined column and a column of the predetermined size by arranging a plurality of rows of the second matrix data sequentially in a predetermined row order n-times;

generating a plurality of fourth matrix data performed with a homomorphic multiplication operation between an i th row of the first matrix data and an i th row of each of the plurality of third matrix data;

generating a plurality of fifth matrix data having data in which respective column values in a row are homomorphically added with a plurality of column values of the corresponding row in a row basis of each of the plurality of fourth matrix data; and

generating a matrix multiplication operation result of the first matrix and the second matrix by applying a predetermined mask to each of the plurality of fifth matrix data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 6, 2023
From: LEE, SEEWOO; KIM, JUNG WOO; SHIN, JUNBUM
To: CRYPTO LAB INC.
Reel/Frame 065469/0791 →
Priority Claims (2)
KR 10-2022-0147388 · Nov 7, 2022 · national
KR 10-2023-0150034 · Nov 2, 2023 · national
Continuity (1)
Related Publication 20240163076A1 · May 16, 2024
References Cited (12)
US 8913742B2 · Takashima · 2014 [cited by examiner]
US 8938623B2 · Takashima · 2015 [cited by examiner]
US 9197637B2 · Sy · 2015 [cited by examiner]
US 9973334B2 · Hibshoosh · 2018 [cited by examiner]
US 12045364B1 · Trepetin · 2024 [cited by examiner]
US 20170250796A1 · Samid · 2017 [cited by examiner]
US 20240137206A1 · Pan · 2024 [cited by examiner]
US 20240163076A1 · Lee · 2024 [cited by examiner]
Crockett, E., “A Low-Depth Homomorphic Circuit for Logistic Regression Model Training” Amazon Web Services. WAHC 2020. 33 pages. [cited by applicant]
Huang, Z. et al., “More Efficient Secure Matrix Multiplication for Unbalanced Recommender Systems” IEEE Transactions on Dependable and Secure Computing, vol. 20, No. 1. Publication Date: Dec. 29, 2021. pp. 551-562. 12 p… [cited by applicant]
Jiang, X. et al., “Secure Outsourced Matrix Computation and Application to Neural Networks” University of Texas, Health Science Center at Houston, USA. Sep. 4, 2019. 23 pages. [cited by applicant]
Jin, C. et al., Secure Transfer Learning for Machine Fault Diagnosis under Different Operating Conditions. Institute for Infocomm Research, A*STAR, Singapore. Jan. 2020. 20 pages. [cited by applicant]