一种健壮的分布式网络投票系统结构
Craig Burton, Shanika Karunasekera, Aaron Harwood, Duana Stanley,and Ioanna Ioannou
每个人都很重要
澳大利亚墨尔本大学计算机科学与软件工程系
http://www.cs.mu.oz.au/p2p
摘要:基于web的Internet投票服务无法以可靠的方式提供,因为在这种情况下,公开可见的网站构成了与投票者交互和收集选票的基础,因为该服务无法抵抗分布式拒绝服务攻击。这个问题对于所有的交互式web服务来说都是一个深刻的问题,然而,互联网投票会话是一个定义良好且非常简单的交互,一个类似于基于web的投票的交互式服务被提出了。该架构使用P2P网络缓存作为Java投票小程序的来源。小程序通过他们的网页浏览器与投票者交互来收集选票。然后,小程序使用一个公共的p2p文件共享网络储存加密的选票,供选举选举干事收集。如何在这样一个异步系统中验证选民和提供接收的问题,以及使用为此目的建立的大型P2P网络的初步发现,都被描述了。该方法的成功演示可能会对其他必须收集信息的关键任务web服务产生影响。
1. 介绍
随着西方和新兴民主国家努力争取越来越多的选民,即拥有移动设备、能上网、“时间匮乏”的公民,利用互联网提供具有法律约束力的选举变得越来越重要。我们将网络投票具体称为网站投票,这也可以包括投票、“电子咨询”、网络协商或直接民主,以及“电子参与”。网站投票是一种远程投票的形式,投票者不受监督,这种新技术被用来补充或取代传统的邮政(“缺席”)投票。在2004年美国总统选举中,邮政投票的使用急剧增加,一些州的缺席请求上升了30%以上。
——————
通讯作者:墨尔本大学计算机科学与软件工程系,澳大利亚维多利亚3010。电话: 61 3 8344 1410,传真: 61 3 9348 1184,电子邮件:shanika@cs.mu.oz.au
与邮寄投票不同,网站投票为解决投票手续、匿名性、可验证性、防止被观察和篡改等问题提供了新的基础。这些问题的新解决方案是可能的,因为有一个交互式的接口来辅助投票者,更高级的技术在验证、传输和存储选票时采用了加密技术。除了网站投票之外,底层的互联网本身也为创造新的传输和存储机制提供了肥沃的土壤。本文介绍了一种非网站形式的互联网投票,它可以在提供基于浏览器的交互式服务的同时提高投票的可用性。
目前的网站投票系统有六个障碍,降低了服务的安全性和稳定性:
- 目前还不可能对偏远地区的选民进行强有力的识别。
- 远程投票浏览器和计算机的安全性通常很差。
- “电子银行”连接被用来加强网站投票。
- 投票服务器通常容易受到某些类型的攻击,试图压倒它们。
- 投票系统通常是闭源软件,不可观察或审计。
- 存储在投票服务器上的选票很容易被内部人士篡改。
作者之前在公共部门进行了控制实验,选民使用了一个网站投票设施,该设施加强了内部干预[3],在[15]中评估。这种方法为选民的浏览器配备了一个公钥加密客户端,该客户端对选票进行加密,因此只有选举选举干事才能解密这些选票。自2001年以来,这种方法也在其他地方使用(例如,参见[8]和[10])。没有ERO密钥,篡改(项目6)实际上是不可能的。此外,该系统提供了一个选民可验证的包含服务,它能够证明收到的选票在被解密之前没有被修改,这是一种额外的审计形式(项目5)。
作者的工作探索了签名的、开放代码的投票小应用程序的使用,这些小应用程序是由编译器生成的,编译器将正式的选举描述转换成Java。因此,每个选票的配置和内容被编译成一个一次性使用的applet,它足够小,可以有效地进行软件代码审计和签名。这进一步改善了项目5。该解决方案可以阻止通过浏览器和/或被破坏的电子商务渠道对投票会话(第2和第3项)的大量攻击。最后,投票者的投票会话包含在Java applet中,可以允许投票者断开与Internet的连接,从而使远程观察变得更加困难(第2项)。
为偏远地区的选民提供强有力的识别方法(项目1)可能需要更广泛地部署生物识别设备。到目前为止,通过使用防篡改信封的挂号邮件提供的非识别的、一次性使用的访问凭证已被证明是足够的。随机电话调查后,互联网投票试验没有发现凭证收集的发生率,也没有“花费”投票凭证的报告[3]。
投票网站易受各种流量分析攻击的最后一个开放性问题(第4项)是本文的重点。目前的网站投票系统是脆弱的,因为网站投票本质上是一种集中化的过程,实际上仍然模仿纸上投票——远程分布的选民提交到中央服务器。
目前,投票服务器尤其容易受到攻击,因为选民可以广泛分布在网络上,它们无法阻止互联网的任何部分。因为每个投票人都有网站地址,所以很难保密。
到目前为止,使用的网站投票技术并不能对流量分析攻击提供任何形式的防御,其中分布式拒绝服务(DDoS)攻击是非常普遍的,可以论证地使任何网站投票系统瘫痪,或就此而言,任何交互式网站。纯粹的“信息”网站可以被镜像和缓存,但这只是对网站内容的纯粹被动复制。
到目前为止,只有一个记录在案的案例,DDoS攻击Web投票系统[17],但假设随着投票试点规模的扩大,这些服务将受到越来越多的攻击。此外,在投票服务器上安装DDoS攻击所需的工具通常可以在Internet[9]上免费获得。
DDoS攻击是一种带宽攻击,是指利用大量分布式的、协同的计算机向网站发出请求。看似合法的流量让该服务不堪重负,无法再为真正的用户服务。众所周知,2000年2月针对一些世界上最大的电子商务网站的攻击就是DDoS攻击[7]的一个例子。最近,主流媒体报道了商业上可用的犯罪网络,这些网络中被入侵的电脑数量超过5万台,可以直接攻击任何安装在互联网上的机器[13]。
DDoS攻击的研究热点主要集中在防御[11]、检测[4]、识别攻击源[16,12]和攻击反应[14]。但是,目前还没有足够的技术来确保特定时间内(比如在具有法律约束力的选举期间)的服务可用性。
只要Web的客户端/服务器模型与投票服务器被广泛访问和高度可见,针对服务器的DDoS攻击的风险就会继续存在。这种风险不会因更快的网络、更强大或更多的集群服务器、防火墙或上行路由策略而得到改善,也不会因底层Internet本身的改进而得到改善。相反,所谓的互联网覆盖架构提供了一些希望,它可以分配流量并有效地隐藏服务器。
论文的组织如下。在第二部分,我们讨论了相关的工作。在第3节中,我们将描述提议的体系结构。在第4节中,我们描述了我们的实验设计,用于评估所提系统的适用性用于Internet投票。在第5部分,我们给出了一些初步的结果,第6部分总结了本文,并讨论了未来的研究方向。
- 系统架构
所提出的系统可以看作是一个通用的消息传递系统,它能够可靠地将匿名消息传递到目的地,因此该系统被称为匿名消息传递系统(AMS)。网络投票是该系统支持的一种特殊应用。AMS用于通过匿名点对点网络(APN)在互联网投票上下文中传输消息或投票。它取代了一个网站投票服务器作为投票的初始存储库。它由以下部分组成:
- e3 Secure Applet是[3]中描述的投票Applet。它是由AMS Sender 2编译的。
- AMS Sender是P2P网络客户机的一个最小Java实现。发送者有一个通用的接口,可以连接到其他P2P网络。
- APN是一种由许多安装在因特网上的计算机提供的服务,其中一些计算机作为种子节点可见。APN种子节点可用于从投票浏览器吸引AMS发送者。
- AMS Receiver是一个应用程序,它为投票文件轮询APN。
- 登台服务器是投票列表服务器,它连接到AMS消息传递服务,定期检索投票。
图1显示了拟议的AMS系统的高层架构。
使用该系统进行投票有多种方式,最有可能的是:
- 任何AMS使用的APN种子节点都是事先选定的。这些种子节点的IP地址是随机分配的,并被编码到唯一的选民身份验证凭证中。
- 选民身份认证证书是通过非互联网渠道发放给选民的,如挂号纸信、亲临投票人等。
- 选民被指示访问为选举创建的投票applet。该应用程序被放置在大型P2P缓存站点,如Coral[6] 。
- applet在投票者的浏览器中启动并请求身份验证凭据。它从凭证中获取一个或几个APN种子节点的IP地址。
- applet引导投票者进行投票。在会话结束时,applet使用AMS Sender来联系分配的种子节点。
- 投票者的投票由applet加密。votefile的唯一名称来源于身份验证凭证。
- 小程序可以尝试多个种子节点地址。它插入投票文件,并向选民报告该文件已提交到APN。它可以插入多个votefile的副本。
图1所示实验系统显示了AMS发送者客户端,用于传输Internet上的选票的APN,对APN进行投票的AMS接收应用程序,以及将选票制表的后台系统
- applet向投票者发出收据,该收据可用于在轮询[3]之后可用的现有收据检查服务。
- AMS接收机以与AMS发送者从认证细节中创建的相同文件名来轮询APN。
将收集选票的任务分配到许多隐藏的机器上,可以减少单个故障影响计票的机会。AMS接收器服务器不需要在DNS上注册,而且它们在互联网上的位置较难确定目前网站投票服务器的位置。AMS接收器也可以配置为收集重叠的投票列表,每个列表也会重复插入。这也为APN中不完整或失败的投票插入或任何丢失提供了一些阻力。
APN的一个附带好处是,它变得更加难以找到选民。在客户机/服务器安排中,客户机直接连接到服务器,因此客户机的机器Internet协议(IP)地址可以被记录。如果选民afixed-line DSL或电缆连接到他们的家和IP可以与他们的身份有关,还有一些IP的可能性可能会提供将选民对他们的选民通过IP相关时间(从WWW日志)和时间投票在数据库日志。如果有一个介入的APN,这将变得非常困难。
这个模型的第二个好处是大多数apn都有状态。这意味着,如果整个选举委员会受到质疑,只要法院命令能够获得选民凭证列表和解密选票的加密密钥,就可以直接获取选票。它是否将实际选民身份映射到选民证书取决于投票的管辖权。在联合王国,选民资格最终必须由投票决定,而在澳大利亚和美国,这种联系必须被摧毁。
- 实验设计
本节描述对系统进行评估的实验。一系列的模拟正在一个名为PlanetLab[2]的共享计算机学术网络上运行。所选择的现有P2P系统FreeNet[5]安装在PlanetLab节点上,创建了一个隔离的、专用的P2P文件共享系统。实验分为六个阶段和初步配置阶段。
所有实验测量的因变量如下:
— 投票插入延迟(插入时间)——插入投票和将投票放入p2p文件系统之间的时间,
— 投票获取延迟(获取时间)——接收方从文件系统取回选票所花费的时间,
— 总票数通过网络和
— 损坏或丢失的票数(vote loss)。
3.1 阶段一 配置
FreeNet应用程序安装在PlanetLab的25个节点上,可以轻松地扩展到460个节点。选择的25节点设计是只有种子节点的环形网络。环形拓扑定义了节点的初始设置,并被选为设置网络运行的最简单方法。然后网络通过路径发现形成自己的连接。节点间连接的建立应该反映在更好的插入和寻道时间。
初步阶段,Freenet是一个不需修改的专用APN。在此阶段创建了模拟投票客户端、投票收集服务和统计数据的所有支持软件。
3.2 阶段二 试验
每种情况下的标准试验运行都需要记录一个模拟投票客户端向一个FreeNet种子节点插入三个小时的投票所花费的时间。以下六项试验确立并衡量了以下措施的效果:
- 可变的投票插入密度-在串行或并行和轰炸网络,
- 网络上的后台流量-模拟加载Freenet节点的慢速效果,
- 在实验之间改变节点的数量——增加和删除节点,
- 在实验过程中删除节点-模拟多节点故障,
- 改变投票收获者的数量和
- 修改votefile的大小。
该实验通过使用运行期间PlanetLab节点的过程等待时间的加权平均来纠正测量结果,从而控制PlanetLab的共享机器负载。该实验通过使用PlanetLab节点之间ping延迟的加权平均来校正测量值来控制网络负载。
试验1:改变连续或并行的选票插入密度。本实验测试了插入率与插入时间的关系不是超线性的前提,取码时间的增长不是超线性的前提,丢包率不受插入量或轰炸到一定体积的影响。这个实验发现在获取时间、丢包率和插入时间之前网络所能携带的限制是不可接受的。
剩余内容已隐藏,支付完成后下载完整资料
英语原文共 9 页,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[596104],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。