周振 嚴廣樂



摘要:投票選舉是集體決議與意見征求的有效方式,電子投票是密碼學的研究熱點之一。為此,設計一種基于區塊鏈技術與橢圓曲線盲簽名以及時間釋放加密算法的匿名電子投票協議。該方案采用以太坊作為平臺,利用橢圓曲線盲簽名密鑰長度短、安全等級高的特點,解決了投票系統的匿名性、唯一性等問題。同時利用時間釋放加密算法,解決了公平性與保密性問題,保證了基于區塊鏈技術投票系統的安全性。
關鍵詞:區塊鏈;電子投票;智能合約;盲簽名;時間釋放加密
DOI: 10. 11907/rjdk.191416
開放科學(資源服務)標識碼(OSID):
中圖分類號:TP399
文獻標識碼:A
文章編號:1672-7800(2020)001-0229-05
0 引言
投票決議與選舉是現代民主的根基所在。1981年,電子投票( E-voting)首先由Chaum[1]提出,即在電子信息與互聯網選舉場景中實現投票功能,并保證投票過程的安全性。相比傳統紙質投票,電子投票在計票準確性、人力成本與實現范圍等方面都有明顯優勢。
電子投票系統的屬性要求主要包括保密性、完整性、可驗證性、不可篡改與偽造性、可驗證性等[2],根據采用的密碼學技術方案可以將現有電子投票系統分為3類:基于混網( Mix-Net)方案[3-5]、基于盲簽名方案[6]與基于同態加密方案[7-9]。
基于混網方案最先由chaum提出。混網方案理論上可實現選票的公開驗證,但因其算法較為復雜,協議運行效率低下,在選舉規模擴大時尤為明顯;基于同態加密方案最早在1985年由Cohen&Fischer[10]提出,常見協議方案有采用EIC amal[11]或Pailler[12]的加密算法。同態加密方案運行效率高、實現難度小,但計算成本較高;基于盲簽名方案計算量小、運行效率高、保密性強,是一種較為主流的電子投票實施方案。
基于盲簽名技術的電子投票協議最開始是由Fujioka[13]提出的FOO協議,該協議可以實現基于盲簽名的大規模電子投票,但不具有抗偽造性及抗共謀攻擊性。為了解決盲簽名問題,一些新的方案隨后被提出,如部分盲簽名[14]、基于雙線性對的部分盲簽名¨副等方案,但是依然存在待完善的地方,如對于驗證機構的依賴程度過高等問題。
區塊鏈具有去中心化、數據可靠、交易可追溯等特點。引入區塊鏈技術可以為電子投票系統提供去中心可信第三方TTP服務,以保證投票過程的透明化與公平性,使選民具有更強的自主性,并增強了選民對協議的信任程度,擴大了協議適用范圍。
基于以上研究,總結電子投票系統發展現狀與存在問題,具體包括:①選票碰撞問題;②公平性問題;③保密性問題;④唯一性問題。對此,本文提出基于區塊鏈的匿名電子投票方案,利用橢圓曲線盲簽名技術增強系統的安全性、保密性,并以時間釋放加密解決公平性問題。同時區塊鏈技術解決了盲簽名體制對第三方過度依賴的問題,通過身份認證書的方式保證選票的抗碰撞、唯一性等要求。此外,智能合約維護兩份用戶表單,可有效防止復制攻擊和“雙花”問題。
通過以上方式可在同一協議中同時滿足多種性能需求,有效解決了電子投票系統的安全性問題,并提高了系統性能。
1 以太坊智能合約
以太坊提供了一套完整的區塊鏈分布式應用平臺。使用以太坊進行數字貨幣交易時,任何人都可在上面發布與使用分布式應用程序。相比于比特幣,以太坊的優勢在于其為分布式應用程序開發、部署提供了完整的工具鏈,以及更為靈活的操作指令。
以太坊分為4個階段:Frontier、Homestead、Metropolis和Serenity。在第3階段的拜占庭硬分叉(Byzantium HardFork)中,引入了許多新特性,包括橢圓曲線與標量乘法以及大數模冪的運算實現等,因此具有更高復雜度的加密算法得以被采用。此前,使用以太坊虛擬機EVM無法支持直接驗證ECC盲簽名[16]。以下是在EVM中采用OVN( Open Vote Network)、RSA盲簽名與橢圓曲線ECC算法在驗證過程中的Cas消耗量比較,如圖1所示。本協議整體框架如圖2所示。
2 算法方案
本方案算法包括橢圓曲線密碼體制盲簽名與時間釋放加密算法兩部分。
盲簽名方案中,橢圓曲線密碼體制( Elliptic CurveCryptography,ECC)是一種基于橢圓曲線離散對數問題難解性的高效密碼體制。ECC使用較短的操作數即可實現與RSA及離散對數系統DL相同安全等級的密碼服務。與其它公鑰算法體制相比,其在帶寬與復雜度方面性能優勢非常明顯,并且以太坊在升級后也允許使用橢圓曲線進行加密。如張方國等[17]提出了多種基于橢圓曲線的盲簽名方案。
為了保證投票系統的公平性,本設計希望設置選票開啟門閥,在投票結束后統一進行結算公布。在此之前,任何一方都無法獲得選票信息,并且其對于外界攻擊也具有防御功能。
時間加密算法( Timed-Release Encryption)是一種基于時間參數的加密算法,通過添加時間閥,使目的操作只有在指定時間節點后才可以進行,從而完成具有時間節點限制的任務。解決此類問題的方案主要有兩種:一種是時間鎖難題(TIP),通過設計具有相當復雜度的解密算法,實現操作延后。但該方案造成算力資源嚴重浪費,且對于不同運算環境不具有普適性;另一種是時間服務器方案( TimeServer),通過使用時間陷門實現時間節點控制,即可避免TLP方案中的問題。
通過時間服務器實現時間釋放加密的方案最早由Crescenzo[8]提出,但無法保證匿名性。后來Blake等[19]提出的基于Bilinear Diffie-Hellman問題的方案具有良好性能,可擺脫對于時間服務器的信任依賴,并能保證匿名性。本協議是將以上算法結合區塊鏈技術進行方案設計的首次嘗試。
2.1 橢圓曲線密碼體制與盲簽名
盲簽名算法包含用戶方與簽名方兩種角色。使用該算法的目的在于讓用戶方在不向簽名方透露消息內容的前提下獲得對方簽名信息。因此,盲簽名技術在匿名投票場景中對于保護用戶隱私可起到關鍵作用。
2.1.1 參數設置
3 電子投票協議方案
本協議結構使用盲簽名算法與時間釋放加密算法,結合運行在以太坊上的智能合約完成電子投票過程。智能合約分為投票管理合約與計票管理合約。協議中盲簽名算法的引人為參與投票的選民進行身份合法性認證授權,不僅保護了選民隱私安全,還可有效防止外界攻擊破壞匿名性。時間釋放加密算法可實現選舉結束后統一計票,保證唯一性與公平性。智能合約將取代傳統可信第三方( TTP)的工作,擺脫信任依賴,保證投票過程的完整性與安全性。本協議流程如圖3所示。
3.1 角色定義
投票組織者:管理參與投票的合法選民名單、決議內容與選項、投票環節時間節點設置,以及橢圓曲線參數設置。
中央信任機構CA:負責為合法選民頒發資格認證,生成與分配公私鑰對給對應的智能合約。
投票管理合約VC:自動審核選民身份的合法性,并參與選票信息盲簽名,包括接受、簽名與反饋。
計票管理合約sc:自動統計收到的選票,并公布最終選票與選舉結果。
時間服務器CS:時鐘T與時鐘陷門Sr。
另外還有一些參數定義,如表1所示。
3.2 協議設計
3.2.1 系統初始化
作為投票活動的發起與管理單位,根據投票目標,組織者將進行投票參數的設定與公布,保證投票規則的透明化。
(1)投票組織者設置待決議問題與對應選項{vlv∈N)。
(2)根據選舉周期設計各時間節點參數,規劃投票進程。
(3)確定參數。
(4)參數設置完備,進行信息公開,并激發管理合約,進入注冊階段。
3.2.2 選民注冊
權威機構CA對選民合法身份準人進行認證。選民Vi向其表明身份,等待機構審核,若合法則發放證書。同時,CA負責頒發公私鑰對給智能合約。具體步驟如下:
4 安全性分析
按照電子投票系統的屬性要求,對本方案進行安全性分析。
(1)保密性。橢圓曲線算法的難解性首先保證了幾乎無法破解與偽造簽名,其次TRE技術基于離散對數與BDH難題,也具有很高的安全性。
(2)身份合法性。本方案通過中央信任機構CA對選民身份進行審核,設定準入機制,保證了選民群體身份的合法性。
(3)匿名性。本協議采用的時間釋放加密算法可保證選票信息維持加密狀態,直至統計階段。潛在攻擊者從投票合約與計票合約可以竊聽的數據{ei,(ri,si),CER Ti}與{(pi,σi)vi}中無法推斷出關聯性。
(4)唯一性。計票合約維護BallotList,防止復制攻擊,保證唯一性。
(5)公平性。使用TRE對選票加密,在指定統計時間T T到達前,Vi、CA、vs、CS、TS以及任何第三方都無法查看選票內容,保證了公平性。
(6)不可偽造,不可重復性。RegList與BallotL ist使系統具有抗偽造性。
(7)抗共謀性。區塊鏈智能合約按照協議設定運行的邏輯性代碼,用戶可以公開審查以確定其安全性。其次,分布式結構使得系統具有很強的魯棒性。
另外,通過與一些基于區塊鏈的電子投票協議[20-21]進行對比,本協議在各方面都具有良好的性能表現(見表3)。5結語
本文提出一種基于盲簽名與時間釋放加密的區塊鏈匿名電子投票方案,采用時間釋放加密算法TRE以及基于橢圓曲線的盲簽名算法,有效保障了電子投票系統的匿名性、安全性與可驗證性等。與現有電子投票系統相比,本方案利用區塊鏈技術降低了投票成本,減少了信任依賴,從而提升了投票系統的便利性及安全性,同時也驗證了區塊鏈技術在電子投票領域的適用性。
參考文獻:
[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]宋程遠,張串絨,曹帥,一種盲名方案及其在電子投票協議中的應用 [Jl.計算機工程 . 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/.通信學報 , 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] 苑浩 ,楊寶霖. 一種改的預加密可驗證電子投票方案 [J] .計算機應用研究 . 2012 . 29( 8) : 3048-3052.
[25 ]吳騰 ,黃鍇 ,周琳琳.具有狀態合法性驗證的區塊鏈一致性算法研究 [J].計算機工程 , 2018, 44( 1) : 160-164.
基金項目:上海高原學科建設項目(10-17-303-004)
作者簡介:周振(1994-),男,上海理工大學管理學院碩士研究生,研究方向為社會經濟金融復雜系統與區塊鏈;嚴廣樂(1957-),男,上海理工大學管理學院教授,研究方向為社會經濟金融復雜系統、系統科學、系統動力學。