吳飛
摘 要 針對現有電子投票系統在安全性方面和實用性方面的問題,在B/S模式下設計并實現了一種安全高效的電子投票系統。本系統主要使用矩陣同態加密、矩陣全同態加密、基于身份簽名以及委托計算等技術來進行設計。龔
關鍵詞 網絡安全 電子投票系統 密碼學
中圖分類號:TP311 文獻標識碼:A
由于傳統紙質投票中需要印刷選票、制作票箱、收發選票、人工統計等工作,使得整個投票過程非常繁瑣,耗時耗力。此外,傳統的紙質投票更容易被不誠實的選民或計票單位篡改。不論是從人力、物力消耗方面還是整個投票過程的效率及安全性方面來考慮,傳統紙質投票早已漏洞百出。隨著信息技術的飛速發展,電子投票已經逐漸在方案征集、調研、政府選舉等各個領域普及開來。電子投票作為一種無紙化、電子化、計算機化的投票方式,簡化了投票過程。相對于傳統的紙質投票方式,它更高效、便捷、安全,充分體現了環保、低碳的經濟理念。
雖然目前有多種電子投票方案,但現有方案仍存在許多不足之處:選票內容合法性難以驗證、匿名性與在互聯網環境下身份驗證相矛盾、對于規模較大的投票活動有一定的局限性等。
針對上述問題,本作品在B/S模式下設計并實現了一種安全高效的電子投票系統。由于在B/S模式下設計,因而能夠簡化客戶端電腦載荷,減輕系統維護與升級的成本和工作量,降低用戶的總體成本,此外,通過Internet/Intranet模式下的數據庫應用,使得成本也相對較低。能實現不同的人員,不同的地點,不同的接入方式(比如LAN、WAN、Internet/Intranet等)訪問和操作共同的數據庫,并能有效地管理訪問權限和保護數據平臺,同時服務器數據庫也很安全。本作品主要使用矩陣同態加密、矩陣全同態加密、基于身份簽名以及委托計算等技術來進行設計。本作品將每張選票以矩陣的形式呈現,不僅可以實現任意候選人的選舉,而且可以利用現階段先進的同態加密以及委托計算技術,使得驗票變得更加簡單方便,同時選票內容的隱私性也得到了保護。本作品在選民選票生成、選票驗證方面更加簡潔,在系統部署方面更加靈活,可以用于同時在互聯網環境下進行大規模安全高效的投票選舉。本系統結合矩陣同態加密、矩陣全同態加密以及基于身份簽名等技術,在B/S模式下實現了一個基于身份簽名的安全電子投票系統。該系統包括五個部分,具體有注冊模塊、投票模塊、查詢模塊、驗票模塊、公證模塊、統計模塊。這五個部分有不同協作和分工,共同組成電子投票的整體。與現有的電子投票系統比較,本系統具有如下特色與創新:
(1)將選票以矩陣的形式呈現。利用矩陣包含信息量大等特點,將選票以矩陣的形式存放,一個矩陣可以包含多個候選人的信息。
(2)編碼方式獨特。用“101…0m”、“1”、“0”分別表示“贊成”、“反對”、“棄權”這三種狀態,這樣便可以統計出任意狀態的投票人數。根據選民的規模確定編碼的長度,假設選民的規模大小為789,那么贊成就用1000表示,當然也可以使用10000…。采用一個5*5的矩陣表示多候選人的選票(可容納的候選人數為1~25,不足的地方用上面的三種狀態填充)。如果候選人數超過25,則通過調整矩陣大小即可適用。
(3)選票身份化。采用基于身份的簽名技術對選票進行簽名,保證了所記錄的選票是選民自己的,由此便可認證選民的身份,驗證選民的合法性。
(4)選票內容隱私。使用矩陣同態加密和矩陣全同態加密技術保護了選票內容的隱私性。選票雖然具有身份信息,但選票的內容已被同態算法加密保護,除選民外,其他人無法了解選票的內容,故使得選票具有身份信息的同時,又能保護選票內容的隱私。
1矩陣同態加密方案簡介
本作品實現的是基于AGCDP困難性的矩陣同態加密方案,它是由密鑰生成算法、加密算法Enc和解密算法Dec算法構成的三元組HME={KryGen,Enc,Dec}。具體算法及參數設置如下:
(1)密鑰生成:運行密鑰生成算法KryGen,輸入安全參數%d,輸出素數p和p1,密鑰k=(p,p1)←KryGen(1%d)。這里的安全參數%d=(%Z%[),其中%Z=|p|,%[=|p1|。具體生成參數p,p1是按,隨機產生,在此設定%Z=%d,%[<%d,再利用隨機數生成器Rand生成S個不同隨機數q以及S個不同隨機數r,其中,并計算公鑰pk=
(2)加密:用戶隨機生成其中x=|q|,%`=|r|,x=%d,%`<%d。對于給定的明文m∈[0,2%]],%]<%[,運行加密算法Enc,密文c,密文c,
其中,為一隨機向量。
(3)解密:給定密文c和密鑰k,運行解密算法,得
。
2矩陣全同態加密方案簡介
矩陣全同態加密方案是由密鑰生成算法KryGen、加密算法Enc、解密算法Dec以及矩陣加法和矩陣乘法H孀槌傻奈逶镕HME={KryGen,Enc,Dec,H鎪,各算法詳細如下:
(1)密鑰生成:給定安全參數n,運行密鑰生成算法得到sk←KryGen(1n),其中為矩陣的一維的元素個數,KryGen是一個生成隨機可逆矩陣和求可逆矩陣逆的算法,其中
。
(2)加密:對于任意的矩陣M∈n譶,使用加密算法得密文C=Enc(sk,M)=PH鍹H鍼-1,很容易得知C∈n譶。
(3)解密:對于任意的密文矩陣C∈n譶,使用解密算法得M=Dec(sk,C)=P-1H鍹H鍼。
本系統能夠有效地驗證每一個選民的身份及其合法性,避免了一人多投、一票多投等可能存在的不安全問題,基于身份的簽名技術保證了記錄的選票為選民自己的。隨著“云計算”和“大數據”時代的來臨,本系統利用委托計算方案可以將選票委托到第三方進行統計。
參考文獻
[1] 朱艷琴,靳方元,張娟. 基于A-GCDP困難性的矩陣同態加密方案.系統仿真學,2013,25(4):699-703.
[2] 一種矩陣全同態加密算法、發明專利,2012,受理號:201210287976.2.