我看完影片只有一個想法,台灣目前還是用傳統方式開票還有利用人力的方式進行,
我認為這樣並不是很對,因為會增加人為疏失的可能性以外,還有可能造成做票或是小動作的嫌疑,我認為即便有人監票,那種很會『變魔術』的人,也會讓監票員造成困難
我身為一名軟體工程師,是要想 solution 的,
面對這樣的問題我個人提出一個解法,
目前世界是有區塊鏈和去中心化技術的,我盡可能講白話說清楚要怎解決這個問題,以下我會提出我的系統設計,有更好的或是需要改善的可以提出來集思廣益。
首先每個人的手機或是電子設備前往投開票所投票(沒有個人設備可以經由投票所設備進行相關驗證),並且登載自己的身分證字號,簽名或有效印章,並經由選務人員核實
這時確定選票有效,自己的手機或電子設備會有 private key (或是一段註記祠),這時該投票所也會有相應產生的 private key,並產生相應該有效選票的 public key
如果要核實該選票可以根據個人 privatekey 和 public key 進行零知識證明,確保該選票是有效且來自於自己的身份,這樣的目的是確保個資保護,也同時證明該選票是有效且證明出自於個人
再來是投票的部分,使用者拿到的 publicKey 代表選票本身,,可以在有效時間內進行擅改,簡言之就是選擇候選人或政黨,確定送出後會產生 token ,且內容不能修改了,token 是公開的,畢竟選擇該候選人有幾票本來就是全國人民會知道,public key 本身可以驗證該 token 是來自於此 public key,但 token 沒辦法反過來查該 public key
public key 由兩個層面組成,第一個是 verified key 這個用來驗證 token 是正確且可以看出選票的是選誰或政黨的,另一個是 personal key 是用來非對稱解密該 public key 是出自於哪個人。
一旦 token 產生內容是不可擅改的,且該系統屬於分散式帳本系統,且每個節點都會互相對帳,如果有特定節點對不起來這時會有 recovery 機制,確保每個 token 是最初的狀態(已經選擇玩的狀態),且二次擅改會有一個 log server 進行存儲。
這樣確保是駭客攻擊是有紀錄還是系統上有特定問題產生。
然後以上還有很細節,基本上大概說這樣,
『歡迎任何工程師去協助建置和完成該系統』,
我希望每個人的選票是有價值的且不會被有心人士利用或擅改。
但我希望完成該系統的人把此系統作為公益和人民福祉使用,
不希望有人拿這系統特定盈利,以上。
原影片連結: