看板 NTU 關於我們 聯絡資訊
嗨,我是開源社長 RSChiang,這次受選委會邀集,一同協助檢視電子投票 程式運作方式及相關安全性。 自上週選委會將程式碼開源後,開源社TDOH(學生駭客社群)、SITCON (學生計算機年會)與開發商協作完成了 21 項程式碼安全性修正與資料效 度更新。 我們也同時閱讀並檢驗了系統運作的原始碼,針對投票之技術細節, 茲說明如下: 基本上選票會經過數個階段的轉換(現實世界) 選務人員 A 檢驗身份 --> 選務人員 B 發給授權碼 (電子系統) 輸入授權碼 --> 單向雜湊轉換為索引號 --> 索引號管控投票流程 --> 確認投票時轉換成候選人編號 + 時間戳,即為選票記錄 (1) 記名問題 a. 人 <--> 授權碼:由於檢驗身份的選務人員與發放授權碼的人員並不一 致,所以無從將單獨個人對應至授權碼本身。 b. 授權碼 <--> 索引號:資料庫中用以控管投票流程的索引號 (Key Index) 是由 SHA1 + Trimmed MD5 + Salt 單向雜湊產生,由於雜湊函式的 定義域有無限種可能,經過轉換(映射)後,在有限的時間內,並無法反推 其授權碼為何。 c. 索引號 <--> 選票記錄:兩者並無關聯。索引號暫時記下的時間戳在投 票完成後會被清除,無法反推。 → 並無違反無記名原則。 (2) 真實性問題 a. 授權碼:每一筆產生的授權碼,皆為獨佔性(無法多重登入)、不可逆 性(無法回頭修改)且唯一(不重複)。 b. 選票記錄:伺服器端會以版本控制系統 Git,將每一筆選票記錄自動雜 湊歸檔 (commit)。由於修改 commit history 會導致雜湊值不一致,得以 確保選票記錄不會被篡改。 → 真實性是可以檢驗的。 (3) 常見疑難雜症 a. 開源之後會不會比較容易被駭? 並不盡然。全世界最廣為使用的作業系統 Linux,便是徹頭徹尾的開放原始 碼專案;將程式碼攤開在陽光底下檢視,也才能有更多人協助找到問題並修 正。 (說實在,Windows 不是開放原始碼軟體,也沒比較安全啊XD) b. 會不會有釣魚假網站?我的選票會不會外流? 此次投票系統係建構於 Amazon 私有雲上,無法外連到任何外部網站。開發 廠商已付費簽署 SSL 安全憑證,若有疑慮,可在投票時認明網址列上的綠 鎖頭。 圖例:http://imgur.com/G9zmqpZ c. 伺服器的偵錯記錄 (debug log) 會不會有時間戳記? 平板會不會被動手腳? (這是信任問題,廠商先我解釋了。見 NTU 版 #1JX3HB11d. 要怎麼確定開源版本與線上版本一致? 昨晚的電子投票說明會中,開源社已向廠商建議加設版本號標記。 以 g0v 零時政府網站為例: http://imgur.com/HSVprcA e. 我是__院的參選人,這又不是我的本科,難道我不能質疑嗎? 你好,我是開源社長、法律學院法律學系的 RSChiang。 非本科從來不是問題,質疑需要技術力作為後盾, 歡迎加入推廣資訊透明化的開源社! 如果尚對電子投票有疑慮,除了聯繫選委會外,開源社也將在 6/26(四) 舉辦電子投票系統讀碼講座,歡迎與我們一同研究電子投票系統的運作流程 與設計巧思。 --- 臺灣大學開源社 http://fb.com/NTUOSC --
RSChiang:黑雲被盜帳號了嗎XDD05/25 23:06
s864372002:樓上黨工(欸)05/25 23:09
RSChiang:我不是黨工啦QQ05/25 23:23
jacoby886:樓上網軍XD05/25 23:33
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.4.194 ※ 文章網址: http://www.ptt.cc/bbs/NTU/M.1401179135.A.183.html
h999342:推開源社 >///< 05/27 16:32
lsc36:RS大大m(_ _)m 05/27 16:44
yehzu:但timestamp<->人? 05/27 16:45
RPedsel:推<(_ _)> 6/26沒空無法去啦QQ 05/27 16:45
yehzu:另外「質疑需要技術力作為後盾」讓人看了不是很舒服啊.... 05/27 16:46
那不是重點啦。XD 或許措辭不夠精準,應該反面來說「技術力方能作為質疑的有利後盾」 才能為自己的論點辯護。 ※ 編輯: RSChiang (140.112.4.194), 05/27/2014 16:49:44
windhong:辛苦推@@ 05/27 16:51
yehzu:另外不妨看一下大師怎麼說 http://0rz.tw/dvqzf 05/27 16:52
osk2:朝聖推 05/27 16:53
yehzu:http://0rz.tw/f5R8e voting段 05/27 16:53
lyviasun:推法﹑律﹑學﹑院出身的強大網軍 05/27 16:55
s864372002:媽我上簽名檔惹._./ 05/27 17:08
taidocky:人家是社科院的啦~都看不懂>"< 不能質疑嗎^.< 05/27 17:13
wanghate:yehzu:英文看那麼多看不完啦 05/27 17:14
ck0413:推神人社長 05/27 17:27
qcl:推x-frame-options 05/27 17:46
pttbarca:推網軍 咦) XDD 05/27 18:07
w840808:推 順便問一下 1.a 如果兩個選務人員串通好就可以知道? 05/27 18:09
bigfish0330:幹網軍別來亂好不好 05/27 18:10
CXTRV:推rs大為61398網軍 05/27 18:18
SamThunder:資法神人RSC! 05/27 18:19
a75468:推個 有點猛 05/27 18:23
michael0728n:git是不是有機會爆炸?! 05/27 18:27
michael0728n:雖然不知道之前蘋果的版本管控是不是用git XD 05/27 18:28
MIKEmike07:真的佩服 05/27 18:52
TonyQ:@w840808 實際上揭露出來的最終結果是選票紀錄,照理說他只 05/27 20:05
TonyQ: 有授權碼是無法推出他到底選誰的。 05/27 20:05
TonyQ: 這其實是一道三層的鎖就是了 05/27 20:07
TonyQ:這個機制倒是讓我想到死亡預告的逝紙發放 XD 05/27 20:08
dennis2030:推 05/27 20:32
jacoby886:我上簽名擋了欸~~~XDD 05/27 21:36
jacoby886:    *檔 05/27 21:36
stalinone:娘子 快跟牛魔王出來看上帝 05/27 21:48
ccwang002:推~辛苦啦! 05/27 22:23
annedoo: 05/28 00:02
sophia1993:推學弟辛苦了! 05/28 00:15
shepherd72:推~ 05/28 00:47
briancytw:神人學弟! 05/28 03:25
snaketsai:yehzu:喔,RMS除此之外還反對IoT反對Cloud Computing 05/29 22:41