您好,我是负责这次选举的厂商,这部分选委会授权由我直接来回答
毕竟东西都已经开源了,这项专案未来也会继续发展,持续推广到其他学校
※ 引述《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 上的那一份?
没错,没办法知道,但如同第四点,我没有理由做出舞弊的事情
另外,我会在学生会待到选举结果公告,欢迎有能力有兴趣的人来找我,可以
作为见证人看一下线上系统运作,然后看最后开票的处理方式。
谢谢指教