您好,我是負責這次選舉的廠商,這部分選委會授權由我直接來回答
畢竟東西都已經開源了,這項專案未來也會繼續發展,持續推廣到其他學校
※ 引述《yehzu (小葉~)》之銘言:
: 哎…自己吃的河蟹自己吐
: 聽說是明天選,可是問題還沒被回答啊= =
: 1. git log 的問題
: 推 yehzu:我的疑問是,每次投票就commit,我是否能在投票所記錄誰在什 05/24 22:47
: → yehzu:麼時間進入,比對git log,就可得知誰投了什麼票? 05/24 22:48
: → yehzu:這樣是否違反不記名投票的原則? 05/24 22:49
: → tomchc:基本上log不開放,因為很多人一直要求要記錄甚麼時候投票 05/24 23:20
: → tomchc:不記名疑慮本會也一直有提出,目前將改成嚴加保存log不外流 05/24 23:21
: → tomchc:為解決之道 05/24 23:21
: 推 yehzu:這不是開不開放的問題,是「還是有人可以得知」的問題 05/24 23:23
: 推 tw0517tw:有沒有可能延後隨機時間寫入資料庫XD 05/24 23:28
: 推 yehzu:那麼延後的時間多久?票跟票前後的時間很鬆散結果也是一樣 05/24 23:29
: 推 yehzu:而且「工作人員後台會知道同學已操作完畢,將同學請出來」.. 05/25 00:09
: → yehzu:這太誇張了吧....為什麼外面的人可以得知裡面的投票情形? 05/25 00:10
: → tomchc:log問題我們將找選監以及設計者討論,後臺問題基本上只是確 05/25 00:23
: → tomchc:定有沒有進行投票。比較像是投票者蓋完章有沒有出來把票放 05/25 00:23
: → tomchc:進票匭。將空白票擱在裡面或是攜出都是違法的 05/25 00:24
關於匿名與公正性
我在這次選舉的身份是系統供應商,選委所使用的系統是由我提供的,我相當
希望這次選舉能公平且順利的度過,使用電子投票的最大問題就是在匿名(完
全追蹤不到投票人是誰)、公正(選票沒有被篡改),對於前者,因為要達成
後者的驗證效果,程式設計上 log不可能不儲存時間戳,也就是說當選票的公
正性被挑戰時,log裡面一定會包含時間戳。
矛盾與聲譽
如果我不放上時間戳,又會被挑戰選票公正性,但說真的真要作弊,系統供應
商有千百種方法可以做票,但今天我是負責提供系統的廠商,我做這件事情會
有損我的名譽,這也就是電子投票找第三方來做的最大理由(總不可能找電算
中心來寫吧,大家都會懷疑期中評量有沒有記名了)。
關於選委能得知投票狀態一事
工作人員使用的後台只會顯示該票所最近五次完成的時間戳,我想這是沒有問
題的。
: 2.
: 推 yehzu:那還有疑問是,將會使用browser或是內建app?我能不能利用公 05/25 00:33
: → yehzu:開的原始碼做一個假網站,並在投票時置換上去? 05/25 00:35
: 如果使用內建app,那麼程式碼呢?
: 如果使用browser,又是使用什麼樣的browser?
: 如果當前投票用的程式被切換到其他程式去,又是如何?
: 再延申一點,是否可能裝入側錄軟體監看?
程式的架構在先前的簡報內有說明,系統建於aws ec2 cloud上面,要採用VPN
連入,連入後內網沒有提供對外的連線功能,android的訪客模式也沒辦法將
VPN中斷,如果他將wifi中斷的話就沒辦法看見投票網站,無法完成投票基於
第一點第三項的設計,選委將會發現。
若wifi中斷則VPN中斷,得進入管理員權限連上VPN(而且VPN密碼不會儲存在平板內)。
若製作假網站的話,沒辦法達成假造域名且SSL憑證會顯示綠色的作用,會被拆穿。
如圖可以看到網址列左方有綠色鎖頭,且域名正確(域名會寫在選舉說明上)
http://goo.gl/x6M0Sq
: 3. 使用的硬體規格、作業系統為?所有外部可以插入的孔有封住嗎?
ASUS transformer pad tf300t
android 4.2.1
連接usb的孔將會貼上選委封條,投票時請確認封條完整(旁邊的選舉說明也會寫到)
: 4. 結果的正確性
: 要怎麼告訴選民結果是正確的?別再跟我說開源,這不是解決這個的方法
: 檢查下載下來的軟體正確性可以使用 checksum,可是票呢?身為選民是否
: 有方式可以不記名地得知自己的票被投入正確的一方?
中選會怎麼告訴選民結果是正確的?
其實這個問題在每個選舉都存在,最後結果都是基於信任第三方單位
今天我是一間廠商,所有系統的設計皆是我負責,並提供給選委使用,昨天晚
上也都和選監們花了三小時解釋所有細節,這次的選舉我可以算是第三方的公
正單位,您也可以說我代表台科大學生會(目前為台科大學生會資訊室第七屆
主任,先前大一時也在敝校擔任過選委),在github上的code也可以看到票已
經被不記名的記錄,並使用git commit做記錄,事後這些記錄都是可以比對的。
: 5. 之前提到的,怎麼樣得知 runtime 的 code 是 github 上的那一份?
沒錯,沒辦法知道,但如同第四點,我沒有理由做出舞弊的事情
另外,我會在學生會待到選舉結果公告,歡迎有能力有興趣的人來找我,可以
作為見證人看一下線上系統運作,然後看最後開票的處理方式。
謝謝指教