亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        融合可鏈接環(huán)簽密的智能合約電子投票協(xié)議

        2022-04-18 10:56:30王杰昌劉玉嶺
        計(jì)算機(jī)工程 2022年4期
        關(guān)鍵詞:投票者選票合約

        王杰昌,張 平,高 遠(yuǎn),劉玉嶺

        (1.鄭州大學(xué)體育學(xué)院 體育大數(shù)據(jù)中心,鄭州 450000;2.河南科技大學(xué) 數(shù)學(xué)與統(tǒng)計(jì)學(xué)院,河南 洛陽 471023;3.國(guó)網(wǎng)三門峽供電公司,河南 三門峽 472000;4.中國(guó)科學(xué)院 信息工程研究所,北京 100190)

        0 概述

        區(qū)塊鏈技術(shù)[1]具有去中心化[2]、公開透明、可追溯[3]等諸多優(yōu)點(diǎn),無需任何可信中心即可在陌生網(wǎng)絡(luò)節(jié)點(diǎn)間搭建可信的價(jià)值傳遞渠道,可廣泛應(yīng)用于醫(yī)療、物聯(lián)網(wǎng)等各個(gè)領(lǐng)域[4]。區(qū)塊鏈2.0 以以太坊為代表實(shí)現(xiàn)了更復(fù)雜的分布式合約記錄——智能合約[5],雖然智能合約的概念早在1994 年就被提出[6],但直到近年來得益于區(qū)塊鏈技術(shù)的發(fā)展,其利用價(jià)值才被逐步發(fā)掘。

        電子投票是一種新型網(wǎng)絡(luò)投票系統(tǒng),較傳統(tǒng)方式更具經(jīng)濟(jì)性,其使用密碼學(xué)確保投票過程公正、公平、公開、透明[7]。它所用到的密碼學(xué)知識(shí)主要包括環(huán)簽名、同態(tài)加密、混合網(wǎng)絡(luò)、零知識(shí)證明等,其中環(huán)簽名[8]是一種簡(jiǎn)化的群簽名,只有環(huán)成員、沒有管理者,無需環(huán)成員之間的合作,對(duì)驗(yàn)證者來說簽名者完全是匿名的??涉溄迎h(huán)簽名[9-11]是指若某個(gè)環(huán)成員產(chǎn)生2 個(gè)消息簽名對(duì),存在有效算法使得簽名驗(yàn)證者可以確定這2 個(gè)消息簽名對(duì)是由環(huán)中同一成員產(chǎn)生的[12-13]。

        為同時(shí)確保數(shù)據(jù)的機(jī)密性和可認(rèn)證性,傳統(tǒng)方法通常對(duì)數(shù)據(jù)進(jìn)行先簽名后加密或者先加密后簽名的操作,這類方法的計(jì)算量和通信成本是加密和簽名的代價(jià)之和。而簽密[14]在一個(gè)邏輯步驟內(nèi)實(shí)現(xiàn)加密和簽名,也能達(dá)到傳統(tǒng)方法的效果,同時(shí)具有以下優(yōu)點(diǎn):低于傳統(tǒng)方法的計(jì)算量及通信代價(jià);允許部分高代價(jià)密碼運(yùn)算的并行計(jì)算;若設(shè)計(jì)恰當(dāng)可更安全;簡(jiǎn)化了同時(shí)需要認(rèn)證性與機(jī)密性的密碼算法設(shè)計(jì)[15]。

        ZHAO 等[16]在電子投票方案中應(yīng)用區(qū)塊鏈技術(shù),但該方案只支持2 個(gè)候選者。MCCORRY 等[17]提出使用智能合約實(shí)現(xiàn)的開放投票協(xié)議,但該協(xié)議使用的前提是不能出現(xiàn)投票者棄權(quán)的情況,不切實(shí)際。BISTARELLI 等[18]提出一個(gè)基于比特幣的端到端投票系統(tǒng),充分保護(hù)投票者的隱私,但該系統(tǒng)過于集中,方案不夠公開透明。ZHEGN 等[7]提出一個(gè)以太坊電子投票方案,利用一次性環(huán)簽名及匿名地址技術(shù),解決了部分投票隱私性等問題,但缺乏安全性證明和仿真實(shí)驗(yàn)。LYU 等[19]設(shè)計(jì)一個(gè)基于智能合約的去中心化、無信任的電子投票系統(tǒng),在投票階段對(duì)其選票加密后進(jìn)行環(huán)簽名,確保了投票結(jié)果的可信度,解決了投票過程中的部分安全問題,但該系統(tǒng)沒有任何安全性證明,且計(jì)算消耗的gas 較多,運(yùn)行時(shí)間較長(zhǎng)。

        針對(duì)上述問題,本文通過構(gòu)造可鏈接環(huán)簽密,提出一個(gè)基于智能合約的電子投票協(xié)議,并在一個(gè)邏輯步驟內(nèi)實(shí)現(xiàn)選票的加密和簽名,在確保協(xié)議具有相關(guān)安全特性的同時(shí),從總體上降低協(xié)議運(yùn)行時(shí)間和計(jì)算消耗的gas。

        1 預(yù)備知識(shí)

        1.1 選擇消息的環(huán)分叉引理

        引理1選擇消息的環(huán)分叉引理[20]。∑ring為一般的環(huán)簽名方案,k為安全參數(shù),n為環(huán)成員數(shù)量。A為一個(gè)概率多項(xiàng)式時(shí)間的圖靈機(jī),輸入僅包含公共參數(shù),Q和W分別表示A詢問隨機(jī)預(yù)言機(jī)的次數(shù)以及詢問一些真實(shí)環(huán)簽名者的次數(shù)。假設(shè)A在時(shí)間T內(nèi),以不可忽略的優(yōu) 勢(shì)ε≥生成一個(gè)有效的環(huán)簽名(m,R1,…,Rn,h1,…,hn,σ),其 中VQ,n=Q×(Q-1)×…×(Q-n+1)。假定在不知道任何環(huán)密鑰的情況下,有效的環(huán)簽名在時(shí)間Ts內(nèi)能以不可區(qū)分的概率被模擬,那么就存在另一個(gè)概率多項(xiàng)式時(shí)間的圖靈機(jī),通過模擬替代與真實(shí)簽名者的交互從A中獲得對(duì)機(jī)器的控制權(quán),在預(yù)期的時(shí)間T′≤內(nèi)生成2 個(gè)有效的環(huán)簽名(m,R1,…,Rn,h1,…,hn,σ)和(m,R1,…,Rn,′,σ′)。其中:對(duì)于某個(gè)j∈{1,2,…,n},hj同時(shí),對(duì)于所有的i=1,2,…,n(i≠j),hi=

        1.2 橢圓曲線上的離散對(duì)數(shù)問題

        在橢圓曲線構(gòu)成的阿貝爾群Ep(a,b)上考慮方程Q=k×P,其中P,Q∈Ep(a,b),k<p,由k和P容 易求得Q,但由P和Q求k較困難,這就是橢圓曲線上的離散對(duì)數(shù)問題[21]。

        1.3 無可信中心的門限加密

        在門限加密系統(tǒng)[22-24]中,加密組的n個(gè)成員共享一對(duì)系統(tǒng)公私鑰,所有的成員都知道系統(tǒng)公鑰,然而在無可信中心[25]參與的情況下,系統(tǒng)私鑰分成若干個(gè)秘密份額,每個(gè)秘密份額由1 個(gè)成員保存,最少需要t名成員才能重構(gòu)系統(tǒng)私鑰。

        群{Pi|i∈[1,n]}包含n個(gè)成員,F(xiàn)p表示階為p且生成元為g的有限循環(huán)群,門限值k是重構(gòu)私鑰的最小人數(shù)。無可信中心的門限加密具體步驟如下:

        1)群Pi隨機(jī)選擇xi∈Fp,計(jì)算hi=,公鑰h是所有hi之和。

        2)群Pi隨機(jī)選擇一個(gè)度至多為k-1 且fi(0)=xi的多項(xiàng)式fi(c)∈Zq(c),fi(c)=fi+fi1c+…+fi,k-1ck-1,Pi計(jì)算Fij=,其中j=0,1,…,k-1。

        3)當(dāng)每位成員公布這些k值后,Pi秘密地將sij=fi(j)發(fā)送給Pj,其中j=1,2,…,n。

        4)使用Pi驗(yàn)證從Pj處得到的sij,為了確保和先前公布的值一致,Pj計(jì)算若不成立,則中止。

        5)Pi計(jì)算 其份額si并作為x的 一份,f表 示多項(xiàng)式f(c)=f1(c)+f2(c)+…+fn(c),si為f(0)=x的一份,通過構(gòu)建si=f(i),使其能夠很容易地重構(gòu)出系統(tǒng)私鑰x。

        2 系統(tǒng)模型及區(qū)塊鏈結(jié)構(gòu)

        2.1 系統(tǒng)模型

        系統(tǒng)模型使用三元組<admin,users,contract >表示,包含3 個(gè)實(shí)體:投票管理員,投票者和智能合約,如圖1 所示,該3 個(gè)實(shí)體的具體描述如下:

        圖1 電子投票模型Fig.1 E-voting model

        1)投票管理員(admin):創(chuàng)建投票進(jìn)程,編寫投票合約代碼;通過公鑰參數(shù)鑒定投票者的資格;公布投票者公鑰列表、投票問題及候選項(xiàng);設(shè)定并公布投票相關(guān)時(shí)間節(jié)點(diǎn)(注冊(cè)截止時(shí)間tfr、投票者上傳密鑰參數(shù)截止時(shí)間tfg、開始投票時(shí)間tbν、結(jié)束投票時(shí)間tfν、投票者上傳秘密份額開始時(shí)間tbss、投票者上傳秘密份額截止時(shí)間tfss、公布投票結(jié)果時(shí)間tp);發(fā)起創(chuàng)建投票智能合約請(qǐng)求。

        2)投票者users:Ui為投票者之一,具有以太坊賬戶和公私鑰對(duì),在預(yù)設(shè)的時(shí)間節(jié)點(diǎn)前完成注冊(cè)和投票。

        3)智能合約contract:智能合約并不是協(xié)議中的真正實(shí)體,但所有實(shí)體都與智能合約進(jìn)行交互,故將其定義為“虛擬實(shí)體”;其由投票管理員admin 請(qǐng)求創(chuàng)建,包括可鏈接環(huán)簽密函數(shù)LinkableRingSigncryption()、計(jì)算系統(tǒng)私鑰函數(shù)computeSystemPrivateKey()、驗(yàn)證環(huán)簽密函數(shù)verifyLinkableRingSigncryption()、計(jì)票函數(shù)winningProposal()等,其具有的功能包括:按照admin編寫的總體投票流程運(yùn)行、檢驗(yàn)所接收的消息是否來自合法的Ui、保存門限加密的有關(guān)信息、重構(gòu)系統(tǒng)私鑰、解密選票并驗(yàn)證簽密、統(tǒng)計(jì)有效選票并公布獲勝提案等。

        2.2 投票區(qū)塊鏈結(jié)構(gòu)

        區(qū)塊鏈的結(jié)構(gòu)如圖2 所示,主要包括合約創(chuàng)建交易、上傳參數(shù)交易、合約調(diào)用交易被打包進(jìn)區(qū)塊并加入?yún)^(qū)塊鏈。

        圖2 投票區(qū)塊鏈結(jié)構(gòu)示意圖Fig.2 Schematic diagram of voting blockchain structure

        上述交易的上鏈過程為:

        1)合約創(chuàng)建交易。投票管理員admin 發(fā)起創(chuàng)建電子投票智能合約請(qǐng)求,內(nèi)容包括發(fā)送賬戶地址(即admin 賬戶地址)、接受賬戶地址(為0,表示該交易為創(chuàng)建智能合約的交易)、本次轉(zhuǎn)移的以太幣數(shù)量、用于完成交易的gas 數(shù)量、承諾支付的gas 單價(jià)等;接著,網(wǎng)絡(luò)節(jié)點(diǎn)驗(yàn)證交易請(qǐng)求,并爭(zhēng)取到打包權(quán)的礦工,遵循admin 發(fā)送的交易費(fèi)用與合約代碼,創(chuàng)建合約賬戶,在賬戶空間中部署合約,同時(shí)將智能合約賬戶地址返回給admin,并將admin 的請(qǐng)求打包進(jìn)區(qū)塊,全網(wǎng)傳播該區(qū)塊,令區(qū)塊加入共識(shí)區(qū)塊鏈。

        2)上傳參數(shù)交易。投票者Ui發(fā)起上傳參數(shù)交易請(qǐng)求,內(nèi)容包括投票者用戶地址、接收賬戶地址(admin 創(chuàng)建的智能合約賬戶地址)、本次轉(zhuǎn)移的虛擬貨幣數(shù)量、用來完成交易的gas數(shù)量、交易中愿意付出的gas單價(jià)、發(fā)送給接收地址的消息(密鑰參數(shù)、秘密份額、選票簽密等);接著,網(wǎng)絡(luò)節(jié)點(diǎn)驗(yàn)證交易請(qǐng)求,交易被礦工打包進(jìn)區(qū)塊,并將區(qū)塊加入共識(shí)區(qū)塊鏈。

        3)合約調(diào)用交易。在需要計(jì)算系統(tǒng)私鑰、驗(yàn)證簽密、計(jì)票時(shí),admin 發(fā)起合約調(diào)用交易請(qǐng)求,交易內(nèi)容包括發(fā)送賬戶地址、接收合約賬戶地址、本次轉(zhuǎn)移的“虛擬貨幣”數(shù)量、用來完成交易的gas 數(shù)量、交易中愿意付出的gas 單價(jià)、執(zhí)行智能合約或其某功能函數(shù)的指令,該請(qǐng)求被傳播到區(qū)塊鏈上;接著,網(wǎng)絡(luò)節(jié)點(diǎn)驗(yàn)證交易請(qǐng)求,爭(zhēng)取到打包權(quán)的礦工將在本地節(jié)點(diǎn)運(yùn)行被調(diào)用的合約代碼,直至代碼運(yùn)行結(jié)束或gas消耗殆盡后,將該區(qū)塊加入本地區(qū)塊鏈,并在全網(wǎng)傳播該區(qū)塊,令區(qū)塊加入共識(shí)區(qū)塊鏈。

        3 本文智能合約電子投票協(xié)議

        本文協(xié)議將已有協(xié)議中選票的“加密+環(huán)簽名”方式改進(jìn)為選票的可鏈接環(huán)簽密,在保證安全性的同時(shí),降低協(xié)議運(yùn)行時(shí)間和計(jì)算消耗的gas。同時(shí)因簽密是在一個(gè)邏輯步驟內(nèi)實(shí)現(xiàn)了解密和簽名驗(yàn)證,本協(xié)議將選票簽密的驗(yàn)證放至最后的計(jì)票階段,而非像已有投票協(xié)議那樣在投票階段驗(yàn)證簽名。改進(jìn)后,本協(xié)議分為注冊(cè)、創(chuàng)建、密鑰生成、投票、秘密份額上傳、計(jì)票6 個(gè)階段,G是階為l的橢圓曲線E的基點(diǎn)。

        3.1 注冊(cè)階段

        每一個(gè)投票者Ui根據(jù)公共參數(shù)計(jì)算自己的公私鑰對(duì)(yi,xi),其中:yi=xiG;xi∈(為了方便起見,本文中類似xiG的表達(dá)式,皆表示取xiG的縱坐標(biāo)值),admin 對(duì)投票者進(jìn)行認(rèn)證,收集通過認(rèn)證的Ui(i∈[1,n])的公鑰yi(i∈[1,n])并組成公鑰列表,設(shè)定門限密鑰重構(gòu)的最小份額數(shù)為k。

        3.2 創(chuàng)建階段

        admin 設(shè)定一個(gè)時(shí)間節(jié)點(diǎn)列表來觸發(fā)相應(yīng)的投票進(jìn)程,然后將公鑰列表、時(shí)間節(jié)點(diǎn)、整體投票進(jìn)程等寫入合約代碼,發(fā)出智能合約創(chuàng)建請(qǐng)求。在合約創(chuàng)建后,admin 將智能合約賬戶地址及其他相關(guān)信息公布。

        3.3 密鑰生成階段

        每一個(gè)投票者Ui隨機(jī)選擇λi∈Fq,并且計(jì)算ηi=λiG,Ui按如下方法分發(fā)λi:

        1)投票者Ui隨機(jī)選擇一個(gè)階為k-1 的多項(xiàng)式,如式(1)所示:

        其中:fi(0)=fi,0=λi。

        2)投票者Ui首先計(jì)算Fi,j=fi,jG(其中j=0,1,…,k-1),并利用私鑰xi對(duì)(Fi,j,i,j)簽名后發(fā)起上傳密鑰參數(shù)請(qǐng)求,然后公鑰參數(shù)被礦工上傳至admin 創(chuàng)建的智能合約賬號(hào),智能合約利用公鑰yi列表驗(yàn)證簽名是否合法,若合法則保存該信息作為合約參數(shù),否則丟棄。投票者Ui計(jì) 算其 中j=1,2,…,n。接著,投票者Ui用xi對(duì)(si,j,i,j)簽名后發(fā)起上傳請(qǐng)求,然后(si,j,i,j)及其簽名被礦工上傳至admin 創(chuàng)建的智能合約賬號(hào),智能合約驗(yàn)證簽名,若合法則保存該信息作為合約參數(shù),否則丟棄。投票者必須在tfg之前完成這些計(jì)算及發(fā)送工作。

        這里,每位投票者均可獲得所有的si,j和Fi,j,投票者Ui可 通過xi計(jì)算并獲得系統(tǒng)公鑰η通過式(2)進(jìn)行計(jì)算:

        3.4 投票階段

        投票者Ui根據(jù)編碼規(guī)則及自己的選擇生成選票Vi,然后投票者Us(1≤s≤n)利用LinkableRingSigncryption()對(duì)其選票Vs進(jìn)行可鏈接環(huán)簽密。

        3.4.1 簽密初始化

        H1:{0,1}*→Zq和H2:{0,1}*→Fq是2 個(gè)安全的哈希函數(shù),環(huán)中有n個(gè)成員,即U={U1,U2,…,Un}。投票者Ui(i∈[1,n]) 的公私鑰對(duì)為(yi,xi),其中yi=xiG,G∈E。

        3.4.2 簽密生成

        簽密生成的步驟如下:

        1)投票者Us計(jì)算θ=H2(y1,…,yn),t=xs×θ;

        2)對(duì)于i∈{1,2,…,n},i≠s,隨機(jī)選擇互不相同的ai∈,計(jì)算Ri=aiG;

        3)隨機(jī)選取a∈Zq,計(jì)算Rs=

        4)計(jì)算σ=

        5)投票者Us計(jì)算

        6)計(jì) 算hi=H1(Vs,Ri,t),i=1,2,…,n,生成簽密Ω=

        3.4.3 選票上傳

        投票者發(fā)出上傳選票簽密Ω 請(qǐng)求,礦工將簽密Ω 上傳至區(qū)塊鏈上admin 創(chuàng)建的智能合約賬號(hào),作為計(jì)票階段成員函數(shù)調(diào)用的參數(shù),投票者必須在tfν之前完成本階段工作。

        3.5 秘密份額上傳階段

        投票者Ui根據(jù)式(3)對(duì)其之前獲得的進(jìn) 行驗(yàn)證。

        Ui發(fā)起秘密份額上傳請(qǐng)求,同時(shí)(si,i)及其對(duì)應(yīng)的簽名被礦工上傳至admin 創(chuàng)建的智能合約賬號(hào),且投票者必須在tfss之前完成上傳工作。

        3.6 計(jì)票階段

        當(dāng)至少有t名投票者上傳秘密份額時(shí),智能合約中的函數(shù)computeSystemPrivateKey()通過式(5)計(jì)算獲得系統(tǒng)私鑰:

        對(duì)智能合約中的驗(yàn)證環(huán)簽密函數(shù)verifyLinkableRingSigncryption()進(jìn)行如下操作:

        1)有任意2 個(gè)環(huán)簽密:

        由于部署在區(qū)塊鏈上的智能合約式是公開透明的,無法篡改,因此在區(qū)塊鏈上進(jìn)行電子投票,同時(shí)也可以確保投票公開、公正、公平。

        4 安全性分析

        4.1 正確性

        本文僅論證選票簽密及驗(yàn)證的正確性,根據(jù)式(6)進(jìn)行驗(yàn)證:

        當(dāng)式(6)所示的驗(yàn)證方程成立時(shí),選票簽密有效。

        4.2 不可偽造性

        引理2在隨機(jī)預(yù)言機(jī)模型下,若橢圓曲線離散對(duì)數(shù)問題是困難的,則環(huán)簽名Ω′是不可偽造的。

        定理1若橢圓曲線離散對(duì)數(shù)問題是困難的,則本協(xié)議的環(huán)簽密是不可偽造的。

        證明:假設(shè)某用戶能偽造合法的投票環(huán)簽密,那么其肯定可以利用環(huán)簽名的轉(zhuǎn)換算法,將偽造的環(huán)簽密轉(zhuǎn)換成環(huán)簽名,即在橢圓曲線離散對(duì)數(shù)問題是困難的情況下,得到一個(gè)偽造的環(huán)簽名。這顯然與引理1 相矛盾,定理得證。

        4.3 隱私性

        本節(jié)著重探討Ui和Vi的隱私。從Ui隱私方面來說,由于可鏈接環(huán)簽名的特性,在具有n個(gè)元素的公鑰環(huán)上進(jìn)行的環(huán)簽名,任意環(huán)外的攻擊者確定出真正簽名者的概率不超過如果攻擊者為環(huán)內(nèi)某一非簽名者,那么其不能以大于的概率確定出真正的簽名者。從Vi隱私的方面來說,任何人都無法在3.6 節(jié)以前解密選票。

        4.4 唯一性

        本文設(shè)計(jì)的投票協(xié)議采用可鏈接環(huán)簽密,其可鏈接性能夠確保一位投票者只可投一次票,若重復(fù)投票將被驗(yàn)證出來,則作廢處理,以保證協(xié)議的唯一性。

        4.5 公正性

        本文協(xié)議融合了無可信中心的門限加密、可鏈接環(huán)簽密及智能合約,在3.6 節(jié)以前,投票者只掌握其本人的投票內(nèi)容,任何人都不可能獲取中間結(jié)果或最終結(jié)果,以確保本協(xié)議的公正性。

        4.6 可驗(yàn)證性

        選舉結(jié)束后,任何投票者均可查看選票及系統(tǒng)私鑰,以查看自己的選票是否被正確記錄,且擁有合約地址的任何人均可查看所有選票并驗(yàn)證計(jì)票結(jié)果。

        5 性能評(píng)估

        5.1 性能分析

        選票簽名或簽密的可鏈接性都將被進(jìn)行驗(yàn)證,這一點(diǎn)對(duì)于本文協(xié)議和Lyu 協(xié)議來說沒有差別。但是對(duì)于加密選票簽名,Lyu 協(xié)議需要在投票階段和計(jì)票階段分別進(jìn)行驗(yàn)證和解密,而本文協(xié)議在3.6 節(jié)計(jì)票階段第2 步的一個(gè)邏輯步驟內(nèi)實(shí)現(xiàn)了選票簽密的驗(yàn)證和解密,降低了計(jì)算量,進(jìn)而降低了gas 消耗,最終gas 消耗總量也隨之降低。

        在電子投票協(xié)議中,除了選票的驗(yàn)證、統(tǒng)計(jì)等工作由智能合約完成外,仍有很多操作需要投票者運(yùn)行,包括生成公私鑰、計(jì)算Fi,j與fi(j)、驗(yàn)證來自其他投票者的fj(i)、計(jì)算系統(tǒng)公鑰、恢復(fù)秘密份額、生成選票簽名或簽密等操作。對(duì)于生成公私鑰、計(jì)算Fi,j與fi(j)、驗(yàn)證來自其他投票者的fj(i)、計(jì)算系統(tǒng)公鑰、恢復(fù)秘密份額等操作,兩協(xié)議沒有差別。但是Lyu 協(xié)議需要對(duì)選票進(jìn)行加密后才能簽名,而本文協(xié)議生成了選票簽密,在一個(gè)邏輯步驟內(nèi)實(shí)現(xiàn)了簽名和加密,降低了計(jì)算量和運(yùn)行時(shí)間,進(jìn)而操作總時(shí)間也隨之降低。

        5.2 仿真實(shí)驗(yàn)

        本文在本地部署以太坊私有網(wǎng)絡(luò),通過truffle將智能合約部署到以太坊私有網(wǎng)絡(luò)上,同時(shí)進(jìn)行挖礦并確認(rèn)交易。本文協(xié)議從確認(rèn)交易的信息中獲得交易消耗的gas,投票者或管理員可以在rpc 模式使用web3.js 與區(qū)塊鏈網(wǎng)絡(luò)進(jìn)行通信。

        本地投票計(jì)算機(jī)配置為Win10系統(tǒng),四核2.9 GHz的CPU,8 GB 內(nèi)存。系統(tǒng)中的功能函數(shù)均用Python編寫,所有時(shí)間單位均為ms,每gas的價(jià)格定為1 Gwei,在t=0.7n的情況下進(jìn)行測(cè)試。

        5.3 gas 消耗

        表1 展示了在n=30 的情況下投票者和管理員每個(gè)交易的gas 消耗,其中,由管理員admin 發(fā)起的交易只發(fā)起一次,由投票者Ui發(fā)起的交易每名一次。

        表1 交易或計(jì)算的gas 消耗Table 1 Consumption of transaction and computation in gas

        對(duì)比本文協(xié)議與Lyu 協(xié)議,從表1 可看出投票者上傳數(shù)據(jù)至區(qū)塊鏈的gas 消耗基本一樣,而本文協(xié)議admin 建立合約及設(shè)置相關(guān)信息的gas 消耗要低于Lyu 協(xié)議的消耗。這是因?yàn)長(zhǎng)yu 協(xié)議中智能合約執(zhí)行的是選票環(huán)簽名驗(yàn)證函數(shù)和加密選票解密函數(shù),而本文協(xié)議中智能合約執(zhí)行的是選票簽密的驗(yàn)證(解密)函數(shù),能夠在一個(gè)邏輯步驟內(nèi)實(shí)現(xiàn)驗(yàn)證和解密;同時(shí),Lyu 協(xié)議及本文協(xié)議執(zhí)行這些功能函數(shù)所消耗的gas 均包含在admin 建立合約及設(shè)置相關(guān)信息交易中。

        為研究選舉時(shí)各實(shí)體的gas 消耗與投票者人數(shù)之間的關(guān)系,分別對(duì)n=10、20、30、40 的情況進(jìn)行測(cè)試,再利用python 畫出兩協(xié)議不同實(shí)體的gas 消耗對(duì)比圖,結(jié)果如圖3 所示。

        圖3 本文協(xié)議與Lyu 協(xié)議的gas 消耗對(duì)比Fig.3 Comparison of gas consumption between this protocol and Lyu protocol

        從圖3 可以看出,隨著投票者人數(shù)的增加,本文協(xié)議和Lyu 協(xié)議中admin 和投票者的交易或計(jì)算消耗的gas 都在增加。但是無論投票者人數(shù)如何變化,本文協(xié)議投票者的gas 消耗和Lyu 協(xié)議投票者的基本一樣,本文協(xié)議admin 的gas 消耗始終要比Lyu 協(xié)議admin 的低,降低了約1×107gas,每gas 的價(jià)格為1 Gwei,即節(jié)省了1×107Gwei 的計(jì)算消耗,其原因與n=30 的情況一樣,所以最終本文協(xié)議的gas 消耗總量低于Lyu 協(xié)議的gas 消耗總量。

        5.4 操作運(yùn)行時(shí)間

        表2 展示了在n=30 時(shí)在投票者本地運(yùn)行的操作所花費(fèi)的時(shí)間。

        表2 投票者操作運(yùn)行時(shí)間Table 2 Voter operation run time

        從表2 可以看出本文協(xié)議與Lyu 協(xié)議在投票者本地運(yùn)行的生成公私鑰、計(jì)算Fi,j與fi(j)及簽名、驗(yàn)證來自其他投票者的fj(i)、計(jì)算系統(tǒng)公鑰、恢復(fù)秘密份額等所花費(fèi)的操作時(shí)間都一樣,但本協(xié)議投票者生成選票簽密的時(shí)間要低于Lyu 協(xié)議投票者生成加密選票及簽名的時(shí)間,這是由簽密的性質(zhì)決定的。另外,當(dāng)n=30 時(shí)本文協(xié)議投票者本地運(yùn)行的操作總時(shí)間也低于Lyu 協(xié)議所花費(fèi)的時(shí)間。

        對(duì)投票者運(yùn)行的操作總時(shí)間進(jìn)行測(cè)試并統(tǒng)計(jì),再利用python 繪制出本文協(xié)議與Lyu 協(xié)議在這方面的對(duì)比圖,結(jié)果如圖4 所示。

        圖4 本文協(xié)議與Lyu 協(xié)議投票者的操作總時(shí)間對(duì)比Fig.4 Comparison of total voter operation time between this protocol and Lyu protocol

        由圖4 可知,隨著投票者人數(shù)的增加,本協(xié)議和Lyu 協(xié)議中投票者運(yùn)行的操作總時(shí)間均在增加,但是無論投票者人數(shù)如何變化,本文協(xié)議投票者的操作總時(shí)間始終比Lyu 協(xié)議的低,少了約450 ms,其原因與n=30 時(shí)的情況相同。

        6 結(jié)束語

        本文提出一種新的智能合約電子投票協(xié)議,融合可鏈接環(huán)簽密,在一個(gè)邏輯步驟內(nèi)實(shí)現(xiàn)了選票的加密及簽名,分析得出協(xié)議具有正確性、唯一性、隱私性、公正性、可驗(yàn)證性等特性,并對(duì)協(xié)議的不可偽造性進(jìn)行了形式化證明。實(shí)驗(yàn)結(jié)果表明,本文協(xié)議的運(yùn)行時(shí)間和gas 消耗較Lyu 協(xié)議均有所降低,但隨著投票人數(shù)的增加,上傳至區(qū)塊鏈的數(shù)據(jù)量也有所增加。下一步將引入IPFS 文件系統(tǒng),使密鑰參數(shù)、選票、簽名等數(shù)據(jù)存儲(chǔ)至IPFS 文件系統(tǒng),且在區(qū)塊鏈上只存儲(chǔ)這些數(shù)據(jù)的指針或索引,以降低上傳至區(qū)塊鏈的數(shù)據(jù)量。

        猜你喜歡
        投票者選票合約
        超幸運(yùn)!安陽購(gòu)彩者機(jī)選票“邂逅”1800萬大獎(jiǎng)
        少林與太極(2023年7期)2023-08-25 05:29:36
        奧斯卡獎(jiǎng)的偏好投票制
        視野(2018年20期)2018-10-30 02:28:20
        微信投票亂局與治道變革
        新聞眼
        金融博覽(2016年7期)2016-08-16 18:44:41
        英國(guó)人家有空房少拿養(yǎng)老金
        合約必守,誰能例外!——對(duì)“情勢(shì)變更”制度不可寄于過高期望
        塔利班割鼻懲罰投票者
        中文字幕成人乱码亚洲| 无套内射蜜桃小视频| 免费人成黄页在线观看视频国产 | 国产免费资源| 极品少妇被后入内射视| 亚洲va视频一区二区三区| 中文字幕久久熟女蜜桃| 馬与人黃色毛片一部| 成人免费丝袜美腿视频| 国产精品国产自产拍高清| 97人伦色伦成人免费视频| 中文亚洲av片在线观看不卡| 久久aⅴ无码av高潮AV喷| 少妇又紧又爽丰满在线视频| 人妻饥渴偷公乱中文字幕| 精品性影院一区二区三区内射| 成年女人片免费视频播放A| 久久亚洲中文字幕伊人久久大| 日本真人做人试看60分钟| 亚洲第一网站免费视频| 中文字幕中文一区中文字幕| 久久精品国产91精品亚洲| 亚洲av之男人的天堂网站| 国产高清国内精品福利99久久| 亚洲精品中文字幕一二三| 无码无套少妇毛多18pxxxx| 久久久久久久99精品国产片| 中文字幕一区,二区,三区| 一区二区三区激情免费视频| 超碰97资源站| 欧美人与禽交zozo| 精品蜜桃av免费观看| 亚洲av无码国产综合专区| 精品久久久久久国产| 亚洲精品中文有码字幕| 男人天堂这里只有精品| 7777奇米四色成人眼影| 激情亚洲的在线观看| 日韩精品乱码中文字幕| 美女无遮挡免费视频网站| 久久婷婷色香五月综合激情|