基于虚拟货币的投票系统的制作方法

文档序号:11232110阅读:1089来源:国知局
基于虚拟货币的投票系统的制造方法与工艺

本发明涉及的是一种电子投票领域的技术,具体是一种基于虚拟货币的投票系统。



背景技术:

比特币等是一种具有去中心化性质的虚拟货币,完全通过点对点技术实现的电子现金系统。此类虚拟货币的基础技术是区块链技术,它可以使得在线支付能够直接由一方发起并支付给另外一方,也就是说在交易过程中间不需要通过第三方参与,例如金融机构的调解。此类虚拟交易在全球范围内兴起,应用市场也不断扩展。

区块(block)是比特币交易中的最小单元,每10分钟,全网就会生成一个区块,所有的交易信息都会被包装在这个区块中,而这些区块则会以特定的顺序排列成链,这就是交易链,也叫区块链。此类虚拟货币系统中的所有交易信息记录都将保存在交易链中,由交易链保障区块的安全,也就保障了单个交易的安全。



技术实现要素:

本发明针对现有技术多采用自定义的区块链进行投票以管理根证书,导致其安全边际较小的缺陷,提出一种基于虚拟货币的投票系统,适用于不同类型大小和不同时间跨度的投票过程,完全公开保存转账记录的交易链从而保证投票过程的透明性与公正性。

本发明是通过以下技术方案实现的:

本发明包括:登记模块、投票模块和统计模块,其中:登记模块设置虚拟货币的转账地址作为各候选项的投票地址,并登记投票者及其对应的投票账户;投票模块读取投票者选择的候选项,将投票者的投票账户中的虚拟货币转入其选择的候选项的投票地址中;统计模块提取所有候选项的转账记录,得到投票者总数、投票时间、有效票数、无效票数以及各候选项的有效得票。

所述的虚拟货币为比特币或莱特币。

所述的登记模块包括:投票方登记单元、候选项登记单元和虚拟货币分配单元,其中:投票方登记单元登记投票者并为其关联投票账户,候选项登记单元登记候选项并设置虚拟货币的转账地址作为各候选项的投票地址,虚拟货币分配单元为各个投票账户分配所需的虚拟货币。

所述的投票模块包括:界面单元和转账单元,其中:界面单元与投票者交互并将投票者选择的候选项传输到转账单元,转账单元将投票者的投票账户中的虚拟货币转入其选择的候选项的对应投票地址中。

所述的统计模块包括:数据读取单元、票数统计单元和呈现单元,其中:数据读取单元读取在有效投票时间内的所有投票账户转账记录并提交票数统计单元,票数统计单元将转账记录转化为投票记录并统计投票者总数、投票时间、有效票数、无效票数以及各候选项的有效得票,呈现单元将投票者总数、投票时间、有效票数、无效票数以及各候选项的有效得票通过屏幕显示。

附图说明

图1为本发明整体结构示意图;

图2为登记模块结构示意图;

图3为投票模块结构示意图;

图4为统计模块结构示意图。

具体实施方式

本实施例中投票系统应用比特币网络来实现投票过程。面向投票过程数据链为比特币历史交易过程中完整区块链,该区块链中的每一个区块包含有如下结构:神奇数、区块大小、数据区块头信息以及交易计数和交易详情。比特币区块之间通过相应的hash值相连接,每个区块都由网络中的矿工计算而来,网络中的所有计算能力共同支撑了网络的数据安全性。

如图1所示,本实施例包括:登记模块、投票模块和统计模块,其中:登记模块设置虚拟货币的转账地址作为各候选项的投票地址,并登记投票者及其对应的投票账户;投票模块读取投票者选择的候选项,将投票者的投票账户中的虚拟货币转入其选择的候选项的投票地址中;统计模块提取所有候选项的转账记录,得到投票者总数、投票时间、有效票数、无效票数以及各候选项的有效得票。

如图2所示,所述的登记模块包括:投票方登记单元、候选项登记单元和虚拟货币分配单元,其中:投票方登记单元登记投票者并为其关联投票账户,候选项登记单元登记候选项并设置虚拟货币的转账地址作为各候选项的投票地址,虚拟货币分配单元为各个投票账户分配所需的虚拟货币。

