国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

門限密碼技術(shù)及其標(biāo)準(zhǔn)化進(jìn)展*

2024-04-28 06:54:58荊繼武張世聰王平建
密碼學(xué)報(bào) 2024年1期
關(guān)鍵詞:私鑰門限份額

荊繼武, 張世聰, 王平建,2

1.中國(guó)科學(xué)院大學(xué) 密碼學(xué)院, 北京 100190

2.中國(guó)科學(xué)院 信息工程研究所, 北京 100085

1 引言

門限密碼為開放的或不夠安全的環(huán)境中的密碼計(jì)算提供了一種更加安全的解決方案.門限密碼的目標(biāo)在于, 當(dāng)少數(shù)幾個(gè)設(shè)備被攻破或被敵手占領(lǐng)后, 密碼的執(zhí)行仍舊是有安全保障的, 也就是說, 密鑰不會(huì)泄漏, 密碼功能能夠正常進(jìn)行.

近年來, 門限密碼安全性潛力的凸顯使其被關(guān)注度日漸增加.研究者們?cè)陂T限密碼領(lǐng)域, 針對(duì)門限密鑰生成、門限密碼計(jì)算等方向提出了大量相關(guān)的新技術(shù)、算法和協(xié)議.RSA 簽名算法相對(duì)比較簡(jiǎn)單, 研究者們很早對(duì)其門限計(jì)算做了許多研究, 近年來新的成果較少, 主要集中在RSA 參數(shù)的多方生成.ECDSA算法由于計(jì)算簽名時(shí)要用到隨機(jī)數(shù)的逆, 因此設(shè)計(jì)其對(duì)應(yīng)的門限算法時(shí)需要引入零知識(shí)證明、同態(tài)加密、不經(jīng)意傳輸或Beaver 三元組乘法等較重的技術(shù), 不但增加了較大的計(jì)算量和帶寬的開銷, 也引入了另外的安全假設(shè).Schnorr 與EdDSA 類門限密碼算法在計(jì)算簽名時(shí), 私鑰和隨機(jī)數(shù)使用都是線性多項(xiàng)式, 因此是門限友好的, 其對(duì)應(yīng)的門限算法實(shí)現(xiàn)起來較為容易, 不過EdDSA 使用確定性算法產(chǎn)生隨機(jī)數(shù), 這是設(shè)計(jì)其對(duì)應(yīng)的門限算法時(shí)要重點(diǎn)考慮的.SM2 算法在簽名時(shí)也使用了非線性的多項(xiàng)式, 這也為其對(duì)應(yīng)的門限算法的設(shè)計(jì)帶來了困難, 不過可以通過變換將簽名公式等價(jià)為更友好的形式, 基于此設(shè)計(jì)的SM2 協(xié)同簽名算法已經(jīng)成為我國(guó)商用密碼產(chǎn)業(yè)生態(tài)的重要一環(huán).同時(shí), 門限密碼的標(biāo)準(zhǔn)化工作也在國(guó)際范圍內(nèi)展開,這些工作將對(duì)門限密碼技術(shù)的應(yīng)用產(chǎn)生深遠(yuǎn)影響.雙線性對(duì)和格密碼的門限算法也是近來的研究熱點(diǎn), 基于雙線性對(duì)的簽名在密碼學(xué)的短簽名、基于身份的簽名中有重要應(yīng)用.格密碼由于運(yùn)算復(fù)雜度相對(duì)較低,且簽名大小相對(duì)較小, 被認(rèn)為是一種合適的抗量子密碼方案.

本文將從門限密碼的基本元素、門限密碼算法和協(xié)議、門限密碼的標(biāo)準(zhǔn)化及應(yīng)用三個(gè)方面展開.基本元素部分將介紹我們對(duì)門限密碼技術(shù)的理解、門限密碼的構(gòu)成以及面臨的主要問題.在算法和協(xié)議部分,由于不同類別的算法在設(shè)計(jì)對(duì)應(yīng)的門限方案時(shí)存在較大差異, 因此將按照算法歸類分別介紹基于RSA、ECDSA、Schnorr 與EdDSA 類、SM2、雙線性對(duì)和格密碼等算法的門限密碼算法相關(guān)工作和最新研究成果, 探索門限密碼技術(shù)方面的各類評(píng)價(jià)指標(biāo), 如其性能、安全性, 并分析其差異.在標(biāo)準(zhǔn)化進(jìn)程部分, 本文將描述當(dāng)前各機(jī)構(gòu)組織為標(biāo)準(zhǔn)化所做的工作, 并指出可能的標(biāo)準(zhǔn)化方向.此外, 本文還將討論門限密碼學(xué)的實(shí)際應(yīng)用場(chǎng)景, 以及在實(shí)際應(yīng)用中面臨的挑戰(zhàn).

2 門限密碼的基本元素和框架

一個(gè)(n,t) 門限密碼(其中n ≥t) 方案包含n個(gè)成員,t稱為門限值或閾值, 至少t個(gè)成員聯(lián)合才能恢復(fù)秘密或完成密碼計(jì)算.門限密碼方案一般基于公鑰密碼算法, 常見的公鑰密碼算法包含加密、解密、簽名和驗(yàn)簽等計(jì)算.由于加密和驗(yàn)簽計(jì)算使用公鑰就可以完成, 因此常見的門限密碼方案多為門限解密方案(往往也被稱為“門限加密方案”) 和門限簽名方案.門限密碼方案使用秘密分享技術(shù)在多個(gè)成員之間分享私鑰和聯(lián)合計(jì)算中的一些敏感參數(shù).一個(gè)(n,t) 門限密碼方案通常會(huì)基于一個(gè)(n,t) 秘密分享方案.(n,t) 秘密分享方案可以在多個(gè)成員之間分享一個(gè)秘密, 任意t或者t個(gè)以上的成員一起可以恢復(fù)分享的秘密, 任意少于t個(gè)成員一起不能得到秘密的任何信息.使用分享的秘密進(jìn)行聯(lián)合計(jì)算是門限密碼方案的核心, 其特點(diǎn)是在聯(lián)合計(jì)算過程中不恢復(fù)秘密, 且單個(gè)計(jì)算結(jié)果也不會(huì)泄露單個(gè)成員的秘密份額.

2.1 門限密碼方案

一個(gè)完整的(n,t) 門限密碼方案通常包括以下三個(gè)算法:

(1) KeyGen, 密鑰生成算法.該算法是一個(gè)分布式密鑰生成算法, 輸入?yún)?shù)為安全參數(shù)λ、參與者數(shù)量n以及門限值t, 輸出公鑰pk 和n個(gè)參與者的私鑰份額sk=(sk1,sk2,···,skn);

(2) ShareCom, 部分密碼算法.該算法輸入?yún)?shù)為特定參與者的密鑰份額ski以及待處理數(shù)據(jù)data,輸出部分結(jié)果σi;

(3) Combine, 組合算法.該算法輸入?yún)?shù)為若干個(gè)部分結(jié)果σi, 當(dāng)輸入部分結(jié)果個(gè)數(shù)達(dá)到t個(gè)時(shí), 運(yùn)算并輸出最終結(jié)果σ.

有時(shí)也把ShareCom 算法和Combine 算法結(jié)合起來, 統(tǒng)稱為門限密碼算法.此外, 門限密碼方案還有可能包含以下三個(gè)算法:

(1) PreCom, 即預(yù)計(jì)算, 是ShareCom 算法的一個(gè)子算法.PreCom 算法的運(yùn)算不依賴于待處理數(shù)據(jù)data, 因此可以獨(dú)立計(jì)算;

(2) ShareVerify, 即份額判斷, 是Combine 算法的一個(gè)子算法, 在正式開始Combine 前執(zhí)行.該算法輸入?yún)?shù)為公鑰pk、待處理數(shù)據(jù)data 以及若干部分結(jié)果σi.該算法對(duì)輸入的部分結(jié)果進(jìn)行判斷, 如果出現(xiàn)異常則中止Combine 算法;

(3) Reshare, 即重新共享份額.方案可以在適當(dāng)?shù)臅r(shí)候重新分配各參與者的私鑰份額為sk′= (sk′1,sk′2,···,sk′n), 以確保安全性.

根據(jù)支持的密碼運(yùn)算不同, 門限密碼方案可以分為門限解密方案和門限簽名方案.門限解密方案的待處理數(shù)據(jù)是使用公鑰加密的密文, 使用的密碼運(yùn)算是私鑰解密, 例如文獻(xiàn)[1–4] 等.門限簽名方案待處理數(shù)據(jù)為待簽名消息, 使用的密碼運(yùn)算是簽名, 例如文獻(xiàn)[5–8] 等.

2.2 安全假設(shè)和安全定義

假設(shè)敵手A 可以至多攻擊n個(gè)成員中的t ?1 個(gè), 尚銘等人很好地定義了靜態(tài)模型下門限密碼相關(guān)安全性[2], 結(jié)合密碼學(xué)常用安全性定義方法[9], 給出如下的簡(jiǎn)單安全定義, 以便讀者理解:

定義1 ((n,t) 門限簽名方案的不可偽造性) 給定系統(tǒng)參數(shù), 敵手A 最多可以破壞t ?1 個(gè)成員, 可以擁有交互運(yùn)行中的視圖, 可以進(jìn)行至多k次適應(yīng)性的選擇消息m1,m2,···,mk的門限簽名查詢, 而最終敵手A 能偽造一個(gè)新消息m的簽名的概率是可忽略的(選擇消息攻擊下的存在性不可偽造安全,existential unforgeability under chosen message attack, EUF-CMA).

定義2 ((n,t) 門限解密方案的保密性) 給定系統(tǒng)參數(shù), 敵手A 最多可以破壞t ?1 個(gè)成員, 可以擁有交互運(yùn)行中的視圖, 進(jìn)行至多k次適應(yīng)性的選擇密文C1,C2,···,Ck的門限解密結(jié)果查詢, 而最終敵手A 區(qū)分出兩個(gè)挑戰(zhàn)密文C和C′是否對(duì)應(yīng)著相同的明文, 其概率是可忽略的(不可區(qū)分的選擇密文安全,indistinguishability under chosen ciphertext attack, IND-CCA).

定義3 ((n,t) 門限簽名/解密方案的健壯性) 在敵手A 最多可以破壞t ?1 個(gè)成員的情況下, 方案仍然能夠成功地運(yùn)行.

上述定義中,k是一個(gè)關(guān)于安全參數(shù)的多項(xiàng)式的值.關(guān)于其他安全模型, 可參看本文2.5.3 小節(jié)“對(duì)敵手的假設(shè)”.

2.3 秘密分享與密鑰生成

門限密碼方案中, 一個(gè)重要的步驟就是多個(gè)成員使用秘密分享技術(shù)生成私鑰或聯(lián)合計(jì)算中的敏感參數(shù).本文將私鑰和敏感參數(shù)統(tǒng)稱為秘密, 秘密按照秘密分享的數(shù)學(xué)公式被拆分成多個(gè)部分, 每一個(gè)部分被稱為一個(gè)秘密份額.這里說的拆分是一個(gè)抽象的概念, 實(shí)際方案中可能并不是對(duì)一個(gè)完整的秘密進(jìn)行拆分,而是每個(gè)成員獨(dú)立生成自己的密鑰份額.安全的方案將使得完整的秘密僅存在于概念中, 無論是在密鑰生成階段還是在聯(lián)合計(jì)算階段, 完整的秘密都不會(huì)出現(xiàn).同樣, 我們強(qiáng)調(diào)能夠恢復(fù)秘密也不是真恢復(fù)秘密, 是因?yàn)橐?lián)合完成密碼計(jì)算也就意味著能夠恢復(fù)秘密.常用的秘密分享方法按秘密的拆分類型, 可以分為基于多項(xiàng)式的拆分、基于加法的拆分、基于乘法的拆分以及其他拆分方法.按照秘密份額和完整秘密之間的關(guān)系, 可以分為加性秘密分享、乘性秘密分享和其他類型秘密分享.

2.3.1 加性秘密分享

簡(jiǎn)單加法的拆分[11]將秘密拆分成多個(gè)秘密份額的和, 即如果原秘密是x, 則拆分方式為:x=x1+x2+···+xt, 其中xi為各個(gè)份額.如果n=t, 每個(gè)成員Ui擁有且僅擁有份額xi, 就形成了一個(gè)(n,n)門限方案, 也就是必須n個(gè)成員全部參與才能恢復(fù)秘密.對(duì)于一般n ≥t的(n,t) 門限方案, 存在兩大類設(shè)計(jì)思路: 第一類思路是將n個(gè)份額冗余地分配給成員, 例如每個(gè)成員Ui擁有除了份額xi以外的其他份額, 則形成一個(gè)(n,2) 門限方案, 只需要2 個(gè)成員就能夠恢復(fù)秘密; 第二類思路是將秘密x多次加法拆分, 每次都拆分成t個(gè)份額的和, 然后將這些份額按一定規(guī)則分配給n個(gè)成員, 分配方法需保證任意t個(gè)成員都恰好湊齊一次加法拆分所有的份額, 就能夠恢復(fù)秘密.簡(jiǎn)單加性拆分的核心就是設(shè)計(jì)份額分配的規(guī)則.與多項(xiàng)式拆分相比, 簡(jiǎn)單加法拆分由于對(duì)于秘密的拆分和恢復(fù)均只需要進(jìn)行加法運(yùn)算, 而不需要多項(xiàng)式求值、拉格朗日插值等運(yùn)算, 因此在實(shí)際使用中易于實(shí)現(xiàn)、運(yùn)算速度快.不過由于份額的冗余分配, 需要更多的存儲(chǔ)開銷.

2.3.2 乘性秘密分享

乘性秘密分享是秘密份額和完整秘密之間存在乘法關(guān)系的一類秘密分享方法.如果原秘密是x, 則拆分方式為:x=x1x2···xn, 其中xi為各個(gè)份額.同加性秘密分享一樣, 在n=t時(shí), 只需每個(gè)成員分配一個(gè)秘密份額, 就可以形成(n,n) 門限方案; 而對(duì)于n>t的情況, 乘性秘密分享也需要將份額冗余地分給成員以滿足門限恢復(fù), 具體方法和加性秘密分享類似.秘密乘性拆分后, 在多個(gè)成員聯(lián)合進(jìn)行公鑰密碼的冪運(yùn)算(RSA 中的乘方計(jì)算和橢圓曲線的點(diǎn)乘計(jì)算等) 時(shí), 往往需要串行操作, 也就是后一個(gè)成員計(jì)算的輸入是前一個(gè)成員計(jì)算的輸出.乘性秘密分享的這種串行計(jì)算特性, 在參與計(jì)算的成員數(shù)量較多時(shí)計(jì)算效率較低, 在(2,2) 門限密碼中較為常見.

2.3.3 其他類型秘密分享

也有一些門限密碼方案中采用的秘密分享方法不能簡(jiǎn)單歸類到加性秘密分享和乘性秘密分享.例如一個(gè)SM2 協(xié)同簽名算法[12]中, 隨機(jī)數(shù)k的拆分方法是k=k1k3+k2, 這是乘性秘密分享和加性秘密分享的組合應(yīng)用.在另一個(gè)基于SM2 算法的協(xié)同簽名方案[13]中, 隨機(jī)數(shù)k的拆分方法是k=k1+d1k2,其中的d1為關(guān)于私鑰的一個(gè)乘性分享份額, 也就是說不但組合使用了加性和乘性秘密分享, 還讓多個(gè)秘密的分享份額之間發(fā)生了關(guān)聯(lián).

2.3.4 秘密分享下的安全密鑰生成

各類門限密碼方案通常會(huì)在初始階段執(zhí)行一次密鑰生成算法, 為各個(gè)成員生成密鑰的分享份額.

一些門限方案的密鑰生成算法為了提高效率、簡(jiǎn)化協(xié)議或完成安全性證明會(huì)借助中心化的可信實(shí)體,我們稱之為可信方.密鑰生成時(shí), 可信方獨(dú)立生成密鑰, 按照選定的秘密拆分方法將密鑰拆分成密鑰份額,然后將密鑰份額發(fā)送給各個(gè)成員, 發(fā)送的過程中需要使用安全信道或者機(jī)密性保護(hù)技術(shù).引入可信方能使密鑰生成過程更加簡(jiǎn)潔高效, 由于僅僅在初始化時(shí)使用, 當(dāng)可信方具備可證明的清除數(shù)據(jù)能力時(shí), 帶來的單點(diǎn)故障風(fēng)險(xiǎn)并不大.

