TWI841097B - Qap型式同態加密中的多方系統設計的方法 - Google Patents

Qap型式同態加密中的多方系統設計的方法 Download PDF

Info

Publication number
TWI841097B
TWI841097B TW111146838A TW111146838A TWI841097B TW I841097 B TWI841097 B TW I841097B TW 111146838 A TW111146838 A TW 111146838A TW 111146838 A TW111146838 A TW 111146838A TW I841097 B TWI841097 B TW I841097B
Authority
TW
Taiwan
Prior art keywords
public key
operator
key
homomorphic encryption
bit
Prior art date
Application number
TW111146838A
Other languages
English (en)
Other versions
TW202324968A (zh
Inventor
蘇正耀
蔡明忠
Original Assignee
財團法人國家實驗研究院
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 財團法人國家實驗研究院 filed Critical 財團法人國家實驗研究院
Publication of TW202324968A publication Critical patent/TW202324968A/zh
Application granted granted Critical
Publication of TWI841097B publication Critical patent/TWI841097B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一種QAP型式同態加密中的多方系統設計的方法,利用商代數分割的代數結構,並利用執行同態加密的運算,該方法包括:將模型提供者由單一身份A擴充至L位多數身份,使得 以及 ;將資料提供者由單一身份B擴充至R位多數身份,使得 以及 ,並且蒐集每位資料提供者的

Description

QAP型式同態加密中的多方系統設計的方法
一種QAP型式同態加密的方法,更詳而言之,係一種QAP型式同態加密中將公鑰或半公鑰系統設計推廣至其對應之多方系統的方法。
同態加密(Homomorphic Encryption,簡稱HE)被視為當前密碼學與資訊安全最為重要的技術,有別於過往處理資料時須先將其進行解密,此技術可直接在加密狀態對資料進行處理,實現所謂「資料不落地」的概念,這使得資料處理過程的安全性大幅提高。
安全多方計算(Secure Multi-Party Computation,簡稱SMPC)是密碼學的一個子領域,目標是為各方創建方法以共同計算其輸入的函數,同時保留這些輸入的隱私。傳統的密碼學是關於隱藏內容,有別於先前技術,SMPC是在使用來自多個來源的數據進行計算並正確生成輸出的情況下,同時隱藏有關數據的部分信息。
常見將SMPC與HE結合的操作模式,會依多方類別差異,有所謂的閾值同態加密(threshold HE)與多鑰同態加密(multi-key HE),視條件可應用於不同安全需求情境。
然而,現有的HE多方系統計算所使用的設計方式是以傳統單一模型需求進行設計,例如只能是複公鑰多方系統或單公鑰多方系統各自處 理計算,此種計算方式頗具差異。此外,傳統單一模型設計也有安全等級的上限。
因此,如何能透過商代數分割(Quotient Algebra Partition,簡稱QAP)的代數結構,從QAPHE原本的公鑰或半公鑰系統的模型設計,直接擴充至多方系統,提供業界可直接應用的多方資安架構,遂成為業界亟待解決的課題。
本發明之目的,即在於提供一種QAP型式同態加密中的多方系統設計的方法,可同時通用於不同情境需求的多方同態加密計算。
為了達到前述目的,本發明提供一種QAP型式同態加密中的多方系統設計的方法,係利用商代數分割QAP(Quotient Algebra Partition)的代數結構,並利用執行同態加密HE(Homomorphic Encryption)的運算,所述方法包括:步驟(1)將模型提供者(model provider)由單一身份A擴充至L位多數身份,使得
Figure 111146838-A0305-02-0003-2
以及該L
Figure 111146838-A0305-02-0003-143
2;步驟(2)將資料提供者(data sender)由單一身份B擴充至R位多數身份,使得
Figure 111146838-A0305-02-0003-3
以及該R
Figure 111146838-A0305-02-0003-144
2,並且蒐集每位該資料提供者的k j 位元明文(plaintext)xj並編碼成密文(ciphertext)|ψ j 〉;步驟(3)以張量積形式集合該密文並形成用以計算的編碼態
Figure 111146838-A0305-02-0003-1
;以及步驟(4)準備模型運算子(model operation),使得雲端(cloud)執行由編碼運算子(encoded operator)U en 與該編碼態|ψ en 〉之計算U en |ψ en 〉。
根據本發明一實施例,透過該方法建立之多方系統係按照QAPHE中單一身份的公鑰(public key)執行其功能。
根據本發明一實施例,於所述步驟(1)中,還包括每個該模型提供者選擇一分割結構[n i ,k i ,C i ],每個該分割結構中產生一公鑰Key pub,i 和一私鑰(private key)。
根據本發明一實施例,該公鑰由n i 位元修改編碼算子(modified encoding)和隨機錯誤生成算子(random error generator)所組成。
根據本發明一實施例,於所述步驟(2)中,還包括每個該資料提供者選擇一公鑰Key pub,j ,並且將每個該資料提供者自己的k j 位元明文xj編碼為密文|ψ j 〉。
根據本發明一實施例,透過該方法建立之多方系統係按照QAPHE中單一身份的半公鑰(semi-public key)執行其功能。
根據本發明一實施例,於所述步驟(1)中,還包括所有該
Figure 111146838-A0305-02-0004-4
共同產生一半公鑰Key s-pub
根據本發明一實施例,該半公鑰由編碼生成算子(encoding generator)所組成。
根據本發明一實施例,於所述步驟(2)中,還包括每個該資料提供者選擇一編碼算子(encoding)
Figure 111146838-A0305-02-0004-31
,並且將每個該資料提供者自己的k j 位元明文xj編碼為密文|ψ j 〉。
根據本發明一實施例,於所述步驟(2)中
Figure 111146838-A0305-02-0004-6
根據本發明一實施例,所述步驟(3)之後,還包括每個該資料提供者將編碼資訊(encoded message)
Figure 111146838-A0305-02-0004-7
傳送至A σ(j),其中σ(j)是置換算子。
根據本發明一實施例,該雲端維持單一身分進行平行計算(parallel computation)。
相較於習知技術,本發明所提供的一種QAP型式同態加密中的多方系統設計的方法,此方法除了可將公鑰或半公鑰系統的安全性進一步提升之外,也可在適當的條件下,應用於閾值同態加密或多鑰同態加密中,得以立即應用於實際問題。
S1~S4:步驟
圖1為本發明提供之方法的例示性實施例流程圖。
圖2A為單一身份的公鑰在QAPHE系統中例示性實施例之示意圖。
圖2B為利用本發明提供之方法將QAPHE系統中單一身份的公鑰擴充至多方系統之例示性實施例示意圖。
圖3A為單一身份的半公鑰在QAPHE系統中例示性實施例之示意圖。
圖3B為利用本發明提供之方法將QAPHE系統中單一身份的半公鑰擴充至多方系統之例示性實施例示意圖。
以下藉由特定的具體實施例說明本發明之實施方式,熟悉此技藝之人士可由本說明書所揭示之內容輕易地瞭解本發明之其他優點與功效。本發明亦可藉由其他不同的具體實施例加以施行或應用,本說明書中的各項細節亦可基於不同觀點與應用,在不悖離本發明之精神下進行各種修飾與變更。
請參閱圖1,圖1為本發明提供之方法的例示性實施例流程圖。本發明提供一種QAP型式同態加密中的多方系統設計的方法,係利用商代數分割QAP(Quotient Algebra Partition)的代數結構,並利用執行同態加密HE(Homomorphic Encryption)的運算,所述方法包括:S1將模型提供者(model provider)由單一身份A擴充至L位多數身份,使得
Figure 111146838-A0305-02-0006-8
以及該L
Figure 111146838-A0305-02-0006-190
2;S2將資料提供者(data sender)由單一身份B擴充至R位多數身份,使得
Figure 111146838-A0305-02-0006-10
以及該R
Figure 111146838-A0305-02-0006-141
2,並且蒐集每位該資料提供者的k j 位元明文(plaintext)xj並編碼成密文(ciphertext)|ψ j 〉;S3以張量積形式集合該密文並形成用以計算的編碼態
Figure 111146838-A0305-02-0006-9
;以及S4準備模型運算子(model operation),使得雲端(cloud)執行由編碼運算子(encoded operator)U en 與該編碼態|ψ en 〉之計算U en |ψ en 〉。
根據本發明一實施例,該雲端可維持單一身分進行平行計算(parallel computation)。
請參閱圖2A,圖2A為單一身份的公鑰在QAPHE系統中例示性實施例之示意圖。具體而言,該單一公鑰(public key)可定義為Key pub =(V Qen, Gen ε );該U en 可定義為
Figure 111146838-A0305-02-0006-11
;該私鑰(private key)可定義為
Figure 111146838-A0305-02-0006-32
請參閱圖2B,圖2B為利用本發明提供之方法將QAPHE系統中單一身份的公鑰擴充至多方系統之例示性實施例示意圖。根據本發明一實施例,透過本發明之方法建立之多方系統可按照如圖2A所示之QAPHE中單一身份的公鑰執行其功能。
根據本發明,如圖2B所示,該模型提供者可為Alice的一部分,該資料提供者可為Bob的一部分。
根據本發明一實施例,於所述步驟S1中,還可包括每個該模型提供者選擇一分割結構[n i ,k i ,C i ],每個該分割結構中可產生一公鑰Key pub,i 和一私鑰。
根據本發明一實施例,該公鑰可由n i 位元修改編碼算子(modified encoding)和隨機錯誤生成算子(random error generator)所組成,其中該修改編碼算子可表示為
Figure 111146838-A0305-02-0007-12
,以及該隨機錯誤生成算子可表示為
Figure 111146838-A0305-02-0007-13
根據本發明一實施例,於所述步驟S2中,還可包括每個該資料提供者選擇公鑰Key pub,j ,並且將每個該資料提供者自己的k j 位元明文xj編碼為密文|ψ j 〉。於本實施例中,該密文可表示為
Figure 111146838-A0305-02-0007-14
x j 〉。
根據本發明,如圖2B所示,公鑰可定義為Key pub,i =
Figure 111146838-A0305-02-0007-16
;該U en 可定義為
Figure 111146838-A0305-02-0007-17
;該
Figure 111146838-A0305-02-0007-18
可定義為
Figure 111146838-A0305-02-0007-19
;該
Figure 111146838-A0305-02-0007-34
可定義為
Figure 111146838-A0305-02-0007-20
;該
Figure 111146838-A0305-02-0007-139
可定義為
Figure 111146838-A0305-02-0007-23
Figure 111146838-A0305-02-0007-21
;該私鑰可定義為
Figure 111146838-A0305-02-0007-33
請參閱圖3A,圖3A為單一身份的半公鑰在QAPHE系統中例示性實施例之示意圖。具體而言,該單一半公鑰(semi-public key)可定義為Key s-pub =Gen Q ;該U en 可定義為
Figure 111146838-A0305-02-0007-22
;該私鑰可定義為Key priv =
Figure 111146838-A0305-02-0007-35
請參閱圖3B,圖3B為利用本發明提供之方法將QAPHE系統中單一身份的半公鑰擴充至多方系統之例示性實施例示意圖。根據本發明一實施例,透過本發明之方法建立之多方系統可按照如圖3A所示之QAPHE中單一身份的半公鑰執行其功能。
根據本發明,如圖3B所示,該模型提供者可為Alice的一部分,該資料提供者可為Bob的一部分。
根據本發明一實施例,於所述步驟S1中,還可包括所有該
Figure 111146838-A0305-02-0008-36
共同產生半公鑰Key s-pub
根據本發明一實施例,該半公鑰可由編碼生成算子(encoding generator)所組成,該編碼生成算子可例如但不限於k位元置換算子(permutations)。
根據本發明一實施例,於所述步驟S2中,還可包括每個該資料提供者選擇一編碼算子(encoding)
Figure 111146838-A0305-02-0008-28
,並且將每個該資料提供者自己的k j 位元明文xj編碼為密文|ψ j 〉。於本實施例中,該密文可表示為|ψ j 〉=
Figure 111146838-A0305-02-0008-25
根據本發明一實施例,於所述步驟S2中
Figure 111146838-A0305-02-0008-26
根據本發明一實施例,所述步驟S3之後,還可包括每個該資料提供者將編碼資訊(encoded message)
Figure 111146838-A0305-02-0008-27
傳送至A σ(j),其中σ(j)可是置換算子。
根據本發明,如圖3B所示,半公鑰可定義為Key s-pub =Gen Q ; 該U en 可定義為
Figure 111146838-A0305-02-0008-37
;該
Figure 111146838-A0305-02-0008-40
可定義為
Figure 111146838-A0305-02-0008-29
;該
Figure 111146838-A0305-02-0008-39
可定義為
Figure 111146838-A0305-02-0008-30
;該私鑰可定義為
Figure 111146838-A0305-02-0008-38
根據本發明,穩態群(stabilizer)C
Figure 111146838-A0305-02-0009-181
su(2 n )的穩態碼(stabilizer code)[n,k,C]為一商代數分割(quotient algebra partition){
Figure 111146838-A0305-02-0009-41
},該商代數分割在su(2 n )中由卡當子代數(Cartan subalgebra)的第k個最大雙子代數(bi-
Figure 111146838-A0305-02-0009-42
產生。具體而言,在乘法(multiplication)下[n,k,C]的穩態群C和雙加法(bi-addition)下第k個最大雙子代數
Figure 111146838-A0305-02-0009-43
之間具同構(isomorphism)性質,即
Figure 111146838-A0305-02-0009-44
。因此,穩態碼[n,k,C]繼承來自QAP{
Figure 111146838-A0305-02-0009-45
}的分割結構(partition structure)。希爾伯特空間(Hilbert space)的n位元編碼態和分割結構[n,k,C]之間具對偶(duality)特性,其驗證連接自旋算子(spinors)和碼字(codewords)的正交性(orthogonality)。在QAP結構中顯示了伴集自旋算子(coset spinor)的重要概念,其表示在QAP中可修正錯誤(error-correctable)的充要條件(n-s condition)。
在分割結構[n,k,C]中,若錯誤集合(error set)ε的兩個任意自旋算子在分割結構中不同或是相同的區塊伴集中,該錯誤集合ε是可修正的。此外,伴集自旋算子的概念有兩個意涵,即等價修正(correction equivalence)和代碼簡併(code degeneracy)。前者表明錯誤可由同個伴集中任一算子進行修正,而後者表明可修正之錯誤集合允許自旋算子在同個伴集中。此可連續獲得兩個立即的結果。其一是如果子空間(subspace)Γ0-C中沒有錯誤集合ε的自旋算子,則[n,k,C]可偵測到錯誤集合ε。另一個是如果兩個錯誤在同一個區塊的不同伴集之中,則在[n,k,C]中該兩個錯誤是無法修正的。因此,該可修正錯誤的充要條件可被確認。
分割結構[n,k,C]被認為是經典漢明碼(Hamming code)[n,k]的量子版本。對於每個經典線性碼(linear code)[n,k],存在由該碼確定的唯一分割結構[n,k,C]。對於每個分割結構[n,k,C],存在由該分割結構確定的 唯一辛線性碼(symplectic linear code)[2n,n+k]。在分割結構[n,k,C]中,將k位元編碼態編碼為n位元碼字,需要在內部座標(intrinsic coordinate)中憑藉分割結構建構一編碼算子(encoding)。
在分割結構[n,k,C]中,編碼算子Q en
Figure 111146838-A0305-02-0010-145
SU(2 n )是n位元自旋算子至自旋算子(spinor-to-spinor)的映射,將[n,k,C]轉換為由內部雙子代數
Figure 111146838-A0305-02-0010-46
Figure 111146838-A0305-02-0010-47
產生之內部座標[n,k,
Figure 111146838-A0305-02-0010-48
的分割結構。在內部座標中,分割結構[n,k,
Figure 111146838-A0305-02-0010-49
]由內部雙子代數
Figure 111146838-A0305-02-0010-50
產生,其為內部卡當子代數
Figure 111146838-A0305-02-0010-51
的第k個最大雙子代數。在此分割結構中,區塊的伴集
Figure 111146838-A0305-02-0010-52
可採取以下形式
Figure 111146838-A0305-02-0010-53
。實際上,編碼算子Q en 是保留QAP自旋算子至自旋算子變換(spinor-to-spinor transformation),將分割結構[n,k,C]映射到內部[n,k,
Figure 111146838-A0305-02-0010-54
]。在分割結構[n,k,C]中,每個容錯算子(fault tolerant encode)U
Figure 111146838-A0305-02-0010-146
SU(2 n )需遵守兩個標準,其一是SU|ψ〉=U|ψ〉對每個自旋算子S
Figure 111146838-A0305-02-0010-147
C和每個碼字|ψ〉的特徵不變性(eigen-invariance),其二是對錯誤集合ε進行錯誤修正(error-correction),在每個區塊Γα ,v
Figure 111146838-A0305-02-0010-55
的伴集W α,v 中,
Figure 111146838-A0305-02-0010-56
S β
Figure 111146838-A0305-02-0010-148
ε。
在分割結構[n,k,C]中修正具有編碼算子Q en
Figure 111146838-A0305-02-0010-149
SU(2 n )的錯誤集合ε
Figure 111146838-A0305-02-0010-151
su(2 n ),k位元算子M
Figure 111146838-A0305-02-0010-150
SU(2 k )的容錯算子可表示為U en =
Figure 111146838-A0305-02-0010-57
,其中,該
Figure 111146838-A0305-02-0010-58
為M和(n-k)位元恆等式
Figure 111146838-A0305-02-0010-188
的張量積(tensor product),其可表示為
Figure 111146838-A0305-02-0010-59
;該
Figure 111146838-A0305-02-0010-62
SU(2 n )為有關ε輸入伴集(input coset)的算子;該
Figure 111146838-A0305-02-0010-60
SU(2 n )為輸出伴集(output coset)的算子;該
Figure 111146838-A0305-02-0010-61
SU(2 n )為傳送振幅(transfer amplitude)。
量子電路(quantum circuit)
以下有關量子電路的說明會出現基本運算,例如加法(addition)和乘法(multiplication)。
每個有限域(finite field)
Figure 111146838-A0305-02-0011-63
由質數(prime number)p和正整數(positive integer)mq=p m 的元素所組成,該有限域與一多項式環(polynomial ring)Z p [x]和一不可分解(irreducible)的m次多項式f(x)的商環(quotient ring)Z p [x]/f(x)同構(isomorphic)。
目前主要的後量子(post-quantum)密碼系統,例如晶格(lattice-based)密碼系統、代碼(code-based)系統和多變量(multivariate-based)系統,係由多項式環描述,通常不使用線性運算(linear operation)。QAP結構可由希爾伯特空間(Hilbert space)的雙重編碼態所組成,並且本質上允許對該些編碼態應用可逆線性變換(invertible linear transformation)。這顯示基於QAP的HE方案與其在多項式環上的方案具有本質上的差異。
存在一量子電路執行1位元資訊m i
Figure 111146838-A0305-02-0011-64
數量N的加法
Figure 111146838-A0305-02-0011-65
。對於兩個1位元數量的相加,存在有更有效的時空執行(space-time implementation)。例如,建構具有O(l)輔助位元(ancilla qubit)在深度上線性尺寸O(l)的電路。再者,提供了具有O(l/log l)輔助位元在對數深度O(log l)上的電路尺寸O(l)。
存在量子電路執行兩個1位元數量的相乘。允許兩個較低成本的數量相乘的電路設計。例如,卡拉楚巴乘法(Karatsuba-based multiplying)需要沒有輔助位元的電路尺寸
Figure 111146838-A0305-02-0011-187
和深度O(l)。值得注意的是,每個用於加法或乘法的量子閘可被分解成s旋轉(s-rotations)的組成。
公鑰方案的建構(construction of public-key scheme)
以下說明在公鑰系統中基於QAP的同態加密方案。
QAPHE的方案是基於QAP的量子容錯計算(QAP-based Fault Tolerance Quantum Computation,簡稱QAPFTQC)的對偶過程。假設有N個明文(plaintext){x i
Figure 111146838-A0305-02-0012-66
:1
Figure 111146838-A0305-02-0012-152
i
Figure 111146838-A0305-02-0012-153
N}在雲端伺服器中應被保護和進行處理,為達上述目的,首先選擇一分割結構[n,k,C],該分割結構是在su(2 n )中由卡當子代數(Cartan subalgebra)的第k個最大雙代數C所產生的。接著,基於QAPFTQC的方法,在[n,k,C]中建構容錯算子(fault tolerant encode)以達到全同態(full homomorphism)。
以下說明[n,k,C]上QAPHE的3個階段步驟,即加密(encryption)、計算(computation)和解密(decryption)。在加密步驟中,公鑰可準備對資訊進行編碼。每個分割結構[n,k,C]可使得加密的公鑰Key pub 將k位元的明文編碼成n位元的密文(ciphertext)。在分割結構[n,k,C]中,透過公鑰Key pub 進行加密的成本有上限,其上限可為O(n 2)。破解公鑰Key pub 進行之加密的複雜度可有下限O(2 L )以及可有上限O(22n ),其中δ<L
Figure 111146838-A0305-02-0012-154
n-k,該δ為後量子安全值(postquantum security level)。
在分割結構[n,k,C]中,給定的公鑰Key pub 將k位元編碼態|x〉編碼成n位元的碼字(codeword)|ψ en 〉,其中
Figure 111146838-A0305-02-0012-67
x
Figure 111146838-A0305-02-0012-68
,透過一算子M,k位元計算Mx〉的同態計算(homomorphic computation)由容錯算子U en 實現,其中M
Figure 111146838-A0305-02-0012-155
SU(2 k )。
Figure 111146838-A0305-02-0012-69
上述式1中,該
Figure 111146838-A0305-02-0012-70
,該
Figure 111146838-A0305-02-0012-186
為(n-k)位元恆等式。修正算子(correction operation)
Figure 111146838-A0305-02-0012-71
分解為兩個算子
Figure 111146838-A0305-02-0012-76
Figure 111146838-A0305-02-0012-77
,且該
Figure 111146838-A0305-02-0012-75
Figure 111146838-A0305-02-0012-72
SU(2 n )。該
Figure 111146838-A0305-02-0012-73
為兩個算子W 1W 2的乘積,可定義為
Figure 111146838-A0305-02-0012-74
W 1 W 2,且該W 1W 2
Figure 111146838-A0305-02-0013-156
SU(2 n )。該四個算子
Figure 111146838-A0305-02-0013-78
,P,P 1P 0
Figure 111146838-A0305-02-0013-157
SU(2 n )用以混淆上述編碼,且該
Figure 111146838-A0305-02-0013-185
實際應用時,該U en 由上述式1第二行的式子組成所表示。具體而言,每個該算子
Figure 111146838-A0305-02-0013-79
,P,P 1P 0的組成是自旋算子至自旋算子(spinor-to-spinor)的s旋轉(s-rotation)。首先,修正算子
Figure 111146838-A0305-02-0013-80
分解為兩個算子
Figure 111146838-A0305-02-0013-89
Figure 111146838-A0305-02-0013-81
,算子
Figure 111146838-A0305-02-0013-82
用以混合該
Figure 111146838-A0305-02-0013-83
。透過分解該
Figure 111146838-A0305-02-0013-84
為兩個算子W 1W 2,讓該算子W 1用以執行式1第二行之算式,而該算子W 2則保留下來。該二算子P 1P 0則是插入該式1的式子組成中用以進一步混合量子閘(quantum gate)。該
Figure 111146838-A0305-02-0013-87
Figure 111146838-A0305-02-0013-88
藉由結合自旋算子至自旋算子之算子W 1 P 0進行修改的算子,同理,該
Figure 111146838-A0305-02-0013-85
Figure 111146838-A0305-02-0013-86
藉由結合算子W 1 P 1進行修改的算子。
值得注意的是,U en 的計算可根據問題依賴算子(problem-dependent operation)M進行優化設計。
以下說明編碼和加密安全的成本。在分割結構[n,k,C]中,透過公鑰進行同態計算的成本有上限,對於整數p
Figure 111146838-A0305-02-0013-158
N而言,其上限可為O(n p )。在[n,k,C]中,破解公鑰進行之同態計算的複雜度可有下限O(2 n )。
透過私鑰(private key)可解密經編碼的計算U en |ψ〉。根據本發明,在分割結構[n,k,C]中,給定一個k位元算術運算(arithmetic operation)M
Figure 111146838-A0305-02-0013-159
SU(2 k )的容錯算子
Figure 111146838-A0305-02-0013-90
,以及一個由公鑰Key pub 編碼的n位元編碼態
Figure 111146838-A0305-02-0013-91
,其中
Figure 111146838-A0305-02-0013-92
Figure 111146838-A0305-02-0013-93
,該同態計算U en |ψ ed 〉透過私鑰
Figure 111146838-A0305-02-0013-94
被解密為Mx〉。
該公鑰的方案透過將資料提供者(data providers)、資料接收者(data receivers)、計算模型提供者(computation providers)以及公鑰由單一身分擴充至多數身分,則可將該方案延伸至多方同態加密的系統。
半公鑰方案的建構(construction of semi-public-key scheme)
以下說明在半公鑰系統中基於QAP的同態加密方案。該應用於半公鑰的方案與該應用於公鑰的方案幾乎相同,惟該半公鑰方案允許資料接收者和資料所有者(data owner)之間有少量的通訊資源。
加密的半公鑰Key s-pub 將k位元的明文編碼成k位元的密文。透過半公鑰Key s-pub 編碼k位元編碼態的成本為O(k)。透過半公鑰進行k位元明文的加密相較於透過公鑰進行相同明文的加密更有效率,因為在半公鑰方案中不需要添加隨機錯誤(random error)。破解半公鑰Key s-pub 進行加密的複雜度與從加密資訊中找到編碼操作的複雜度相同。在半公鑰方案中,使用為Q p 選擇的密碼系統可具有相當高的後量子安全值,該半公鑰方案較該公鑰方案更安全。
k位元半公鑰Key s-pub 產生一編碼算子Q p
Figure 111146838-A0305-02-0014-160
SU(2 k )k位元計算的同態計算由容錯算子U en 實現,其中該k位元計算的同態計算由算術運算(arithmetic operation)M
Figure 111146838-A0305-02-0014-161
SU(2 k )執行。
Figure 111146838-A0305-02-0014-95
上述式2中,該
Figure 111146838-A0305-02-0014-96
為兩個算子W 1W 2的乘積,可定義為
Figure 111146838-A0305-02-0014-97
W 1 W 2,且該W 1W 2
Figure 111146838-A0305-02-0014-166
SU(2 k )。該三個算子
Figure 111146838-A0305-02-0014-98
,PP 0
Figure 111146838-A0305-02-0014-163
SU(2 n )用以混淆上述編碼,且該
Figure 111146838-A0305-02-0014-184
。在單向函數(one-way function)的設計中可實 現該式2計算的遮蔽性,其可由給定的基本閘間的合併(merging)和交換(exchanging)所達成。
透過k位元半公鑰進行同態計算的成本有上限,對於整數t
Figure 111146838-A0305-02-0015-167
N而言,其上限可為O(k t )。在半公鑰的方案中,不需要花費錯誤修正(error-correction)的成本,其表示相較於公鑰方案,該半公鑰方案的計算成本較低。破解k位元半公鑰進行之同態計算的複雜度是有限的,其限度為v(k)=(k e /(r-d)) r-d +k 2d ,其中該d,er
Figure 111146838-A0305-02-0015-168
N。
給定一個k位元算術運算M
Figure 111146838-A0305-02-0015-169
SU(2 k )的編碼運算子(encoded operation)
Figure 111146838-A0305-02-0015-99
,以及一個由半公鑰Key s-pub 編碼的k位元編碼態|ψ en 〉=Q p x〉,該同態計算U en |ψ ed 〉透過私鑰Key priv =
Figure 111146838-A0305-02-0015-100
被解密為Mx〉。
該半公鑰方案與公鑰方案相似,透過將資料提供者、資料接收者以及計算模型提供者由單一身分擴充至多數身分,則可將該半公鑰方案延伸應用至多方同態加密的系統,其中單一個半公鑰為多個用戶生成多個編碼算子。
公鑰加密的實施例
以下描述之公鑰加密的實施例將說明本說明書第[0067]段所提及「每個分割結構[n,k,C]可使得加密的公鑰Key pub 將k位元的明文編碼成n位元的密文」之內容係可實行的。在QAP的架構下,根據不同問題可允許公鑰加密的各種類型設計。以下將提供兩種公鑰加密設計。
在具有一編碼算子(encoding)Q en 的分割結構[n,k,C]中,允許加密的公鑰由算子VQ en 和錯誤生成算子(error generator)
Figure 111146838-A0305-02-0015-101
所組成,該錯誤生成算子與一組
Figure 111146838-A0305-02-0015-102
J<n-k錯誤有關, 其中,該VQ en
Figure 111146838-A0305-02-0016-170
SU(2 n )是自旋算子至自旋算子變換(spinor-to-spinor transformation),V為位元置換算子。自旋算子(spinors)E r
Figure 111146838-A0305-02-0016-171
su(2 n )分別選自分割結構中的獨立區塊(block);該
Figure 111146838-A0305-02-0016-103
可隨機用
Figure 111146838-A0305-02-0016-104
Figure 111146838-A0305-02-0016-105
Figure 111146838-A0305-02-0016-106
產生一錯誤
Figure 111146838-A0305-02-0016-107
;該錯誤
Figure 111146838-A0305-02-0016-108
Figure 111146838-A0305-02-0016-109
可為隨機選自
Figure 111146838-A0305-02-0016-110
的一定數量之自旋算子的乘積。該公鑰可由以下式3表示。
Figure 111146838-A0305-02-0016-111
假設1位元資訊x i
Figure 111146838-A0305-02-0016-112
的數量N,對於l 0位元的空白狀態(blank state)|x 0〉用k=l 0+lN寫為k位元基礎態(basis state),令其表示為|x〉=
Figure 111146838-A0305-02-0016-113
。藉由為n-k位元的基礎態|0〉編寫張量積態(tensor product state)|0〉
Figure 111146838-A0305-02-0016-172
x〉,編碼態(encoded state)的形式為|ψ en 〉=
Figure 111146838-A0305-02-0016-114
將明文x編碼為密文|ψ en 〉的成本為|V||Q en |+1,其中|V|~O(nk)和|Q en |~O(n(n-k))分別是VQ en 中1-位元和2-位元s旋轉的數字,且數字1與
Figure 111146838-A0305-02-0016-182
的應用一起計算。
破解由公鑰
Figure 111146838-A0305-02-0016-115
進行之加密的複雜度為在碼字|ψ en 〉=
Figure 111146838-A0305-02-0016-116
中找到錯誤
Figure 111146838-A0305-02-0016-117
的步驟數,其中
Figure 111146838-A0305-02-0016-121
Z 2且1
Figure 111146838-A0305-02-0016-173
r
Figure 111146838-A0305-02-0016-174
J。蠻力攻擊(brute force attack)導致破解具有上限值2 J ,其數為J位元
Figure 111146838-A0305-02-0016-175
的所有可能性。另一方面,找到
Figure 111146838-A0305-02-0016-118
的成本等同於在尺寸為2 J 的有限阿貝爾群(abelian group)G=spanS G 子集
Figure 111146838-A0305-02-0016-119
中根據自旋算子搜尋
Figure 111146838-A0305-02-0016-120
表示的問題。這需要複雜度大於或等於2 J/2+1且具有下限值O(2 J/2)。
在代碼(code-based)的密碼系統中,Mceliece密碼系統採用迦伯碼(Goppa code)[n,k]修正重量錯誤
Figure 111146838-A0305-02-0017-122
。在此密碼系統中,給定一公鑰(
Figure 111146838-A0305-02-0017-123
,t),資訊x
Figure 111146838-A0305-02-0017-124
透過乘以
Figure 111146838-A0305-02-0017-125
並加上隨機選擇的重量t的錯誤e,將其加密為密文
Figure 111146838-A0305-02-0017-126
。透過稱為資訊集合(information-set)解碼的一般攻擊(generic attack),從密文c恢復為資訊x的複雜度約為y n/log n ,y=(1-k/n)1-k/n
在具有編碼算子(encoding)Q en 的分割結構[n,k,C]中,允許加密的公鑰由算子VQ en 和錯誤生成算子(error generator)Gen(R 1,R 2J)所組成,其中,該V
Figure 111146838-A0305-02-0017-176
SU(2 n )是自旋算子至自旋算子變換(spinor-to-spinor transformation);該Gen(R 1,R 2J)可隨機產生錯誤
Figure 111146838-A0305-02-0017-127
;該錯誤是兩組關係式的解
Figure 111146838-A0305-02-0017-128
J q },J q <n-k,該每組R q 與尺寸為2 Jq 的雙子代數(bi-subalgebra)
Figure 111146838-A0305-02-0017-189
su(2 n )有關,並且包括分別來自分割結構中不同區塊的自旋算子,該交集
Figure 111146838-A0305-02-0017-130
形成尺寸為2 J ,J<J q 的雙子代數。該公鑰可由以下式4表示。
Figure 111146838-A0305-02-0017-131
將明文x編碼為密文|ψ en 〉的成本為|V||Q en |+1,其中|V|~O(nk)和|Q en |~O(n(n-k))分別是VQ en 中1-位元和2-位元s旋轉的數字,且數字1應用於
Figure 111146838-A0305-02-0017-132
。加密的安全複雜度是解決群體交集問題的步驟數,該複雜度具有下限值O(2(J)/2)和上限值O(2 J )。
綜上所述,本發明所提供的一種QAP型式同態加密中的多方系統設計的方法,此方法除了可將公鑰或半公鑰系統的安全性進一步提升之 外,也可在適當的條件下,應用於閾值同態加密或多鑰同態加密中,得以立即應用於實際問題。
上述實施方式僅為例示性說明本發明之原理及其功效,而非用於限制本發明。任何熟習此項技藝之人士均可在不違背本發明之精神及範疇下,對上述實施例進行修飾與變化。因此,本發明之權利保護範圍,應如後述之申請專利範圍所列。
S1~S4:步驟

Claims (12)

  1. 一種QAP型式同態加密中的多方系統設計的方法,係利用商代數分割QAP(Quotient Algebra Partition)的代數結構,並利用執行同態加密HE(Homomorphic Encryption)的運算,所述方法包括:步驟(1)將模型提供者(model provider)由單一身份A擴充至L位多數身份,使得
    Figure 111146838-A0305-02-0019-133
    以及該L
    Figure 111146838-A0305-02-0019-179
    2;步驟(2)將資料提供者(data sender)由單一身份B擴充至R位多數身份,使得
    Figure 111146838-A0305-02-0019-135
    以及該R
    Figure 111146838-A0305-02-0019-180
    2,並且蒐集每位該資料提供者的k j 位元明文(plaintext)xj並編碼成密文(ciphertext)|ψ j 〉;步驟(3)以張量積形式集合該密文並形成用以計算的編碼態
    Figure 111146838-A0305-02-0019-134
    ;以及步驟(4)準備模型運算子(model operation),使得雲端(cloud)執行由編碼運算子(encoded operator)U en 與該編碼態|ψ en 〉之計算U en |ψ en 〉。
  2. 如請求項1所述之方法,其中,透過該方法建立之多方系統係按照QAPHE中單一身份的公鑰(public key)執行其功能。
  3. 如請求項2所述之方法,其中,於所述步驟(1)中,還包括每個該模型提供者選擇一分割結構[n i ,k i ,C i ],每個該分割結構中產生一公鑰Key pub,i 和一私鑰(private key)。
  4. 如請求項3所述之方法,其中,該公鑰由n i 位元修改編碼算子(modified encoding)和隨機錯誤生成算子(random error generator)所組成。
  5. 如請求項2所述之方法,其中,於所述步驟(2)中,還包括每個該資料提供者選擇一公鑰Key pub,j ,並且將每個該資料提供者自己的k j 位元明文xj編碼為密文|ψ j 〉。
  6. 如請求項1所述之方法,其中,透過該方法建立之多方系統係按照QAPHE中單一身份的半公鑰(semi-public key)執行其功能。
  7. 如請求項6所述之方法,其中,於所述步驟(1)中,還包括所有該
    Figure 111146838-A0305-02-0020-183
    共同產生一半公鑰Key s-pub
  8. 如請求項7所述之方法,其中,該半公鑰由編碼生成算子(encoding generator)所組成。
  9. 如請求項6所述之方法,其中,於所述步驟(2)中,還包括每個該資料提供者選擇一編碼算子(encoding)
    Figure 111146838-A0305-02-0020-136
    ,並且將每個該資料提供者自己的k j 位元明文xj編碼為密文|ψ j 〉。
  10. 如請求項6所述之方法,其中,於所述步驟(2)中
    Figure 111146838-A0305-02-0020-137
    k
  11. 如請求項6所述之方法,所述步驟(3)之後,還包括每個該資料提供者將編碼資訊(encoded message)
    Figure 111146838-A0305-02-0020-138
    傳送至A σ(j),其中σ(j)是置換算子。
  12. 如請求項1所述之方法,其中,該雲端維持單一身分進行平行計算(parallel computation)。
TW111146838A 2021-12-11 2022-12-06 Qap型式同態加密中的多方系統設計的方法 TWI841097B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202163288541P 2021-12-11 2021-12-11
US63/288,541 2021-12-11

Publications (2)

Publication Number Publication Date
TW202324968A TW202324968A (zh) 2023-06-16
TWI841097B true TWI841097B (zh) 2024-05-01

Family

ID=86694019

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111146838A TWI841097B (zh) 2021-12-11 2022-12-06 Qap型式同態加密中的多方系統設計的方法

Country Status (2)

Country Link
US (1) US20230188343A1 (zh)
TW (1) TWI841097B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102023127549A1 (de) 2022-10-10 2024-04-11 Valutis Technologies GmbH Datensicherungs- und/oder Bereitstellungvorrichtung und Verfahren zur Datensicherung und/oder Datenbereitstellung

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120039473A1 (en) * 2010-08-16 2012-02-16 International Business Machines Corporation Efficient Implementation Of Fully Homomorphic Encryption
US20200136797A1 (en) * 2017-06-20 2020-04-30 Nokia Technologies Oy Secured computing
WO2020234874A1 (en) * 2019-05-19 2020-11-26 B.G. Negev Technologies And Applications Ltd., At Ben-Gurion University System and method for performing information-theoretically secure quantum gate computation and quantum key distribution, based on random rotation of qubits
CN113034135A (zh) * 2021-02-08 2021-06-25 中国工商银行股份有限公司 基于区块链的信息处理方法、装置、设备、介质和产品
CN113591650A (zh) * 2021-07-22 2021-11-02 杭州电子科技大学 一种基于特征脸的隐私身份认证方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10333696B2 (en) * 2015-01-12 2019-06-25 X-Prime, Inc. Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency
US10116437B1 (en) * 2015-12-14 2018-10-30 Ingram Micro, Inc. Method for protecting data used in cloud computing with homomorphic encryption
US20200151356A1 (en) * 2017-08-11 2020-05-14 Duality Technologies, Inc. System and method for fast and efficient searching of encrypted ciphertexts
WO2020142110A1 (en) * 2018-12-31 2020-07-09 Intel Corporation Securing systems employing artificial intelligence
EP4205344A1 (en) * 2020-08-27 2023-07-05 Ecole Polytechnique Federale De Lausanne (Epfl) System and method for privacy-preserving distributed training of neural network models on distributed datasets

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120039473A1 (en) * 2010-08-16 2012-02-16 International Business Machines Corporation Efficient Implementation Of Fully Homomorphic Encryption
US20200136797A1 (en) * 2017-06-20 2020-04-30 Nokia Technologies Oy Secured computing
WO2020234874A1 (en) * 2019-05-19 2020-11-26 B.G. Negev Technologies And Applications Ltd., At Ben-Gurion University System and method for performing information-theoretically secure quantum gate computation and quantum key distribution, based on random rotation of qubits
CN113034135A (zh) * 2021-02-08 2021-06-25 中国工商银行股份有限公司 基于区块链的信息处理方法、装置、设备、介质和产品
CN113591650A (zh) * 2021-07-22 2021-11-02 杭州电子科技大学 一种基于特征脸的隐私身份认证方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
網路文獻,蔡明忠,"酉李代數於商代數分割之應用",國立清華大學,物理學系,2011-11-9 ;https://hdl.handle.net/11296/5yjw5z *
網路文獻,蔡明忠,"酉李代數於商代數分割之應用",國立清華大學,物理學系,2011-11-9 ;https://hdl.handle.net/11296/5yjw5z。

Also Published As

Publication number Publication date
US20230188343A1 (en) 2023-06-15
TW202324968A (zh) 2023-06-16

Similar Documents

Publication Publication Date Title
Overbeck Structural attacks for public key cryptosystems based on Gabidulin codes
Sendrier Code-based cryptography: State of the art and perspectives
US10360392B2 (en) Generating shares of secret data
Wieschebrink Two NP-complete problems in coding theory with an application in code based cryptography
CN108712256B (zh) 一种基于椭圆曲线子域子码的加密解密算法
Hwang et al. Secret error-correcting codes (SECC)
Rashwan et al. Security of the GPT cryptosystem and its applications to cryptography
Loidreau Designing a rank metric based McEliece cryptosystem
TWI841097B (zh) Qap型式同態加密中的多方系統設計的方法
Steinfeld et al. Lattice-based threshold changeability for standard shamir secret-sharing schemes
Valentijn Goppa codes and their use in the McEliece cryptosystems
WO2020173062A1 (zh) 一种用于lwe公钥密码的错误协调方法
Lau et al. Polynomial-time plaintext recovery attacks on the IKKR code-based cryptosystems.
TWI841098B (zh) Qap型式同態加密中的單向計算系統設計的方法
Bhatia et al. McEliece cryptosystem based on extended Golay code
Bhatia et al. Post-Quantum Cryptography
Augot et al. Using the Trace Operator to repair the Polynomial Reconstruction based Cryptosystem presented at Eurocrypt 2003
Przydatek et al. Error-tolerant combiners for oblivious primitives
Kim et al. A new LRPC-Kronecker product codes based public-key cryptography
Xu et al. Attacking the Niederreiter-type cryptosystem based on rank metric
You et al. Secure two-party computation approach for ntruencrypt
Ding et al. Research on key exchange protocol based on LWE
Mittal et al. A retrospective study on NTRU cryptosystem
Sahu et al. Secure Modified QC-LDPC Code Based McEliece Public Key Encryption Scheme
Sebastião Smaller keys for McEliece cryptosystems using convolutional encoders