所述的投票方登记单元所登记投票者可以以本人的比特币账户作为投票账户。虚拟货币分配单元为各个投票账户转入足额的比特币。所有候选项的投票地址以及投票规则以文件形式输出并公布。

所述的候选项设为两组,其中:第一组有三个候选项分别为c1-1,c1-2,和c1-3,投票规则为单选,即投票者只能在三个候选项中选择一个进行转账投票。当有投票者往三个候选项中的两个或者三个转账,则该投票为无效票。第二组有5个候选项c2-1、c2-2、c2-3、c2-4和c2-5,投票规则为多选且要求是3个以内,即投票者只能在五个候选项中选择一个、两个或者三个进行转账投票,当有投票者往五个候选项中的4个或者5个转账,则该投票者投出的是无效票。

采用json格式的文件方式来存储和公开投票者投票账户和投票规则。其中全部投票者投票账户文件中每一个对象包含了一个投票登记点的所有已登记的投票账户,对象的名称为投票登记点名称,对象的值为一个有序列表,列表中的每一项为一个已登记的投票账户。投票规则文件中的候选项上限对象展示了投票者可以选取的候选项上限,对象的值为整型,当为1,则该次投票只能单选,当大于1,则该次投票者可以多选,但所选的候选项数目不能超过该值,其余的每一个对象都代表了一个候选项,对象的名称为候选项,对象的值为该候选项对应的转账地址即投票地址。

如图3所示,所述的投票模块包括:界面单元和转账单元,其中:界面单元与投票者交互并将投票者选择的候选项传输到转账单元,转账单元将投票者的投票账户中的虚拟货币转入其选择的候选项的投票地址中。

所述的界面单元将投票者选择的候选项转化为该候选项所对应的投票地址,而后由转账单元执行转账操作。当投票者的选择是单选,则向对应候选项的转账地址转入特定数额的比特币。当投票者的选择是多选,则按照投票规则检查投票者的选择是否为无效投票,若其为无效投票,则驳回投票请求,需要投票方进行再一次投票,若为符合投票规则,则分别向每一个候选项投票地址转入特定数额的比特币。为保证转账过程被比特币网络及时确认并保存在区块链中,除了需要转入候选项的必要金额(可选择比特币最小币值),投票账户的剩余比特币可设置为转账的手续费。

如图4所示,所述的统计模块包括:数据读取单元、票数统计单元和呈现单元,其中:数据读取单元读取在有效投票时间内的所有投票账户转账记录并提交票数统计单元,票数统计单元将转账记录转化为投票记录并统计投票者总数、投票时间、有效票数、无效票数以及各候选项的有效得票,呈现单元将投票者总数、投票时间、有效票数、无效票数以及各候选项的有效得票通过屏幕显示。转账记录保存于交易链中。

所述的数据读取单元采用大步长6来初步确定区块范围,再通过不断减少搜索步长,每次减少1,来最终确定区块链符合有效投票时间的区间。读取所有的有效投票时间段存在于交易链中的转账记录后,票数统计单元通过对比特币数据结构的解析,使其转化为能够读取的投票记录。

对本实施例中的对所有候选项的投票分别进行统计,其中第一组总票数为13071,其中有效票为339,无效票为12732,第二组总票数为13071,其中有效票为1210,无效票为11861,统计所用平台为个人电脑,有效投票时间为80分钟,统计所用时间为2分钟。

与现有技术相比,本发明具有大型虚拟货币网络交易活跃计算量大所带来的安全性,完全公开保存转账记录的交易链从而保证了投票过程的透明性与公正性,适用于不同类型大小、不同规模大小以及不同时间跨度的投票过程。

上述具体实施可由本领域技术人员在不背离本发明原理和宗旨的前提下以不同的方式对其进行局部调整,本发明的保护范围以权利要求书为准且不由上述具体实施所限,在其范围内的各个实现方案均受本发明之约束。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1