在沒有可信方參與的密鑰生成算法中, 所有成員通常需要兩兩之間多輪交互才能完成密鑰的生成, 為了滿足密鑰份額各成員獨(dú)立掌握的需求, 往往還需要引入同態(tài)加密、多方安全計(jì)算、零知識(shí)證明等, 這帶來了更多的計(jì)算量和更復(fù)雜的協(xié)議, 這也可能會(huì)成為安全的一種隱患.

2.4 門限聯(lián)合計(jì)算

2.4.1 常用算法的聯(lián)合計(jì)算需求

SM2 算法是我國(guó)自主研發(fā)的橢圓曲線公鑰密碼算法, 算法中有這樣的公式:P=kG,s= ((1 +d)?1(k ?rd)modq.其中d是私鑰, 需要分享.而k是隨機(jī)數(shù), 獲得k就能夠求出d, 也必須分享保護(hù).假設(shè)分享了d和k, 如何通過份額di、ki安全地算出s, 同時(shí)不能泄露di或者ki, 就是聯(lián)合計(jì)算面臨的問題.該算法聯(lián)合計(jì)算需求包括單個(gè)秘密的冪運(yùn)算、單個(gè)秘密求逆、兩個(gè)秘密的乘法和加法.由于k是隨機(jī)數(shù), 還涉及秘密分享的生成.

ECDSA 簽名算法是在90 年代初期, 作為DSA 簽名算法的橢圓曲線改進(jìn)版被提出的.其計(jì)算中也有類似的公式:P=kG,s=k?1(m′+rd)modq.其中k和d都需要采用秘密分享的方式分享.該算法聯(lián)合計(jì)算需求包括單個(gè)秘密的冪運(yùn)算、單個(gè)秘密求逆、兩個(gè)秘密的乘法.該算法同樣也有隨機(jī)數(shù)份額的安全生成問題.

EdDSA 簽名算法由Bernstain 等人在2011 年提出.其計(jì)算中也有類似的公式:R=rB,S=(r+H(R,A,M)a)modL.秘密值a和秘密值r都需要采用秘密分享的方式進(jìn)行保護(hù).該算法聯(lián)合計(jì)算需求包括單個(gè)秘密冪運(yùn)算、兩個(gè)秘密的加法.該算法同樣也有隨機(jī)數(shù)份額的安全生成問題.

根據(jù)上述對(duì)SM2、ECDSA 和EdDSA 算法的分析, 常用的聯(lián)合計(jì)算方法包括以分享秘密為指數(shù)的冪計(jì)算、求兩個(gè)分享秘密和的加法計(jì)算、求兩個(gè)分享秘密乘積的乘法計(jì)算和求一個(gè)分享秘密倒數(shù)的求逆計(jì)算等.

2.4.2 聯(lián)合冪計(jì)算

冪運(yùn)算是公鑰密碼算法中的重要算法組件, 通常具有單向性, 例如RSA 中加密運(yùn)算、橢圓曲線上的點(diǎn)乘運(yùn)算等都是冪運(yùn)算.冪運(yùn)算的單向性指的是對(duì)給定x進(jìn)行冪運(yùn)算求得結(jié)果y是相對(duì)簡(jiǎn)單的, 而給定冪運(yùn)算結(jié)果y求值x則是困難的, 其復(fù)雜性往往能歸約到數(shù)學(xué)上的困難問題, 比如RSA 假設(shè)或離散對(duì)數(shù)問題.冪運(yùn)算具有加法同態(tài)性, RSA 中memd=me+d, 橢圓曲線上aG+bG= (a+b)G, 也就是多個(gè)成員可以分別進(jìn)行冪運(yùn)算并公開各自的結(jié)果, 然后再進(jìn)行合成求出最終結(jié)果.冪運(yùn)算還滿足乘法結(jié)合律, RSA中(me)d=med, 橢圓曲線上a(bG) = (ab)G, 也就是說多個(gè)成員可以按一定次序串行進(jìn)行冪運(yùn)算, 由最后一個(gè)成員輸出總體計(jì)算結(jié)果.

在采用加性秘密分享的方案中, 從分享份額恢復(fù)秘密采用的是線性加法.根據(jù)冪運(yùn)算的加法同態(tài)性,在進(jìn)行分享秘密的冪運(yùn)算時(shí), 可以由每個(gè)參與方單獨(dú)使用自己擁有的秘密份額進(jìn)行冪運(yùn)算并公開作為中間結(jié)果, 最后所有節(jié)點(diǎn)都可以收集并使用這些中間結(jié)果合成最終結(jié)果.例如, 考慮兩個(gè)參與者的情況, 它們分別擁有秘密d的份額d1和d2, 并且d=αd1+βd2, 其中α和β是1 或者按照拉格朗日插值公式確定的常數(shù).則在橢圓曲線上計(jì)算冪dG的時(shí)候, 可以由參與者1 計(jì)算并公開Q1=d1G, 參與者2 計(jì)算并公開Q2=d2G, 這樣每個(gè)參與者都可以計(jì)算Q=αQ1+βQ2, 根據(jù)冪運(yùn)算的性質(zhì), 可以看出Q=(αd1+βd2)G=dG.

在采用乘性秘密分享的方案中, 從分享份額恢復(fù)秘密采用的是簡(jiǎn)單的乘法, 根據(jù)冪運(yùn)算滿足乘法結(jié)合律, 在進(jìn)行分享秘密的冪運(yùn)算時(shí), 可以由參與方按一定次序串行使用自己擁有的秘密份額進(jìn)行冪運(yùn)算并公開作為下一個(gè)參與方的輸入, 最后一個(gè)計(jì)算的參與方輸出最終結(jié)果.

2.4.3 聯(lián)合加法計(jì)算

聯(lián)合加法計(jì)算就是多個(gè)成員通過各自的分享ai和bi計(jì)算獲得秘密a,b的和c的過程.

在采用加性秘密分享的方案中, 從分享份額恢復(fù)秘密采用的是線性加法, 根據(jù)加法的交換律和結(jié)合律,在計(jì)算分享秘密a和b的加法時(shí), 可以由各個(gè)成員把自己擁有的份額ai和bi線性相加就得到了a+b的分享份額.例如, 在采用Shamir 秘密分享方法時(shí), 考慮兩個(gè)參與者的情況,a=αa1+βa2,b=αb1+βb2,其中α和β是1 或者按照拉格朗日插值公式確定的常數(shù).則c=a+b= (αa1+βa2)+(αb1+βb2) =α(a1+b1)+β(a2+b2).可以看出只需要c1=a1+b1,c2=a2+b2, 也就是說將兩個(gè)不同秘密的分享份額直接線性相加就得到兩個(gè)秘密之和c的分享份額, 再根據(jù)拉格朗日插值公式計(jì)算出c.

如果要計(jì)算一個(gè)已分享秘密與一個(gè)常數(shù)(參與各方都知道的一個(gè)量) 的加法, 則計(jì)算結(jié)果是不能公開的.在采用多項(xiàng)式拆分的方案中, 相當(dāng)于加上一個(gè)僅有常數(shù)項(xiàng)的多項(xiàng)式(次數(shù)為0), 也就是參與計(jì)算的成員簡(jiǎn)單地把各自的秘密份額都加上這個(gè)常數(shù)就可以了.而在采用簡(jiǎn)單加法拆分的方案中, 由于加法的結(jié)合律, 可以讓參與計(jì)算的其中一個(gè)成員把自己的秘密份額加上這個(gè)常數(shù)就可以了.但是在乘性秘密分享的方案中, 計(jì)算一個(gè)已分享秘密與一個(gè)常數(shù)的加法仍然是一個(gè)較為復(fù)雜的問題, 一般不建議這么設(shè)計(jì).

2.4.4 聯(lián)合乘法計(jì)算

聯(lián)合乘法計(jì)算就是多個(gè)成員通過各自分享的ai和bi計(jì)算獲得秘密a,b的乘積c的過程.

在采用加性秘密分享的方案中, 從分享份額恢復(fù)秘密采用的是線性加法.考慮兩個(gè)參與者的情況,a=αa1+βa2,b=αb1+βb2, 其中α和β是1 或者按照拉格朗日插值公式確定的常數(shù).則c=ab=(αa1+βa2)(αb1+βb2)=α2a1b1+αβ(a1b2+a2b1)+β2a2b2.沒有簡(jiǎn)單的方法在保密各自秘密份額的前提下計(jì)算c.已有的方案中, 常采用同態(tài)加密技術(shù)、不經(jīng)意傳輸技術(shù)或Beaver 三元組乘法等完成加性秘密分享的乘法計(jì)算.兩個(gè)秘密的乘積重新進(jìn)行加性分享的方法被稱為MtA (multiplicative-to-additive)方法.例如文獻(xiàn)[14] 提出的MtA 方法, 為了完成乘積的秘密分享, 分享了若干個(gè)和為0 的秘密, 并在同態(tài)加密計(jì)算過程中消去, 從而得到秘密乘積的加性分享.此外, Shamir 多項(xiàng)式秘密分享方案作為一種特殊的加性秘密分享方案, 分享份額是分享多項(xiàng)式(t ?1 階) 的值, 而分享的秘密是這個(gè)多項(xiàng)式的常數(shù)項(xiàng), 因此兩個(gè)不同秘密的分享份額的乘積可以作為這兩個(gè)分享秘密的乘積的分享份額, 只不過對(duì)應(yīng)的分享多項(xiàng)式變?yōu)?t ?2 階, 需要2t ?1 個(gè)成員才能通過插值公式恢復(fù)出共享的秘密, 這就需要總成員的個(gè)數(shù)n ≥2t ?1.

在采用乘性秘密分享的方案中, 從分享份額恢復(fù)秘密采用的是簡(jiǎn)單的乘法,a=a1a2,b=b1b2, 因此c=ab= (a1a2)(b1b2) = (a1b1)(a2b2) =c1c2, 可以看出只需要c1=a1b1,c2=a2b2, 也就是說將兩個(gè)不同秘密的分享份額直接相乘就得到兩個(gè)秘密乘積的分享份額.

2.4.5 聯(lián)合求逆計(jì)算

聯(lián)合求逆計(jì)算也就是多個(gè)成員通過計(jì)算, 各自獲得某個(gè)已分享秘密a的逆的分享份額的過程.假設(shè)成員Ui擁有秘密a的份額分別是ai, 通過聯(lián)合求逆計(jì)算,Ui將獲得c=a?1的分享份額ci.

在采用加性秘密分享方法的方案中, 通過如下步驟進(jìn)行求逆計(jì)算: 參與計(jì)算的參與方通過秘密分享的方法分享新的隨機(jī)秘密b, 參與方Ui的分享份額為bi; 每個(gè)參與方計(jì)算(ab)i=aibi并公開; 每個(gè)參與方通過秘密分享的恢復(fù)方法恢復(fù)出秘密ab, 并計(jì)算ci= (ab)?1bi得到a?1的分享份額.注意, 如果采用Shamir 秘密分享方法, 上述過程中需要至少2t ?1 個(gè)成員參與計(jì)算.

2.5 門限密碼方案評(píng)價(jià)指標(biāo)

在實(shí)際部署中, 往往需要從不同的角度評(píng)價(jià)一個(gè)門限密碼方案是否適合當(dāng)前環(huán)境.本節(jié)中簡(jiǎn)單介紹一些評(píng)價(jià)的指標(biāo).

2.5.1 性能

密碼學(xué)方案運(yùn)算的性能是人們關(guān)注的要點(diǎn)之一.各類不同的密碼方案需要在不同的性能與安全性之間做權(quán)衡.門限密碼方案中, 主要關(guān)注以下幾點(diǎn):

(1) 是否需要交互.在門限密碼方案中, 是否需要進(jìn)行交互是一個(gè)重要的考慮因素.一般而言, 門限密碼方案的執(zhí)行過程中, 每個(gè)參與者需要進(jìn)行運(yùn)算并與其他參與者進(jìn)行通信, 將自己的運(yùn)算結(jié)果發(fā)送給他人, 也獲取他人的運(yùn)算結(jié)果.這樣的交互顯然會(huì)帶來通信開銷, 因此研究者們通過采用預(yù)處理方式, 減少交互次數(shù), 更有學(xué)者提出了非交互式的門限密碼方案[15–19].

(2) 方案執(zhí)行輪次.門限密碼方案需要多個(gè)參與者共同協(xié)作完成.把上面所說的所有人都進(jìn)行發(fā)送-接收的過程稱為“一輪”.在其他條件相近的情況下, 一個(gè)門限密碼方案執(zhí)行輪次越多, 那么需要的響應(yīng)時(shí)間也越多, 門限密碼方案也就越低效.

(3) 通信復(fù)雜度.通信復(fù)雜度與門限密碼方案執(zhí)行過程中, 所有參與者進(jìn)行的數(shù)據(jù)交換總量有關(guān).通信復(fù)雜度的計(jì)算包括部分解密/部分簽名進(jìn)行的數(shù)據(jù)交換, 以及通信中為了功能性額外附加的零知識(shí)證明等等.通信復(fù)雜度越高, 整體的門限密碼方案執(zhí)行效率越低.帶寬指的是單位時(shí)間內(nèi)傳輸?shù)臄?shù)據(jù)量, 研究者們也常用帶寬(bindwidth) 一詞來描述通信復(fù)雜度.

(4) 計(jì)算復(fù)雜度.計(jì)算復(fù)雜度關(guān)注的是各個(gè)參與者在門限密碼方案中所需要進(jìn)行的本地計(jì)算復(fù)雜度.計(jì)算復(fù)雜度除了考慮加密、解密或簽名等操作本身的計(jì)算量外, 還可能會(huì)包括門限密碼方案的零知識(shí)證明、同態(tài)加密等為了安全性、功能性進(jìn)行的計(jì)算量.計(jì)算復(fù)雜度越大, 門限密碼方案往往也就越低效.

2.5.2 安全性假設(shè)

不同的加解密、簽名方案可能基于不同的安全性假設(shè).例如, 基于大數(shù)分解的密碼方案往往要基于RSA 問題的困難性, 而基于ECDSA 類算法的密碼方案則一定會(huì)依賴于ECDLP 問題的困難性.早期的論文往往對(duì)方案安全性缺乏論證[20], 但是后來人們逐漸會(huì)對(duì)論文附上安全性的說明.為了可證安全, 很多方案引入了零知識(shí)證明或同態(tài)加密等技術(shù), 這不但增加了計(jì)算量, 而且還引入了這些新技術(shù)的安全性假設(shè),例如Paillier 同態(tài)加密算法基于復(fù)合剩余類的困難問題.

2.5.3 對(duì)敵手的假設(shè)

一個(gè)門限方案的敵手可能會(huì)在方案的執(zhí)行過程中, 進(jìn)行消息的多發(fā)、漏發(fā)、修改, 也可能會(huì)控制一個(gè)或多個(gè)門限方案的參與者, 掌握他們的秘密分享份額, 參與他們的門限方案執(zhí)行過程, 并讓這些被控制的參與者向其他參與者發(fā)送一些與方案正常執(zhí)行時(shí)不同的消息.據(jù)此, 本文將從以下幾個(gè)角度進(jìn)行評(píng)判不同的門限密碼方案中敵手的類型:

(1) 敵手在何時(shí)選取污染方.根據(jù)這一指標(biāo), 我們將敵手分為兩類: 靜態(tài)的和自適應(yīng)的, 其中自適應(yīng)敵

手會(huì)比靜態(tài)敵手更難防御.

? 靜態(tài)(static): 敵手必須在門限密碼方案開始執(zhí)行前就選定污染方.

? 自適應(yīng)(adaptive): 敵手可以在任何時(shí)刻選定污染方, 包括門限密碼方案開始執(zhí)行前或執(zhí)行過程中.敵手一旦選定了污染方, 就可以獲得該參與者此前執(zhí)行方案的所有計(jì)算過程, 并可以加以利用.

(2) 敵手是否遵循密碼方案.在門限密碼方案中, 不同類型的敵手在控制參與者后所采取的行動(dòng)可能各不相同.基于其遵守門限密碼方案規(guī)則的程度, 敵手可被劃分為兩類: 好奇的、惡意的, 其中惡意敵手會(huì)比好奇敵手更難防御.

