是否有相當安全的線上投票實施,例如學生會選舉?
假設一所大學要選舉學生會。這是通過紙質選票完成的,需要讓更多學生參與投票,因此電子投票已被提上日程。
在研究現有解決方案時,我遇到了 Helios:helios 投票和agora 投票
兩者似乎都實施了經過同行評審的計劃來進行線上投票,但我的印像是魔鬼可能隱藏在細節中。
這裡有人有使用這些方案的經驗嗎?我們計劃實施這樣的線上投票方案,並通過大學 LDAP 對選民進行身份驗證。我們會面臨哪些加密障礙或安全問題?
簡而言之,我的答案是否定的;保留紙質選票,它們具有電子替代品無法比擬的基本優點;特別是讓選民相信投票結果沒有受到嚴重操縱。
全面披露:我共同創立了一個(法國)公民監督投票方式的協會,基本上反對政治選舉的電子投票。我為我們對自 2007 年以來觀察到的法國電子投票機部署暫停所做的貢獻(儘管很少)感到自豪。
電子投票有兩種不同的含義:
- 使用專用電子投票機在投票站投票;
- 通過手機、網路瀏覽器等電子方式遠端投票。
這個問題似乎是關於 2 的,我將重點關注這個問題。一個主要問題是它沒有提出任何方法來阻止出售選票或在脅迫下投票。在大多數提議的系統中,交出一個人的憑證來投票(也許:在投票時間框架結束時)就可以了。
與用於政治選舉的傳統投票系統形成對比(在法國以及許多投票歷史悠久的國家,因此投票欺詐的歷史悠久,並修復了投票程式碼以對抗這種情況)。投票是根據精心設計的程序進行的,該程序旨在阻止以某種規定的方式出售選票和威脅投票,通過使除選民之外的任何人都很難(並禁止)知道投票是如何進行的(郵寄投票無法達到該目標,相反,通過要求事先向警方正式聲明由於某種原因(例如旅行)無法進行正常投票,這故意保持邊緣化)。為了實現這一目標,複雜的措施隨著時間的推移而演變:
- 通常,以任何方式採取行動都是非法和困難的,例如展示一個人的投票方式,或將一個人的投票權轉讓給另一個人(投票需要帶照片的官方身份證,在除非常小的城鎮外的所有地方)。
- 要求在投票亭( “isoloir” =隔離裝置)的不透明信封中插入紙質選票,以實現投票,除選民外,不允許任何人;
- 使帶有顯著標誌的紙質選票無效(並且不被計算在內);這是對在脅迫/付費下送出投票的紙質選票上標有明顯標誌的做法的一種對策,這樣受賄/恐嚇的選民可能會擔心,如果她/他不使用該紙,會在投票時被注意到數數;
- 通常,通過多種方式(在投票站和郵寄)提供紙質選票,這樣可以看到選民沒有從投票站的堆棧 X 中抓取選票,但實際上仍然使用紙質投票給 X他們秘密帶來的 X 的選票(在這方面用筆勾選一個選項會優於紙質選票,但可能會帶來之前的問題;另外,單獨提供紙質選票至少有助於閱讀障礙者)。
兩種形式的電子投票的另一個問題是,它使極少數人的欺詐行為成為可能,而傳統的投票系統使得具有多個獨立投票站的大規模投票成為不可能(因此這一論點不適用於小當地學生會,只有一個投票站):
- 選票投在骨灰盒中,從投票開始到計票結束都可以觀察到(法式骨灰盒是透明的,以應對欺詐行為)。
- 每個投票站都在當地點票;任何人都可以在她/他投票的投票站進行反對計票並檢查計票情況。
- 每個投票站的計票都以印刷形式公開,以便任何觀察員都可以檢查她/他投票的投票站的計票是否沒有修改,並檢查計票的增加,從而得出選舉結果(有一個層次結構兩級出版,但原則仍然有效)。
最重要的是,理性的人/選民可以確信傳統系統不允許集中欺詐;但據我所知,設法將投票保密的電子投票系統無法達到(甚至沒有)該目標。充其量,電子選舉的組織者可以確信沒有欺詐行為;這不是正確的目標(我所見過的任何實際系統甚至都沒有真正滿足)。
再次限制通過電子方式遠端投票,一些通常難以減輕的風險包括:
- 瀏覽器(例如在大學電腦上)被修改為就螢幕而言按照選民的要求進行投票,而網路側的投票實際上是不同的;這與火箭科學相去甚遠。
- 一個伺服器偽裝成選民瀏覽器的真實投票伺服器,在網路上的某個點執行中間人攻擊;如果加密防禦是像在普通 Web 瀏覽器中那樣使用 TLS 的 https,那麼它會被真實伺服器的私鑰副本打敗(證書頒發機構違反 CPS 發出的證書,這種情況比比皆是,也會欺騙大多數選民,儘管觀察者將瀏覽器顯示的證書與帶外獲得的真實證書進行比較時發現的風險)。如果 MitM 機器被適當地插入到靠近真實投票伺服器或目標瀏覽器的網路中,並且經過適當的程式,則 MitM 機器可以未被檢測到真正的投票伺服器(甚至是好奇的客戶端),它正在檢查 IP 地址和路由資訊;
- 在許多系統中,計票機器的簡單顛覆。多方執行多台計數機會有所幫助,但是當他們不同意時,規則應該是什麼?
- 拒絕服務;通過攻擊投票伺服器或網路基礎設施來阻止投票很容易,並且可以想像(尤其是在允許觀察者的情況下)創建一些破壞伺服器的 ESD/EMP。
- 個人選票的保密性受到以下威脅:
- 滲透執行選舉的中央電腦;當電腦操作員受到信任時,這個行業幾乎不知道如何解決這個問題;在這種情況下,我們不想相信他們!
- 選民設備的妥協(這在一定程度上被設備的多樣性所緩解)
- 網路安全實踐的脆弱性;例如,考慮一個用於“請確認您的投票”頁面的 https 連接,該頁面直覺地顯示了所選選票:如果顯示的是 jpg 圖像並且沒有採取特殊預防措施,則很可能僅分析 TCP/IP 數據包的長度即可揭示做出的選擇。
注意:有一個簡單的對策,緩解 1、2、5.2 和 5.3,我很少看到有人提出:選民會鍵入幾個數字,秘密收到,根據投票的不同而有所不同。這將在很大程度上將瀏覽器和網路從攻擊面中移除。這並非沒有其自身的安全問題,但一些電子投票的支持者不喜歡它的真正原因是它技術含量低,並承認在投票方面需要不信任高科技。
另外:任何投票系統,無論是電子的還是非電子的,都必須在兩個對抗目標之間取得平衡:
- 對個人選票保密,包括對選舉的任何人保密;因為否則,可能會發生個人報復。
- 使結果令人信服地代表選民的意圖,並儘可能多地傳達給合理的人;因為當選者需要合法性。
我們可以通過犧牲另一個目標來達到任何一個目標(如果隨著選舉的進行,所有個人選票都按照選民的名字公開,結果是可驗證的;如果我們用石頭/紙/剪刀選擇選舉的獲勝者,投票一個人的頭腦就足夠了)。
電子投票使這兩個目標變得相當複雜,特別是當你認為選舉的任何人都是試圖破壞投票保密和準確計票的對手(在加密貨幣的意義上)。簡而言之,我看不到一個稍微令人滿意的解決方案。