TWI795284B - 基於混淆電路的門檻式簽章生成系統及其方法 - Google Patents
基於混淆電路的門檻式簽章生成系統及其方法 Download PDFInfo
- Publication number
- TWI795284B TWI795284B TW111116933A TW111116933A TWI795284B TW I795284 B TWI795284 B TW I795284B TW 111116933 A TW111116933 A TW 111116933A TW 111116933 A TW111116933 A TW 111116933A TW I795284 B TWI795284 B TW I795284B
- Authority
- TW
- Taiwan
- Prior art keywords
- parameter
- value
- circuit
- host
- bollinger
- Prior art date
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
一種基於混淆電路的門檻式簽章生成系統及其方法,透過提供作為混淆電路的第一布林電路及第二布林電路以供二個主機輸入多個輸入參數並共同執行安全多方計算,使二個主機各自獲得第一布林電路的第一評估值及第二布林電路的第二評估值,以及廣播各主機的隨機亂數與基點的乘積,以便驗證雙方的輸入參數是否正確及通過混淆電路獲得的結果是否相同,進而在正確且相同時生成能夠通過驗證的EdDSA簽章,達到提高生成EdDSA簽章的安全性之技術功效。
Description
本發明涉及一種簽章生成系統及其方法,特別是基於混淆電路的門檻式簽章生成系統及其方法。
近年來,隨著區塊鏈的普及與蓬勃發展,各種基於區塊鏈的交易技術如雨後春筍般湧現。然而,傳統單純由一方生成簽章(或稱為簽名)的方式已經不夠安全,這也使得各家廠商亟欲尋求更安全地生成簽章的方法。
一般而言,傳統的簽章方式是由交易的一方透過私鑰加密,再將加密結果提供給交易的另一方使用與私鑰相應的公鑰進行驗證。然而,倘若遺失私鑰將導致簽章有被偽造的可能。因此,為了強化資產及交易安全性,便有廠商進一步發展可通過多個不同的私鑰產生相應數量的簽章,並且在擁有一定數量的簽章時才會使交易成功的技術手段,如此一來,即使其中一個私鑰被竊、遺失等等,也可以確保交易的安全性。然而,此方式在遺失的私鑰數量滿足門檻時便不再安全了,因此,仍然存在安全性不足的問題。
有鑑於此,各家廠商亟需一種能夠在不需要完整私鑰便能生成可通過驗證的EdDSA簽章,並且完全符合EdDSA所定義的生成方式,藉由此方式可以大幅增加生成EdDSA簽章的安全性,有效避免因為記憶體快取旁路攻擊而被非法取得私鑰,進而存在被偽造簽章的可能性。
綜上所述,可知先前技術中長期以來一直存在傳統生成EdDSA簽章的安全性不足的問題,因此實有必要提出改進的技術手段,來解決此一問題。
本發明揭露一種基於混淆電路的門檻式簽章生成系統及其方法。
首先,本發明揭露一種基於混淆電路的門檻式簽章生成系統,其包含:二個主機,分別為第一主機及第二主機,所述第一主機具有秘密d
1、秘密k
1、X座標x
1及層級值n
1,所述第二主機具有秘密d
2、秘密k
2、X座標x
2及層級值n
2,同時秘密d
1、秘密k
1、秘密d
2及秘密k
2滿足下列運算式以生成秘密d及秘密k:
「BK(x1,n1) * d1 + BK(x2,n2) * d2 = d」;以及
「BK(x1,n1) * k1 + BK(x2,n2) * k2 = k」。
其中,「BK(x
j, n
j)」代表伯克霍夫係數(Birkhoff Coefficient),j為1或2,並且令EdDSA公鑰A為 d * B,以及令驗證橢圓點L為k * B,B為Ed25519或sr25519橢圓曲線群的基點(Base point),每一所述主機皆包含:混淆模組、生成模組、第一計算模組、第二計算模組、驗證模組及簽章模組。其中,混淆模組用以建立作為混淆電路的第一布林電路及第二布林電路,所述第一布林電路允許輸入多個輸入參數,所述輸入參數包含參數v1、參數v2、參數r1、參數r2、參數n及訊息m且輸出第一評估值,每一所述輸入參數允許各自帶入一組位元值,所述第二布林電路允許輸入參數v1、參數v2、參數r1及參數r2且輸出第二評估值,所述第一評估值為「H
2(k,m) + r1 + r2 mod n」,所述第二評估值為「k + r1 + r2」,其中,H
2(k,m)代表將秘密k與訊息m串聯後進行雜湊、H
2代表雜湊函式,通常選擇為SHA-512、m為訊息、參數n為給定橢圓曲線群的個數、參數v1的值為「BK(x
1,n
1)k
1mod n」、參數v2的值為「BK(x
2,n
2)k
2mod n」;生成模組用以在所述主機為第一主機時,產生隨機亂數以作為參數r1且公開第一雜湊值,以及在所述主機為第二主機時,產生隨機亂數以作為參數r2且公開第二雜湊值,其中,第一雜湊值的運算式為「H(r1 * B)」,第二雜湊值的運算式為「H(r2 * B)」,H代表雜湊函式;第一計算模組連接生成模組及混淆模組,當所述主機為第一主機時,使用本身的參數v1、參數r1及訊息m輸入至第一布林電路,以及當所述主機為第二主機時,使用本身的參數v2及參數r2輸入至第一布林電路,用以共同執行第一布林電路,使第二主機根據第一布林電路獲得第一評估值,再使用相同的參數v1、參數v2、參數r1及參數r2共同執行第二布林電路以獲得第二評估值,以及公開第一公開值,所述第一公開值的運算式為「r1 * B」;第二計算模組連接生成模組及混淆模組,用以在所述主機為第二主機時,使用本身的參數v2、參數r2及訊息m輸入至第一布林電路,以及在所述主機為第一主機時,使用本身的參數v1及參數r1輸入至第一布林電路,用以共同執行第一布林電路,使第一主機根據第一布林電路獲得第一評估值,再使用相同的參數v1、參數v2、參數r1及參數r2共同執行第二布林電路以獲得第二評估值,以及公開第二公開值,所述第二公開值的運算式為「r2 * B」;驗證模組連接第一計算模組及第二計算模組,用以驗證本身獲得的第一公開值(即:「r1 * B」)和第二公開值(即:「r2 * B」)所計算出的雜湊值是否與收到的第一雜湊值(即:「H(r1 * B)」)和第二雜湊值(即:「H(r2 * B)」)相等且第二評估值與基點的乘積是否與驗證橢圓點L、第一公開值及第二公開值的總和相等,當驗證結果皆為相等時,根據訊息m、第一公開值、第二公開值及基點計算出第一簽章值R,以及根據第一簽章值R、EdDSA公鑰A及訊息m計算雜湊值c,再根據秘密k、訊息m、雜湊值c、本身的伯克霍夫(Birkhoff)係數b
i及所述秘密d
i計算出相應的數值S
i,其中,i為正整數;以及簽章模組連接驗證模組,用以執行安全驗證協定(Secure Validation Protocol)以相互驗證第一主機及第二主機雙方在第一布林電路所獲得的第一評估值相同,當相同時,加總所有所述數值S
i以生成第二簽章值s,並且根據第一簽章值R與第二簽章值s生成EdDSA數位簽章。
接著,本發明揭露一種基於混淆電路的門檻式簽章生成方法,其步驟包括:(A)提供第一主機及第二主機,所述第一主機具有秘密d
1、秘密k
1、X座標x
1及層級值n
1,所述第二主機具有秘密d
2、秘密k
2、X座標x
2及層級值n
2,同時秘密d
1、秘密k
1、秘密d
2及秘密k
2滿足下列運算式以生成秘密d及秘密k:
「BK(x
1,n
1) * d
1+ BK(x
2,n
2) * d
2= d」;以及
「BK(x
1,n
1) * k
1+ BK(x
2,n
2) * k
2= k」。
其中,「BK(x
j, n
j)」代表伯克霍夫係數,j為1或2,並且令EdDSA公鑰A為 d * B,以及令驗證橢圓點L為k * B,B為Ed25519或sr25519橢圓曲線群的基點;(B)提供作為混淆電路的第一布林電路及第二布林電路,所述第一布林電路允許輸入多個輸入參數,所述輸入參數包含參數v1、參數v2、參數r1、參數r2、參數n及訊息m且輸出第一評估值,每一所述輸入參數允許各自帶入一組位元值,所述第二布林電路允許輸入參數v1、參數v2、參數r1及參數r2且輸出第二評估值,所述第一評估值為「H
2(k,m) + r1 + r2 mod n」,所述第二評估值為「k + r1 + r2」,其中,H
2(k,m)代表將秘密k與訊息m串聯後進行雜湊、參數n為給定橢圓曲線群的個數、參數v1的值為「BK(x
1,n
1)k
1mod n」、參數v2的值為「BK(x
2,n
2)k
2mod n」;(C)第一主機產生隨機亂數以作為參數r1且公開第一雜湊值,第二主機產生隨機亂數以作為參數r2且公開第二雜湊值,其中,第一雜湊值的運算式為「H(r1 * B)」,第二雜湊值的運算式為「H(r2 * B)」,H代表雜湊函式;(D)第一主機使用本身的參數v1、參數r1及訊息m與第二主機使用本身的參數v2及參數r2共同執行第一布林電路,使第二主機根據第一布林電路獲得第一評估值,再使用相同的參數v1、參數v2、參數r1及參數r2共同執行第二布林電路以獲得第二評估值,以及公開第一公開值,所述第一公開值的運算式為「r1 * B」;(E)第二主機使用本身的參數v2、參數r2及訊息m與第一主機使用本身的參數v1及參數r1共同執行第一布林電路,使第一主機根據第一布林電路獲得第一評估值,再使用相同的參數v1、參數v2、參數r1及參數r2共同執行第二布林電路以獲得第二評估值,以及公開第二公開值,所述第二公開值的運算式為「r2 * B」;(F)第一主機及第二主機各自驗證本身獲得的第一公開值和第二公開值所計算出的雜湊值是否與收到的第一雜湊值和第二雜湊值相等且第二評估值與基點的乘積是否與所述驗證橢圓點L、第一公開值及第二公開值的總和相等,當驗證結果皆為相等時,根據訊息m、第一公開值、第二公開值及基點計算出第一簽章值R,以及根據第一簽章值R、EdDSA公鑰A及訊息m計算雜湊值c,再根據秘密k、訊息m、雜湊值c、本身的伯克霍夫係數b
i及所述秘密d
i計算出相應的數值S
i,其中,i為正整數;(G)第一主機及第二主機皆執行安全驗證協定(Secure Validation Protocol)以相互驗證雙方在第一布林電路所獲得的第一評估值相同;以及(H)第一主機及第二主機分別加總所有所述數值S
i以生成第二簽章值s,並且根據第一簽章值R與第二簽章值s生成EdDSA數位簽章。其中,步驟(D)及步驟(E)允許同時執行,以及步驟(G)及步驟(H)允許同時執行。
本發明所揭露之系統與方法如上,與先前技術的差異在於本發明是透過提供作為混淆電路的第一布林電路及第二布林電路以供二個主機輸入多個輸入參數並共同執行安全多方計算,使二個主機各自獲得第一布林電路的第一評估值及第二布林電路的第二評估值,以及廣播各主機的隨機亂數與基點的乘積,以便驗證雙方的輸入參數是否正確及通過混淆電路獲得的結果是否相同,進而在正確且相同時生成能夠通過驗證的EdDSA簽章,達到提高生成EdDSA簽章的安全性之技術功效。
透過上述的技術手段,本發明可以達成提高生成EdDSA簽章的安全性之技術功效。
以下將配合圖式及實施例來詳細說明本發明之實施方式,藉此對本發明如何應用技術手段來解決技術問題並達成技術功效的實現過程能充分理解並據以實施。
首先,在說明本發明所揭露之基於混淆電路的門檻式簽章生成系統及其方法之前,先對本發明自行定義的名詞作說明,本發明所述的「EdDSA公鑰(以「A」示意)」是指公布給各方知道,以便用於進行簽名(或稱簽章)驗證的金鑰。接著,由於在EdDSA私鑰產生過程中,會使用雜湊函式(如:SHA512)進行雜湊,並且將雜湊後所獲得的雜湊值的前半部分作為私鑰,而後半部分即為本發明所述的「驗證橢圓點(以「L」示意)」,其目的是為了確定雙方執行混淆電路時,雙方使用的輸入是正確的輸入。在實際實施上,EdDSA公鑰A的值與 d * B相等,以及驗證橢圓點L的值與k * B相等,其中,d、k為秘密(如:密文、私鑰),B為Ed25519或sr25519橢圓曲線群的基點。
以下配合圖式對本發明基於混淆電路的門檻式簽章生成系統及其方法做進一步說明,請先參閱「第1圖」,「第1圖」為本發明基於混淆電路的門檻式簽章生成系統的第一實施例之系統方塊圖,此系統包含:二個主機(100a、100b),分別為第一主機100a及第二主機100b,所述第一主機100a具有秘密d
1、秘密k
1、X座標x
1及層級值(Rank)n
1,所述第二主機100b具有秘密d
2、秘密k
2、X座標x
2及層級值n
2,同時秘密d
1、秘密k
1、秘密d
2及秘密k
2滿足下列運算式以生成秘密d及秘密k:
「BK(x
1,n
1) * d
1+ BK(x
2,n
2) * d
2= d」;以及
「BK(x
1,n
1) * k
1+ BK(x
2,n
2) * k
2= k」。
其中,「BK(x
j, n
j)」代表伯克霍夫係數,j為1或2,並且令EdDSA公鑰A為 d * B,以及令驗證橢圓點L為k * B,B為Ed25519或sr25519橢圓曲線群的基點,每一所述主機(100a、100b)皆包含:混淆模組110、生成模組120、第一計算模組130、第二計算模組140、驗證模組150及簽章模組160。其中,混淆模組110用以建立作為混淆電路的第一布林電路及第二布林電路,所述第一布林電路允許輸入多個輸入參數,所述輸入參數包含參數v1、參數v2、參數r1、參數r2、參數n及訊息m且輸出第一評估值,每一所述輸入參數允許各自帶入一組位元值,所述第二布林電路允許輸入參數v1、參數v2、參數r1及參數r2且輸出第二評估值,所述第一評估值為「H
2(k,m) + r1 + r2 mod n」,所述第二評估值為「k + r1 + r2」,其中,H
2(k,m)代表將秘密k與訊息m串聯後進行雜湊、參數n為給定橢圓曲線群的個數、參數v1的值為「BK(x
1,n
1)k
1mod n」、參數v2的值為「BK(x
2,n
2)k
2mod n」。具體而言,混淆電路本質上是一個布林電路(Boolean circuit),其通過布林電路的觀點構造函式以進行計算,以便參與者可以針對某個數值來計算答案,而不需要知道參與者在函式中輸入的具體數字,混淆電路裡的安全多方計算可通過電路的方式來實現。在實際實施上,第一布林電路及該第二布林電路可通過及運算(AND)與互斥或運算(XOR)至少其中之一的方式實現混淆電路及安全多方計算(Multi-Party Computation, MPC),並且具有多個輸入線(Wire)以輸入所述輸入參數,每一所述輸入參數帶入的該組位元值為256位元的值,以六個輸入參數為例,合計帶入六個256位元的值,所述第一布林電路為滿足條件「MPCEdDSA(v1,v2,r1,r2,n,m) = H2(k,m) + r1 + r2 mod n」的邏輯電路,所述第二布林電路為滿足條件「ModAdd(v1,v2,r1,r2) = k + r1 + r2」的邏輯電路。特別要說明的是,有別於ECDSA,秘密k
1及秘密k
2的生成方式已經明確定義在EdDSA中,而非使用隨機亂數生成。
生成模組120用以在所述主機(100a、100b)為第一主機100a時,產生隨機亂數以作為參數r1且公開第一雜湊值,以及在所述主機(100a、100b)為第二主機100b時,產生隨機亂數以作為參數r2且公開第二雜湊值,其中,第一雜湊值的運算式為「H(r1 * B)」,第二雜湊值的運算式為「H(r2 * B)」,H代表雜湊函式。
第一計算模組130連接生成模組120及混淆模組110,當所述主機(100a、100b)為第一主機100a時,使用本身的參數v1、參數r1及訊息m輸入至第一布林電路,以及當所述主機(100a、100b)為第二主機100b時,使用本身的參數v2及參數r2輸入至第一布林電路,用以共同執行第一布林電路,使第二主機根據第一布林電路獲得第一評估值,再使用相同的參數v1、參數v2、參數r1及參數r2共同執行第二布林電路以獲得第二評估值,以及公開第一公開值,所述第一公開值的運算式為「r1 * B」。在實際實施上,可通過廣播(Broadcast)的方式公開第一公開值。
第二計算模組140連接生成模組120及混淆模組110,用以在所述主機(100a、100b)為第二主機100b時,使用本身的參數v2、參數r2及訊息m輸入至第一布林電路,以及在所述主機(100a、100b)為第一主機100a時,使用本身的參數v1及參數r1輸入至第一布林電路,用以共同執行第一布林電路,使第一主機根據第一布林電路獲得第一評估值,再使用相同的參數v1、參數v2、參數r1及參數r2共同執行第二布林電路以獲得第二評估值,以及公開第二公開值,所述第二公開值的運算式為「r2 * B」。同樣地,在實際實施上,可通過廣播的方式公開第二公開值。
驗證模組150連接第一計算模組130及第二計算模組140,用以驗證本身獲得的第一公開值和第二公開值所計算出的雜湊值是否與收到的第一雜湊值和第二雜湊值相等且第二評估值與基點的乘積是否與驗證橢圓點L、第一公開值及第二公開值的總和相等(即:ModAdd(v1,v2,r1,r2) * B = 驗證橢圓點L + r1 * B + r2 * B,其中,ModAdd(v1,v2,r1,r2)代表第二布林電路輸出的第二評估值「k + r1 + r2」),當驗證結果皆為相等時,根據訊息m、第一公開值、第二公開值及基點計算出第一簽章值R,以及根據第一簽章值R、EdDSA公鑰A及訊息m計算雜湊值c,再根據秘密k、訊息m、雜湊值c、本身的伯克霍夫(Birkhoff)係數b
i及所述秘密d
i計算出相應的數值S
i,其中,i為正整數。在實際實施上,所述第一簽章值R的運算式為「R = MPCEdDSA(v1,v2,r1,r2,n,m) * B – r1 * B – r2 * B」,其中,「MPCEdDSA(v1,v2,r1,r2,n,m) = H
2(k,m) + r1 + r2 mod n」,「MPCEdDSA(v1,v2,r1,r2,n,m)」代表所述第一布林電路;「H
2(k,m) + r1 + r2 mod n」為第一評估值;所述雜湊值c的運算式為「c = SHA512(R || A || m)」,其中,SHA512為雜湊函式,符號「||」代表串聯,假設R為字串「aa」、A為字串「bb」,則「R || A」為字串「aabb」。在實際實施上,假設「ModAdd(v1,v2,r1,r2) * B」與「驗證橢圓點L + r1 * B + r2 * B」不相等,代表無法滿足恆等式「v1 + v2 = 驗證橢圓點L」,也就是說雙方輸入的參數v1和v2不是正確的輸入,故停止執行。換句話說,通過雙方已知的驗證橢圓點L(即:「k * B」)、前面廣播的第一公開值「r1 * B」及第二公開值「r2 * B」可以驗證「ModAdd(v1,v2,r1,r2) * B = (k + r1 + r2) * B」,進而確認混淆電路的輸入都是正確的,倘若中間任一處出錯都會造成驗證錯誤。
簽章模組160連接驗證模組150,用以執行安全驗證協定以相互驗證第一主機100a及第二主機100b雙方在第一布林電路獲得的第一評估值相同,當相同時,加總所有所述數值S
i以生成第二簽章值s,並且根據第一簽章值R與第二簽章值s生成EdDSA數位簽章。在實際實施上,所述數值S
i的運算式為「S
i= r + c * b
i* d
i」,其中,r = H
2(k,m)。
特別要說明的是,在實際實施上,本發明所述的模組皆可利用各種方式來實現,包含軟體、硬體或其任意組合,例如,在某些實施方式中,各模組可利用軟體及硬體或其中之一來實現,除此之外,本發明亦可部分地或完全地基於硬體來實現,例如,系統中的一個或多個模組可以透過積體電路晶片、系統單晶片(System on Chip, SoC)、複雜可程式邏輯裝置(Complex Programmable Logic Device, CPLD)、現場可程式邏輯閘陣列(Field Programmable Gate Array, FPGA)等來實現。本發明可以是系統、方法及/或電腦程式。電腦程式可以包括電腦可讀儲存媒體,其上載有用於使處理器實現本發明的各個方面的電腦可讀程式指令,電腦可讀儲存媒體可以是可以保持和儲存由指令執行設備使用的指令的有形設備。電腦可讀儲存媒體可以是但不限於電儲存設備、磁儲存設備、光儲存設備、電磁儲存設備、半導體儲存設備或上述的任意合適的組合。電腦可讀儲存媒體的更具體的例子(非窮舉的列表)包括:硬碟、隨機存取記憶體、唯讀記憶體、快閃記憶體、光碟、軟碟以及上述的任意合適的組合。此處所使用的電腦可讀儲存媒體不被解釋爲瞬時訊號本身,諸如無線電波或者其它自由傳播的電磁波、通過波導或其它傳輸媒介傳播的電磁波(例如,通過光纖電纜的光訊號)、或者通過電線傳輸的電訊號。另外,此處所描述的電腦可讀程式指令可以從電腦可讀儲存媒體下載到各個計算/處理設備,或者通過網路,例如:網際網路、區域網路、廣域網路及/或無線網路下載到外部電腦設備或外部儲存設備。網路可以包括銅傳輸電纜、光纖傳輸、無線傳輸、路由器、防火牆、交換器、集線器及/或閘道器。每一個計算/處理設備中的網路卡或者網路介面從網路接收電腦可讀程式指令,並轉發此電腦可讀程式指令,以供儲存在各個計算/處理設備中的電腦可讀儲存媒體中。執行本發明操作的電腦程式指令可以是組合語言指令、指令集架構指令、機器指令、機器相關指令、微指令、韌體指令、或者以一種或多種程式語言的任意組合編寫的原始碼或目的碼(Object Code),所述程式語言包括物件導向的程式語言,如:Common Lisp、Python、C++、Objective-C、Smalltalk、Delphi、Java、Swift、C#、Perl、Ruby與PHP等,以及常規的程序式(Procedural)程式語言,如:C語言或類似的程式語言。所述電腦程式指令可以完全地在電腦上執行、部分地在電腦上執行、作爲一個獨立的軟體執行、部分在客戶端電腦上部分在遠端電腦上執行、或者完全在遠端電腦或伺服器上執行。
請參閱「第2A圖」至「第2C圖」,「第2A圖」至「第2C圖」為本發明基於混淆電路的門檻式簽章生成方法的第一實施例之方法流程圖,其步驟包括:提供第一主機及第二主機,所述第一主機具有秘密d
1、秘密k
1、X座標x
1及層級值n
1,所述第二主機具有秘密d
2、秘密k
2、X座標x
2及層級值n
2,同時秘密d
1、秘密k
1、秘密d
2及秘密k
2滿足下列運算式以生成秘密d及秘密k:
BK(x
1,n
1) * d
1+ BK(x
2,n
2) * d
2= d,
BK(x
1,n
1) * k
1+ BK(x
2,n
2) * k
2= k,
其中,「BK(x
j, n
j)」代表伯克霍夫係數,j為1或2,並且令EdDSA公鑰A為 d * B,以及令驗證橢圓點L為k * B,B為Ed25519或sr25519橢圓曲線群的基點(步驟210);提供作為混淆電路的第一布林電路及第二布林電路,所述第一布林電路允許輸入多個輸入參數,所述輸入參數包含參數v1、參數v2、參數r1、參數r2、參數n及訊息m且輸出第一評估值,每一所述輸入參數允許各自帶入一組位元值,所述第二布林電路允許輸入參數v1、參數v2、參數r1及參數r2且輸出第二評估值,所述第一評估值為「H
2(k,m) + r1 + r2 mod n」,所述第二評估值為「k + r1 + r2」,其中,H
2(k,m)代表將秘密k與訊息m串聯後進行雜湊、訊息m、參數n為給定橢圓曲線群的個數、參數v1的值為「BK(x
1,n
1)k
1mod n」、參數v2的值為「BK(x
2,n
2)k
2mod n」(步驟220);第一主機產生隨機亂數以作為參數r1且公開第一雜湊值,第二主機產生隨機亂數以作為參數r2且公開第二雜湊值,其中,第一雜湊值的運算式為「H(r1 * B)」,第二雜湊值的運算式為「H(r2 * B)」,H代表雜湊函式(步驟230);第一主機使用本身的參數v1、參數r1及訊息m與第二主機使用本身的參數v2及參數r2共同執行第一布林電路,使第二主機根據第一布林電路獲得第一評估值,再使用相同的參數v1、參數v2、參數r1及參數r2共同執行第二布林電路以獲得第二評估值,以及公開第一公開值,所述第一公開值的運算式為「r1 * B」(步驟240);第二主機使用本身的參數v2、參數r2及訊息m與第一主機使用本身的參數v1及參數r1共同執行第一布林電路,使第一主機根據第一布林電路獲得第一評估值,再使用相同的參數v1、參數v2、參數r1及參數r2共同執行第二布林電路以獲得第二評估值,以及公開第二公開值,所述第二公開值的運算式為「r2 * B」(步驟250);第一主機及第二主機各自驗證本身獲得的第一公開值和第二公開值所計算出的雜湊值是否與收到的第一雜湊值和第二雜湊值相等且第二評估值與基點的乘積是否與所述驗證橢圓點L、第一公開值及第二公開值的總和相等,當驗證結果皆為相等時,根據訊息m、第一公開值、第二公開值及基點計算出第一簽章值R,以及根據第一簽章值R、EdDSA公鑰A及訊息m計算雜湊值c,再根據秘密k、訊息m、雜湊值c、本身的伯克霍夫係數b
i及所述秘密d
i計算出相應的數值S
i,其中,i為正整數(步驟260);第一主機及第二主機皆執行安全驗證協定(Secure Validation Protocol)以相互驗證雙方在第一布林電路所獲得的第一評估值相同(步驟270);以及第一主機及第二主機分別加總所有所述數值S
i以生成第二簽章值s,並且根據第一簽章值R與第二簽章值s生成EdDSA數位簽章(步驟280)。其中,步驟240及步驟250允許同時執行,以及步驟270及步驟280允許同時執行。
以下配合「第3圖」以實施例的方式進行如下說明,「第3圖」為應用本發明的混淆電路的示意圖。在實際實施上,本發明的混淆電路包含第一布林電路310及第二布林電路320。其中,第一布林電路310提供輸入線以輸入參數v1(即:「BK(x
1,n
1)k
1mod n」)、參數v2(即:「BK(x
2,n
2)k
2mod n」)、參數r1(即:第一主機100a隨機挑選的亂數)、參數r2(即:第二主機100b隨機挑選的亂數)、參數n(即:給定橢圓曲線群的個數)及訊息m,可示意為「MPCEdDSA(v1,v2,r1,r2,n,m)」,並且輸出第一評估值「H
2(k,m) + r1 + r2 mod n」(其中,「H
2(k,m)」可視為「SHA512(k || m)」,代表先將秘密k與訊息m串聯再進行雜湊後的值);第二布林電路320提供輸入線以輸入參數v1、參數v2、參數r1及參數r2,可示意為「ModAdd(v1,v2,r1,r2)」,並且輸出第二評估值「k + r1 + r2」。在建立上述第一布林電路310時,可使用「及運算(AND)」與「互斥或運算(XOR)」至少其中之一架構滿足條件「MPCEdDSA(v1,v2,r1,r2,n,m) = H
2(k,m) + r1 + r2 mod n」的邏輯電路,而在建立第二布林電路時320,則同樣使用「及運算(AND)」與「互斥或運算(XOR)」至少其中之一架構滿足條件「ModAdd(v1,v2,r1,r2) = k + r1 + r2」的邏輯電路。特別要說明的是,在同一次簽名中,第一布林電路310輸入的參數v1、參數v2、參數r1及參數r2等,同時也是第二布林電路320輸入的參數v1、參數v2、參數r1及參數r2,而每次簽名都會重新選取參數r1及參數r2。
綜上所述,可知本發明與先前技術之間的差異在於透過提供作為混淆電路的第一布林電路及第二布林電路以供二個主機輸入多個輸入參數並共同執行安全多方計算,使二個主機各自獲得第一布林電路的第一評估值及第二布林電路的第二評估值,以及廣播各主機的隨機亂數與基點的乘積,以便驗證雙方的輸入參數是否正確及通過混淆電路獲得的結果是否相同,進而在正確且相同時生成能夠通過驗證的EdDSA簽章,藉由此一技術手段可以解決先前技術所存在的問題,進而達成提高生成EdDSA簽章的安全性之技術功效。
雖然本發明以前述之實施例揭露如上,然其並非用以限定本發明,任何熟習相像技藝者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之專利保護範圍須視本說明書所附之申請專利範圍所界定者為準。
100a,100b:主機
110:混淆模組
120:生成模組
130:第一計算模組
140:第二計算模組
150:驗證模組
160:簽章模組
310:第一布林電路
320:第二布林電路
步驟210:提供一第一主機及一第二主機,該第一主機具有一秘密d
1、一秘密k
1、一X座標x
1及一層級值n
1,以及該第二主機具有一秘密d
2、一秘密k
2、一X座標x
2及一層級值n
2,同時該秘密d
1、該秘密k
1、該秘密d
2及該秘密k
2滿足下列運算式以生成一秘密d及一秘密k:
BK(x
1,n
1) * d
1+ BK(x
2,n
2) * d
2= d,
BK(x
1,n
1) * k
1+ BK(x
2,n
2) * k
2= k,
其中,BK(x
j, n
j)代表伯克霍夫係數,j為1或2,並且令一EdDSA公鑰A為 d * B,以及令一驗證橢圓點L為k * B,B為Ed25519或sr25519橢圓曲線群的一基點
步驟220:提供作為混淆電路的一第一布林電路及一第二布林電路,該第一布林電路允許輸入多個輸入參數,所述輸入參數包含一參數v1、一參數v2、一參數r1、一參數r2、一參數n及一訊息m且輸出一第一評估值,每一所述輸入參數允許各自帶入一組位元值,該第二布林電路允許輸入該參數v1、該參數v2、該參數r1及該參數r2且輸出一第二評估值,所述第一評估值為H
2(k,m) + r1 + r2 mod n,所述第二評估值為k + r1 + r2,其中,H
2(k,m)代表將該秘密k與該訊息m串聯後進行雜湊、該參數n為給定橢圓曲線群的個數、該參數v1的值為BK(x1,n1)k1 mod n、該參數v2的值為BK(x2,n2)k2 mod n
步驟230:該第一主機產生隨機亂數以作為該參數r1且公開一第一雜湊值,該第二主機產生隨機亂數以作為該參數r2且公開一第二雜湊值,其中,該第一雜湊值的運算式為H(r1 * B),該第二雜湊值的運算式為H(r2 * B),H代表雜湊函式
步驟240:該第一主機使用本身的該參數v1、該參數r1及該訊息m與該第二主機使用本身的該參數v2及該參數r2共同執行該第一布林電路,使該第二主機根據該第一布林電路獲得該第一評估值,再使用相同的該參數v1、該參數v2、該參數r1及該參數r2共同執行該第二布林電路以獲得該第二評估值,以及公開一第一公開值,該第一公開值的運算式為r1 * B
步驟250:該第二主機使用本身的該參數v2、該參數r2及該訊息m與該第一主機使用本身的該參數v1及該參數r1共同執行該第一布林電路,使該第一主機根據該第一布林電路獲得該第一評估值,再使用相同的該參數v1、該參數v2、該參數r1及該參數r2共同執行該第二布林電路以獲得該第二評估值,以及公開一第二公開值,該第二公開值的運算式為r2 * B
步驟260:該第一主機及該第二主機各自驗證本身獲得的該第一公開值和該第二公開值所計算出的雜湊值是否與收到的該第一雜湊值和該第二雜湊值相等且該第二評估值與該基點的乘積是否與該驗證橢圓點L、該第一公開值及該第二公開值的總和相等,當驗證結果皆為相等時,各自根據該訊息m、該第一公開值、該第二公開值及該基點計算出一第一簽章值R,以及根據該第一簽章值R、該EdDSA公鑰A及該訊息m計算一雜湊值c,再根據該秘密k、該訊息m、該雜湊值c、本身的一伯克霍夫(Birkhoff)係數b
i及所述秘密d
i計算出相應的一數值S
i,其中,i為正整數
步驟270: 該第一主機及該第二主機皆執行安全驗證協定(Secure Validation Protocol)以相互驗證雙方在該第一布林電路所獲得的該第一評估值相同
步驟280:該第一主機及該第二主機分別加總所有所述數值S
i以生成一第二簽章值s,並且根據該第一簽章值R與該第二簽章值s生成EdDSA數位簽章
第1圖為本發明基於混淆電路的門檻式簽章生成系統的系統方塊圖。
第2A圖至第2C圖為本發明基於混淆電路的門檻式簽章生成方法的方法流程圖。
第3圖為應用本發明的混淆電路的示意圖。
100a,100b:主機
110:混淆模組
120:生成模組
130:第一計算模組
140:第二計算模組
150:驗證模組
160:簽章模組
Claims (10)
- 一種基於混淆電路的門檻式簽章生成系統,該系統包含: 二個主機,分別為一第一主機及一第二主機,該第一主機具有一秘密d 1、一秘密k 1、一X座標x 1及一層級值n 1,該第二主機具有一秘密d 2、一秘密k 2、一X座標x 2及一層級值n 2,同時該秘密d 1、該秘密k 1、該秘密d 2及該秘密k 2滿足下列運算式以生成一秘密d及一秘密k: BK(x 1,n 1) * d 1+ BK(x 2,n 2) * d 2= d, BK(x 1,n 1) * k 1+ BK(x 2,n 2) * k 2= k, 其中,BK(x j, n j)代表伯克霍夫係數,j為1或2,並且令一EdDSA公鑰A為 d * B,以及令一驗證橢圓點L為k * B,B為Ed25519或sr25519橢圓曲線群的一基點,每一所述主機皆包含: 一混淆模組,用以建立作為混淆電路的一第一布林電路及一第二布林電路,該第一布林電路允許輸入多個輸入參數,所述輸入參數包含一參數v1、一參數v2、一參數r1、一參數r2、一參數n及一訊息m且輸出一第一評估值,每一所述輸入參數允許各自帶入一組位元值,該第二布林電路允許輸入該參數v1、該參數v2、該參數r1及該參數r2且輸出一第二評估值,所述第一評估值為H 2(k,m) + r1 + r2 mod n,所述第二評估值為k + r1 + r2,其中,H 2(k,m)代表將該秘密k與該訊息m串聯後進行雜湊、該參數n為給定橢圓曲線群的個數、該參數v1的值為BK(x 1,n 1)k 1mod n、該參數v2的值為BK(x 2,n 2)k 2mod n; 一生成模組,用以在所述主機為該第一主機時,產生隨機亂數以作為該參數r1且公開一第一雜湊值,以及在所述主機為該第二主機時,產生隨機亂數以作為該參數r2且公開一第二雜湊值,其中,該第一雜湊值的運算式為H(r1 * B),該第二雜湊值的運算式為H(r2 * B),H代表雜湊函式; 一第一計算模組,連接該生成模組及該混淆模組,當所述主機為該第一主機時,使用本身的該參數v1、該參數r1及該訊息m輸入至該第一布林電路,以及當所述主機為該第二主機時,使用本身的該參數v2及該參數r2輸入至該第一布林電路,用以共同執行該第一布林電路,使該第二主機根據該第一布林電路獲得該第一評估值,再使用相同的該參數v1、該參數v2、該參數r1及該參數r2共同執行該第二布林電路以獲得該第二評估值,以及公開一第一公開值,該第一公開值的運算式為r1 * B; 一第二計算模組,連接該生成模組及該混淆模組,用以在所述主機為該第二主機時,使用本身的該參數v2、該參數r2及該訊息m輸入至該第一布林電路,以及在所述主機為該第一主機時,使用本身的該參數v1及該參數r1輸入至該第一布林電路,用以共同執行該第一布林電路,使該第一主機根據該第一布林電路獲得該第一評估值,再使用相同的該參數v1、該參數v2、該參數r1及該參數r2共同執行該第二布林電路以獲得該第二評估值,以及公開一第二公開值,該第二公開值的運算式為r2 * B; 一驗證模組,連接該第一計算模組及該第二計算模組,用以驗證本身獲得的該第一公開值和該第二公開值所計算出的雜湊值是否與收到的該第一雜湊值和該第二雜湊值相等且該第二評估值與該基點的乘積是否與該驗證橢圓點L、該第一公開值及該第二公開值的總和相等,當驗證結果皆為相等時,根據該訊息m、該第一公開值、該第二公開值及該基點計算出一第一簽章值R,以及根據該第一簽章值R、該EdDSA公鑰A及該訊息m計算一雜湊值c,再根據該秘密k、該訊息m、該雜湊值c、本身的一伯克霍夫(Birkhoff)係數b i及所述秘密d i計算出相應的一數值S i,其中,i為正整數;以及 一簽章模組,連接該驗證模組,用以執行安全驗證協定(Secure Validation Protocol)以相互驗證該第一主機及該第二主機雙方在該第一布林電路所獲得的該第一評估值相同,當相同時,加總所有所述數值S i以生成一第二簽章值s,並且根據該第一簽章值R與該第二簽章值s生成EdDSA數位簽章。
- 如請求項1之基於混淆電路的門檻式簽章生成系統,其中該第一布林電路及該第二布林電路係通過及運算(AND)與互斥或運算(XOR)至少其中之一的方式實現混淆電路及安全多方計算(Multi-Party Computation, MPC),並且具有多個輸入線(Wire)以輸入所述輸入參數,每一所述輸入參數帶入的該組位元值為256位元的值,所述第一布林電路為滿足下列條件的邏輯電路: MPCEdDSA(v1,v2,r1,r2,n,m) = H 2(k,m) + r1 + r2 mod n, 所述第二布林電路為滿足下列條件的邏輯電路: ModAdd(v1,v2,r1,r2) = k + r1 + r2。
- 如請求項1之基於混淆電路的門檻式簽章生成系統,其中該第一簽章值R的運算式如下: R = MPCEdDSA(v1,v2,r1,r2,n,m) * B – r1 * B – r2 * B, 其中,MPCEdDSA(v1,v2,r1,r2,n,m) 代表所述第一布林電路,並且獲得該第一評估值。
- 如請求項1之基於混淆電路的門檻式簽章生成系統,其中所述數值S i的運算式如下: S i= r + c * b i* d i,其中,r = H 2(k,w)。
- 如請求項1之基於混淆電路的門檻式簽章生成系統,其中該雜湊值c的運算式如下: c = SHA512(R || A || m),其中,SHA512為雜湊函式,符號||代表串聯。
- 一種基於混淆電路的門檻式簽章生成方法,其步驟包括: (A)提供一第一主機及一第二主機,該第一主機具有一秘密d 1、一秘密k 1、一X座標x 1及一層級值n 1,以及該第二主機具有一秘密d 2、一秘密k 2、一X座標x 2及一層級值n 2,同時該秘密d 1、該秘密k 1、該秘密d 2及該秘密k 2滿足下列運算式以生成一秘密d及一秘密k: BK(x 1,n 1) * d 1+ BK(x 2,n 2) * d 2= d, BK(x 1,n 1) * k 1+ BK(x 2,n 2) * k 2= k, 其中,BK(x j, n j)代表伯克霍夫係數,j為1或2,並且令一EdDSA公鑰A為 d * B,以及令一驗證橢圓點L為k * B,B為Ed25519或sr25519橢圓曲線群的一基點; (B)提供作為混淆電路的一第一布林電路及一第二布林電路,該第一布林電路允許輸入多個輸入參數,所述輸入參數包含一參數v1、一參數v2、一參數r1、一參數r2、一參數n及一訊息m且輸出一第一評估值,每一所述輸入參數允許各自帶入一組位元值,該第二布林電路允許輸入該參數v1、該參數v2、該參數r1及該參數r2且輸出一第二評估值,所述第一評估值為H 2(k,m) + r1 + r2 mod n,所述第二評估值為k + r1 + r2,其中,H 2(k,m)代表將該秘密k與該訊息m串聯後進行雜湊、該參數n為給定橢圓曲線群的個數、該參數v1的值為BK(x 1,n 1)k 1mod n、該參數v2的值為BK(x 2,n 2)k 2mod n; (C)該第一主機產生隨機亂數以作為該參數r1且公開一第一雜湊值,該第二主機產生隨機亂數以作為該參數r2且公開一第二雜湊值,其中,該第一雜湊值的運算式為H(r1 * B),該第二雜湊值的運算式為H(r2 * B),H代表雜湊函式; (D)該第一主機使用本身的該參數v1、該參數r1及該訊息m與該第二主機使用本身的該參數v2及該參數r2共同執行該第一布林電路,使該第二主機根據該第一布林電路獲得該第一評估值,再使用相同的該參數v1、該參數v2、該參數r1及該參數r2共同執行該第二布林電路以獲得該第二評估值,以及公開一第一公開值,該第一公開值的運算式為r1 * B; (E)該第二主機使用本身的該參數v2、該參數r2及該訊息m與該第一主機使用本身的該參數v1及該參數r1共同執行該第一布林電路,使該第一主機根據該第一布林電路獲得該第一評估值,再使用相同的該參數v1、該參數v2、該參數r1及該參數r2共同執行該第二布林電路以獲得該第二評估值,以及公開一第二公開值,該第二公開值的運算式為r2 * B; (F)該第一主機及該第二主機各自驗證本身獲得的該第一公開值和該第二公開值所計算出的雜湊值是否與收到的該第一雜湊值和該第二雜湊值相等且該第二評估值與該基點的乘積是否與該驗證橢圓點L、該第一公開值及該第二公開值的總和相等,當驗證結果皆為相等時,各自根據該訊息m、該第一公開值、該第二公開值及該基點計算出一第一簽章值R,以及根據該第一簽章值R、該EdDSA公鑰A及該訊息m計算一雜湊值c,再根據該秘密k、該訊息m、該雜湊值c、本身的一伯克霍夫(Birkhoff)係數b i及所述秘密d i計算出相應的一數值S i,其中,i為正整數; (G)該第一主機及該第二主機皆執行安全驗證協定(Secure Validation Protocol)以相互驗證雙方在該第一布林電路所獲得的該第一評估值相同;以及 (H)該第一主機及該第二主機分別加總所有所述數值S i以生成一第二簽章值s,並且根據該第一簽章值R與該第二簽章值s生成EdDSA數位簽章; 其中,步驟(D)及步驟(E)允許同時執行,以及步驟(G)及步驟(H)允許同時執行。
- 如請求項6之基於混淆電路的門檻式簽章生成方法,其中該第一布林電路及該第二布林電路係通過及運算(AND)與互斥或運算(XOR)至少其中之一的方式實現混淆電路及安全多方計算(Multi-Party Computation, MPC),並且具有多個輸入線(Wire)以輸入所述輸入參數,每一所述輸入參數帶入的該組位元值為256位元的值,所述第一布林電路為滿足下列條件的邏輯電路: MPCEdDSA(v1,v2,r1,r2,n,m) = H 2(k,m) + r1 + r2 mod n, 所述第二布林電路為滿足下列條件的邏輯電路: ModAdd(v1,v2,r1,r2) = k + r1 + r2。
- 如請求項6之基於混淆電路的門檻式簽章生成方法,其中該第一簽章值R的運算式如下: R = MPCEdDSA(v1,v2,r1,r2,n,m) * B – r1 * B – r2 * B, 其中,MPCEdDSA(v1,v2,r1,r2,n,m) 代表所述第一布林電路,並且獲得該第一評估值。
- 如請求項6之基於混淆電路的門檻式簽章生成方法,其中所述數值S i的運算式如下: S i= r + c * b i* d i,其中,r = H 2(k,m)。
- 如請求項6之基於混淆電路的門檻式簽章生成方法,其中該雜湊值c的運算式如下: c = SHA512(R || A || m),其中,SHA512為雜湊函式,符號||代表串聯。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111116933A TWI795284B (zh) | 2022-05-05 | 2022-05-05 | 基於混淆電路的門檻式簽章生成系統及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111116933A TWI795284B (zh) | 2022-05-05 | 2022-05-05 | 基於混淆電路的門檻式簽章生成系統及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI795284B true TWI795284B (zh) | 2023-03-01 |
TW202345542A TW202345542A (zh) | 2023-11-16 |
Family
ID=86692344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111116933A TWI795284B (zh) | 2022-05-05 | 2022-05-05 | 基於混淆電路的門檻式簽章生成系統及其方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI795284B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200162251A1 (en) * | 2018-11-09 | 2020-05-21 | Ares Technologies, Inc. | Systems and methods for distributed key storage |
CN113972981A (zh) * | 2021-09-29 | 2022-01-25 | 中国科学院大学 | 一种基于sm2密码算法的高效门限签名方法 |
CN114070556A (zh) * | 2021-11-15 | 2022-02-18 | 成都卫士通信息产业股份有限公司 | 一种门限环签名方法、装置、电子设备及可读存储介质 |
US20220058642A1 (en) * | 2018-10-02 | 2022-02-24 | Capital One Services, Llc | Systems and methods for amplifying the strength of cryptographic algorithms |
TWI759138B (zh) * | 2021-03-15 | 2022-03-21 | 英屬開曼群島商現代財富控股有限公司 | 基於輸入密碼的門檻式簽章系統及其方法 |
CN114338028A (zh) * | 2020-09-28 | 2022-04-12 | 华为技术有限公司 | 门限签名方法、装置、电子设备和可读存储介质 |
-
2022
- 2022-05-05 TW TW111116933A patent/TWI795284B/zh active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220058642A1 (en) * | 2018-10-02 | 2022-02-24 | Capital One Services, Llc | Systems and methods for amplifying the strength of cryptographic algorithms |
US20200162251A1 (en) * | 2018-11-09 | 2020-05-21 | Ares Technologies, Inc. | Systems and methods for distributed key storage |
CN114338028A (zh) * | 2020-09-28 | 2022-04-12 | 华为技术有限公司 | 门限签名方法、装置、电子设备和可读存储介质 |
TWI759138B (zh) * | 2021-03-15 | 2022-03-21 | 英屬開曼群島商現代財富控股有限公司 | 基於輸入密碼的門檻式簽章系統及其方法 |
CN113972981A (zh) * | 2021-09-29 | 2022-01-25 | 中国科学院大学 | 一种基于sm2密码算法的高效门限签名方法 |
CN114070556A (zh) * | 2021-11-15 | 2022-02-18 | 成都卫士通信息产业股份有限公司 | 一种门限环签名方法、装置、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
TW202345542A (zh) | 2023-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113424185B (zh) | 快速不经意传输 | |
US11057293B2 (en) | Method and system for validating ordered proof of transit of traffic packets in a network | |
CN105337736B (zh) | 全同态消息认证方法、装置及*** | |
US20190149333A1 (en) | Methods and systems for supporting fairness in secure computations | |
JP2019507510A (ja) | 情報及び階層的で決定性の暗号化鍵のセキュアな交換のための共通秘密の決定 | |
US20220051314A1 (en) | Information processing apparatus, information processing system, member identification method, and non-transitory computer readable medium storing program | |
WO2021228239A1 (zh) | 资产类型一致性证据生成、交易、交易验证方法及*** | |
WO2020216078A1 (zh) | 一种基于区块链的竞争排名方法及装置 | |
US11616641B2 (en) | Computer implemented system and method for sharing a common secret | |
TWI511517B (zh) | Information processing apparatus, information processing method, program and recording medium | |
TWI795284B (zh) | 基於混淆電路的門檻式簽章生成系統及其方法 | |
TWI799286B (zh) | 門檻式簽章的亂數生成系統及其方法 | |
TWI759138B (zh) | 基於輸入密碼的門檻式簽章系統及其方法 | |
CN111901102B (zh) | 数据传输方法、电子设备以及可读存储介质 | |
US20230141210A1 (en) | Neural networks | |
CN112715017B (zh) | 使用物理不可克隆函数的密码密钥配置 | |
TWI764811B (zh) | 分層確定性錢包的金鑰生成系統及其方法 | |
CN112243011A (zh) | 一种签名验证方法、***、电子设备及存储介质 | |
TWI776416B (zh) | 分層確定性錢包的門檻式簽章系統及其方法 | |
TWI734087B (zh) | 基於同態加密的簽章系統及其方法 | |
US12034840B2 (en) | Computer implemented system and method for sharing a common secret preliminary class | |
WO2024045677A1 (zh) | 电子装置及电子装置间的身份识别方法 | |
TWI702820B (zh) | 具分級機制的秘密共享簽章系統及其方法 | |
TWI778828B (zh) | 基於區塊鏈的物聯網雙向認證方法 | |
TWI694349B (zh) | 防止記憶體傾印的門檻式簽章系統及其方法 |