? 好奇(curious)敵手: 也稱為半誠(chéng)實(shí)(semi-honest)敵手或被動(dòng)(passive)敵手, 敵手會(huì)獲取到污染方的計(jì)算過程等信息, 但不能強(qiáng)制被污染的參與者發(fā)送不遵循門限密碼方案的消息.在這種情形下, 敵手能夠讀取并嘗試?yán)梦廴痉叫孤兜男畔? 從而獲取更多秘密信息.

? 惡意(malicious) 敵手: 也稱為主動(dòng)(active) 敵手, 敵手可以獲取到污染方的信息, 同時(shí)也可以強(qiáng)制被污染的參與者發(fā)送不遵循門限密碼方案的消息.在這種情形下, 敵手可以讓污染方向其他門限密碼方案的參與者發(fā)送任意消息, 并觀察這些參與者的反應(yīng).

(3) 敵手能否控制信道.信道一般而言有兩種, 即廣播信道與點(diǎn)對(duì)點(diǎn)信道.當(dāng)敵手控制并阻礙一些參與者之間的通信信道的時(shí)候, 可能會(huì)使得正常執(zhí)行門限密碼方案的參與方無法正常通信.為簡(jiǎn)化模型, 大多數(shù)論文會(huì)假設(shè)兩種信道均可用且可信.

(4) 敵手是否有誠(chéng)實(shí)多數(shù)假設(shè).一些門限密碼方案中會(huì)有“誠(chéng)實(shí)多數(shù)” (honest majority) 的安全假設(shè).也就是說, 這些密碼系統(tǒng)僅考慮參與者有超過一半是誠(chéng)實(shí)的情況, 即只針對(duì)滿足n ≥2t ?1 的(n,t) 構(gòu)造門限方案.這樣的假設(shè)可以簡(jiǎn)化方案的安全性證明, 然而, 實(shí)際場(chǎng)景很難強(qiáng)制敵手滿足這一假設(shè).一些門限密碼方案[15,21–24]可以做到“非誠(chéng)實(shí)多數(shù)” (dishonest majority), 即對(duì)任意滿足n ≥t的(n,t) 都可以構(gòu)造門限方案.

2.5.4 方案的特性

門限密碼方案中還有一些值得探討的特性:

(1) 是否需要可信方: 在門限密碼方案中, 往往首先需要進(jìn)行秘密份額分發(fā).有的方案中, 這樣的過程需要借助中心化的可信實(shí)體, 稱之為可信方.一些方案為了提高效率、簡(jiǎn)化協(xié)議或完成安全性證明會(huì)引入可信方.然而, 引入可信方可能會(huì)帶來單點(diǎn)故障的風(fēng)險(xiǎn).

(2) 是否能夠在異常情況下中止: 異常情況的處理是評(píng)估門限密碼方案魯棒性的關(guān)鍵部分之一.在多方參與者共同執(zhí)行門限密碼方案的情況下, 可能會(huì)出現(xiàn)部分參與者延遲響應(yīng)、不響應(yīng)或出現(xiàn)惡意行為的異常情況.誠(chéng)實(shí)方如果在面對(duì)異常情況下仍無變化地繼續(xù)執(zhí)行原方案, 就可能會(huì)導(dǎo)致執(zhí)行錯(cuò)誤, 有些甚至?xí)?dǎo)致其秘密泄露[7,14,16,19,25–27].

(3) 同步或異步: 在門限密碼方案中, 同步和異步描述了參與者之間的通信模式.對(duì)于一次通信而言,同步模型中存在著執(zhí)行的先后順序, 參與者需要按照指定的順序完成計(jì)算操作, 而前面執(zhí)行未完成時(shí), 后面的必須等待.同步模型往往會(huì)讓算法設(shè)計(jì)分析變得更加簡(jiǎn)單, 但是在實(shí)際應(yīng)用中可能不太實(shí)用.異步模型中則不存在這樣的時(shí)間限制, 參與者可以在任何時(shí)間接收或發(fā)送消息.

(4) 擴(kuò)展性: 擴(kuò)展性指的是隨著參與者總量n的增加, 方案性能如何變化.隨著參與者總量的增加,門限密碼方案的通信量和計(jì)算量都可能會(huì)顯著增加.擴(kuò)展性良好的方案能夠在大量參與者執(zhí)行方案時(shí)也不會(huì)出現(xiàn)顯著的性能下降.另一個(gè)值得注意的問題是一些方案可能僅考慮特定數(shù)量參與者設(shè)計(jì), 如只考慮n=t=2 的協(xié)同簽名情形.

3 算法與協(xié)議進(jìn)展

門限密碼學(xué)領(lǐng)域涵蓋許多不同算法的門限方案研究.本節(jié)旨在介紹門限密碼學(xué)在各類算法中安全性、效率等方面的研究重點(diǎn)和進(jìn)展及在實(shí)踐中的應(yīng)用, 并讓讀者了解門限密碼學(xué)研究的最新動(dòng)態(tài).

3.1 RSA 門限密碼算法

RSA 算法是一種基于大數(shù)分解問題困難性構(gòu)建的公鑰算法, 也是目前世界上最常用的公鑰加密和數(shù)字簽名算法之一.研究者們對(duì)RSA 門限密碼研究開展時(shí)間也相對(duì)較早, 近年來研究較少.RSA 算法密鑰生成階段需要隨機(jī)產(chǎn)生兩個(gè)大素?cái)?shù), 然后基于這兩個(gè)大素?cái)?shù)生成公鑰和私鑰.解密和簽名階段都是對(duì)私鑰d進(jìn)行冪運(yùn)算.

RSA 簽名算法相對(duì)比較簡(jiǎn)單, 研究者們對(duì)其門限計(jì)算做了許多研究.在1989 年, Frankel 提出了首個(gè)(n,n) 門限RSA 簽名方案[28].該方案對(duì)私鑰使用了加性秘密分享, 通過冪運(yùn)算后簡(jiǎn)單相乘來計(jì)算完整的簽名.1998 年, Rabin 等人提出了一個(gè)非誠(chéng)實(shí)多數(shù)RSA 門限簽名方案[29].該方案對(duì)私鑰使用了加性秘密分享.在秘密分享階段, 該方案同樣需要可信第三方來預(yù)先確定RSA 參數(shù), 私鑰份額分享則是使用Feldman-VSS 協(xié)議[30].該方案中引入了可用的定期重新分享秘密的方法, 使該方案做到了主動(dòng)安全(proactive), 增強(qiáng)了該方案的魯棒性.Shoup 在2000 年提出了非交互性的非誠(chéng)實(shí)多數(shù)RSA 門限簽名方案[20].該方案借助可信第三方對(duì)私鑰使用了多項(xiàng)式秘密分享, 通過擴(kuò)展歐幾里得算法, 可以結(jié)合各份額得到簽名.該方案中, RSA 模數(shù)N=pq需要滿足p、q為“強(qiáng)素?cái)?shù)”, 即p= 2p′+1、q= 2q′+1 的p′、q′也需要是質(zhì)數(shù).2001 年, Damg?rd 等人提出了無需可信第三方進(jìn)行密鑰生成的RSA 門限簽名方案[31].該方案對(duì)隨機(jī)數(shù)模數(shù)中的p,q做了加性分享, 同時(shí)對(duì)密鑰份額進(jìn)行了多項(xiàng)式分享方法.同時(shí)該方案無需p,q為“強(qiáng)素?cái)?shù)”, 只需要p ?1,q ?1 的最小質(zhì)因子大于參與者數(shù)n即可.2006 年Almansa 等人則提出了自適應(yīng)安全的RSA 門限簽名方案[5].該文也假設(shè)具有可信第三方來幫助秘密份額分發(fā), 并對(duì)私鑰使用了特殊的加性秘密分享此外, 該文的私鑰分享中還支持主動(dòng)安全, 可以通過類似的方法[29]做到份額更新, 每次份額更新時(shí)公共私鑰dpublic也會(huì)進(jìn)行更新.該方案通過基于模擬的方法證明了其抗自適應(yīng)攻擊的安全性.2023 年, Tessaro 與Zhu 提出了一種能夠滿足TS-UF-1 安全性[15]的門限RSA 簽名方案[8].該方案所述安全性中除了參與方數(shù)量n和需要合成完整簽名所需的參與方數(shù)量t外, 還有一個(gè)參數(shù)k, 代表至多會(huì)有k個(gè)參與方會(huì)被污染.在這種安全性下, 必須要有足夠多的誠(chéng)實(shí)參與方參與, 才能生成一個(gè)簽名.該方案設(shè)計(jì)了一個(gè)基于RSA 假設(shè)的線性哈希函數(shù), 并用該哈希函數(shù)來代替FROST 方案[15]中的冪函數(shù)gx, 從而得到了一種依賴于RSA 假設(shè)的門限簽名算法.

到Almansa 提出自適應(yīng)安全的RSA 算法為止, 各類RSA 門限算法已經(jīng)有了很好的表現(xiàn), 如非交互性[20]、無需可信方[31]、自適應(yīng)安全[5]等方面均有解決方案.在本世紀(jì)10 年代, 密碼學(xué)的熱點(diǎn)逐漸轉(zhuǎn)移到了橢圓曲線等新興算法中.此后對(duì)于RSA 門限密碼算法的研究逐漸變少, 且研究范圍主要集中在RSA模數(shù)的多方生成.表1 列舉了若干具有代表性的RSA 門限密碼方案.

表1 RSA 門限密碼方案概要Table 1 Summary of threshold RSA schemes

3.2 ECDSA 門限密碼算法

ECDSA 的門限密碼研究可以追溯到其離散對(duì)數(shù)版本, 即DSA 簽名的門限密碼研究.然而早期的ECDSA (n,t) 門限簽名均需要滿足n ≥2t ?1.也就是說, 這樣的方案依賴于“誠(chéng)實(shí)多數(shù)” 的假設(shè).ECDSA 非誠(chéng)實(shí)多數(shù)的門限密碼方案直到2016 年才被Gennaro 等人提出[32].該方案在秘密份額分發(fā)的過程中假設(shè)有可信第三方能幫其完成秘密份額分享, 并在簽名計(jì)算過程中使用了一種Paillier 同態(tài)加密算法的變種, 使其對(duì)(n,t) 的要求無需滿足誠(chéng)實(shí)多數(shù).該方法對(duì)密鑰和隨機(jī)數(shù)使用了加性秘密分享, 通過加法同態(tài)加密方法完成了分享秘密的乘法計(jì)算和求逆計(jì)算, 為了安全性證明還使用了大量范圍證明相關(guān)的零知識(shí)證明及承諾方法, 因此該門限密碼方案的秘密分享算法計(jì)算量開銷較大.

2018 年, Gennaro 和Goldfeder[14]對(duì)上述算法進(jìn)行了優(yōu)化, 引入Feldman 可驗(yàn)證秘密分享方法(verifiable secret sharing, VSS), 出現(xiàn)惡意敵手協(xié)議就會(huì)中止, 并在簽名過程以輪次增加的代價(jià)大幅減少了計(jì)算量開銷.同年, Lindell 也提出了類似的門限簽名方案[33], 其秘密分享過程使用ElGamal 算法的指數(shù)形式代替了Paillier 算法, 減少了分布式密鑰生成過程的計(jì)算量開銷.2020 年, Gennaro 和Goldfeder在文獻(xiàn)[14] 算法的基礎(chǔ)上提出了一種ECDSA 門限簽名方案[7], 改進(jìn)了對(duì)協(xié)議中止情形的處理, 提供可識(shí)中止(identifiable abort), 并進(jìn)一步提出了通過離線的預(yù)處理和將大部分計(jì)算交給本地計(jì)算的方法減少了交互輪次.

2019 年, Doerner 等人將其之前的協(xié)同簽名方案[34]擴(kuò)展為了普遍的(n,t) 門限簽名方案[35].該簽名方案對(duì)密鑰使用了加性秘密分享, 同時(shí)對(duì)隨機(jī)數(shù)k及其倒數(shù)k?1做了一種特殊的乘性秘密分享.該方法使用文獻(xiàn)[36] 中所述的不經(jīng)意傳輸(oblivious transfer, OT) 方法完成了分享秘密的乘法計(jì)算.由于其乘法計(jì)算是基于每?jī)扇诉M(jìn)行一次計(jì)算這樣的樹狀結(jié)構(gòu), 其交互輪次為對(duì)數(shù)級(jí)的.對(duì)于簽名方案而言, 文中給出的結(jié)論交互輪次是為log(t)+6 輪.此外, 該文的安全性只需要依賴CDH 假設(shè).

2020 年, Damg?rd 等人提出了一種使用Shamir 秘密分享的ECDSA 門限簽名方案[25], 需要參與門限簽名的(n,t) 保證誠(chéng)實(shí)多數(shù), 安全性僅依賴于ECDSA 的安全性假設(shè).該門限簽名方案的特殊之處在于使用了Shamir 算法代替了VSS 方案(verifiable secret sharing)進(jìn)行密鑰分發(fā),使得其秘密份額分發(fā)效率得到了提高.文中還強(qiáng)調(diào)了之前一些基于非誠(chéng)實(shí)多數(shù)的門限簽名方案[14,33,34]沒有做到公平性(fairness).也就是說, 敵手可以在自己生成完整的ECDSA 簽名后中止協(xié)議, 這將可能導(dǎo)致其它誠(chéng)實(shí)參與方獲得不到完整的簽名.該論文默認(rèn)方案中也不保證公平性, 但是說明了如何在預(yù)處理階段額外進(jìn)行兩輪計(jì)算來為該方案加入公平性.

2020 年, Canetti 等人提出了一種可識(shí)別中止、同時(shí)可以抗自適應(yīng)攻擊的ECDSA 門限簽名方案[16].該方案對(duì)密鑰和隨機(jī)數(shù)使用了加性秘密分享, 通過MtA 的方法完成了分享秘密的乘法計(jì)算, 總體而言思路與文獻(xiàn)[7] 類似.該方案的安全性在UC 框架(通用可組合性框架, universally composable[37]) 下進(jìn)行證明, 其安全性可以歸約到ECDSA 的不可偽造性、Paillier 加密和強(qiáng)RSA 假設(shè)的安全性上.該方案?jìng)?cè)重關(guān)注各參與者的安全性, 組合了可識(shí)別中止以及抗自適應(yīng)攻擊兩種特性, 使得在被污染的參與方發(fā)送惡意信息時(shí), 該門限密碼方案可識(shí)別出發(fā)送惡意信息的參與者, 并進(jìn)行秘密份額的重新分配.同時(shí), 該算法也將簽名分為了未知待簽名消息的預(yù)處理階段與獲取消息后的交互階段.該方案中需要三輪預(yù)簽名交互、一輪簽名交互.該簽名的三輪預(yù)簽名方案對(duì)于可識(shí)別中止需要O(n2) 的計(jì)算才能得知發(fā)送惡意信息的是哪些參與方.該文還提出了一種需要六輪預(yù)簽名加一輪簽名的ECDSA 門限簽名方案, 其安全性額外需要依賴于DDH 假設(shè), 好處是識(shí)別出惡意參與方只需要O(n) 的計(jì)算量.

2020 年, Castagnos 等人在ECDSA 協(xié)同簽名[38]的基礎(chǔ)上, 提出了一種新的ECDSA 門限簽名方案[39], 從而減少了計(jì)算量和帶寬的開銷.該方案對(duì)密鑰和隨機(jī)數(shù)使用了加性秘密分享, 通過MtA 的方法完成了分享秘密的乘法計(jì)算, 大體上的思路與文獻(xiàn)[14] 類似.該方案的秘密分享階段中, 將所使用的加法同態(tài)算法從文獻(xiàn)[14] 中的Paillier 算法替換為了2015 年基于Castagnos 和Laguillaumie 提出的一種類群(class group) 的算法[40].使用Paillier 算法時(shí), 消息空間依賴于大整數(shù)N, 這樣會(huì)帶來兩個(gè)問題.一個(gè)問題是相對(duì)于較小的q, 這樣的N導(dǎo)致消息空間過大, 因此計(jì)算量也會(huì)較多; 另一個(gè)問題是由于ECDSA的模數(shù)q往往是遠(yuǎn)小于N的(正如文獻(xiàn)[32] 中提到N>q8), 這樣一些算法中為了安全性, 需要對(duì)其中計(jì)算的值添加范圍證明(range proof), 以確認(rèn)計(jì)算所得值在N中較小的限定范圍之內(nèi).該文指出, 與Paillier 算法不同, CL 同態(tài)加密算法的消息空間可以是Z/qZ, 當(dāng)這里的q與ECDSA 簽名中的大素?cái)?shù)相同時(shí), 該門限密碼方案的消息空間使用效率變高.然而, CL 算法本身的計(jì)算需要基于類群, 當(dāng)消息空間相同時(shí), 其計(jì)算量遠(yuǎn)遠(yuǎn)超出Paillier 算法.因此, 該算法對(duì)于效率改進(jìn)仍在一個(gè)數(shù)量級(jí)內(nèi).

