[發明專利]一種基于區塊鏈的強匿名電子投票協議在審
| 申請號: | 202010194384.0 | 申請日: | 2020-03-19 |
| 公開(公告)號: | CN113496406A | 公開(公告)日: | 2021-10-12 |
| 發明(設計)人: | 史聞博;楊茜雯;徐欣;費天龍;李聰慧;張永欣;魯寧 | 申請(專利權)人: | 東北大學秦皇島分校 |
| 主分類號: | G06Q20/38 | 分類號: | G06Q20/38;G06Q20/06;G06F21/64;G06F21/62 |
| 代理公司: | 中國商標專利事務所有限公司 11234 | 代理人: | 姜司晨 |
| 地址: | 066004 河北省秦*** | 國省代碼: | 河北;13 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 區塊 匿名 電子 投票 協議 | ||
1.一種基于區塊鏈的強匿名電子投票協議,其特征在于:所述協議包括監管者、混淆商、投票者、候選者、區塊鏈五類實體,所述監管者審核后共有m個候選者Cj={C1,C2,...,Cm},n個投票者Ui={U1,U2,...,Un},候選者取得至少k個選票才可勝出;所述協議步驟如下:
S1、預投票階段:
S1.1身份注冊:
S1.1確定投票者和候選者的個數進行注冊;設定有n個投票者Ui={U1,U2,...,Un}和m個候選者Cj={C1,C2,...,Cm}。其中,每個投票者Ui須有一個包含足夠比特幣的地址(bitcoinaddress,簡稱BAi),其對應公私鑰對為(pui,pri)。投票者向監管者提交BAi及對應公鑰和個人信息(包括身份簽名)進行身份注冊,管理員審核身份信息并驗證簽名與比特幣地址對應后,為合格的投票者分發投票者編號(voter number,簡稱VN),并將其加入到投票者列表(voters list,簡稱VL),VL的每條記錄由投票者的編號VNi和比特幣地址BAi組成;
每個候選者構造Cj一對公私鑰對PUj=PRj*G,保留私鑰PRj,向監管者提交公鑰PUj及身份信息進行注冊,監管者審核后,構造候選者列表(candidates list,簡稱CL)并公布,CL包括候選者的身份說明及其對應公鑰;
每個混淆商向監管者提交身份信息注冊,審核通過后向其頒發群證書;
S1.2身份混淆:
集合VL中的所有合法投票者Ui執行混幣協議獲得用于存儲投票的匿名的比特幣地址(anonymous bitcoin address,簡稱ABA);在混淆協議完成后,監管者發布匿名地址列表(anonymous voters list,簡稱AVL),AVL={ABAi}i∈{1,...,n};
S1.3選票生成:
每個投票者用自己的公鑰加密秘密份額si和支持的候選者的編號來構造選票,例如投票者Ui給候選者Cj投票,那么該選票的形式為
S2、投票階段:
S2.1構造投票交易:
當所有投票者都構造完自己的選票之后,每個投票者Ui構造投票交易VoteTxi附帶選票;交易輸出為x個比特幣,交易的輸入地址為混淆階段生成的匿名比特幣地址ABAi,選票vi被記錄于P2SH腳本;
投票交易的輸出腳本基于“或”條件,條件一或條件二可解鎖交易輸出;
第一個解鎖條件是一個P2SH形式的輸出腳本;
創建M-N組合P2SH形式的UTXO時,用戶首先需生成贖回腳本,存儲所有公鑰;在比特幣協議中,堆棧語言PUSHDATA操作限制數據最大為520字節,贖回腳本受此限制最多僅能放置15個公鑰;
然后使用HASH160算法生成此腳本的20字節長哈希值,創建輸出腳本;在P2SH腳本中還可以存儲數據,只需將贖回腳本中閑置的公鑰位替換為數據;投票交易輸出腳本第一個解鎖條件對應的Redeem腳本RS中包含秘密共享的公鑰P并存儲選票vi,使用對應的秘密共享私鑰簽名可解鎖,輸出腳本存儲通過HASH160算法計算RS的20字節長哈希值;
第二個解鎖條件以P2PKH腳本附帶時間鎖的形式添加;
檢查鎖定時間驗證(check lock time verify,簡稱CLTV)是一種比特幣腳本操作符;它可以對交易的某個輸出進行時間鎖定,而不是鎖定整個交易,交易輸出中使用CLTV操作符后能夠限制該輸出只能在指定時間之后被解鎖;
S2.2收集選票:
該環節候選者收集自己的選票,獲取秘密共享份額;
候選者Cj在區塊鏈上根據AVL中所有地址的交易記錄查找VoteTxi,查看P2SH腳本中的公開的投票vi,依次嘗試用自己的私鑰PRj解密vi,成功解密即可獲得選票中的私鑰份額si以及候選者編號
S2.3投票成功:
如果某一候選者Cj成功獲取k個或更多的私鑰份額si,候選者可為每個投票交易都構造一個獲勝交易WinTxj,也可將多個投票交易的輸出作為一個獲勝交易的輸入,使用S簽署每個輸入,解鎖投票交易輸出腳本的第一個條件,即可獲得n個投票交易VoteTxi中所有的UTXO;公眾可通過查詢記錄在區塊鏈中的獲勝交易來驗證該候選者取得足夠秘密份額,候選者成功重構秘密共享的私鑰,在投票中勝出;
獲勝交易輸入腳本解鎖投票交易中P2SH形式UTXO,需提供S的簽名并包含序列化的贖回腳本;
S2.4投票失敗:
如果沒有候選者得到足夠的有效選票以重構秘密共享的私鑰,將導致本次投票失敗;
當時間超過T之后,投票交易第二個解鎖條件的CLTV操作符才會失效,防止投票者在確定投票失敗前轉走比特幣。此后每個投票者Ui都構造一個退款交易RefundTxi,將n*x個比特幣返還到原匿名地址ABAi中。此交易輸入為投票交易輸出腳本的第二個條件,由投票者Ui使用私鑰簽署。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于東北大學秦皇島分校,未經東北大學秦皇島分校許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010194384.0/1.html,轉載請聲明來源鉆瓜專利網。





