基于区块链的选举系统的设计与实现
发布时间:2022-02-15 20:53
选举作为人类社会中的一项重要活动,伴随着社会的不断发展、技术的不断进步以及生产力的不断提高,人类的选举方式也一直在进步,从举手站队投票、纸条投票,到高效率的传统网络投票,选举方式也一直在变化。然而传统的网络投票方式因为其中心化的特点,存在种种弊端:如投票结果可能会被篡改,投票人无法验证投票结果,且存在着投票人信息泄露的问题。本文研究的目的是基于区块链技术去中心化,数据不可篡改等特性,设计并实现一个选举系统,尽可能的解决传统投选系统的弊端,做到选举结果的公开透明,结果可验证,且在一定程度上实现投票匿名性,尽最大可能保障投票人的信息安全,从而使其具有更高的投票自由权。本系统整体上分为业务系统和底层存储系统。其中业务系统主要使用J2EE实现,引入了java中流行的SSM框架,以提高开发效率,另外还使用了redis缓存技术提高系统性能,前端方面主要使用了Vue等流行的前端开发框架。底层使用区块链存储投票信息,通过对底层区块链的封装,使得上层业务系统能够方便的使用区块链的能力。通过以上技术手段的综合使用,最终整体达到了设计该系统的初衷,即在实现该选举系统选举结果公开透明、不可篡改、可验证的同时,...
【文章来源】:郑州大学河南省211工程院校
【文章页数】:71 页
【学位级别】:硕士
【部分图文】:
系统整体架构图
图 2.1 区块链简单架构图协议层:协议层处在最基础的层级,一般来说已经是一个完整的区块链,就好像手机、计算机的操作系统,其构建了网络环境、搭建了交易通道、制定了节点奖励规则,承担的职责主要是维护网络节点[48],并为上一层级提供可调用的接口。一般区块链运营方会开发一个简易的应用,可以叫作轻钱包,其功能十分简单,只能建立地址、验证签名、转账支付、查看余额等。最典型的例子,那就是比特币,以及莱特币等二代币。协议层涉及到的技术主要有 4 个方面,分别是网络编程、分布式算法、加密签名、数据存储技术,一般的网络编程语言即可网络编程需要,而分布式算法则可以说只是业务逻辑的实现,而加密签名技术通常都是公开的知识,可以直接使用,数据存储方式也需要根据需要进行选择。该层的难点主要是 P2P 网络实现以及并发处理,因此,使用 Nodejs、GO 语言开发区块链应用逐渐兴起。协议层可以进一步分为存储层和网络层。数据存储独立性更强一些,选择面也更广,主要从其性能和易用性来考虑。但是通常一个系统的整体性能,取
相关知识与技术到以下目标:投票数据无法篡改,投票数据可以重复验证,保证投票人信息安全以及匿名性。3.2.2 系统功能需求该系统所针对的目标用户比较宽泛,每个用户既可以作为投票人,也可以作为选举活动发起人。功能整体划分为三个模块,即:用户模块,管理模块和选举模块。具体功能包括用户的注册登录、投票通知、参与投票、选举活动管理、结果查看等。角色分为普通用户和管理员,如图 3.1 为该系统的用例图。
【参考文献】:
期刊论文
[1]区块链系统的数据存储与查询技术综述[J]. 王千阁,何蒲,聂铁铮,申德荣,于戈. 计算机科学. 2018(12)
[2]基于区块链的身份管理认证研究[J]. 董贵山,陈宇翔,张兆雷,白健,郝尧. 计算机科学. 2018(11)
[3]区块链技术应用的安全与监管问题[J]. 王俊生,李丽丽,颜拥,赵微,徐彧. 计算机科学. 2018(S1)
[4]“个人信息权”性质之辨与立法模式研究——以互联网新型权利为视角[J]. 李伟民. 上海师范大学学报(哲学社会科学版). 2018(03)
[5]区块链标准化现状及思路[J]. 李鸣,李佳秾,孙琳. 中国信息安全. 2018(05)
[6]基于商密体系的政务链解决数据安全共享交换的研究[J]. 赵睿斌,杨绍亮,王毛路,程浩. 信息安全与通信保密. 2018(05)
[7]一种基于局部性原理的远程验证机制[J]. 夏庆勋,庄毅. 计算机科学. 2018(04)
[8]一种高效安全的去中心化数据共享模型[J]. 董祥千,郭兵,沈艳,段旭良,申云成,张洪. 计算机学报. 2018(05)
[9]基于区块链技术的高效跨域认证方案[J]. 周致成,李立新,李作辉. 计算机应用. 2018(02)
[10]许可链多中心动态共识机制[J]. 闵新平,李庆忠,孔兰菊,张世栋,郑永清,肖宗水. 计算机学报. 2018(05)
本文编号:3627252
【文章来源】:郑州大学河南省211工程院校
【文章页数】:71 页
【学位级别】:硕士
【部分图文】:
系统整体架构图
图 2.1 区块链简单架构图协议层:协议层处在最基础的层级,一般来说已经是一个完整的区块链,就好像手机、计算机的操作系统,其构建了网络环境、搭建了交易通道、制定了节点奖励规则,承担的职责主要是维护网络节点[48],并为上一层级提供可调用的接口。一般区块链运营方会开发一个简易的应用,可以叫作轻钱包,其功能十分简单,只能建立地址、验证签名、转账支付、查看余额等。最典型的例子,那就是比特币,以及莱特币等二代币。协议层涉及到的技术主要有 4 个方面,分别是网络编程、分布式算法、加密签名、数据存储技术,一般的网络编程语言即可网络编程需要,而分布式算法则可以说只是业务逻辑的实现,而加密签名技术通常都是公开的知识,可以直接使用,数据存储方式也需要根据需要进行选择。该层的难点主要是 P2P 网络实现以及并发处理,因此,使用 Nodejs、GO 语言开发区块链应用逐渐兴起。协议层可以进一步分为存储层和网络层。数据存储独立性更强一些,选择面也更广,主要从其性能和易用性来考虑。但是通常一个系统的整体性能,取
相关知识与技术到以下目标:投票数据无法篡改,投票数据可以重复验证,保证投票人信息安全以及匿名性。3.2.2 系统功能需求该系统所针对的目标用户比较宽泛,每个用户既可以作为投票人,也可以作为选举活动发起人。功能整体划分为三个模块,即:用户模块,管理模块和选举模块。具体功能包括用户的注册登录、投票通知、参与投票、选举活动管理、结果查看等。角色分为普通用户和管理员,如图 3.1 为该系统的用例图。
【参考文献】:
期刊论文
[1]区块链系统的数据存储与查询技术综述[J]. 王千阁,何蒲,聂铁铮,申德荣,于戈. 计算机科学. 2018(12)
[2]基于区块链的身份管理认证研究[J]. 董贵山,陈宇翔,张兆雷,白健,郝尧. 计算机科学. 2018(11)
[3]区块链技术应用的安全与监管问题[J]. 王俊生,李丽丽,颜拥,赵微,徐彧. 计算机科学. 2018(S1)
[4]“个人信息权”性质之辨与立法模式研究——以互联网新型权利为视角[J]. 李伟民. 上海师范大学学报(哲学社会科学版). 2018(03)
[5]区块链标准化现状及思路[J]. 李鸣,李佳秾,孙琳. 中国信息安全. 2018(05)
[6]基于商密体系的政务链解决数据安全共享交换的研究[J]. 赵睿斌,杨绍亮,王毛路,程浩. 信息安全与通信保密. 2018(05)
[7]一种基于局部性原理的远程验证机制[J]. 夏庆勋,庄毅. 计算机科学. 2018(04)
[8]一种高效安全的去中心化数据共享模型[J]. 董祥千,郭兵,沈艳,段旭良,申云成,张洪. 计算机学报. 2018(05)
[9]基于区块链技术的高效跨域认证方案[J]. 周致成,李立新,李作辉. 计算机应用. 2018(02)
[10]许可链多中心动态共识机制[J]. 闵新平,李庆忠,孔兰菊,张世栋,郑永清,肖宗水. 计算机学报. 2018(05)
本文编号:3627252
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3627252.html