2021 年, Kondi 等人[26]提出了一種能讓(n,2) 門限方案從靜態(tài)安全提升為主動(dòng)安全的方法.該文所針對(duì)的方案需要使用Shamir 秘密分享或者是加性秘密分享, 且其簽名方案使用隨機(jī)數(shù).文中指出, 主動(dòng)安全方案大多數(shù)依賴誠(chéng)實(shí)多數(shù), 而且截至當(dāng)時(shí)所有主動(dòng)安全方案都需要每個(gè)參與者在預(yù)定時(shí)間在線, 這在實(shí)際應(yīng)用中是難以保證的.該文提出的方法不依賴于在線的人必須誠(chéng)實(shí)多數(shù), 也不要求所有誠(chéng)實(shí)方必須同時(shí)在線完成份額刷新.在性能方面, 該文在文獻(xiàn)[14] 所提出算法的(n,2) 基礎(chǔ)下進(jìn)行了更新.在相同配置下需要14% 左右額外的性能開銷將安全性提升為主動(dòng)安全.

2022 年, Abram 等人[41]提出了一種具有預(yù)處理階段, 且預(yù)處理階段開銷較低的全門限的ECDSA門限簽名方案.該方案對(duì)密鑰和隨機(jī)數(shù)使用了加性秘密分享.在安全性上, 該方案依賴于環(huán)LPN 假設(shè).該文假設(shè)在密鑰生成中有可信第三方參與.該方案利用了2019 年Boyle 等人提出的一種利用不經(jīng)意計(jì)算構(gòu)造偽隨機(jī)生成器的方法(PCG)[42].具體來說, 該文所述方案讓門限密碼計(jì)算的各個(gè)參與者可以在預(yù)處理階段交互來獲取一些相關(guān)的隨機(jī)數(shù), 也稱作PCG seed.隨后在參與計(jì)算的時(shí)候, 各個(gè)參與方可以利用本地的PCG seed 來產(chǎn)生可用于該方案的大量隨機(jī)數(shù), 從而節(jié)省了大量通信成本以及存儲(chǔ)成本.與文獻(xiàn)[39]類似, 該文也將大量計(jì)算放到了預(yù)簽名階段, 在預(yù)簽名階段需要兩輪交互, 簽名階段只需要一輪簡(jiǎn)單交互.該方案一次簽名運(yùn)算時(shí)間總和比之前的工作[14,33,39]要慢一個(gè)數(shù)量級(jí)左右, 但是帶寬成本則要低兩到三個(gè)數(shù)量級(jí).

2023 年,Xue 等人提出了一種新的ECDSA 門限簽名方案[43].該文提出了使用JL 同態(tài)加密方案[44]來構(gòu)造MtA 方案的思路, 并成功應(yīng)用該思路構(gòu)造了ECDSA 門限簽名方案.使用JL 同態(tài)加密方案構(gòu)造的MtA 方案能讓消息空間比使用Paillier 的方案小,同時(shí)在承諾上的開銷比基于CL 的方案小.該文構(gòu)造MtA 的關(guān)鍵點(diǎn)在于對(duì)原始的JL 同態(tài)加密方案進(jìn)行了修改, 使得密文與承諾之間的轉(zhuǎn)換更加簡(jiǎn)單.基于強(qiáng)RSA 假設(shè)與k-QR 假設(shè)(JL 模數(shù)下的二次剩余假設(shè)) 證明了該MtA 方案的安全性.該文對(duì)一種ECDSA門限簽名方案分別使用了基于Paillier、基于CL、基于OT, 與其提出的基于JL 方案構(gòu)造的MtA 方法做了性能比較.從帶寬來看, OT?Paillier>JL>CL; 從計(jì)算量來看, CL>Paillier>JL?OT.

ECDSA 的協(xié)同簽名也是一個(gè)熱門的研究方向.2016 年, Gennaro 等人提出了一個(gè)具有實(shí)際意義的ECDSA 協(xié)同簽名算法[32]: 其應(yīng)用場(chǎng)景為手機(jī)與電腦共同分享電子貨幣的支付密碼.方案設(shè)計(jì)了手機(jī)端和電腦端的軟件, 并使用二維碼和TLS 進(jìn)行通信, 協(xié)作完成簽名算法, 進(jìn)行電子貨幣支付.2017 年,Lindell 提出了一種快速的雙方協(xié)同ECDSA 算法[45].該方案對(duì)密鑰和隨機(jī)數(shù)使用了乘性秘密分享, 借助具有加法同態(tài)的Paillier 方法完成了分享秘密的加法函數(shù).該文設(shè)計(jì)了一種新的方案, 即U2具有U1私鑰份額x1的Paillier 密文.該算法簽名只需要四次交互, 且橢圓曲線運(yùn)算也大大減少.該文指出文獻(xiàn)[32]中每次簽名每方需要計(jì)算1 次Paillier 加密、5 次Paillier 同態(tài)標(biāo)量乘法、5 次Paillier 同態(tài)加法以及46次冪運(yùn)算; 而該文中兩方分別只需要7 次橢圓曲線乘法和1 次Paillier 解密以及5 次橢圓曲線乘法、1次Paillier 同態(tài)標(biāo)量乘法和1 次Paillier 同態(tài)加法.從性能來看, 該文的實(shí)現(xiàn)在P-256 上平均一次秘密分享所花時(shí)間需要約2.4 秒, 而一次簽名所花時(shí)間需要約36.8 毫秒.2018 年, Doerner 等人提出了一種ECDSA 協(xié)同簽名方案[34].該方案對(duì)密鑰使用了加性秘密分享, 對(duì)隨機(jī)數(shù)使用了乘性秘密分享.該方案對(duì)不經(jīng)意傳輸協(xié)議使用了一種新的擴(kuò)展方法, 僅依賴于ECDSA 假設(shè)就實(shí)現(xiàn)了開銷較低的協(xié)同簽名.從性能來看, 該文的實(shí)現(xiàn)在P-256 上比文獻(xiàn)[45] 的方案計(jì)算量要少70% 以上, 且平均一次秘密分享所花時(shí)間需要約43 毫秒, 而一次簽名所花時(shí)間需要約3 毫秒, 大約都快了90% 以上.2019 年, Castagnos 等人提出了一種同樣只需要四輪交互ECDSA 協(xié)同簽名方案[38].該方案對(duì)密鑰和隨機(jī)數(shù)使用了乘性秘密分享, 借助具有全同態(tài)性質(zhì)的CL 加密方法在文獻(xiàn)[45] 的基礎(chǔ)上進(jìn)行改進(jìn), 完成了分享秘密的加法運(yùn)算.同時(shí), 該方案避免了使用Paillier-EC 這一非標(biāo)準(zhǔn)假設(shè), 而是依賴于HSM 問題(hard subgroup membership).此外, 該方案的安全性依賴于哈希證明系統(tǒng)(hash proof system, HPS) 構(gòu)建的零知識(shí)證明.從性能來看, 該文的實(shí)現(xiàn)在P-256 和P-384 上與文獻(xiàn)[45] 方案的秘密分享、簽名速率相當(dāng), 而在P-521 上則顯著快(秘密分享約103 秒, 簽名約1.8 秒; 而后者秘密分享約430 秒, 簽名約2.4 秒).2021 年, Xue 等人提出了一種ECDSA 協(xié)同簽名方案[46].該方案的核心思路是在簽名的離線階段進(jìn)行一次密鑰份額的“重分享”(re-sharing) 減少M(fèi)tA 次數(shù), 從而減少計(jì)算開銷.在秘密分享階段, 該方案對(duì)密鑰使用了加性秘密分享.在簽名的在線階段, 該方案只需要進(jìn)行一次交互即可完成簽名.該文中還給出了該方案使用基于CL、基于Paillier、基于OT 幾種不同的MtA 方法時(shí)的安全依賴與安全性證明.

表2 詳細(xì)介紹近年來若干ECDSA 門限簽名方案, 并列出其指標(biāo)對(duì)比.其中安全性假設(shè)一列, 所有ECDSA 門限簽名方案都自然依賴于ECDSA 簽名方案的安全性, 因此不單獨(dú)列出.

表2 ECDSA 門限密碼方案概要Table 2 Summary of threshold ECDSA schemes

3.3 Schnorr 與EdDSA 類門限密碼算法

EdDSA 簽名算法[47]由Bernstein 等人在2011 年提出, 該算法是Schnorr 簽名算法的變種.Schnorr 算法的安全性基于素?cái)?shù)階群上的離散對(duì)數(shù)問題, 而EdDSA 算法的安全性則是基于扭曲愛德華曲線Ed25519 或Ed448 上的離散對(duì)數(shù)問題.

相對(duì)于ECDSA 等算法而言, EdDSA 算法可以直接通過Shamir 等算法對(duì)私鑰進(jìn)行秘密分享從而實(shí)現(xiàn)門限算法, 其對(duì)應(yīng)的門限算法實(shí)現(xiàn)起來較為容易.因此, EdDSA 被稱為是門限友好的[48].值得注意的是, EdDSA 使用的隨機(jī)數(shù)r除了通過確定性算法獲取外, 也可以直接使用隨機(jī)數(shù)生成器, 或是偽隨機(jī)生成器進(jìn)行概率性(probabilistic) 生成[48].

EdDSA 算法與Schnorr 算法的原理與計(jì)算過程相似.以下重點(diǎn)介紹幾個(gè)常用的Schnorr 類算法.在這其中, 一些進(jìn)展是針對(duì)Schnorr 算法本身性能的改進(jìn)做出的; 而另一些則是對(duì)Schnorr 類算法做了安全性等方面的考量.

2021 年, Garillot 等人針對(duì)門限Schnorr 算法確定型隨機(jī)數(shù)可能遭到的回滾攻擊, 提出了一種無狀態(tài)的隨機(jī)數(shù)使用方案[49].該方案在非誠(chéng)實(shí)多數(shù)的情形下可用, 對(duì)私鑰和隨機(jī)數(shù)使用了加性秘密分享, 主要考察的是確定性算法, 即類似EdDSA 式獲取隨機(jī)數(shù)的問題.具體而言, 每個(gè)參與者Ui會(huì)生成一個(gè)隨機(jī)數(shù)密鑰ki, 并在獲取待簽名消息的哈希值m后, 通過確定性算法計(jì)算隨機(jī)數(shù)份額Fki(m) =ri.如文中所述, 單純使用這樣的方案而不加承諾可能會(huì)遭到文獻(xiàn)[50] 中所提到的攻擊, 即如果未事先確定這些隨機(jī)數(shù)r可能值而敵手可以任取的話, 敵手可以污染一個(gè)參與方, 并請(qǐng)求與一誠(chéng)實(shí)方對(duì)同一消息m取特定不同隨機(jī)數(shù)r和r′進(jìn)行門限簽名, 并據(jù)此獲得該誠(chéng)實(shí)方私鑰份額.這就需要對(duì)這些在門限方案中可能會(huì)用到的隨機(jī)數(shù)進(jìn)行承諾.然而這樣的確定性算法往往是產(chǎn)生任意多隨機(jī)數(shù)并用于門限簽名的, 其數(shù)量并不確定,因此簡(jiǎn)單的承諾并不能直接奏效.為此, 該文提出了一種基于零知識(shí)混淆電路(ZKGC)[51]與不經(jīng)意傳輸?shù)某兄Z方案, 解決了這個(gè)問題.該方案使得對(duì)于門限Schnorr 方案而言, 參與方Ui可以在密鑰生成期間對(duì)偽隨機(jī)函數(shù)(PRF) 進(jìn)行采樣的ki進(jìn)行承諾.在后續(xù)簽名時(shí)其他參與方在計(jì)算Fki(x)·G=Ri時(shí), 可以保證其使用的隨機(jī)數(shù)是基于協(xié)議所述的確定性隨機(jī)數(shù)方案所產(chǎn)生的.該文對(duì)這個(gè)方案所需要的附加計(jì)算量做了估計(jì), 在128 bit 安全兩方的條件下, 其總的帶寬增加量約為每方1.01 MB.

2021 年, Komlo 與Goldberg 提出FROST 門限方案[6], 該方案對(duì)Schnorr 簽名方案做了兩輪交互非誠(chéng)實(shí)多數(shù)門限.同時(shí), 該方案也可以變形為帶與消息無關(guān)的預(yù)處理方法的、需要可信第三方來進(jìn)行簽名交互的單輪交互門限簽名方案.該方案的安全性均可以歸約到隨機(jī)預(yù)言機(jī)下的OMDL 假設(shè)[21].該方案對(duì)私鑰使用了多項(xiàng)式秘密分享, 對(duì)隨機(jī)數(shù)用了一種特殊的加性秘密分享.該方案隨機(jī)數(shù)分享的特殊之處在于, 各參與者Ui將秘密份額ki分解為了ki=di+eiρi.其中參與者自行生成的隨機(jī)數(shù)份額有兩個(gè), 即di和ei; 而這里的ρi為一個(gè)與i、消息m, 以及下文所提到的所有參與者隨機(jī)數(shù)列表L相關(guān).對(duì)密鑰生成階段而言, 該方案在Pedersen 的分布式密鑰生成算法[52]基礎(chǔ)上增加了對(duì)其第一輪分發(fā)時(shí)個(gè)人秘密的承諾, 用來防止非誠(chéng)實(shí)多數(shù)情景下可能存在的rogue-key 攻擊[53].文中同時(shí)指出秘密分享階段可以借助Gennaro 式秘密分享方法[54]來獲取魯棒性, 但這額外需要誠(chéng)實(shí)多數(shù)的條件.對(duì)一輪方案而言, 該方案的預(yù)處理方法是每個(gè)參與者Ui在每次簽名前需要預(yù)先創(chuàng)建一個(gè)一次性的隨機(jī)數(shù)列表Ui, 使得Li為對(duì)所有n ≥j ≥1 的隨機(jī)數(shù)(dij,eij) 的承諾(Dij,Eij) 的集合.預(yù)處理階段需要所有的Ui都將其隨機(jī)數(shù)列表Li發(fā)給可信第三方.這里的隨機(jī)數(shù)(dij,eij) 會(huì)在簽名過程中用到, 由于各參與者已經(jīng)預(yù)先做過承諾, 每一輪簽名中所使用的隨機(jī)數(shù)將無法被篡改.對(duì)兩輪方案而言, 單純將該方案預(yù)處理階段發(fā)給可信第三方的Li廣播到每一個(gè)參與者即可.

2022 年,Bellare 等人在FROST 算法[6]的基礎(chǔ)上進(jìn)行了改進(jìn),并提出了FROST2 算法[15].FROST算法與FROST2 算法均假設(shè)敵手為靜態(tài)的, 且其安全性證明均歸約到了隨機(jī)預(yù)言機(jī)模型下的OMDL 假設(shè), 這是比Schnorr 依賴的DL 問題要強(qiáng)的.該文對(duì)私鑰使用了多項(xiàng)式秘密分享, 對(duì)隨機(jī)數(shù)使用了特殊的加性秘密分享, 在方案上與文獻(xiàn)[6] 是類似的.該方法的秘密分享過程還需要依賴代數(shù)群模型(algebraic group model, AGM) 下的DL 假設(shè)來證明Schnorr-KoE 假設(shè), 從而做到非誠(chéng)實(shí)多數(shù)情形下正常運(yùn)行.在性能上, 該方案將一輪的FROST 方案中計(jì)算每個(gè)參與者Ui的哈希值ρi的方法做了改進(jìn), 降低了其門限簽名中的乘方次數(shù).此外, 該文對(duì)所有非交互門限簽名方案及其安全性做出了定義, 對(duì)非交互門限簽名方案提出了一類安全等級(jí)標(biāo)準(zhǔn)(TS-UF-0 到TS-UF-4), 并指出, FROST 是TS-UF-3 安全的, 而FROST2則是TS-UF-2 安全的.

2022 年, Lindell 提出了一種新型的交互門限Schnorr 算法[22].該文指出, 許多EdDSA 方法能在兩輪交互中完成簽名, 但是并不能在基于模擬的情境下證明安全性, 或者不能保證并發(fā)安全, 或者使用了非標(biāo)準(zhǔn)假設(shè)[6,15].該文安全性建立在隨機(jī)預(yù)言機(jī)模型下的DL 假設(shè)下, 這是一種標(biāo)準(zhǔn)假設(shè).該文對(duì)私鑰和隨機(jī)數(shù)使用了加性秘密分享, 在假設(shè)具有PKI 的情況下, 構(gòu)造了一種能夠保證并發(fā)安全的三輪協(xié)議.這里的PKI 體系保證了任何兩方之間具有點(diǎn)對(duì)點(diǎn)的加密傳輸.文中指出, 雖然本協(xié)議需要使用零知識(shí)證明因而運(yùn)行速度較慢, 但是在使用頻率不高的情況下, 能夠提高方案的安全性.

2022 年, Boneh 和Komlo 提出了一類新型的可追溯簽名者的Schnorr 類門限簽名算法[55].該文對(duì)私鑰和隨機(jī)數(shù)使用了加性秘密分享.該文指出, 截至當(dāng)時(shí)的門限簽名方案, 其匿名性要么是完全匿名無法追溯給出簽名者的集合; 要么是可審計(jì)的(accountable), 即通過門限簽名所有人都能夠追溯到簽名者的集合.該文關(guān)于Schnorr 簽名提出了一種新的匿名性并進(jìn)行了實(shí)現(xiàn).具體來說, 該文方案只有擁有特定“追溯密鑰” (tracing key) 的人才能知道簽名者集合的信息.該文稱這種簽名為TAPS 簽名(threshold,accountable, and private signature).該文通過安全性的理論分析找到了多種實(shí)現(xiàn)TAPS 簽名的方法, 包括依賴zk-SNARK 方法[56], 或結(jié)合DDH 假設(shè)與可審計(jì)門限密碼方案(ATS) 等.該文提出了兩種效率較高的TAPS 實(shí)現(xiàn)方法, 分別是基于Σ 協(xié)議與Bullerproof 協(xié)議的.從復(fù)雜度來看, 兩者驗(yàn)證復(fù)雜度均為O(n) 個(gè)群上的操作.方案實(shí)際性能取決于方案所用參數(shù)e: 后者形成的方案簽名大小在n較大的情況下要小約e倍, 但是追溯時(shí)間則要慢約2e/2倍.

2022 年, Ruffing 等人提出了一種為Schnorr 類門限簽名算法提供魯棒性的方法[57].文中指出FROST[6]方案不具有魯棒性, 即在誠(chéng)實(shí)多數(shù)的情況下也不能保證只要存在t個(gè)誠(chéng)實(shí)簽名者, 就可以成功輸出有效簽名.一種樸素的為FROST 方案提供魯棒性思路是對(duì)n名參與者中的每t名都執(zhí)行一次FROST 方案的簽名, 然而這樣需要Ctn次, 開銷太大.該文提出了ROAST (robust asynchronous threshold signatures) 方法, 至多只需要執(zhí)行n ?t+1 次FROST 方案的簽名即可為其提供魯棒性.該文將ROAST 應(yīng)用到了FROST 方案中, 并提出了一種帶可識(shí)別中止的Schnorr 門限簽名方法, 稱之為FROST3 方案.

2023 年, Tessaro 和Zhu 提出了一種通用的降低密碼方案安全性依賴的方法[8].該文指出, FROST等安全性依賴于OMDL 假設(shè)的密碼算法, 可以用線性哈希函數(shù)F來替代OMDL 假設(shè)中所用的指數(shù)函數(shù)x →gx, 從而將其安全性假設(shè)降低為依賴于AOMPR (algebraic one-more preimage resistance) 假設(shè).進(jìn)一步地, 該文證明了AOMPR 假設(shè)的安全性可歸約到哈希函數(shù)的抗碰撞性, 從而說明了通過該文方案可對(duì)FROST 和FROST2 做修改, 使其安全性可歸約到群上的線性哈希函數(shù)以及隨機(jī)預(yù)言機(jī)下的離散對(duì)數(shù)假設(shè).

2023 年, Crites 等人提出Sparkle 算法, 一種Schnorr 門限簽名算法[23].該文對(duì)私鑰使用了Shamir秘密分享, 對(duì)隨機(jī)數(shù)使用了加性秘密分享.該文延續(xù)Lindell 的方法[22], 使用三輪交互保證了并發(fā)安全.該算法的安全性可歸約到代數(shù)群模型及隨機(jī)預(yù)言機(jī)模型下的AOMDL (algebraic one-more discrete logarithm assumption) 問題[58].同時(shí), 該文在基于游戲的方法下證明了該方案的抗t個(gè)參與者污染的自適應(yīng)安全.該文證明了其提出的方案在DL+ROM 下具有靜態(tài)安全, 在AOMDL+ROM 下具有抗t/2 個(gè)參與者污染的自適應(yīng)安全.

2023 年, Bacho 等人提出了Twinkle 算法, 一種Schnorr 門限簽名算法[59].該文對(duì)私鑰使用了Shamir 秘密分享, 對(duì)隨機(jī)數(shù)使用了加性秘密分享.該文指出, Sparkle 算法基于OMDL 假設(shè)來應(yīng)對(duì)自適應(yīng)敵手帶來的倒帶攻擊(rewinding).該文在Sparkle 算法上做出了改進(jìn), 在基于五步識(shí)別(five-move identification) 方法[60]基礎(chǔ)上做到了抗自適應(yīng)攻擊, 從而減少了安全性的依賴.基于隨機(jī)預(yù)言機(jī)下的DDH 假設(shè), 用基于游戲的方法證明了其安全性.

2023 年, Garg 等人提出了一種新型的Schnorr 門限簽名算法[61].該文定義了“無需設(shè)置的帶權(quán)重門限簽名” (weighted threshold signature without setup) 的(n,t) 方案.在這里, 無需設(shè)置指的是秘密分享階段各參與方無需交互, 只需要獨(dú)立生成密鑰; 而帶權(quán)重指的是各參與者Ui可以具有一定的權(quán)重wi, 使得當(dāng)且僅當(dāng)參與簽名者的權(quán)重之和滿足∑i∈Sign≥t方可完成門限簽名.文中指出, 許多帶權(quán)重簽名的門限密碼方案為了證明公鑰聚合無誤, 需要讓各參與者發(fā)送公鑰外的提示消息.該文提出了一種新型的FRI式多項(xiàng)式承諾方法替換了KZG 式的承諾方法, 以復(fù)雜度稍高的代價(jià)消除了對(duì)提示消息的依賴.從復(fù)雜度來看, 該方案的簽名大小為O(log2n), 驗(yàn)證時(shí)間為O(log2n), 簽名聚合時(shí)間為O(nlogn).以下表3 介紹了近年來若干具有代表性的Schnorr 和EdDSA 類門限密碼方案.

表3 Schnorr 與EdDSA 類門限密碼方案概要Table 3 Summary of threshold Schnorr and EdDSA schemes

3.4 SM2 門限密碼算法

SM2 算法是我國(guó)自主研發(fā)的橢圓曲線公鑰密碼算法, 已被納入國(guó)家密碼標(biāo)準(zhǔn)GB/T 32918-2016 以及國(guó)際數(shù)字簽名標(biāo)準(zhǔn)ISO/IEC 14888-3.SM2 算法包括加解密算法、簽名算法等部分, 針對(duì)SM2 算法的研究主要集中在國(guó)內(nèi).

2014 年, 尚銘等人首次提出了SM2 門限解密方案與SM2 門限簽名方案[2].在秘密分享方面, 該文對(duì)密鑰和隨機(jī)數(shù)都使用了Shamir 秘密分享方案.文中對(duì)是否存在可信第三方的情形進(jìn)行了討論.在門限簽名過程要求簽名參與方數(shù)量(n,t) 滿足n ≥2t ?1, 且需要有2t ?1 個(gè)人參與簽名.

2019 年, Zhang 等人提出了一種SM2 協(xié)同簽名方案[62].在秘密分享方面, 該文對(duì)密鑰和隨機(jī)數(shù)使用了乘性秘密分享方案.該方案采用Paillier 同態(tài)加密和零知識(shí)證明技術(shù)完成了分享秘密的乘法計(jì)算.2020年, 馮琦等人提出了適用于移動(dòng)互聯(lián)網(wǎng)環(huán)境下的輕量級(jí)基于SM2 算法的協(xié)同簽名算法[63].在秘密分享方面, 該文對(duì)密鑰使用了乘性秘密分享方案, 隨機(jī)數(shù)使用了的特殊秘密分享方案.該方案采用零知識(shí)證明完成了分享秘密的乘法計(jì)算.同在2020 年, 蘇吟雪等人提出了一種適用于5G 環(huán)境下的物聯(lián)網(wǎng)場(chǎng)景的基于SM2 算法的協(xié)同簽名方案[13].在秘密分享方面, 該文對(duì)密鑰使用了乘性秘密分享方案, 隨機(jī)數(shù)使用了k=k1+d1k2的特殊秘密分享方案.從性能來看, 該方案不包含同態(tài)加密或者零知識(shí)證明的計(jì)算, 與文獻(xiàn)[62] 相比計(jì)算復(fù)雜度小了很多.

2022 年, Han 等人提出了基于秘密共享的兩方SM2 簽名協(xié)議[64].該方案對(duì)密鑰使用了乘性秘密分享方案, 隨機(jī)數(shù)使用了特殊秘密分享方案.該方案引入了新的分享量, 利用乘法三元組(海貍乘法Beaver’s triple[65]) 高效計(jì)算秘密共享的乘法, 其計(jì)算成本較低, 且安全性能歸約到標(biāo)準(zhǔn)的SM2 簽名方案, 不過該方案需要7 個(gè)交互消息才能完成簽名計(jì)算.

2023 年, Liang 等人提出了一種非交互式門限SM2 簽名方案[19].該文對(duì)密鑰和隨機(jī)數(shù)使用了加性秘密分享方案.該方案在秘密分享過程中使用了Paillier 同態(tài)加密方法以及零知識(shí)證明方法確保安全, 并借助Gennaro 等人提出的MtA 方法[14]完成了秘密乘積的分享.該方案為非交互式, 只有最后一輪需要消息輸入, 預(yù)簽名過程需要兩輪通信完成.該方案做到了非誠(chéng)實(shí)多數(shù), 允許任意n ≥t的(n,t) 方案.該方案在惡意多數(shù)下可以做到可識(shí)別的中止, 從而做到了抗自適應(yīng)攻擊.該文性能分析表明, 預(yù)簽名過程的計(jì)算和通信成本隨參與方數(shù)量線性增長(zhǎng), 僅為Canetti 等人門限ECDSA 方案所需成本[16]的1/3.

2023 年, 劉振亞等人對(duì)SM2 協(xié)同簽名算法的計(jì)算框架做出了綜述介紹[66].該綜述將SM2 系統(tǒng)簽名算法分為基于乘法密鑰拆分、基于加法密鑰拆分兩大類進(jìn)行介紹, 并就此展開了安全性和性能分析.

在產(chǎn)業(yè)化中, 協(xié)同簽名作為門限簽名的一種特殊形式, 得到了安全企業(yè)的廣泛青睞, 在許多實(shí)際場(chǎng)景中已發(fā)揮作用.2014 年, 林璟鏘等人提出適用于云計(jì)算的基于SM2 算法的簽名及解密方法和系統(tǒng)的發(fā)明專利[12], 是最早提出的SM2 協(xié)同簽名算法.該專利中對(duì)密鑰使用了乘性秘密分享方案, 隨機(jī)數(shù)使用了k=k1k3+k2特殊秘密分享方法.該專利主要針對(duì)通信雙方分別存儲(chǔ)部分私鑰, 雙方協(xié)作才能完成簽名或解密操作的云計(jì)算場(chǎng)景, 缺少相應(yīng)的安全性證明.后續(xù)又出現(xiàn)了很多SM2 協(xié)同簽名相關(guān)的專利, 同樣沒有相應(yīng)的安全性證明.2017 年, 袁峰等人提出了一種基于加法密鑰分割的SM2 簽名方法發(fā)明專利[67].該專利中對(duì)密鑰和隨機(jī)數(shù)都使用了加性秘密分享方案.該專利的秘密分享階段使用了不經(jīng)意傳輸方法, 利用雙方生成的多個(gè)隨機(jī)數(shù)共同生成了簽名公鑰.該方案雖然密鑰生成階段流程較多且需要很多隨機(jī)數(shù), 但簽名階段較為高效, 僅需要一次交互, 兩個(gè)參與方都僅需要計(jì)算一次橢圓曲線點(diǎn)乘操作.2019 年, 韓留明等人提出了一種輕量級(jí)的基于SM2 算法的協(xié)同簽名方法與裝置發(fā)明專利[68].2021 年, 馬昌社等人提出了一種SM2 協(xié)同簽名方法發(fā)明專利[69], 這兩個(gè)方案都對(duì)密鑰使用了乘性秘密分享方案, 對(duì)隨機(jī)數(shù)使用了特殊秘密分享方案.其中前者的拆分方式為k=d1k1+d1d2k2, 后者的拆分方式為k=k1+(1+d)k2.這兩個(gè)方案密鑰生成階段、協(xié)同簽名階段兩端各需要一個(gè)隨機(jī)數(shù)、一次點(diǎn)乘, 算法計(jì)算效率較高.

3.5 雙線性對(duì)門限密碼算法

基于雙線性對(duì)(bilinear pairings)的簽名在密碼學(xué)的短簽名、基于身份的簽名中有重要應(yīng)用.2001 年,Boneh 和Franklin 首次提出了利用橢圓曲線上的雙線性對(duì)構(gòu)造基于身份的公鑰加密算法[70](identity based encryption, IBE, 也稱為標(biāo)識(shí)密碼).BLS 算法就是一種常見的基于雙線性對(duì)的簽名算法[70,71].我國(guó)自主研發(fā)的SM9 算法也是一種基于雙線性對(duì)的標(biāo)識(shí)密碼方法.基于雙線性對(duì)的簽名算法具有較好的聚合性, 在許多場(chǎng)景能夠應(yīng)用.

2002 年, Boldyreva 首次提出了利用雙線性對(duì)的門限簽名方案[72].該方案可以構(gòu)造出BLS 門限簽名方案.該文對(duì)私鑰使用了加性秘密分享, 并使用了Gennaro 式的密鑰生成方法[54]進(jìn)行秘密分享.2006年, Boneh 等人首次提出了一種雙線性對(duì)門限解密方案[3].該文給出了從基于雙線性對(duì)的門限IBE 方案構(gòu)造門限解密方案的通用方案.該文給出的門限IBE 算法實(shí)例中對(duì)私鑰使用了多項(xiàng)式秘密分享, 并且通過定期更新秘密分享份額實(shí)現(xiàn)主動(dòng)安全.2014 年, Libert 等人提出了一種非交互式自適應(yīng)安全的雙線性對(duì)門限簽名方案[17].該方案對(duì)私鑰使用了多項(xiàng)式秘密分享, 依賴Groth-Sahai 證明系統(tǒng)[73]這一非交互式零知識(shí)證明工具, 證明了這種方案在標(biāo)準(zhǔn)模型下的自適應(yīng)安全性.

2020 年, Tomescu 等人借助BLS 簽名良好的可聚合性(使用拉格朗日插值公式計(jì)算), 構(gòu)建了具有良好擴(kuò)展性的BLS 門限簽名方案[74].該文對(duì)私鑰使用了多項(xiàng)式秘密分享, 并對(duì)秘密分享過程中所用KZG承諾方案[75]做了空間換時(shí)間的改變, 通過樹狀結(jié)構(gòu)計(jì)算多個(gè)多項(xiàng)式的積, 并構(gòu)造了AMT(authenticated multipoint evaluation tree) 證明方案, 大大減少了秘密分享所需時(shí)間.該文對(duì)承諾方案的使用方法做出了改進(jìn), 通過對(duì)多項(xiàng)式做承諾的方法, 能一次對(duì)多個(gè)值做承諾使得聚合的計(jì)算復(fù)雜度從O(t2) 降為O(t·log2(t)).

