JP7074363B2 - 準同型暗号下での安全な計算を加速するための準同型処理ユニット(hpu) - Google Patents
準同型暗号下での安全な計算を加速するための準同型処理ユニット(hpu) Download PDFInfo
- Publication number
- JP7074363B2 JP7074363B2 JP2019555859A JP2019555859A JP7074363B2 JP 7074363 B2 JP7074363 B2 JP 7074363B2 JP 2019555859 A JP2019555859 A JP 2019555859A JP 2019555859 A JP2019555859 A JP 2019555859A JP 7074363 B2 JP7074363 B2 JP 7074363B2
- Authority
- JP
- Japan
- Prior art keywords
- operations
- homomorphic
- ntt
- circuit configuration
- ctxt
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/3001—Arithmetic instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30029—Logical and Boolean instructions, e.g. XOR, NOT
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/48—Indexing scheme relating to groups G06F7/48 - G06F7/575
- G06F2207/4802—Special implementations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Complex Calculations (AREA)
- Advance Control (AREA)
- Storage Device Security (AREA)
Description
本出願は、2017年4月11日に出願された、A HOMOMORPHIC PROCESSING UNIT (HPU) FOR ACCELERATING SECURE COMPUTATIONS UNDER FULLY HOMOMORPHIC ENCRYPTIONという名称の米国仮特許出願第62/484,304号に対する優先権を主張する通常の出願であり、同仮特許出願全体を参照して本出願に援用する。
開示される。1つの実施形態では、暗号文(Ctxt)記号を数論変換(NTT)ドメインに変換するための集積回路(IC)準同型プロセッサチップが開示される。IC準同型プロセッサチップは、少なくとも1つのプロセッサスライスを含む。各プロセッサスライスは、ローカル制御回路構成、NTTバタフライユニット、およびオンチップメモリを含む。NTTバタフライユニットは、完全同形暗号化を含んでいる演算用のマルチプルモードで動作するためのローカル制御回路構成に応答する。各モードは、NTTバタフライユニットの異なる構成と関連付けられている。再構成可能なNTTバタフライユニットを利用することによって、異なる関数を達成する別個の回路は、回避されることができ、より効率的なサイクルタイムに寄与する。
)は、有効低信号を示すのに使用される。「結合される」という用語は、直接的な接続、ならびに1つまたは複数の介在回路または構造物を介した接続を表現するために本明細書では使用される。集積回路デバイス「プログラミング」は、例えば、そして限定するわけではなく、ホスト命令に応答して、制御値をデバイス内のレジスタまたは他の記憶回路の中にロードすること、したがって、デバイスの動作態様を制御することと、デバイス構成を確立すること、または1回限りのプログラミング動作によってデバイスの動作態様を制御すること(例えば、デバイス生産の間、構成回路内のヒューズをブローイングすること)と、および/または特定のデバイス構成またはデバイスの動作態様を確立するために、1つまたは複数の選択されたピンまたはデバイスの他の接続構造を、基準電圧ラインに結合すること(ストラッピングとも呼ばれる)とを含む場合がある。「例示的な」という用語は、優先傾向または要件ではなく、一例を表すのに使用される。
1.
少なくとも1つのプロセッサスライスを備え、スライスが、
ローカル制御回路構成と、
準同型暗号を使用して暗号化されたデータ上で演算を行うためのマルチプルモードで動作するためのローカル制御回路構成に応答し、各モードは、NTTバタフライユニットの異なる構成と関連付けられている、数論変換(NTT)バタフライユニットと、
制御回路構成およびNTTバタフライユニットに結合されたオンチップメモリと
を含む、
集積回路(IC)準同型プロセッサチップ。
2.
NTTバタフライユニットが、完全準同型暗号化を伴う演算用のマルチプルモードで動作するためのローカル制御回路構成に応答する、条項1に記載のIC準同型プロセッサチップ。
3.
NTTバタフライユニットが、部分的準同型暗号化を伴う演算用のマルチプルモードで動作するためのローカル制御回路構成に応答する、条項1に記載のIC準同型プロセッサチップ。
4.
NTTバタフライユニット用の第1の構成が、第1の暗号文(Ctxt)関数を実施するために第1の回路構成を使用し、
NTTバタフライユニット用の第2の構成が、第2のCtxt関数を実施するために第1の回路構成の少なくとも一部を再利用する、
条項1に記載のIC準同型プロセッサチップ。
5.
第1の回路構成が、暗号文(Ctxt)加算関数を実施し、
第2のCtxt関数が、Ctxt乗算関数を備える、
条項4に記載のIC準同型プロセッサチップ。
6.
第1の回路構成が、モジュラ加算器を含む、
条項5に記載のIC準同型プロセッサチップ。
7.
モジュラ加算器が、組合せモジュラ加算器を備える、
条項6に記載のIC準同型プロセッサチップ。
8.
モジュラ加算器が、順次モジュラ加算器を備える、
条項6に記載のIC準同型プロセッサチップ。
9.
第2の構成が、モジュラ乗算器を備える第2の回路構成を含む、
条項5に記載のIC準同型プロセッサチップ。
10.
モジュラ乗算器が、並列整数乗算器を備える、条項9に記載のIC準同型プロセッサチップ。
11.
モジュラ乗算器が、
モジュラ約分ユニット
をさらに備える、条項10に記載のIC準同型プロセッサチップ。
12.
IC準同型プロセッサが、マルチプルプロセッサスライスを含み、IC準同型プロセッサが、
マルチプルプロセッサスライスを外部プロセッサのインターフェースを介して外部メモリと接続するためのマスタ制御回路構成
をさらに備える、条項1に記載のIC準同型プロセッサチップ。
13.
ローカル制御回路構成が、
マスタ制御回路構成から、1組のCtxt係数値をメモリから取り出し、
数値の組を処理パイプラインへロードし、
少なくとも1つのCtxt演算を行い、
変換値を転送先メモリ位置に記憶させる
ようにとの命令を受け取る、条項12に記載のIC準同型プロセッサチップ。
14.
マスタ制御回路構成からの命令が、
NTTドメインの中に対応する変換値を生成するために、ロードされた数値の組上でNTT変換を行う
ようにとの命令をさらに含む、条項13に記載のIC準同型プロセッサチップ。
15.
マスタ制御回路構成からの、少なくとも1つのCtxt演算を行うようにとの命令が、
加算演算、減算演算、乗算演算、XOR演算、XNOR演算、AND演算、等価演算、より小さい演算、より大きい演算、実体演算、コピー演算、および否定演算から成るグループから少なくとも1つのCtxt演算を行う
ようにとの命令を含む、条項14に記載のIC準同型プロセッサチップ。
16.
NTTバタフライユニットが、単一ステージユニットとして認識される、
条項1に記載のIC準同型プロセッサチップ。
17.
集積回路(IC)準同型プロセッサチップと、
IC準同型プロセッサチップ外部の主メモリと、
主メモリとIC準同型プロセッサチップとの間でデータを転送するデータパスと、
主メモリとIC準同型プロセッサチップとの間の転送を制御する制御パスとを備え、
IC準同型プロセッサチップが、
制御パスを介した主メモリとIC準同型プロセッサチップとの間のデータの転送を制御するマスタ制御回路構成;および
パイプライン深さに対応するマルチプルプロセッサスライスであって、マルチプルプロセッサスライスのそれぞれが、
ローカル制御回路構成と、
準同型暗号化を使用しながら、暗号化されたデータ上で演算を行うためのマルチプルモードで動作するためのローカル制御回路構成に応答する数論変換(NTT)バタフライユニットであって、各モードが、NTTバタフライユニットの異なる構成と関連付けられている数論変換(NTT)バタフライユニットと、
ローカル制御回路構成およびNTTバタフライユニットに結合されているオンチップメモリと
を含むマルチプルプロセッサスライスを備える、
準同型暗号化システム。
18.
準同型暗号化が、完全準同型暗号化を備える、条項17に記載の準同型暗号化システム。
19.
準同型暗号化が、部分的準同型暗号化を備える、条項17に記載の準同型暗号化システム。
20.
マスタ制御回路構成が、
外部メモリから1組のCtxt係数値を取り出し、
数値の組を処理パイプラインへロードし、
変換値を生成するために少なくとも1つのCtxt演算を行い、
変換値を転送先メモリ位置に記憶させる
演算を、マルチプルプロセッサスライスごとにスケジュールする、条項17に記載の準同型暗号化システム。
21.
マスタ制御回路構成からのスケジュールされた演算が、マルチプルプロセッサスライスごとに、
NTTドメインの中に対応する変換値を生成するために、ロードされた数値の組上でNTT変換を行う
スケジュールされた演算をさらに備える、条項20に記載の準同型暗号化システム。
22.
マスタ制御回路構成からのスケジュールされた演算が、マルチプルプロセッサスライスごとに、
加算演算、減算演算、乗算演算、XOR演算、XNOR演算、AND演算、等価演算、より小さい演算、より大きい演算、実体演算、コピー演算、および否定演算から成るグループから少なくとも1つのCtxt演算を行う
スケジュールされた演算をさらに備える、条項21に記載の準同型暗号化システム。
23.
NTTバタフライユニットのそれぞれが、単一ステージバタフライを備え、
所与のNTT変換演算が、NTTバタフライユニットによる評価のログ(n)-1ステージを伴い、「n」が、係数値と関連付けられた多項式の次数を表す、
条項20に記載の準同型暗号化システム。
24.
第1の加算器/減算器、
第1の乗算器、および
第1の加算器/減算器および第1の乗算器に結合されており、第1の加算器/減算器および第1の乗算器を選択的に迂回するそれぞれのバイパスパスを含む第1の選択回路構成
を含んでいる高入力語パスと、
第2の加算器/減算器、
第2の乗算器、および
第2の加算器/減算器および第2の乗算器に結合されており、第2の加算器/減算器および第2の乗算器を選択的に迂回するそれぞれのバイパスパスを含む第2の選択回路構成
を含んでいる低入力語パスと
を備え、
高入力語パスおよび低入力語パスが、交差結合されており、第1および第2の選択回路構成が、異なるモード制御信号に応答して、低入力語パスおよび高入力語パスを異なる論理処理ユニットに再構成する、数論変換(NTT)バタフライ回路。
25.
NTTバタフライ回路用の第1の構成が、暗号文(Ctxt)加算関数を実施するために、第1の回路構成を使用し、
NTTバタフライ回路用の第2の構成が、Ctxt乗算関数を実施するために、第1の回路構成の少なくとも一部を再利用する、
条項24に記載のNTTバタフライ回路。
26.
第1および第2の加算器/減算器のそれぞれが、組合せモジュラ加算器を備える、条項24に記載のNTTバタフライ回路。
27.
第1および第2の乗算器のそれぞれが、並列整数乗算器を備える、条項24に記載のNTTバタフライ回路。
28.
第1および第2の乗算器のそれぞれが、
モジュラ約分ユニット
をさらに備える、条項24に記載のNTTバタフライ回路。
29.
第1および第2の加算器/減算器、および乗算器のそれぞれが、関連付けられたクリティカルパスを含んでおり、
関連付けられたクリティカルパスのそれぞれが、レジスタ回路構成に囲まれている、条項24に記載のNTTバタフライ回路。
30.
NTTバタフライ回路が、単一ステージバタフライとして認識され、
所与のNTT変換演算が、NTTバタフライ回路による評価のログ(n)-1ステージを伴い、「n」が、係数値と関連付けられた多項式の次数を表す、
条項24に記載のNTTバタフライ回路。
31.
準同型プロセッサ集積回路(IC)チップ内での演算の方法であって、
暗号文(Ctxt)記号を数論変換(NTT)ドメインに変換することを含み、変換することは、所与のプロセッサスライスに対して、
ローカル制御回路構成を用いてモード制御信号を生成することであって、モード制御信号は、準同型暗号化を伴う演算のマルチプルモードの1つに対応する、モード制御信号を生成することと、
モード制御信号に応答してNTTバタフライユニットを構成することと
を含む、
準同型プロセッサ集積回路(IC)チップ内での演算の方法。
32.
準同型暗号化が、完全準同型暗号化を備える、条項31に記載の準同型プロセッサICチップ内での演算の方法。
33.
準同型暗号化が、部分的準同型暗号化を備える、条項31に記載の準同型プロセッサICチップ内での演算の方法。
34.
モード制御信号が、演算の第1のモードに対応する第1のモード制御信号を備え、NTTバタフライユニットが、
Ctxt加算関数を実施するためにNTTバタフライユニットを構成することによって第1のモード制御信号に応答する、条項31に記載の方法。
35.
モード制御信号が、演算の第2のモードに対応する第2のモード制御信号を備え、NTTバタフライユニットが、
Ctxt乗算関数を実施するためにNTTバタフライユニットを構成することと、
乗算関数を実施するために加算関数で利用されたNTTバタフライユニットの一部を再利用することと
によって第2のモード制御信号に応答する、条項34に記載の方法。
36.
変換することが、
マルチプルプロセッサスライスを並行して動作させることを含み、各プロセッサスライスが、ローカル制御回路構成のコピーおよびNTTバタフライユニットのコピーを含む、条項31に記載の方法。
37.
マルチプルプロセッサスライスによって実施されたマルチプル演算をパイプラインで送ること
をさらに含む、条項36に記載の方法。
38.
マルチプルプロセッサスライスを、外部プロセッサインターフェースを介して外部メモリと接続することをさらに含み、インターフェース接続が、マスタ制御回路構成によって制御される、
条項37に記載の方法。
39.
マスタ制御回路構成が、マルチプルスライスのローカル制御回路構成に対する命令を生成し、ローカル制御回路構成が、
メモリから1組のCtxt係数数値を取り出すことと、
数値の組を処理パイプラインへロードすることと、
変換値を生成するために少なくとも1つのCtxt演算を行うことと、
変換値を外部メモリの中の転送先位置に記憶することと
を含むステップを実施するようにという命令に応答する、条項38に記載の方法。
40.
NTTドメインの中に対応する変換値を生成するために、ロードされた数値の組上でNTT変換を行うステップをさらに含む、条項39に記載の方法。
41.
少なくとも1つのCtxt演算が、加算演算、減算演算、乗算演算、XOR演算、XNOR演算、AND演算、等価演算、より小さい演算、より大きい演算、実体演算、コピー演算、および否定演算から成るグループから選択される、条項40に記載の方法。
42.
準同型暗号化システム内での演算の方法であって、
設定可能な数論変換(NTT)バタフライ論理を含んでいる準同型プロセッサ集積回路(IC)チップを提供することと、
準同型プロセッサICチップをデータパスおよび制御パスを介して外部メモリとインターフェース接続することと、
暗号文(Ctxt)記号をNTTドメインに変換することであって、変換することは、
所与のプロセッサスライスに対して、ローカル制御回路構成を用いてモード制御信号を生成することであって、モード制御信号は、準同型暗号化を伴う演算のマルチプルモードの1つに対応する、モード制御信号を生成することと、
モード制御信号に応答してNTTバタフライユニットを構成することと
を含む暗号文(Ctxt)記号をNTTドメインに変換することと
を含む、準同型暗号化システム内での演算の方法。
43.
準同型暗号化が、完全準同型暗号化を備える、条項42に記載の準同型暗号化システム内での演算の方法。
44.
準同型暗号化が、部分的準同型暗号化を備える、条項42に記載の準同型暗号化システム内での演算の方法。
44.
モード制御信号が、演算の第1のモードに対応する第1のモード制御信号を備え、NTTバタフライユニットが、
Ctxt加算関数を実施するためにNTTバタフライユニットを構成すること
によって第1のモード制御信号に応答する、条項42に記載の方法。
45.
モード制御信号が、演算の第2のモードに対応する第2のモード制御信号を備え、NTTバタフライユニットが、Ctxt乗算関数を実施するためにNTTバタフライユニットを構成することと、
乗算関数を実施するために加算関数で利用されるNTTバタフライユニットの一部を再利用することと
によって第2のモード制御信号に応答する、条項44に記載の方法。
46.
変換することが、
マルチプルプロセッサスライスを並行して動作させることを含み、各プロセッサスライスが、ローカル制御回路構成のコピーおよびNTTバタフライユニットのコピーを含む、条項42に記載の方法。
47.
マルチプルプロセッサスライスによって実施されたマルチプル演算をパイプラインで送ること
をさらに含む、条項46に記載の方法。
48.
マルチプルプロセッサスライスを、外部プロセッサインターフェースを介して外部メモリと接続することをさらに含み、インターフェース接続が、マスタ制御回路構成によって制御される、条項47に記載の方法。
49.
マスタ制御回路構成が、マルチプルスライスのローカル制御回路構成に対する命令を生成し、ローカル制御回路構成が、
メモリから1組のCtxt係数数値を取り出すことと、
数値の組を処理パイプラインへロードすることと、
変換値を生成するために少なくとも1つのCtxt演算を行うことと、
変換値を外部メモリの中の転送先位置に記憶することと
を含むステップを実施するようにという命令に応答する、条項48に記載の方法。
50.
NTTドメインの中に対応する変換値を生成するために、ロードされた数値の組上でNTT変換を行うステップをさらに含む、条項49に記載の方法。
51.
少なくとも1つのCtxt演算が、加算演算、減算演算、乗算演算、XOR演算、XNOR演算、AND演算、等価演算、より小さい演算、より大きい演算、実体演算、コピー演算、および否定演算から成るグループから選択される、条項50に記載の方法。
52.
数論変換(NTT)バタフライ回路内での演算の方法であって、回路が、高入力語パスおよび低入力語パスを含み、高入力語パスが、第1の加算器/減算器、および第1の乗算器を含み、低入力語パスが、第2の加算器/減算器、および第2の乗算器を含み、方法が、
第2の加算器/減算器および第2の乗算器を選択的に迂回することと、
異なるモード制御信号に応答して、低入力語パスおよび高入力語パスを異なる論理処理ユニットに再構成することと
を含む、数論変換(NTT)バタフライ回路内での演算の方法。
53.
再構成することが、
第1のモード制御信号を受信したことに応答して、暗号文(Ctxt)加算関数を実施するためにNTTバタフライ回路を構成することと、
第2のモード制御信号を受信したことに応答して、Ctxt乗算関数を実施するためにNTTバタフライ回路を構成することと
を含む、条項52に記載の方法。
54.
第1および第2の加算器/減算器ごとに組み合せモジュラ加算器を利用すること
をさらに含む、条項52に記載の方法。
55.
第1および第2の乗算器ごとに並列整数乗算器を利用すること
をさらに含む、条項52に記載の方法。
56.
第1および第2の乗算器のそれぞれが、約分ユニットを含み、方法が、
それぞれの約分ユニットを動作させること
をさらに含む、条項52に記載の方法。
57.
NTTバタフライ回路が、単一ステージバタフライとして認識され、変換することが、
評価のログ(n)-1ステージを通してNTTバタフライ回路を動作させることを含み、「n」が、係数値と関連付けられた多項式の次数を表す、
条項52に記載のNTTバタフライ回路。
58.
暗号文(Ctxt)記号を数論変換(NTT)ドメインに変換するための準同型プロセッサ集積回路(IC)チップであって、IC準同型プロセッサチップは、
少なくとも1つのプロセッサスライスを備え、スライスは、
ローカル制御回路構成、
NTTバタフライユニット、および
制御回路構成およびNTTバタフライユニットに結合されたオンチップメモリを含み、オンチップメモリは、準同型処理関数用の別々にアクセス可能な記憶ユニットに区分化されており、オンチップメモリは、
マルチプル入出力(I/O)記憶ユニット、
ビット分解多項式記憶ユニット、および
回転因子メモリユニット
を含む、
暗号文(Ctxt)記号を数論変換(NTT)ドメインに変換するための準同型プロセッサ集積回路(IC)チップ。
59.
I/O記憶ユニットの第1のユニットが、暗号文(Ctxts)を行単位フォーマットで記憶し、
I/O記憶ユニットの第2のユニットが、Ctxtsを列単位フォーマットで記憶する、
条項58に記載の準同型プロセッサICチップ。
60.
I/O記憶ユニットの第3のユニットが、第1の記憶ユニットからの第1のCtxtが第2の記憶ユニットからの第2のCtxtに乗算されることを伴う乗算演算の結果生じる出力Ctxtsを記憶する、
条項59に記載の準同型プロセッサICチップ。
61.
第2のメモリユニットに結合されたメモリカウンタ
をさらに備える、条項60に記載の準同型プロセッサICチップ。
62.
I/O記憶ユニットの第1のユニットの中の所与の行のCtxtの単列変換が、I/O記憶ユニットの第3のユニットの中の対応する結果的に生じた行になる、
条項60に記載の準同型プロセッサICチップ。
63.
マルチプルI/O記憶ユニットの1つが、外部メモリに結合されたピンポンメモリとして構成される、
条項58に記載の準同型プロセッサICチップ。
64.
ピンポンメモリが、
第1のメモリ演算を実施する第1のサブアレイと、
第1のメモリ演算と同時並行の第2の演算を実施する第2のサブアレイと
を含む、条項63に記載の準同型プロセッサICチップ。
65.
オンチップメモリが、DRAMを備える、条項63に記載の準同型プロセッサICチップ。
66.
準同型プロセッサ集積回路(IC)チップ内での演算の方法であって、
オンチップメモリを、準同型処理関数用の別々にアクセス可能な記憶ユニットに区分化することであって、オンチップメモリが、マルチプル入出力(I/O)記憶ユニット、ビット分解多項式記憶ユニット、および回転因子メモリユニットを含む、オンチップメモリを区分化することと、
少なくとも1つの暗号文(Ctxt)演算を、区分化されたオンチップメモリに結合された、構成可能な数論変換(NTT)バタフライユニットを用いてロードされた数値の組上で行うことと
を含む、方法。
67.
NTTドメインの中に対応する変換値を生成するために、ロードされた数値の組を変換すること
をさらに含む、条項66に記載の方法。
68.
少なくとも1つのCtxt演算が、加算演算、減算演算、乗算演算、XOR演算、XNOR演算、AND演算、等価演算、より小さい演算、より大きい演算、実体演算、コピー演算、および否定演算から成るグループから選択される、条項67に記載の方法。
69.
変換することが、
第1の暗号文(Ctxt)をI/O記憶ユニットの第1のユニットから行単位フォーマットで読み込むことと、
第2のCtxtをI/O記憶ユニットの第2のユニットから列単位フォーマットで読み込むことと
をさらに含む、条項67に記載の方法。
70.
変換することが、
結果的に生じるCtxtを生成するために、第1のCtxtに第2のCtxtを乗算することと、
結果的に生じたCtxtをI/O記憶ユニットの第3のユニットに書き込むことと
をさらに含む、条項69に記載の方法。
71.
マルチプルI/O記憶ユニットの1つが、ピンポンメモリユニットとして構成されたそれぞれの第1および第2のサブアレイを含み、方法が、
第1の演算を実施するために第1のサブアレイを動作させることと、
第1の演算と同時並行の第2の演算を実施するために、第2のサブアレイを動作させることと
をさらに含む、条項66に記載の方法。
72.
準同型プロセッサ集積回路(IC)チップ内での演算の方法であって、
第1の暗号文(Ctxt)を第1のオンチップメモリユニットから取り出すことであって、第1のCtxtは、行フォーマット読出演算を利用して取り出される、第1の暗号文を取り出すことと、
第1のCtxtを数論変換(NTT)ドメインに変換することと、
第2の暗号文(Ctxt)を第2のオンチップメモリユニットから取り出すことであって、第2のCtxtは、列フォーマット読出演算を利用して取り出される、第2の暗号文を取り出すことと、
第2のCtxtをNTTドメインに変換することと、
結果として生じるCtxtを生成するために、変換された第1のCtxtに、変換された第2のCtxtを乗算することと、
結果として生じたCtxtを第3のメモリユニットの中に記憶させることと
を含む、準同型プロセッサ集積回路(IC)チップ内での演算の方法。
Claims (23)
- 集積回路(IC)準同型プロセッサチップであって、前記プロセッサチップが、
少なくとも1つのプロセッサスライスであって、前記プロセッサスライスが、
ローカル制御回路構成と、
準同型暗号を使用して暗号化されたデータ上で演算を行うためのマルチプルモードで動作するために前記ローカル制御回路構成に応答する数論変換(NTT)バタフライユニットであって、各モードは、前記NTTバタフライユニットの異なる構成と関連付けられている、NTTバタフライユニットと、
前記ローカル制御回路構成および前記NTTバタフライユニットに結合されたオンチップメモリと、
を含み、
所与のNTT変換演算が、前記NTTバタフライユニットによる評価のlog 2 (n)-1ステージが続く始めのNTTステップを伴い、式中、「n」が、1組の暗号文(C txt )係数値と関連付けられた多項式の次数を表す、
プロセッサスライス
を備える、IC準同型プロセッサチップ。 - 前記NTTバタフライユニットが、完全準同型暗号化を伴う演算用のマルチプルモードで動作するために前記ローカル制御回路構成に応答する、請求項1に記載のIC準同型プロセッサチップ。
- 前記NTTバタフライユニットが、部分的準同型暗号化を伴う演算用のマルチプルモードで動作するために前記ローカル制御回路構成に応答する、請求項1に記載のIC準同型プロセッサチップ。
- 前記NTTバタフライユニット用の第1の構成が、第1の暗号文(Ctxt)関数を実施するために第1の回路構成を使用し、
前記NTTバタフライユニット用の第2の構成が、第2のCtxt関数を実施するために前記第1の回路構成の少なくとも一部を再利用する、
請求項1~3のいずれか一項に記載のIC準同型プロセッサチップ。 - 前記第1の回路構成が、暗号文(Ctxt)加算関数を実施し、
前記第2のCtxt関数が、Ctxt乗算関数を備える、
請求項4に記載のIC準同型プロセッサチップ。 - 前記第1の回路構成が、モジュラ加算器を含む、
請求項5に記載のIC準同型プロセッサチップ。 - 前記モジュラ加算器が、組合せモジュラ加算器を備える、
請求項6に記載のIC準同型プロセッサチップ。 - 前記モジュラ加算器が、順次モジュラ加算器を備える、
請求項6に記載のIC準同型プロセッサチップ。 - 前記第2の構成が、モジュラ乗算器を備える第2の回路構成を含む、
請求項5に記載のIC準同型プロセッサチップ。 - 前記モジュラ乗算器が、並列整数乗算器を備える、請求項9に記載のIC準同型プロセッサチップ。
- 前記モジュラ乗算器が、
モジュラ約分ユニット
をさらに備える、請求項10に記載のIC準同型プロセッサチップ。 - 前記IC準同型プロセッサが、マルチプルプロセッサスライスを含み、前記IC準同型プロセッサが、
前記マルチプルプロセッサスライスを外部プロセッサのインターフェースを介して外部メモリと接続するためのマスタ制御回路構成
をさらに備える、請求項1~11のいずれか一項に記載のIC準同型プロセッサチップ。 - 前記ローカル制御回路構成が、
前記マスタ制御回路構成から、1組のCtxt係数値を前記メモリから取り出し、
前記1組のCtxt係数値を処理パイプラインへロードし、
変換値を生成するために少なくとも1つのCtxt演算を行い、
前記変換値を転送先メモリ位置に記憶させる
ようにとの命令を受け取る、請求項12に記載のIC準同型プロセッサチップ。 - 前記マスタ制御回路構成からの命令が、
NTTドメインの中に対応する変換値を生成するために、前記ロードされた数値の組上でNTT変換を行う
ようにとの命令をさらに含む、請求項13に記載のIC準同型プロセッサチップ。 - 前記マスタ制御回路構成からの、少なくとも1つのCtxt演算を行うようにとの命令が、
加算演算、減算演算、乗算演算、XOR演算、XNOR演算、AND演算、等価演算、より小さい演算、より大きい演算、実体演算、コピー演算、および否定演算から成るグループから少なくとも1つのCtxt演算を行う
ようにとの命令を含む、請求項13または14に記載のIC準同型プロセッサチップ。 - 前記NTTバタフライユニットが、単一ステージユニットとして認識される、
請求項1~15のいずれか一項に記載のIC準同型プロセッサチップ。 - 準同型暗号化システムであって、前記システムが、
集積回路(IC)準同型プロセッサチップと、
前記IC準同型プロセッサチップ外部の主メモリと、
前記主メモリと前記IC準同型プロセッサチップとの間でデータを転送するデータパスと、
前記主メモリと前記IC準同型プロセッサチップとの間の転送を制御する制御パスと、
を備え、
前記IC準同型プロセッサチップが、
前記制御パスを介した前記主メモリと前記IC準同型プロセッサチップとの間のデータの転送を制御するマスタ制御回路構成、および
パイプライン深さに対応するマルチプルプロセッサスライスであって、前記マルチプルプロセッサスライスのそれぞれが、
ローカル制御回路構成と、
準同型暗号化を使用しながら、暗号化されたデータ上で演算を行うためのマルチプルモードで動作するために前記ローカル制御回路構成に応答する数論変換(NTT)バタフライユニットであって、各モードが、前記NTTバタフライユニットの異なる構成と関連付けられている数論変換(NTT)バタフライユニットと、
前記ローカル制御回路構成および前記NTTバタフライユニットに結合されているオンチップメモリと、
を含むマルチプルプロセッサスライスを備える、
準同型暗号化システム。 - 前記準同型暗号化が、完全準同型暗号化を備える、請求項17に記載の準同型暗号化システム。
- 前記準同型暗号化が、部分的準同型暗号化を備える、請求項17に記載の準同型暗号化システム。
- 前記マスタ制御回路構成が、
前記外部メモリから1組のCtxt係数値を取り出し、
前記1組のCtxt係数値を処理パイプラインへロードし、
少なくとも1つのCtxt演算を行い、
前記変換値を転送先メモリ位置に記憶させる
演算を、前記マルチプルプロセッサスライスごとにスケジュールする、請求項17~19のいずれか一項に記載の準同型暗号化システム。 - 前記マスタ制御回路構成からのスケジュールされた演算が、前記マルチプルプロセッサスライスごとに、
NTTドメインの中に対応する変換値を生成するために、前記ロードされた数値の組上でNTT変換演算を行う
スケジュールされた演算をさらに備える、請求項20に記載の準同型暗号化システム。 - 前記マスタ制御回路構成からのスケジュールされた演算が、前記マルチプルプロセッサスライスごとに、
加算演算、減算演算、乗算演算、XOR演算、XNOR演算、AND演算、等価演算、より小さい演算、より大きい演算、実体演算、コピー演算、および否定演算から成るグループから少なくとも1つのCtxt演算を行う
スケジュールされた演算をさらに備える、請求項20または21に記載の準同型暗号化システム。 - 前記NTTバタフライユニットのそれぞれが、単一ステージバタフライを備える、
請求項21に記載の準同型暗号化システム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022075900A JP2022115959A (ja) | 2017-04-11 | 2022-05-02 | 準同型暗号下での安全な計算を加速するための準同型処理ユニット(hpu) |
JP2024064676A JP2024074992A (ja) | 2017-04-11 | 2024-04-12 | 準同型暗号下での安全な計算を加速するための準同型処理ユニット(hpu) |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762484304P | 2017-04-11 | 2017-04-11 | |
US62/484,304 | 2017-08-11 | ||
PCT/IB2017/054919 WO2019053486A1 (en) | 2017-04-11 | 2017-08-11 | HOMOMORPHIC TREATMENT UNIT (HPU) FOR ACCELERATING SECURE CALCULATIONS ACCORDING TO HOMOMORPHIC ENCRYPTION |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022075900A Division JP2022115959A (ja) | 2017-04-11 | 2022-05-02 | 準同型暗号下での安全な計算を加速するための準同型処理ユニット(hpu) |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020537756A JP2020537756A (ja) | 2020-12-24 |
JP7074363B2 true JP7074363B2 (ja) | 2022-05-24 |
Family
ID=63711922
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019555859A Active JP7074363B2 (ja) | 2017-04-11 | 2017-08-11 | 準同型暗号下での安全な計算を加速するための準同型処理ユニット(hpu) |
JP2022075900A Pending JP2022115959A (ja) | 2017-04-11 | 2022-05-02 | 準同型暗号下での安全な計算を加速するための準同型処理ユニット(hpu) |
JP2024064676A Pending JP2024074992A (ja) | 2017-04-11 | 2024-04-12 | 準同型暗号下での安全な計算を加速するための準同型処理ユニット(hpu) |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022075900A Pending JP2022115959A (ja) | 2017-04-11 | 2022-05-02 | 準同型暗号下での安全な計算を加速するための準同型処理ユニット(hpu) |
JP2024064676A Pending JP2024074992A (ja) | 2017-04-11 | 2024-04-12 | 準同型暗号下での安全な計算を加速するための準同型処理ユニット(hpu) |
Country Status (9)
Country | Link |
---|---|
US (6) | US10298385B2 (ja) |
EP (1) | EP3610382A4 (ja) |
JP (3) | JP7074363B2 (ja) |
KR (2) | KR20230172043A (ja) |
CN (1) | CN110892393B (ja) |
CA (2) | CA3065976A1 (ja) |
IL (1) | IL269959B2 (ja) |
SG (1) | SG11201909441XA (ja) |
WO (1) | WO2019053486A1 (ja) |
Families Citing this family (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019053486A1 (en) * | 2017-04-11 | 2019-03-21 | The Governing Council Of The University Of Toronto | HOMOMORPHIC TREATMENT UNIT (HPU) FOR ACCELERATING SECURE CALCULATIONS ACCORDING TO HOMOMORPHIC ENCRYPTION |
US11314506B2 (en) * | 2017-05-18 | 2022-04-26 | Nec Corporation | Secure computation device, comparison method, comparison program recording medium, and secure computation system |
US10778409B2 (en) * | 2017-12-15 | 2020-09-15 | Crypto Lab Inc. | Terminal device performing homomorphic encryption, server device processing ciphertext and methods thereof |
WO2019157503A1 (en) | 2018-02-12 | 2019-08-15 | Massachusetts Institute Of Technology | Systems and methods for providing secure communications using a protocol engine |
US10797856B2 (en) * | 2018-04-18 | 2020-10-06 | Fujitsu Limited | Outsourcing processing operations with homomorphic encryption |
US11032061B2 (en) * | 2018-04-27 | 2021-06-08 | Microsoft Technology Licensing, Llc | Enabling constant plaintext space in bootstrapping in fully homomorphic encryption |
FR3083885B1 (fr) * | 2018-07-10 | 2020-10-02 | Commissariat Energie Atomique | Circuit de generation de facteurs de rotation pour processeur ntt |
CN109474268B (zh) * | 2018-12-19 | 2024-02-06 | 北京比特大陆科技有限公司 | 电路结构、电路板和超算设备 |
WO2020172234A1 (en) * | 2019-02-19 | 2020-08-27 | Massachusetts Institute Of Technology | Configurable lattice cryptography processor for the quantum-secure internet of things and related techniques |
US11221397B2 (en) * | 2019-04-05 | 2022-01-11 | Texas Instruments Incorporated | Two-dimensional FFT computation |
KR102306635B1 (ko) * | 2019-10-10 | 2021-09-28 | 서울대학교산학협력단 | 재부팅없이 무한 연산이 가능한 동형 암호 기반의 동적 궤환 제어기의 구성 방법 |
US20230145760A1 (en) * | 2020-03-12 | 2023-05-11 | Crypto Lab Inc. | Method and device for calculating modular product |
CN111538945B (zh) * | 2020-04-24 | 2023-03-14 | 合肥工业大学 | 一种基于可重构碟算单元的运算结果快速校验系统 |
CN111538582A (zh) * | 2020-04-26 | 2020-08-14 | 中国科学技术大学 | 基于Intel QAT的同态加密卸载方法 |
CN111694541B (zh) * | 2020-05-06 | 2023-04-21 | 常熟理工学院 | 一种用于数论变换乘法的基32运算电路 |
CN111694542B (zh) * | 2020-05-06 | 2021-12-07 | 常熟理工学院 | 一种用于数论变换乘法的基16运算电路 |
CN111694540B (zh) * | 2020-05-06 | 2023-04-21 | 常熟理工学院 | 一种用于数论变换乘法的基64运算电路 |
US11671239B2 (en) | 2020-05-08 | 2023-06-06 | Samsung Electronics Co., Ltd. | Encryption method and apparatus based on homomorphic encryption using odd function property |
US12192320B2 (en) * | 2020-05-08 | 2025-01-07 | Samsung Electronics Co., Ltd. | Encryption method and apparatus using homomorphic encryption |
KR20210146513A (ko) * | 2020-05-27 | 2021-12-06 | 삼성전자주식회사 | 인공 지능 연산 반도체 장치 및 이를 포함하는 저장 장치 |
KR20220009643A (ko) | 2020-07-16 | 2022-01-25 | 삼성전자주식회사 | 스토리지 컨트롤러, 이를 포함하는 클라이언트 및 서버, 및 이의 동작 방법 |
CN111901115B (zh) * | 2020-07-27 | 2022-03-18 | 合肥工业大学 | 一种多配置模式的simon算法加密电路 |
US20220094518A1 (en) * | 2020-09-18 | 2022-03-24 | Intel Corporation | Low circuit depth homomorphic encryption evaluation |
KR20220048225A (ko) * | 2020-10-12 | 2022-04-19 | 삼성전자주식회사 | 동형 연산 가속기 및 이를 포함하는 동형 연산 수행 장치 |
US20240039694A1 (en) * | 2020-11-24 | 2024-02-01 | Agency For Science, Technology And Research | Device for processing homomorphically encrypted data |
KR20220078155A (ko) | 2020-12-03 | 2022-06-10 | 삼성전자주식회사 | 암호 프로세서, 암호 프로세서의 동작 방법 및 이를 포함한 전자 장치 |
CN112464296B (zh) * | 2020-12-18 | 2022-09-23 | 合肥工业大学 | 一种用于同态加密技术的大整数乘法器硬件电路 |
CN114816334A (zh) * | 2021-01-19 | 2022-07-29 | 阿里巴巴集团控股有限公司 | 加速单元、相关装置和方法 |
JP7402191B2 (ja) * | 2021-03-03 | 2023-12-20 | Kddi株式会社 | 乗算装置、乗算方法及び乗算プログラム |
WO2022213048A1 (en) * | 2021-03-27 | 2022-10-06 | Geneial Llc | Hardware-accelerated homomorphic encryption in marketplace platforms |
CN113296733B (zh) * | 2021-04-25 | 2024-09-03 | 阿里巴巴创新公司 | 数据处理方法以及装置 |
US11907380B2 (en) * | 2021-05-17 | 2024-02-20 | International Business Machines Corporation | In-memory computation in homomorphic encryption systems |
US11764942B2 (en) * | 2021-06-01 | 2023-09-19 | Huawei Technologies Co., Ltd. | Hardware architecture for memory organization for fully homomorphic encryption |
CN113343262B (zh) * | 2021-06-22 | 2022-10-11 | 海光信息技术股份有限公司 | 同态加密装置、同态加密芯片及同态加密方法 |
US11791979B2 (en) * | 2021-07-08 | 2023-10-17 | International Business Machines Corporation | Accelerated cryptographic-related processing with fractional scaling |
CN113660076A (zh) * | 2021-07-15 | 2021-11-16 | 南京大学 | 基于可重构技术的同态加密系统及同态加密执行方法 |
US11636027B2 (en) | 2021-07-21 | 2023-04-25 | Bank Of America Corporation | Homomorphic encryption-based testing computing system |
US12058261B2 (en) * | 2021-09-21 | 2024-08-06 | Intel Corporation | Low overhead side channel protection for number theoretic transform |
US11995184B2 (en) * | 2021-09-24 | 2024-05-28 | Intel Corporation | Low-latency digital signature processing with side-channel security |
KR102451633B1 (ko) * | 2021-12-09 | 2022-10-06 | 인하대학교 산학협력단 | 동형암호를 위한 암호화 처리 장치 및 방법 |
US11818244B2 (en) * | 2021-12-15 | 2023-11-14 | The Governing Council Of The University Of Toronto | Cryptographic processor for fully homomorphic encryption (FHE) applications |
TWI845059B (zh) * | 2021-12-17 | 2024-06-11 | 美商谷歌有限責任公司 | 執行安全密碼操作之積體電路及方法 |
US20230208610A1 (en) * | 2021-12-28 | 2023-06-29 | International Business Machines Corporation | Executing an arithmetic circuit using fully homomorphic encryption (fhe) and multi-party computation (mpc) |
US20230269067A1 (en) * | 2022-02-18 | 2023-08-24 | Samsung Electronics Co., Ltd. | Homomorphic encryption operation accelerator, and operating method of homomorphic encryption operation accelerator |
US12113909B2 (en) | 2022-04-28 | 2024-10-08 | Nxp B.V. | Method and electronic device for decrypting homomorphically encrypted data |
CN117254902A (zh) * | 2022-06-10 | 2023-12-19 | 华为技术有限公司 | 数据处理方法、装置、设备及存储介质 |
KR102498123B1 (ko) | 2022-07-15 | 2023-02-09 | 인하대학교 산학협력단 | 동형암호를 위한 가변적으로 동작하는 ntt 기반 다항식 곱셈기 장치 및 방법 |
WO2024143647A1 (ko) * | 2022-12-30 | 2024-07-04 | 주식회사 크립토랩 | 분산 연산을 수행하는 전자 장치 및 제어 방법 |
US20240348441A1 (en) * | 2023-04-07 | 2024-10-17 | Nxp B.V. | Number theoretic transform with parallel coefficient processing |
US20240356748A1 (en) * | 2023-04-18 | 2024-10-24 | Nxp B.V. | Low-entropy masking for cryptography |
US20250007688A1 (en) * | 2023-07-01 | 2025-01-02 | Intel Corporation | Reconfigurable compute circuitry to perform fully homomorphic encryption (fhe) to map unconstrained powers-of-2 fhe polynomials |
CN117714054B (zh) * | 2024-02-01 | 2024-04-23 | 山东大学 | 基于数论变换的密钥封装轻量化方法、系统、介质及设备 |
CN118839319B (zh) * | 2024-07-04 | 2025-02-14 | 重庆励祺科技有限公司 | 一种基于同态加密的软件数据加密方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170180115A1 (en) | 2015-12-18 | 2017-06-22 | Microsoft Technology Licensing, Llc | Homomorphic Encryption with Optimized Homomorphic Operations |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2593948B1 (fr) * | 1986-02-06 | 1989-10-27 | Duhamel Pierre | Dispositif de transformee en cosinus d'un signal numerique echantillonne |
CN1823333A (zh) * | 2003-07-18 | 2006-08-23 | 加拿大西格纳斯通信公司 | 重新编码的基-2流水线fft处理器 |
US7701260B1 (en) * | 2007-05-25 | 2010-04-20 | Xilinx, Inc. | Phase-to-sinusoid conversion |
JP2009075676A (ja) * | 2007-09-18 | 2009-04-09 | Nec Electronics Corp | マイクロプロセッサ |
JP2010039890A (ja) * | 2008-08-07 | 2010-02-18 | Hitachi Ltd | 認証端末、認証サーバ、認証システム、認証方法および認証プログラム |
US8194532B1 (en) * | 2010-01-25 | 2012-06-05 | Xilinx, Inc. | Mixed radix discrete fourier transform |
CN102073621B (zh) * | 2011-01-19 | 2012-08-22 | 东南大学 | 一种应用于fft/ifft的基4蝶形单元电路及其处理方法 |
CN102768654A (zh) * | 2011-05-05 | 2012-11-07 | 中兴通讯股份有限公司 | 具有fft基2蝶运算处理能力的装置及其实现运算的方法 |
US9081634B1 (en) * | 2012-11-09 | 2015-07-14 | Xilinx, Inc. | Digital signal processing block |
US10581812B2 (en) * | 2015-12-01 | 2020-03-03 | Duality Technologies, Inc. | Device, system and method for fast and secure proxy re-encryption |
US20170293913A1 (en) * | 2016-04-12 | 2017-10-12 | The Governing Council Of The University Of Toronto | System and methods for validating and performing operations on homomorphically encrypted data |
WO2019053486A1 (en) * | 2017-04-11 | 2019-03-21 | The Governing Council Of The University Of Toronto | HOMOMORPHIC TREATMENT UNIT (HPU) FOR ACCELERATING SECURE CALCULATIONS ACCORDING TO HOMOMORPHIC ENCRYPTION |
-
2017
- 2017-08-11 WO PCT/IB2017/054919 patent/WO2019053486A1/en unknown
- 2017-08-11 IL IL269959A patent/IL269959B2/en unknown
- 2017-08-11 CN CN201780091743.6A patent/CN110892393B/zh active Active
- 2017-08-11 CA CA3065976A patent/CA3065976A1/en active Pending
- 2017-08-11 US US15/674,864 patent/US10298385B2/en active Active
- 2017-08-11 SG SG11201909441XA patent/SG11201909441XA/en unknown
- 2017-08-11 EP EP17925369.5A patent/EP3610382A4/en active Pending
- 2017-08-11 KR KR1020237042861A patent/KR20230172043A/ko active Pending
- 2017-08-11 JP JP2019555859A patent/JP7074363B2/ja active Active
- 2017-08-11 CA CA3034597A patent/CA3034597C/en active Active
- 2017-08-11 KR KR1020197032545A patent/KR102614616B1/ko active Active
-
2019
- 2019-03-26 US US16/365,450 patent/US10644877B2/en active Active
- 2019-03-26 US US16/365,463 patent/US10715309B2/en active Active
-
2020
- 2020-07-06 US US16/921,028 patent/US11456856B2/en active Active
-
2022
- 2022-05-02 JP JP2022075900A patent/JP2022115959A/ja active Pending
- 2022-09-26 US US17/953,224 patent/US11870881B2/en active Active
-
2024
- 2024-01-09 US US18/408,491 patent/US20240421970A1/en active Pending
- 2024-04-12 JP JP2024064676A patent/JP2024074992A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170180115A1 (en) | 2015-12-18 | 2017-06-22 | Microsoft Technology Licensing, Llc | Homomorphic Encryption with Optimized Homomorphic Operations |
Non-Patent Citations (3)
Title |
---|
Sujoy Sinha Roy et al. ,Compact Ring-LWE Cryptoprocessor,LNCS, International Workshop on Cryptographic Hardware and Embedded Systems,Vol. 8731,2014年,p. 371-391 |
Sujoy Sinha Roy et al.,Modular Hardware Architecture for Somewhat Homomorphic Function Evaluation,Cryptographic Hardware and Embedded Systems CHES 2015,2015年09月01日,pp. 164-184 |
Yarkin Doroz et al.,Accelerating Fully Homomorphic Encryption in Hardware,IEEE Transactions on Computers,2015年06月01日,Vol. 64, No. 6,pp. 1509-1521 |
Also Published As
Publication number | Publication date |
---|---|
US11870881B2 (en) | 2024-01-09 |
US10715309B2 (en) | 2020-07-14 |
CA3065976A1 (en) | 2019-02-11 |
KR102614616B1 (ko) | 2023-12-15 |
KR20190138815A (ko) | 2019-12-16 |
US11456856B2 (en) | 2022-09-27 |
WO2019053486A1 (en) | 2019-03-21 |
US20180294950A1 (en) | 2018-10-11 |
JP2020537756A (ja) | 2020-12-24 |
EP3610382A4 (en) | 2021-03-24 |
US20190268135A1 (en) | 2019-08-29 |
US20230086526A1 (en) | 2023-03-23 |
JP2024074992A (ja) | 2024-05-31 |
US20190222412A1 (en) | 2019-07-18 |
IL269959B2 (en) | 2025-02-01 |
US10644877B2 (en) | 2020-05-05 |
IL269959B1 (en) | 2024-10-01 |
SG11201909441XA (en) | 2020-03-30 |
CN110892393B (zh) | 2024-07-05 |
KR20230172043A (ko) | 2023-12-21 |
IL269959A (ja) | 2019-12-31 |
EP3610382A1 (en) | 2020-02-19 |
US20240421970A1 (en) | 2024-12-19 |
CA3034597C (en) | 2021-10-12 |
US20210028921A1 (en) | 2021-01-28 |
US10298385B2 (en) | 2019-05-21 |
CN110892393A (zh) | 2020-03-17 |
JP2022115959A (ja) | 2022-08-09 |
CA3034597A1 (en) | 2019-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7074363B2 (ja) | 準同型暗号下での安全な計算を加速するための準同型処理ユニット(hpu) | |
KR20210130196A (ko) | 양자-보안 사물 인터넷을 위한 설정가능한 래티스 암호 프로세서 및 관련된 기법들 | |
US6366936B1 (en) | Pipelined fast fourier transform (FFT) processor having convergent block floating point (CBFP) algorithm | |
JP3228927B2 (ja) | プロセッサエレメント、プロセッシングユニット、プロセッサ、及びその演算処理方法 | |
US11818244B2 (en) | Cryptographic processor for fully homomorphic encryption (FHE) applications | |
Ye et al. | Low-complexity VLSI design of large integer multipliers for fully homomorphic encryption | |
Warrier et al. | A low-power pipelined MAC architecture using Baugh-Wooley based multiplier | |
Nagpal et al. | Processor architectures for two-dimensional convolvers using a single multiplexed computational element with finite field arithmetic | |
US6460061B1 (en) | 2-dimensional discrete cosine transform using a polynomial transform | |
Takala et al. | Butterfly unit supporting radix-4 and radix-2 FFT | |
Geiselmann et al. | A simpler sieving device: Combining ECM and TWIRL | |
KR100630456B1 (ko) | 유한체 상의 스케일러블 곱셈 연산기 | |
Sonawane et al. | Resource efficient 64-bit floating point matrix multiplication algorithm using FPGA | |
Wang | Accelerating cryptosystems on hardware platforms | |
Wong et al. | A new scalable systolic array processor architecture for simultaneous discrete convolution of k different (nxn) filter coefficient planes with a single image plane | |
Divya et al. | Design and Implementation of Space-Time Scheduling Algorithm for High Image Resolution Using FPGA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200811 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200811 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210811 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210824 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211122 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220405 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220502 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7074363 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |