周振 嚴(yán)廣樂
摘要:投票選舉是集體決議與意見征求的有效方式,電子投票是密碼學(xué)的研究熱點(diǎn)之一。為此,設(shè)計(jì)一種基于區(qū)塊鏈技術(shù)與橢圓曲線盲簽名以及時(shí)間釋放加密算法的匿名電子投票協(xié)議。該方案采用以太坊作為平臺,利用橢圓曲線盲簽名密鑰長度短、安全等級高的特點(diǎn),解決了投票系統(tǒng)的匿名性、唯一性等問題。同時(shí)利用時(shí)間釋放加密算法,解決了公平性與保密性問題,保證了基于區(qū)塊鏈技術(shù)投票系統(tǒng)的安全性。
關(guān)鍵詞:區(qū)塊鏈;電子投票;智能合約;盲簽名;時(shí)間釋放加密
DOI: 10. 11907/rjdk.191416
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
中圖分類號:TP399
文獻(xiàn)標(biāo)識碼:A
文章編號:1672-7800(2020)001-0229-05
0 引言
投票決議與選舉是現(xiàn)代民主的根基所在。1981年,電子投票( E-voting)首先由Chaum[1]提出,即在電子信息與互聯(lián)網(wǎng)選舉場景中實(shí)現(xiàn)投票功能,并保證投票過程的安全性。相比傳統(tǒng)紙質(zhì)投票,電子投票在計(jì)票準(zhǔn)確性、人力成本與實(shí)現(xiàn)范圍等方面都有明顯優(yōu)勢。
電子投票系統(tǒng)的屬性要求主要包括保密性、完整性、可驗(yàn)證性、不可篡改與偽造性、可驗(yàn)證性等[2],根據(jù)采用的密碼學(xué)技術(shù)方案可以將現(xiàn)有電子投票系統(tǒng)分為3類:基于混網(wǎng)( Mix-Net)方案[3-5]、基于盲簽名方案[6]與基于同態(tài)加密方案[7-9]。
基于混網(wǎng)方案最先由chaum提出?;炀W(wǎng)方案理論上可實(shí)現(xiàn)選票的公開驗(yàn)證,但因其算法較為復(fù)雜,協(xié)議運(yùn)行效率低下,在選舉規(guī)模擴(kuò)大時(shí)尤為明顯;基于同態(tài)加密方案最早在1985年由Cohen&Fischer[10]提出,常見協(xié)議方案有采用EIC amal[11]或Pailler[12]的加密算法。同態(tài)加密方案運(yùn)行效率高、實(shí)現(xiàn)難度小,但計(jì)算成本較高;基于盲簽名方案計(jì)算量小、運(yùn)行效率高、保密性強(qiáng),是一種較為主流的電子投票實(shí)施方案。
基于盲簽名技術(shù)的電子投票協(xié)議最開始是由Fujioka[13]提出的FOO協(xié)議,該協(xié)議可以實(shí)現(xiàn)基于盲簽名的大規(guī)模電子投票,但不具有抗偽造性及抗共謀攻擊性。為了解決盲簽名問題,一些新的方案隨后被提出,如部分盲簽名[14]、基于雙線性對的部分盲簽名¨副等方案,但是依然存在待完善的地方,如對于驗(yàn)證機(jī)構(gòu)的依賴程度過高等問題。
區(qū)塊鏈具有去中心化、數(shù)據(jù)可靠、交易可追溯等特點(diǎn)。引入?yún)^(qū)塊鏈技術(shù)可以為電子投票系統(tǒng)提供去中心可信第三方TTP服務(wù),以保證投票過程的透明化與公平性,使選民具有更強(qiáng)的自主性,并增強(qiáng)了選民對協(xié)議的信任程度,擴(kuò)大了協(xié)議適用范圍。
基于以上研究,總結(jié)電子投票系統(tǒng)發(fā)展現(xiàn)狀與存在問題,具體包括:①選票碰撞問題;②公平性問題;③保密性問題;④唯一性問題。對此,本文提出基于區(qū)塊鏈的匿名電子投票方案,利用橢圓曲線盲簽名技術(shù)增強(qiáng)系統(tǒng)的安全性、保密性,并以時(shí)間釋放加密解決公平性問題。同時(shí)區(qū)塊鏈技術(shù)解決了盲簽名體制對第三方過度依賴的問題,通過身份認(rèn)證書的方式保證選票的抗碰撞、唯一性等要求。此外,智能合約維護(hù)兩份用戶表單,可有效防止復(fù)制攻擊和“雙花”問題。
通過以上方式可在同一協(xié)議中同時(shí)滿足多種性能需求,有效解決了電子投票系統(tǒng)的安全性問題,并提高了系統(tǒng)性能。
1 以太坊智能合約
以太坊提供了一套完整的區(qū)塊鏈分布式應(yīng)用平臺。使用以太坊進(jìn)行數(shù)字貨幣交易時(shí),任何人都可在上面發(fā)布與使用分布式應(yīng)用程序。相比于比特幣,以太坊的優(yōu)勢在于其為分布式應(yīng)用程序開發(fā)、部署提供了完整的工具鏈,以及更為靈活的操作指令。
以太坊分為4個(gè)階段:Frontier、Homestead、Metropolis和Serenity。在第3階段的拜占庭硬分叉(Byzantium HardFork)中,引入了許多新特性,包括橢圓曲線與標(biāo)量乘法以及大數(shù)模冪的運(yùn)算實(shí)現(xiàn)等,因此具有更高復(fù)雜度的加密算法得以被采用。此前,使用以太坊虛擬機(jī)EVM無法支持直接驗(yàn)證ECC盲簽名[16]。以下是在EVM中采用OVN( Open Vote Network)、RSA盲簽名與橢圓曲線ECC算法在驗(yàn)證過程中的Cas消耗量比較,如圖1所示。本協(xié)議整體框架如圖2所示。
2 算法方案
本方案算法包括橢圓曲線密碼體制盲簽名與時(shí)間釋放加密算法兩部分。
盲簽名方案中,橢圓曲線密碼體制( Elliptic CurveCryptography,ECC)是一種基于橢圓曲線離散對數(shù)問題難解性的高效密碼體制。ECC使用較短的操作數(shù)即可實(shí)現(xiàn)與RSA及離散對數(shù)系統(tǒng)DL相同安全等級的密碼服務(wù)。與其它公鑰算法體制相比,其在帶寬與復(fù)雜度方面性能優(yōu)勢非常明顯,并且以太坊在升級后也允許使用橢圓曲線進(jìn)行加密。如張方國等[17]提出了多種基于橢圓曲線的盲簽名方案。
為了保證投票系統(tǒng)的公平性,本設(shè)計(jì)希望設(shè)置選票開啟門閥,在投票結(jié)束后統(tǒng)一進(jìn)行結(jié)算公布。在此之前,任何一方都無法獲得選票信息,并且其對于外界攻擊也具有防御功能。
時(shí)間加密算法( Timed-Release Encryption)是一種基于時(shí)間參數(shù)的加密算法,通過添加時(shí)間閥,使目的操作只有在指定時(shí)間節(jié)點(diǎn)后才可以進(jìn)行,從而完成具有時(shí)間節(jié)點(diǎn)限制的任務(wù)。解決此類問題的方案主要有兩種:一種是時(shí)間鎖難題(TIP),通過設(shè)計(jì)具有相當(dāng)復(fù)雜度的解密算法,實(shí)現(xiàn)操作延后。但該方案造成算力資源嚴(yán)重浪費(fèi),且對于不同運(yùn)算環(huán)境不具有普適性;另一種是時(shí)間服務(wù)器方案( TimeServer),通過使用時(shí)間陷門實(shí)現(xiàn)時(shí)間節(jié)點(diǎn)控制,即可避免TLP方案中的問題。
通過時(shí)間服務(wù)器實(shí)現(xiàn)時(shí)間釋放加密的方案最早由Crescenzo[8]提出,但無法保證匿名性。后來Blake等[19]提出的基于Bilinear Diffie-Hellman問題的方案具有良好性能,可擺脫對于時(shí)間服務(wù)器的信任依賴,并能保證匿名性。本協(xié)議是將以上算法結(jié)合區(qū)塊鏈技術(shù)進(jìn)行方案設(shè)計(jì)的首次嘗試。
2.1 橢圓曲線密碼體制與盲簽名
盲簽名算法包含用戶方與簽名方兩種角色。使用該算法的目的在于讓用戶方在不向簽名方透露消息內(nèi)容的前提下獲得對方簽名信息。因此,盲簽名技術(shù)在匿名投票場景中對于保護(hù)用戶隱私可起到關(guān)鍵作用。
2.1.1 參數(shù)設(shè)置
3 電子投票協(xié)議方案
本協(xié)議結(jié)構(gòu)使用盲簽名算法與時(shí)間釋放加密算法,結(jié)合運(yùn)行在以太坊上的智能合約完成電子投票過程。智能合約分為投票管理合約與計(jì)票管理合約。協(xié)議中盲簽名算法的引人為參與投票的選民進(jìn)行身份合法性認(rèn)證授權(quán),不僅保護(hù)了選民隱私安全,還可有效防止外界攻擊破壞匿名性。時(shí)間釋放加密算法可實(shí)現(xiàn)選舉結(jié)束后統(tǒng)一計(jì)票,保證唯一性與公平性。智能合約將取代傳統(tǒng)可信第三方( TTP)的工作,擺脫信任依賴,保證投票過程的完整性與安全性。本協(xié)議流程如圖3所示。
3.1 角色定義
投票組織者:管理參與投票的合法選民名單、決議內(nèi)容與選項(xiàng)、投票環(huán)節(jié)時(shí)間節(jié)點(diǎn)設(shè)置,以及橢圓曲線參數(shù)設(shè)置。
中央信任機(jī)構(gòu)CA:負(fù)責(zé)為合法選民頒發(fā)資格認(rèn)證,生成與分配公私鑰對給對應(yīng)的智能合約。
投票管理合約VC:自動審核選民身份的合法性,并參與選票信息盲簽名,包括接受、簽名與反饋。
計(jì)票管理合約sc:自動統(tǒng)計(jì)收到的選票,并公布最終選票與選舉結(jié)果。
時(shí)間服務(wù)器CS:時(shí)鐘T與時(shí)鐘陷門Sr。
另外還有一些參數(shù)定義,如表1所示。
3.2 協(xié)議設(shè)計(jì)
3.2.1 系統(tǒng)初始化
作為投票活動的發(fā)起與管理單位,根據(jù)投票目標(biāo),組織者將進(jìn)行投票參數(shù)的設(shè)定與公布,保證投票規(guī)則的透明化。
(1)投票組織者設(shè)置待決議問題與對應(yīng)選項(xiàng){vlv∈N)。
(2)根據(jù)選舉周期設(shè)計(jì)各時(shí)間節(jié)點(diǎn)參數(shù),規(guī)劃投票進(jìn)程。
(3)確定參數(shù)。
(4)參數(shù)設(shè)置完備,進(jìn)行信息公開,并激發(fā)管理合約,進(jìn)入注冊階段。
3.2.2 選民注冊
權(quán)威機(jī)構(gòu)CA對選民合法身份準(zhǔn)人進(jìn)行認(rèn)證。選民Vi向其表明身份,等待機(jī)構(gòu)審核,若合法則發(fā)放證書。同時(shí),CA負(fù)責(zé)頒發(fā)公私鑰對給智能合約。具體步驟如下:
4 安全性分析
按照電子投票系統(tǒng)的屬性要求,對本方案進(jìn)行安全性分析。
(1)保密性。橢圓曲線算法的難解性首先保證了幾乎無法破解與偽造簽名,其次TRE技術(shù)基于離散對數(shù)與BDH難題,也具有很高的安全性。
(2)身份合法性。本方案通過中央信任機(jī)構(gòu)CA對選民身份進(jìn)行審核,設(shè)定準(zhǔn)入機(jī)制,保證了選民群體身份的合法性。
(3)匿名性。本協(xié)議采用的時(shí)間釋放加密算法可保證選票信息維持加密狀態(tài),直至統(tǒng)計(jì)階段。潛在攻擊者從投票合約與計(jì)票合約可以竊聽的數(shù)據(jù){ei,(ri,si),CER Ti}與{(pi,σi)vi}中無法推斷出關(guān)聯(lián)性。
(4)唯一性。計(jì)票合約維護(hù)BallotList,防止復(fù)制攻擊,保證唯一性。
(5)公平性。使用TRE對選票加密,在指定統(tǒng)計(jì)時(shí)間T T到達(dá)前,Vi、CA、vs、CS、TS以及任何第三方都無法查看選票內(nèi)容,保證了公平性。
(6)不可偽造,不可重復(fù)性。RegList與BallotL ist使系統(tǒng)具有抗偽造性。
(7)抗共謀性。區(qū)塊鏈智能合約按照協(xié)議設(shè)定運(yùn)行的邏輯性代碼,用戶可以公開審查以確定其安全性。其次,分布式結(jié)構(gòu)使得系統(tǒng)具有很強(qiáng)的魯棒性。
另外,通過與一些基于區(qū)塊鏈的電子投票協(xié)議[20-21]進(jìn)行對比,本協(xié)議在各方面都具有良好的性能表現(xiàn)(見表3)。5結(jié)語
本文提出一種基于盲簽名與時(shí)間釋放加密的區(qū)塊鏈匿名電子投票方案,采用時(shí)間釋放加密算法TRE以及基于橢圓曲線的盲簽名算法,有效保障了電子投票系統(tǒng)的匿名性、安全性與可驗(yàn)證性等。與現(xiàn)有電子投票系統(tǒng)相比,本方案利用區(qū)塊鏈技術(shù)降低了投票成本,減少了信任依賴,從而提升了投票系統(tǒng)的便利性及安全性,同時(shí)也驗(yàn)證了區(qū)塊鏈技術(shù)在電子投票領(lǐng)域的適用性。
參考文獻(xiàn):
[1]
CHAUM D L Untraceable electronic mail return addresses, and digi-tal pseudonyms[J]. Commun ACM( USA), 1981. 24(2):84-88.
[2] DONG L,CHEN K.Cryptographic protocoI[C].Proceedings of theProc ACM Symposium on Theory of Computing, 1982: 383-400.
[3]
LEE B,BOYD C,DAWSON E,et al.Providing receipt-freeness inmixnet-based voting protocols [J]. Lecture Notes in Computer Sci-ence, 2004, 2971: 245-258.
[4]
PARK C. Efficient anonymous channel and all/nothing election scheme[J]. Eurocrypt, 1993, 765: 248-259.
[5]
ZHONG S, BONEH D , JAKOBSSON M , et al. Optimistic mixing forexit-polls [ J ] . Proceedings of Asiacrypt Dec . 2002 , 2501 : 451-465.
[6]宋程遠(yuǎn),張串絨,曹帥,一種盲名方案及其在電子投票協(xié)議中的應(yīng)用 [Jl.計(jì)算機(jī)工程 . 2012, 38( 6) : 139-141.
[7]
HIRT M, SAKO K. Efficient receipt-free voting hased on homomor-phic encryption [Jl. Lecture Notes in Computer Science , 2000. 1807 :539-556.
[8]
RIVEST R. On data banks and privacy homomorphisms [Jl. Founda- tions of Secure Compuation, 1978, 169-179.
[9]
BONEH D. COH E J, NISSIM K. Evaluating 2-DNF formulas on ci-phertexts [ c ] . Theory of Cryptography Conference, 2005 : 325-341.
[10] BENALOH J, FISCHER M J. A robust and verifiahle cryptographi-cally secure election scheme [ C ] . Symposium on Foundations of Com-puter Science. IEEE. 1985 : 372-382.
[11] CRAMER R. CENNARO R. SCHOENMAKERS B. A secure andoptimally efficient multi-authority election scheme [J]. Transactionson Emerging Telecommunications Technologies, 2012. 8 (5)481-490.
[12]
BAUDRON 0, FOUQUE P A. POINTCHEVAL D, et al. Practicalmulti-candidate election system [ C ] . Twentieth Acm Symposium onPrinciples of Distributed Computing, 2001 : 274-283.
[13] FUJIOKA A. OKAMOTO T. OHTA K. A practical secret votingscheme for la.ge scale elections [ C ] . Advances in Cryptology - AUS-CRYPT '92 Workshop on the Theory and Application of Cryptograph-ic Techniques Proceedings , 1993 : 244-25 1.
[14]
ABE M , FUJISAKI E. How to date hlind signatures[ C]. Internation-al Conference on the Theory & Application of Cryptology & Informa-tion Security. Springer Berlin Heidelberg , 1996 : 244-251.
[15]
ZHANG F, SAFAVI-NAINI R, SUSILO W. Efficient verifiably en-crypted signature and partially blind signature from bilinear pairings[ C ] . 4th International Conference on Cryptology , 2004 : 191-204.
[16]
ISTVAN S. Implementing an e-voting protocol with hlind signatureon Ethereum [ EB/OL ] . https : //medium.com/coinmonks/.通信學(xué)報(bào) , 2001, 22( 8) : 22-28.
[18]
CRESCENZO C D. OSTROVSKY R, RAJAGOPALAN S. Condition-al oblivious transfer and timed-release encryption E C ] . International Conference on the Theory and Applications of Cryptographic Tech-niques. Springer, Berlin , Heidelberg , 1999 : 74-89.
[19]
CHAN A C F, BLAKE I F. Scalable, server-passive, user-anony-mous timed release cryptography [ C ] . IEEE International Conferenceon Distrihuted Computing Systems. IEEE Computer Society, 2005 :504-513.
[20]
BitCongress. Control the world from your phone [EB/OL]. http://www.hitcongress.com/Bitcongress/_whitepaper.pdf.
[21]
The Online Voting Platform of the Future.Follow my vote [EB/OL]. http : //followmyvote.com.
[22]
MCCORRY P, SHAHAhrDASHTI S F, HAO F. A smart contract forboardroom voting with maximum voter privacy[ C ] . Financial Cryptog-raphy and Data Security , 2017 : 357-375.
[23] NIR K, JEFFREY V. Blockchain-enabled e-voting[J]. IEEE Soft- ware, 2018, 35(4) : 95-99.
[24] 苑浩 ,楊寶霖. 一種改的預(yù)加密可驗(yàn)證電子投票方案 [J] .計(jì)算機(jī)應(yīng)用研究 . 2012 . 29( 8) : 3048-3052.
[25 ]吳騰 ,黃鍇 ,周琳琳.具有狀態(tài)合法性驗(yàn)證的區(qū)塊鏈一致性算法研究 [J].計(jì)算機(jī)工程 , 2018, 44( 1) : 160-164.
基金項(xiàng)目:上海高原學(xué)科建設(shè)項(xiàng)目(10-17-303-004)
作者簡介:周振(1994-),男,上海理工大學(xué)管理學(xué)院碩士研究生,研究方向?yàn)樯鐣?jīng)濟(jì)金融復(fù)雜系統(tǒng)與區(qū)塊鏈;嚴(yán)廣樂(1957-),男,上海理工大學(xué)管理學(xué)院教授,研究方向?yàn)樯鐣?jīng)濟(jì)金融復(fù)雜系統(tǒng)、系統(tǒng)科學(xué)、系統(tǒng)動力學(xué)。