2020 年, Libert 與Yung 提出了一種具有魯棒性的非交互式自適應(yīng)CCA 安全門限解密通用架構(gòu)[18],并在雙線性群中進(jìn)行了實(shí)例化.該文的雙線性群簽名門限方案對(duì)私鑰使用了多項(xiàng)式秘密分享.該文在密鑰生成過程中使用了CHK 范式[76]來做到非交互的CCA 安全.然而該文指出了使用CHK 范式的一個(gè)約束: 為了讓各參與方確認(rèn)私鑰正確性, 會(huì)在密鑰分發(fā)階段根據(jù)公鑰對(duì)密鑰份額做承諾.這樣的承諾會(huì)導(dǎo)致系統(tǒng)難以用基于模擬的方法證明抵抗自適應(yīng)攻擊的能力.為此, 該方案使用了哈希證明系統(tǒng)(hash proof system, HPS)[77]方法, 假設(shè)有一個(gè)模擬器知道所有私鑰份額, 因此能夠較好地進(jìn)行抗自適應(yīng)攻擊的模擬.該方法會(huì)帶來密文有效性問題, 即生成的密文并不能與明文公開可驗(yàn)證地進(jìn)行關(guān)聯(lián).為此, 該方案在Groth-Sahai 證明系統(tǒng)[73]的基礎(chǔ)上提出了一種新的哈希證明系統(tǒng), 帶有公開可驗(yàn)證的證明, 使得密文具有公開可驗(yàn)證有效性.

2021 年, Attema 等人提出了一種能顯著降低簽名大小的基于雙線性對(duì)的門限簽名方法[78].該文對(duì)私鑰使用了多項(xiàng)式秘密分享, 還描述了對(duì)雙線性群的非線性化部分如何使用Shamir 協(xié)議進(jìn)行線性化.該文基于線性化技術(shù), 將一種考慮線性關(guān)系的壓縮Σ 協(xié)議理論[79]應(yīng)用到了雙線性電路中, 構(gòu)造了一種能夠減少通信開銷的承諾方案, 比單純使用Σ 協(xié)議零知識(shí)證明來做BLS 簽名方案大約能減少三分之二的通信開銷.

2022 年, Bacho 與Loss 對(duì)門限BLS 簽名的自適應(yīng)安全問題做了分析[80], 對(duì)私鑰使用了多項(xiàng)式分享方法, 借助可信第三方以及隨機(jī)預(yù)言機(jī)提出了一種分布式密鑰生成方法.該文對(duì)BLS 的分布式密鑰生成協(xié)議(DKG) 做了一種新的安全性定義, 借助AGM 模型[81]下的OMDL 假設(shè)說明了具有一致性、正確性以及預(yù)言機(jī)下的代數(shù)可模擬性(oracle-aided algebraic simulatability) 的DKG 方法可以達(dá)到自適應(yīng)安全.另一方面, 該文證明了如果僅基于度為2 的OMDL 假設(shè)或者基于DL 假設(shè)是做不到自適應(yīng)安全的.在這里, 一致性指的是即使有多達(dá)t個(gè)參與方被破壞, 所有誠(chéng)實(shí)的參與方也會(huì)輸出相同的公鑰和公鑰份額向量; 正確性指的是即使有多達(dá)t個(gè)參與方被破壞, 也存在一個(gè)多項(xiàng)式f, 使得所有參與方的私鑰份額和公鑰份額可以從這個(gè)多項(xiàng)式中計(jì)算出來, 并且公鑰也可以正確計(jì)算; 預(yù)言機(jī)下的代數(shù)可模擬性指的是在OMDL 預(yù)言機(jī)的假設(shè)下存在一個(gè)模擬器Sim, 即使面對(duì)自適應(yīng)的對(duì)手也能模擬誠(chéng)實(shí)參與方在協(xié)議中的角色.

2023 年, Garg 等人提出了一種新的BLS 門限簽名方案[82].秘密分享過程中, 該方案讓各參與者Ui在本地生成公私鑰份額si, 并廣播公鑰份額.由于秘密分享中無需通信, 該方案稱這種門限簽名為靜默門限簽名(silent threshold signatures, STS).文中指出, 靜默門限簽名可以在不修改公鑰的前提下對(duì)不同消息m選擇不同的門限值t.其要點(diǎn)在于該方案簽名中一個(gè)n維{0,1} 向量b來標(biāo)記誰參與了簽名, 且bi= 1 當(dāng)且僅當(dāng)Ui參與該次簽名.該方案對(duì)私鑰使用了加性分享方法, 私鑰值為私鑰份額向量s與標(biāo)記向量b之內(nèi)積?s,b?= sk.文中指出由于各參與者的私鑰份額都在本地自行計(jì)算, 為了安全性, 需要對(duì)//b//≥t以及?s,b?=sk 做承諾.該文借助了SNARK 方法, 對(duì)多項(xiàng)式編碼的乘積做了拆分[83]從而完成了承諾.具體來說, 拆分方式是s(x)b(x)=sk+Qx(x)x+QZ(x)Z(x).從性能來看, 該BLS 門限簽名算法針對(duì)參與者數(shù)目數(shù)量n= 1024, 秘密分享需要約46.3 秒; 針對(duì)門限值總量t= 1024, 簽名聚合時(shí)間需要約470 毫秒.

2023 年, Das 等人利用BLS 簽名構(gòu)造了一種帶權(quán)重的門限簽名方案[84].該文指出, 傳統(tǒng)的帶權(quán)重門限簽名往往需要根據(jù)各參與者需要的份額數(shù)量, 在秘密分享時(shí)分出足夠多份額, 在一些場(chǎng)景需要較大的計(jì)算量.在秘密分享階段, 該文借助有PKI 的假設(shè)完成了非交互的密鑰生成.該方案參考了多方簽名模式,即各參與者Ui在密鑰生成中分別生成其私鑰份額si并得到公鑰份額pki=gsi, 同時(shí)各參與者具有權(quán)重wi.作為帶權(quán)重的門限簽名, 該方案最終形成的簽名除了σ外, 還包含一個(gè)向量b來標(biāo)記誰參與了簽名,需要?w,b? ≥t才能簽名成功, 且簽名公鑰為?pk,b?= PK.該方案中, 如何對(duì)這兩個(gè)內(nèi)積結(jié)果做簡(jiǎn)短、計(jì)算量小的承諾是門限簽名效率的關(guān)鍵.該文中借助代數(shù)群模型構(gòu)造了一種特殊的SNARK 方法, 提升了門限簽名方案的效率, 其安全性歸約到代數(shù)群模型下的q-SDH (q-strong Diffie-Hellman) 假設(shè).從性能來看, 該BLS 門限簽名算法針對(duì)參與者數(shù)目數(shù)量n=4096, 秘密分享需要10.7 秒; 針對(duì)權(quán)重總量t=1024,簽名聚合時(shí)間需要約22 毫秒.

3.6 格密碼與門限密碼

隨著近年來量子計(jì)算理論與工程上的不斷發(fā)展, 基于傳統(tǒng)密碼假設(shè), 如離散對(duì)數(shù)假設(shè)及橢圓曲線離散對(duì)數(shù)假設(shè)的密碼方案安全性受到了威脅.近幾年研究者們致力于尋找基于其他困難問題的密碼算法.格密碼由于運(yùn)算復(fù)雜度相對(duì)較低, 且簽名大小相對(duì)較小, 被認(rèn)為是一種合適的抗量子密碼方案.基于格密碼的公鑰加解密與簽名方案安全性主要基于SIS、LWE、MLWE、MSIS、NTRU 等問題的困難性.這些問題目前被認(rèn)為在量子計(jì)算下仍是困難問題.

格密碼的門限方案研究已經(jīng)有十余年的歷史.2010 年, Bendlin 和Damg?rd 提出了首個(gè)格密碼門限解密方案[1].該文提出了Regev 解密方案[85]的門限版本, 其安全性可歸約到LWE 問題.在秘密分享階段, 對(duì)私鑰向量及噪聲向量的每個(gè)元素進(jìn)行了Shamir 式加性秘密分享.該文中的分布式密鑰生成方法思想來源于Cramer 等人提出的偽隨機(jī)秘密分享方法[86], 需要對(duì)n個(gè)參與者中的t個(gè)參與者所構(gòu)成的集合進(jìn)行運(yùn)算, 計(jì)算量較大.在安全性上, 該文指出其在多數(shù)誠(chéng)實(shí)時(shí)抗好奇敵手, 并在n/3>t時(shí)抗惡意敵手.2013 年, Bendlin 等人提出了首個(gè)格密碼的門限簽名方案[87].該文所述方法構(gòu)造了GPV 簽名算法[88]的門限版本.GPV 算法基于Hash & Sign 范式[89]實(shí)現(xiàn).Hash & Sign 范式指的是, 簽名公鑰為一個(gè)陷門函數(shù)f, 而簽名私鑰為其逆f?1, 對(duì)消息m簽名時(shí)首先將m通過哈希方法H變換到f的值域, 然后輸出簽名σ=f?1(y), 驗(yàn)證方法為f(σ) =H(m).為確保安全性, 該文使用了強(qiáng)陷門函數(shù)[90].在安全性上,該方案在信息論上能做到自適應(yīng)安全, 且在n/3>t時(shí)抗惡意敵手.該方案安全性依賴于GPV 方案的安全性.

2012 年, Asharov 等人[91]提出了一種新的門限解密方案構(gòu)造思路.該文指出, 使用層次全同態(tài)加密(leveled FHE) 方案[92]可以有效構(gòu)造(n,n) 門限全同態(tài)加密方案(threshold fully homomorphic encryption, TFHE), 從而構(gòu)造(n,n) 多方安全計(jì)算方案.該文提出的門限解密方案構(gòu)造方法中, 秘密分享階段通過對(duì)門限解密算法的私鑰和TFHE 使用的評(píng)估密鑰進(jìn)行加性秘密分享, 然后使用TFHE 方法對(duì)輸入加密后進(jìn)行多方安全計(jì)算.該文對(duì)BGV 同態(tài)加密方案[92]進(jìn)行了門限化, 并據(jù)此構(gòu)造了一種抗惡意敵手的門限解密方案, 其安全性依賴于LWE 假設(shè)與使用的零知識(shí)證明方法.

2016 年, Mukherjee 和Wichs 借助TFHE 方法與非交互零知識(shí)證明構(gòu)造了一種兩輪的(n,n) 門限解密方法[93].該文首先對(duì)GSW 全同態(tài)加密方案[94]進(jìn)行了門限化, 使其成為使用多方全同態(tài)加密方案(multi-key FHE, MFHE).2018 年, Boneh 等人給出了(n,t) 門限全同態(tài)加密的定義, 說明了如何使用線性加分享方案和多項(xiàng)式秘密分享方案與全同態(tài)函數(shù)結(jié)合構(gòu)造門限全同態(tài)方案, 并據(jù)此提出了用TFHE、帶預(yù)處理的零知識(shí)證明系統(tǒng)(zero knowledge proof system with pre-processing, PZK) 將簽名方案、解密方案門限化的通用解決方法(universal thresholdizer).在此基礎(chǔ)上, 該文首次構(gòu)造了格密碼一輪交互的非誠(chéng)實(shí)多數(shù)門限解密方案以及簽名方案[24].

2019 年, Cozzo 與Smart 針對(duì)抗量子簽名算法發(fā)表了一篇綜述[95].文章指出, 大致可將現(xiàn)在較為成熟的抗量子簽名算法分為四類: 基于格的、基于哈希的、基于MPC-in-the-Head 的和基于多變量的.該文對(duì)當(dāng)時(shí)提交NIST 抗量子簽名標(biāo)準(zhǔn)化的九種方案進(jìn)行了算法分析, 總結(jié)了需要分享的秘密有哪些, 以及計(jì)算復(fù)雜度.根據(jù)該文分析, 假設(shè)不出現(xiàn)因敵手攻擊而異常中止的情況, 基于格密碼的幾種方案簽名所需時(shí)間較少, 且簽名較小, 安全性是比較好證明的.同時(shí), 格密碼門限化時(shí), 一些計(jì)算適合在有限域進(jìn)行秘密分享, 另一些計(jì)算則更適合在二進(jìn)制電路進(jìn)行分享, 在二者之間進(jìn)行切換的開銷較大.

2021 年, Devevey 等人提出了一種兩輪的非交互門限解密方案[4].文中提出的方案是對(duì)偶Regev 算法[88]的門限版本.該文在標(biāo)準(zhǔn)模型下證明其方案在誠(chéng)實(shí)多數(shù)下具有魯棒性, 且能夠做到抗自適應(yīng)攻擊的CCA2 安全.其安全性依賴于DCR 假設(shè)(decision composite residuosity assumption)[96]與LWE 假設(shè).在秘密分享中, 該方案的私鑰為矩陣形式, 對(duì)私鑰每一列和噪聲各分量都使用了加性分享.該文基于游戲的方法證明了方案的安全性.

2022 年, Agrawal 等人提出了一種基于全同態(tài)加密的門限簽名方案[97].該文對(duì)Boneh 的通用門限簽名方案[24]做了改進(jìn), 使得需要全同態(tài)加密部分所需容納的噪聲上限大幅降低, 代價(jià)是該方案的簽名大小與生成簽名的個(gè)數(shù)相關(guān).該文設(shè)計(jì)了Lyubashevsky 簽名方案[98]無需中止的一個(gè)變種, 并給出了該變種的門限簽名版本.該方案借助提供隨機(jī)性的預(yù)處理方法, 在標(biāo)準(zhǔn)模型下實(shí)現(xiàn)了抗自適應(yīng)攻擊.

2023 年, Gur 等人提出了一種基于門限加法同態(tài)加密方案的兩輪門限簽名方案[99].該方案利用BGV 同態(tài)加密方案的門限版本以及零知識(shí)證明方法, 完成了非誠(chéng)實(shí)多數(shù)下抗惡意敵手的門限簽名方案.相較于之前使用全同態(tài)加密方案構(gòu)造門限簽名的方法, 該文指出可以將一些乘法步驟移出密文計(jì)算部分,從而減少同態(tài)加密所需開銷.該文使用基于游戲的方法證明了方案的安全性, 對(duì)簽名私鑰、門限同態(tài)加密的私鑰和噪聲都使用了加性拆分方法.與文獻(xiàn)[100] 不同, 該方案通過增加參數(shù)實(shí)現(xiàn)了兩輪簽名方法而無需中止, 提高了簽名效率.從性能來看, 該方案的(5,3) 情形128 bit 安全時(shí)簽名大小為11.5 KB, 公鑰大小為13.6 KB, 參與方帶寬各約為1.5 MB.

2023 年8 月, 美國(guó)國(guó)家標(biāo)準(zhǔn)技術(shù)研究院(NIST) 發(fā)布了兩個(gè)有關(guān)格密碼的標(biāo)準(zhǔn)草案[101,102].其中NIST FIPS 203 是格密碼中的加密方案標(biāo)準(zhǔn)草案, 為KYBER 算法; NIST FIPS 204 是格密碼中的簽名方案標(biāo)準(zhǔn)草案, 為Dilithium 算法.目前研究者們對(duì)這些格密碼方案已經(jīng)有了初步的門限化研究.2020 年,Damg?rd 等人基于FSwA (Fiat–Shamir with aborts) 范式[100], 對(duì)Dilithium 方案的變種Dilithium-G,首次構(gòu)建了DS3與DS2兩種(n,n)的門限簽名算法[103].這兩種方案都對(duì)私鑰及高斯分布生成的噪聲進(jìn)行了加性的秘密分享.其中前者需要經(jīng)過三輪交互; 而后者只需要經(jīng)過兩輪交互, 是對(duì)前者的優(yōu)化.兩輪方案中, 為保證中止時(shí)秘密份額泄露不影響安全性, 在第一輪交互時(shí)傳遞的是對(duì)噪聲份額的陷門承諾.2021年, Vakarjuk 等人基于FSwA 范式提出了首個(gè)(2,2) 的Dilithium 門限簽名算法DiLizium[104].該方案對(duì)私鑰及高斯分布生成的噪聲都進(jìn)行了加性的秘密分享.該算法實(shí)現(xiàn)了對(duì)Dilithium 提交的標(biāo)準(zhǔn)化版本的協(xié)同簽名, 需要進(jìn)行三輪交互.其安全性假設(shè)除依賴常見的MLWE、MSIS 假設(shè)外, 還依賴于非標(biāo)準(zhǔn)的Reject-MLWE 假設(shè).2021 年, Laud 等人基于DiLizium 算法提出了DiLizium 2.0[105].該方案對(duì)私鑰及高斯分布生成的噪聲都進(jìn)行了加性的秘密分享.該算法也是對(duì)Dilithium 提交的標(biāo)準(zhǔn)化版本的協(xié)同簽名,同樣需要三輪交互.但其安全性假設(shè)只基于MLWE 假設(shè)與MSIS 假設(shè).以下表4 介紹了若干具有代表性的格密碼門限方案.

表4 格密碼門限方案概要Table 4 Summary of threshold lattice-based schemes

4 應(yīng)用及標(biāo)準(zhǔn)化進(jìn)展

門限密碼能夠解決單點(diǎn)故障相關(guān)的漏洞.隨著網(wǎng)絡(luò)威脅變得越來越復(fù)雜, 使用門限密碼是一個(gè)大的趨勢(shì), 對(duì)其標(biāo)準(zhǔn)化的研究也勢(shì)在必行.在國(guó)際標(biāo)準(zhǔn)化方面, 密碼領(lǐng)域的標(biāo)準(zhǔn)主要由國(guó)際標(biāo)準(zhǔn)化組織(ISO) 和國(guó)際電工委員會(huì)的信息技術(shù)聯(lián)合技術(shù)委員會(huì)(JTC 1) 聯(lián)合制定.我國(guó)各類密碼標(biāo)準(zhǔn)則在國(guó)家密碼管理局的領(lǐng)導(dǎo)和管理下穩(wěn)步推進(jìn).目前(截至2023 年9 月) ISO 密碼標(biāo)準(zhǔn)和我國(guó)密碼標(biāo)準(zhǔn)體系中暫未發(fā)布對(duì)門限密碼制定的標(biāo)準(zhǔn).本文借他山之石, 向讀者介紹其他兩個(gè)標(biāo)準(zhǔn)化研究機(jī)構(gòu), 即NIST 與IETF 在門限密碼相關(guān)領(lǐng)域標(biāo)準(zhǔn)化的進(jìn)展.

4.1 門限密碼的應(yīng)用

門限密碼方案, 包括門限解密和門限簽名, 在各種現(xiàn)實(shí)場(chǎng)景中得到應(yīng)用, 如區(qū)塊鏈、云計(jì)算等.本節(jié)討論門限密碼可能的應(yīng)用場(chǎng)景, 并對(duì)不同門限算法使用場(chǎng)景進(jìn)行分析.

區(qū)塊鏈: 門限密碼方案能夠做到去中心化, 因此在區(qū)塊鏈等應(yīng)用場(chǎng)景中能發(fā)揮很大作用.門限ECDSA 作為區(qū)塊鏈中最早應(yīng)用的密碼方案之一, 是目前重點(diǎn)研究的密碼算法之一[95].已有許多文獻(xiàn)對(duì)門限ECDSA 在區(qū)塊鏈中的應(yīng)用進(jìn)行了研究[32,106], 其應(yīng)用場(chǎng)景主要是保護(hù)區(qū)塊鏈交易的安全性.與ECDSA 簽名不同, Schnorr 類簽名如EdDSA 是門限友好的, 其門限版本所需額外開銷較小, 因此許多區(qū)塊鏈系統(tǒng)傾向于使用EdDSA 作為門限簽名算法[50,107].基于雙線性對(duì)的門限算法在運(yùn)算人數(shù)較多時(shí)簽名聚合效率較高, 也在區(qū)塊鏈場(chǎng)景中獲得了青睞[82,84,108].

云計(jì)算: 云計(jì)算中許多場(chǎng)景是客戶端-服務(wù)器模式下運(yùn)行的, 因此協(xié)同簽名可以在該場(chǎng)景下得到充分應(yīng)用[12,32,67,68,109].云計(jì)算中的邊緣計(jì)算場(chǎng)景也可以應(yīng)用門限方法, 研究者們指出可在車輛安全通信中[110]使用門限BLS 算法, 讓車輛參與認(rèn)證計(jì)算.研究者同時(shí)指出, 物聯(lián)網(wǎng)中的設(shè)備在進(jìn)行邊緣計(jì)算時(shí)可以使用基于雙線性對(duì)的門限環(huán)簽名來保證匿名性[111].此外在生物認(rèn)證中, 研究者指出可以在多設(shè)備間使用門限全同態(tài)方法[112]來加強(qiáng)安全性.

網(wǎng)絡(luò)應(yīng)用層安全: 網(wǎng)絡(luò)應(yīng)用層安全可以從應(yīng)用門限 ECDSA 方案中受益, 在 DNS 運(yùn)營(yíng)安全(DNSSEC) 中應(yīng)用門限ECDSA 方案[113]可以保護(hù)域名簽名密鑰的保密性, 同時(shí)保護(hù)DNS 服務(wù)器的真實(shí)性.

受信任執(zhí)行環(huán)境: 受信任執(zhí)行環(huán)境(TEE) 中, 可以應(yīng)用門限ECDSA 方案來加強(qiáng)安全性[114], 其中的數(shù)據(jù)膠囊可以通過應(yīng)用門限ECDSA 方案來加強(qiáng)訪問控制.

總體而言, 門限版本的ECDSA、EdDSA 算法以及基于雙線性對(duì)的算法都可以應(yīng)用在區(qū)塊鏈、物聯(lián)網(wǎng)等場(chǎng)景中來加強(qiáng)系統(tǒng)安全性.目前門限格密碼的研究還相對(duì)較少, 其使用所需時(shí)間空間代價(jià)都相對(duì)較高,應(yīng)用場(chǎng)景也有待發(fā)掘.目前后量子密碼算法標(biāo)準(zhǔn)化還正在進(jìn)行中, 針對(duì)參選的各類密碼算法已有關(guān)于門限版本可行性研究[95].相信在不久的將來, 門限格密碼的應(yīng)用也將成為現(xiàn)實(shí).

4.2 NIST 門限密碼標(biāo)準(zhǔn)化進(jìn)展

截至目前, NIST 的多方門限密碼工作組(multi-party threshold cryptography, MPTC) 已經(jīng)組織了若干次討論, 并發(fā)布了四份IR 文件.

2019 年, NIST 的計(jì)算機(jī)安全資源中心(CSRC) 團(tuán)隊(duì)發(fā)布了關(guān)于門限密碼原語(yǔ)應(yīng)當(dāng)標(biāo)準(zhǔn)化的報(bào)告, 即NIST IR 8214 文件[115].該文件指出, 門限密碼標(biāo)準(zhǔn)化是應(yīng)當(dāng)進(jìn)行討論的.這份文件主要討論了兩個(gè)話題, 一個(gè)是可以討論標(biāo)準(zhǔn)化的思路, 如可以對(duì)門限類型、通信接口、執(zhí)行環(huán)境目標(biāo)計(jì)算與模型、設(shè)置與維護(hù)等方面進(jìn)行標(biāo)準(zhǔn)化, 另一個(gè)則是建議討論在何種粒度進(jìn)行標(biāo)準(zhǔn)化.關(guān)于門限密碼的研究目的, 該文件指出,門限密碼會(huì)使用秘密分享方案來讓密鑰能分布在多方之間進(jìn)行分享, 從而確保少部分密鑰的泄露不會(huì)泄露完整密鑰.門限密碼中, 各方獨(dú)立或者協(xié)作計(jì)算輸出份額, 而不需要組合出完整的密鑰.該文件指出可以考慮的點(diǎn)包括n個(gè)成員中最多容忍被污染(compromised) 數(shù)f和最少未被污染(uncompromised) 參與聯(lián)合計(jì)算數(shù)k之間的關(guān)系, 如是否有k=f+1 或k=2f+1、是否有n>2f+1 或n>3f+1 等、是否需要可信方來進(jìn)行秘密分享等操作.

從安全性方面考慮, 文中指出對(duì)門限密碼而言有兩類值得考慮的安全屬性, 即可靠性(reliability) 和可用性(availability).在這里, 可靠性指的是安全目標(biāo)不失敗的概率, 而可用性指的是門限密碼服務(wù)總體可用的時(shí)間或任務(wù)數(shù)比例.文件同時(shí)指出, 對(duì)門限密碼安全性的證明也是很重要的.

從對(duì)門限密碼方案的攻擊方面考慮, 文中指出有若干類評(píng)價(jià)攻擊方式的指標(biāo).第一種分類方式是根據(jù)攻擊者是否只是獲取協(xié)議執(zhí)行相關(guān)信息, 還是會(huì)發(fā)送惡意消息或者進(jìn)行其他惡意行為, 分為被動(dòng)(passive)和主動(dòng)(active).第二種分類方式是根據(jù)攻擊者選擇污染的參與方是否根據(jù)對(duì)于協(xié)議執(zhí)行的觀察進(jìn)行, 分為不進(jìn)行觀察就直接選定污染方的靜態(tài)(static) 以及可以根據(jù)觀察協(xié)議執(zhí)行情況而選擇污染方的自適應(yīng)(adaptive) 攻擊.第三種分類方式是通過通信的接口進(jìn)行攻擊, 還是從執(zhí)行時(shí)間、內(nèi)存信息等處進(jìn)行側(cè)信道攻擊.第四種分類方式是根據(jù)攻擊是否能被探測(cè)(detectable) 到進(jìn)行的, 不可探測(cè)的攻擊可能會(huì)要求系統(tǒng)進(jìn)行定期的備份.第五種分類方式是通過攻擊者是否需要靠近門限密碼系統(tǒng)的物理邊界而分成需要接近的侵入性(invasive) 和不需要接近的非侵入性(non-invasive) 攻擊.第六種分類方法是攻擊針對(duì)的是門限化前的算法組件攻擊(conventional) 還是對(duì)門限方案設(shè)計(jì)導(dǎo)致的漏洞(threshold-related).

從系統(tǒng)模型方面考慮, 可以有如下幾個(gè)角度.第一個(gè)角度是交互(interaction).門限系統(tǒng)一般是n個(gè)節(jié)點(diǎn)之間進(jìn)行交互, 同時(shí)也可能包括其他接口, 以及中繼、代理等輔助組件.根據(jù)協(xié)議不同, 門限的性質(zhì)可以選擇是否將對(duì)外的接口公開或者進(jìn)行隱藏.門限模型的交互性質(zhì)還跟通信模型的定義, 如是否存在同步(synchrony)、可信信道(authentication) 以及信息傳輸是否進(jìn)行了加密(encryption).此外可能有一些其他的可信組件, 如可信時(shí)鐘會(huì)影響系統(tǒng)功能, 如解決異步通信的困難.第二個(gè)角度是身份信任問題.門限方案中可能有多種不同的設(shè)置, 比如由誰來決定執(zhí)行多方門限方案的參與者, 各方的身份是否可以被其他各方所驗(yàn)證, 參與門限方案的成員是否固定或者是否允許新成員進(jìn)入, 門限簽名方案的實(shí)現(xiàn)是否要借助PKI 來進(jìn)行等等.第三個(gè)角度是各客戶端如何信任門限方案本身, 如客戶端是否需要擔(dān)心明文傳輸?shù)臋C(jī)密性.如果需要保密的話, 客戶端應(yīng)該考慮是否需要使用可信代理、加密明文、進(jìn)行秘密分享、使用特殊可信組件或者使用PKI 等方式進(jìn)行消息傳輸.同時(shí)門限方案需要支持訪問控制機(jī)制, 以確認(rèn)哪些用戶需要進(jìn)行哪些加密操作請(qǐng)求.第四個(gè)角度是分布式協(xié)議與共識(shí)問題.文中指出有些系統(tǒng)具有脆弱性, 即在發(fā)生合理的環(huán)境變化情況下有災(zāi)難性故障, 比如一些從同步變成異步就會(huì)失敗的系統(tǒng).

從特征方面來看, 可以從門限類型, 即門限所容忍的f和k、是否同一方案在不同門限值的時(shí)候具有不同性質(zhì)進(jìn)行分類; 也可以從通信接口, 包括各客戶端與門限方案的通信方式是通過廣播還是秘密分享,各用戶間的通信是否需要依靠一個(gè)中心節(jié)點(diǎn)還是直接可以兩兩通信, 信道是否有物理保護(hù)等方面進(jìn)行分類.從目標(biāo)執(zhí)行平臺(tái)來看, 有單臺(tái)設(shè)備多芯片與多臺(tái)設(shè)備等區(qū)分方法, 硬件執(zhí)行與軟件執(zhí)行的區(qū)分方法.從設(shè)置與維護(hù)角度來看, 有份額生成是通過可信第三方還是安全多方計(jì)算生成的區(qū)分方法, 有參與人數(shù)固定和可增加的區(qū)分方法, 有不同訪問控制的區(qū)分方法等等.

總體而言, NIST IR 8214 這份文件在較高的層面提出應(yīng)當(dāng)對(duì)門限密碼做標(biāo)準(zhǔn)化工作.該文件指出, 可以在安全性、對(duì)密碼方案的攻擊、系統(tǒng)模型、特征、目標(biāo)執(zhí)行平臺(tái)、設(shè)置與維護(hù)等方面進(jìn)行標(biāo)準(zhǔn)化的考量.

NIST IR 8214A 文件最初是在2020 年發(fā)布了草案版本, 目前已經(jīng)發(fā)布了最終版本[116].該文件對(duì)NIST IR 8214 文件中對(duì)門限密碼標(biāo)準(zhǔn)化值得關(guān)心的分類進(jìn)行了修改和細(xì)化說明.文件首先指出門限方案討論的方位包括各類密碼學(xué)原語(yǔ)(primitive), 尤其是核準(zhǔn)算法.其中包括有數(shù)字簽名(FIPS 186)、基于大整數(shù)分解(SP800- 56B) 或離散對(duì)數(shù)的密鑰生成方法(SP800-56A)、隨機(jī)位生成算法(SP800-90 系列) 等等.這份文件旨在為未來的標(biāo)準(zhǔn)化制定方法提供參考, 主要考慮NIST 核準(zhǔn)算法.文件提出可以分單設(shè)備(single-device)、多方(multi-party) 兩類對(duì)門限密碼進(jìn)行標(biāo)準(zhǔn)化工作的組織.在這兩大類下, 對(duì)不同密碼學(xué)原語(yǔ), 如RSA 簽名、RSA 解密、ECDSA 簽名、EdDSA 簽名等核準(zhǔn)原語(yǔ)進(jìn)行標(biāo)準(zhǔn)化.對(duì)每一種密碼學(xué)原語(yǔ), 可以分出若干不同的門限模式(threshold mode), 如通信是否進(jìn)行輸入、輸出的秘密分享.實(shí)際的標(biāo)準(zhǔn)化過程會(huì)需要考察各類構(gòu)建塊元素、安全屬性規(guī)范、監(jiān)管需求、附加模塊的可用性等等, 但是該文檔認(rèn)為首先需要關(guān)注原語(yǔ)和門限模式.密碼原語(yǔ)層是門限方案標(biāo)準(zhǔn)化項(xiàng)目的重要組成部分, 原語(yǔ)主要包括簽名、公鑰解密、加解密、密鑰生成、密鑰協(xié)商幾類.門限模式包括I/O 接口、互操作性、可審計(jì)性等方面的問題.總體而言, NIST IR 8214A 這份文件在較高的層面對(duì)NIST 門限密碼標(biāo)準(zhǔn)化做出了指導(dǎo), 指出標(biāo)準(zhǔn)化工作可以首先根據(jù)單設(shè)備、多設(shè)備分類, 接下來分別對(duì)不同的核準(zhǔn)原語(yǔ)進(jìn)行標(biāo)準(zhǔn)化, 再接下來針對(duì)不同的門限模式標(biāo)準(zhǔn)化.文件對(duì)單設(shè)備和多設(shè)備的區(qū)別、密碼原語(yǔ)可能包括的種類以及門限模式定義做了較高層面說明.此外, 該文件還提到了安全性、監(jiān)管需求等內(nèi)容在標(biāo)準(zhǔn)化中也值得關(guān)注, 但并非該文件重點(diǎn).

NIST IR 8214B 文件[48]為關(guān)于EdDSA/Schnorr 類簽名的門限化標(biāo)準(zhǔn)建議, 該文件仍在公開草案階段.承接NIST IR 8214 文件與NIST IR 8214A 兩個(gè)文件的高層面討論, 該文件對(duì)EdDSA/Schnorr類簽名原語(yǔ)進(jìn)行了討論.該文件認(rèn)為EdDSA 具有確定性算法, 是NIST 核準(zhǔn)算法而且是門限友好的, 有很大的發(fā)展?jié)摿?該文件總體上可以分為三個(gè)部分, 第一部分首先介紹了EdDSA 標(biāo)準(zhǔn)算法, 并延續(xù)NIST IR 8214A 文件介紹了與EdDSA 原始算法可互換(interchangeable) 的概念.第二部分介紹了EdDSA算法相關(guān)的門限方法, 指出密鑰生成階段可以分為中心化(有可信方) 和分布式生成兩種, 在簽名階段, 該文指出可以將(n,n) 門限方案通過拉格朗日插值法轉(zhuǎn)為(n,k) 門限方案.對(duì)于確定性門限Schnorr 類算法而言, 如果不能確認(rèn)隨機(jī)數(shù)的安全性(即確認(rèn)隨機(jī)數(shù)是由確定性算法產(chǎn)生的), 存在一種可以直接恢復(fù)密鑰的攻擊方法[50].這類問題可以通過混淆電路(garbled circuits) 等方法解決[117].關(guān)于概率算法的門限Schnorr 算法, 該文指出最近研究主要集中于減少交流輪次, 可以減少到一輪預(yù)計(jì)算加一輪簽名, 比如文獻(xiàn)[6] 的方案.第三部分主要在較高層面上討論了門限方案可以關(guān)注哪些問題, 包括門限簽名者、安全概念、系統(tǒng)模型、隨機(jī)性以及模塊化與可組合性.總體而言, 這是一篇分析EdDSA 簽名方案與其門限方案的報(bào)告.該文件還對(duì)一些具體的門限方案進(jìn)行了研究, 并分析了各類EdDSA 門限方案的特性及其優(yōu)劣,如隨機(jī)數(shù)生成中的確定性算法與概率算法之差別等.該文件對(duì)EdDSA 算法的研究進(jìn)行了綜合分析, 并針對(duì)性提出了對(duì)于現(xiàn)有方案可以展開的討論, 為EdDSA 簽名及其他密碼學(xué)原語(yǔ)門限化打下了基礎(chǔ).

NIST IR 8214C 文件為2023 年發(fā)布的, NIST 對(duì)多方門限方案的初次征集, 截至目前(2023 年9 月)仍在公開草案階段[118].這份文件旨在征集各類多方門限方案, 以支持NIST 制定未來的門限密碼建議與指南.該文件所說的征集涵蓋各類密碼學(xué)原語(yǔ), 包括NIST 核準(zhǔn)原語(yǔ)(Cat1) 和具有良好性質(zhì)的NIST 未核準(zhǔn)原語(yǔ)(Cat2) 兩類.從結(jié)構(gòu)而言, 參與者提交的征集材料需要包含技術(shù)規(guī)范、參考實(shí)現(xiàn)、執(zhí)行指令、實(shí)驗(yàn)評(píng)估和其他附加信息等五個(gè)方面的內(nèi)容(M1–M5).從技術(shù)而言, 參與者提交的材料需要包含密碼學(xué)原語(yǔ)、系統(tǒng)模型、安全理想化、敵手安全、門限配置文件和構(gòu)建模塊等六種技術(shù)內(nèi)容(T1–T6), 在模塊化描述中應(yīng)該主要關(guān)注高級(jí)細(xì)節(jié), 如接口和安全屬性.總體而言, NIST IR 8214C 文件草案征集了包括NIST核準(zhǔn)算法與非核準(zhǔn)算法在內(nèi)的各類門限密碼方案, 并對(duì)參與征集的方案做出了理論和實(shí)現(xiàn)上的一些規(guī)范.NIST IR 8214C 文件預(yù)計(jì)會(huì)在2024 年發(fā)布最終版本, 并正式開始征集多方門限協(xié)議.

4.3 IETF 門限密碼標(biāo)準(zhǔn)化進(jìn)展

互聯(lián)網(wǎng)工程任務(wù)組(Internet engineering task force, IETF) 是一個(gè)由全世界各地、互聯(lián)網(wǎng)行業(yè)不同領(lǐng)域的參與者組成的開放社區(qū).其聲明文件[119]稱, 該組織的目的在于制作高質(zhì)量的技術(shù)和工程文檔, 影響人們?cè)O(shè)計(jì)、使用和管理互聯(lián)網(wǎng)的方式, 從而使互聯(lián)網(wǎng)更好地運(yùn)行.該組織撰寫的文檔包括互聯(lián)網(wǎng)標(biāo)準(zhǔn)(STD)、當(dāng)前最佳實(shí)踐(BCP) 等, 往往通過RFC 文檔(request for comments, 征求意見) 的形式發(fā)布在互聯(lián)網(wǎng)上.

與NIST 不同, IETF 組織所寫的文件可以說是自下而上, 由各個(gè)志愿者一同推動(dòng)的.IETF 并沒有特殊的準(zhǔn)入門檻, 愿意為撰寫文檔做貢獻(xiàn)的人都可以加入該組織.IETF 中的工作文檔撰寫可以由一名或多名IETF 成員創(chuàng)建網(wǎng)絡(luò)草案(Internet-draft, I-D) 進(jìn)行推動(dòng).網(wǎng)絡(luò)草案被提出后, 會(huì)經(jīng)過IETF 的工作組進(jìn)行討論.一個(gè)網(wǎng)絡(luò)草案被工作組討論同意后會(huì)移交到IRSG, 這相當(dāng)于IETF 中的編輯審查委員會(huì).當(dāng)IRSG 同意之后, 這份草案就可能會(huì)變成RFC, 并保存在檔案館中.

門限密碼相關(guān)的標(biāo)準(zhǔn)在IETF 中已經(jīng)獲得了關(guān)注, 但截至目前(2024 年1 月) 尚未出現(xiàn)已正式發(fā)表的RFC 文檔.2021 年, Connolly 等人共同提出了一個(gè)關(guān)于FROST 構(gòu)造的兩輪門限簽名方案標(biāo)準(zhǔn)[120], 目前已經(jīng)獲得IETF 密碼學(xué)工作組的承認(rèn), 截至目前已經(jīng)提交到了RFC Editor.該文檔對(duì)Komlo 等人[6]在2020 年提出的FROST 方案兩輪門限簽名方案做了詳細(xì)的定義.FROST 方案是一種生成Schnorr 簽名的兩輪門限方案.該標(biāo)準(zhǔn)對(duì)于FROST 兩輪門限簽名做了密碼學(xué)依賴、輔助方法、方案內(nèi)容、參數(shù)定義、安全考慮等方面的規(guī)范性說明.

總體而言, IETF 這份關(guān)于FROST 門限簽名方案的標(biāo)準(zhǔn)化草案, 對(duì)FROST 方案進(jìn)行了各層面的定義和介紹.在接口層面, 該文件對(duì)FROST 方案的簽名部分進(jìn)行詳細(xì)的描述, 但是沒有對(duì)密鑰生成過程進(jìn)行定義.在安全性分析方面, 該文件所述FROST 方案安全性主要依賴于已有文檔的介紹(實(shí)際上, 該文件本身沒有進(jìn)行詳述), 并做了簡(jiǎn)單的附加說明.在配置參數(shù)方面, 該文件對(duì)FROST 方案所用群與哈希方法進(jìn)行了規(guī)定, 并說明了群(橢圓曲線) 參數(shù)與哈希相關(guān)內(nèi)容.與NIST IR 8214C 不同, 該文件沒有給出軟件方面的實(shí)例, 也沒有實(shí)際測(cè)試其性能.但是該文件給出了若干使用FROST 方案的KAT 集.該文件為門限密碼標(biāo)準(zhǔn)化給出了一個(gè)好的開始.

4.4 標(biāo)準(zhǔn)化方向

門限密碼標(biāo)準(zhǔn)化是一個(gè)漫長(zhǎng)而嚴(yán)謹(jǐn)?shù)倪^程.門限密碼標(biāo)準(zhǔn)化所關(guān)注的內(nèi)容范圍很廣, 包括了門限密碼與客戶端I/O 交互方式與接口、門限密碼內(nèi)部的系統(tǒng)模型(交互信道、各參與者之間的信任問題等)、門限類型(如參與者n與容忍門限t之間的關(guān)系)、方案考慮的敵手情況、安全性分析、具體實(shí)現(xiàn)場(chǎng)景是單設(shè)備還是多設(shè)備、所使用的密碼學(xué)原語(yǔ)種類等方面.但是從實(shí)際來看, 這些值得關(guān)注的各個(gè)方面需要逐步推進(jìn).從門限密碼標(biāo)準(zhǔn)化實(shí)際征集的內(nèi)容來看, 門限密碼標(biāo)準(zhǔn)化也很需要考察在實(shí)際應(yīng)用場(chǎng)景中是否適用.NIST IR 8214C 征集的方案要求對(duì)具體的方案做軟件實(shí)現(xiàn), 并在一定的平臺(tái)(benchmark) 上對(duì)其性能進(jìn)行評(píng)估.同時(shí)除了有完整的理論模型安全性分析之外, 還需要分析理論模型中的一些組件替換為實(shí)際組件后是否會(huì)帶來安全風(fēng)險(xiǎn).

從門限密碼的標(biāo)準(zhǔn)化原語(yǔ)來看, 國(guó)際上的門限密碼標(biāo)準(zhǔn)關(guān)注的主要是國(guó)際最常用的算法, 如EdDSA算法等.NIST IR 8214C 所提出的是否首先要進(jìn)行標(biāo)準(zhǔn)化的考量原因之一是NIST 是否核準(zhǔn).我國(guó)門限密碼的標(biāo)準(zhǔn)化進(jìn)程除了關(guān)注這些算法之外, 還同樣應(yīng)該關(guān)注密碼標(biāo)準(zhǔn)體系中的算法, 例如SM2 數(shù)字簽名算法等.推動(dòng)門限密碼標(biāo)準(zhǔn)化是密碼學(xué)發(fā)展的必然趨勢(shì).

5 總結(jié)與展望

本節(jié)對(duì)前文所述研究現(xiàn)狀及標(biāo)準(zhǔn)化進(jìn)程進(jìn)行總結(jié), 并對(duì)未來研究可能的幾個(gè)重點(diǎn)方向進(jìn)行展望.

5.1 門限密碼研究現(xiàn)狀與展望

近年來, 門限密碼學(xué)已從一個(gè)學(xué)術(shù)性的研究領(lǐng)域逐漸轉(zhuǎn)變?yōu)閷?shí)際應(yīng)用的關(guān)鍵技術(shù).隨著分布式系統(tǒng)、云計(jì)算和區(qū)塊鏈等技術(shù)的興起, 門限密碼由于具有較強(qiáng)的容侵能力, 其重要性正日益凸顯.研究者們已經(jīng)提出了許多創(chuàng)新的門限密碼方案, 涵蓋了各種密碼學(xué)原語(yǔ), 如RSA、SM2、格密碼算法.隨著安全需求的提升, 門限密碼技術(shù)的標(biāo)準(zhǔn)化得到了眾多發(fā)達(dá)國(guó)家的重視, 美國(guó)國(guó)家標(biāo)準(zhǔn)技術(shù)研究院(NIST) 和互聯(lián)網(wǎng)工程任務(wù)組(IETF) 等機(jī)構(gòu)在密碼門限化的標(biāo)準(zhǔn)化相關(guān)工作中是非常典型的.

從算法原語(yǔ)上看, 隨著各類算法原語(yǔ)向后量子方向遷移, 門限格密碼必然成為門限密碼中的熱點(diǎn).目前門限格密碼的通用方案往往要依賴于全同態(tài)加密這一開銷巨大的組件, 因此不能做到完全實(shí)用.從方案設(shè)計(jì)來看, 各參與方需要保證秘密不泄露的同時(shí)能夠進(jìn)行聯(lián)合計(jì)算.為此, 研究者們使用不經(jīng)意傳輸或各類不同的同態(tài)加密方案等方法, 其中近年來研究者們指出相較于較早常用的Paillier 方案而言, JL 同態(tài)加密方案[44]與CL 同態(tài)加密方案[40]能夠在許多場(chǎng)景下開銷更優(yōu).在安全性的歸約方面, 近年來研究者們提出的AOMDL 假設(shè)與AGM 模型, 能通過代數(shù)結(jié)構(gòu)為方案設(shè)計(jì)者提供新的歸約思路.目前各類門限密碼方案層出不窮, 已有在輪次上最優(yōu)或性能上較優(yōu)的算法, 少有各類場(chǎng)景下都表現(xiàn)很好的最優(yōu)解, 亟待研究者們繼續(xù)完善.

盡管普遍的(n,t) 門限密碼學(xué)已取得顯著進(jìn)展, 門限密碼標(biāo)準(zhǔn)工作推進(jìn)也很快, 但產(chǎn)業(yè)跟進(jìn)卻非常遲緩, 復(fù)雜的協(xié)議設(shè)計(jì)和較低的計(jì)算效率仍然制約著門限密碼的應(yīng)用.門限密碼的設(shè)計(jì)仍然存在許多待解決的挑戰(zhàn)和問題.例如, 如何在保證安全性的同時(shí)提高效率、如何針對(duì)性構(gòu)造門限密碼方案滿足不同場(chǎng)景的需求等等.特別是, 多個(gè)設(shè)備帶來的高成本仍舊是當(dāng)前的一個(gè)重要問題.相較之下, 較為簡(jiǎn)單的(2,2) 門限簽名方案, 也就是協(xié)同簽名方案, 在業(yè)界得到了較為成熟的應(yīng)用, 為軟件密碼產(chǎn)品提供了可靠的安全保障.

5.2 門限密碼與現(xiàn)實(shí)世界

隨著電子信息技術(shù)不斷進(jìn)步, 密碼技術(shù)與工業(yè)產(chǎn)業(yè)結(jié)合是一個(gè)大的發(fā)展趨勢(shì).目前國(guó)際上尚未有正式的門限密碼標(biāo)準(zhǔn)公布, 我們可以積極參與標(biāo)準(zhǔn)化過程, 制定國(guó)內(nèi)的門限密碼標(biāo)準(zhǔn), 確保我們的技術(shù)和應(yīng)用得到充分的考慮.

目前協(xié)同簽名已經(jīng)在許多領(lǐng)域有了廣泛的應(yīng)用, 如已有利用協(xié)同簽名技術(shù)部署云交易服務(wù)的平臺(tái), 保證密鑰安全和信息傳輸安全; 電子簽章系統(tǒng)行業(yè)市場(chǎng)在2022 年已達(dá)百億規(guī)模, 已經(jīng)出現(xiàn)利用協(xié)同簽名技術(shù)開發(fā)的手機(jī)電子簽名APP.信息安全行業(yè)的許多問題迫切需要新技術(shù)帶來的解決方案, 而這都需要我們一步一步去實(shí)現(xiàn).

猜你喜歡
私鑰門限份額
比特幣的安全性到底有多高
基于規(guī)則的HEV邏輯門限控制策略
地方債對(duì)經(jīng)濟(jì)增長(zhǎng)的門限效應(yīng)及地區(qū)差異研究
基于改進(jìn)ECC 算法的網(wǎng)絡(luò)信息私鑰變換優(yōu)化方法
隨機(jī)失效門限下指數(shù)退化軌道模型的分析與應(yīng)用
一種基于虛擬私鑰的OpenSSL與CSP交互方案
資源誤配置對(duì)中國(guó)勞動(dòng)收入份額的影響
生產(chǎn)性服務(wù)業(yè)集聚與工業(yè)集聚的非線性效應(yīng)——基于門限回歸模型的分析
湖湘論壇(2015年3期)2015-12-01 04:20:17
分級(jí)基金的折算機(jī)制研究
競(jìng)爭(zhēng)性要素收入份額下降機(jī)理分析——壟斷租金對(duì)競(jìng)爭(zhēng)性要素收入份額的侵害
湖南省| 开鲁县| 屏东县| 嘉义市| 澄城县| 临湘市| 沁源县| 兴仁县| 陵川县| 商河县| 拉萨市| 黎城县| 上虞市| 内江市| 永靖县| 甘德县| 尚义县| 长丰县| 上虞市| 襄汾县| 板桥市| 刚察县| 德保县| 日照市| 龙海市| 建湖县| 陇西县| 南岸区| 武冈市| 乐亭县| 灵山县| 牙克石市| 楚雄市| 嫩江县| 长沙市| 富民县| 石楼县| 安徽省| 黑龙江省| 东港市| 巴彦县|