CN110543783A - 一种投票系统及其实现方法、设备及存储介质 - Google Patents
一种投票系统及其实现方法、设备及存储介质 Download PDFInfo
- Publication number
- CN110543783A CN110543783A CN201910762960.4A CN201910762960A CN110543783A CN 110543783 A CN110543783 A CN 110543783A CN 201910762960 A CN201910762960 A CN 201910762960A CN 110543783 A CN110543783 A CN 110543783A
- Authority
- CN
- China
- Prior art keywords
- voting
- contract
- voting contract
- code
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C13/00—Voting apparatus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Bioethics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种投票系统及其实现方法、设备及存储介质,属于信息技术领域。包括访问接口模块,用于提供投票合约访问接口,投票合约模块,用于将投票合约的代码登记到区块链上;代码执行模块用于将高级语言编写的投票合约代码解析形成汇编语言;合约执行虚拟机,通过投票合约访问接口访问投票合约,判断即将执行的投票合约是否为汇编语言编写,如果是,则直接执行,如果否,则是高级语言编写的投票合约代码,将高级语言编写的投票合约代码解析,通过调用代码执行模块获取汇编语言,执行投票合约。针对基于传统中心化网络的投票项目影响投票自身的客观性、真实性和准确性的技术问题,本发明可以呈现不可篡改的、真实的投票数据和信息。
Description
技术领域
本发明涉及信息技术领域,尤其涉及一种投票系统及其实现方法、设备及存储介质。
背景技术
在人们的生产生活中,多会涉及问卷调查及数据统计,以便了解产品的市场行情,大众的对某个事件的观点,事项进展的反馈,状态情况反馈等方面信息。现有技术中常见的是嵌入在某一聊天社交软件的投票项目,这些投票项目多由外部运营商基于中心化服务器开发而来,用户在交软件上请求访问这些投票项目时,通常会请求获取用户的个人信息,同时这也致使这些投票项目相对于用户而言,存在一些弊端,比如,对于含有心理问卷调查的投票项目,一旦该软件所在的中心化服务器受到外部的恶意攻击,将会导致用户信息泄露;再者,外部运营商一旦恶化后,也可能会在中心化的服务器上随意修改投票项目的数据和信息,严重影响投票项目自身的客观性、真实性和准确性,误导公众,及那些使用该投票项目的投票数据的各方。
发明内容
1.发明要解决的技术问题
为了克服上述技术问题,本发明提供了一种投票系统及其实现方法、设备及存储介质。可以呈现不可篡改的、真实的投票数据和信息。
2.技术方案
为解决上述问题,本发明提供的技术方案为:
第一方面,本发明提供了一种投票系统,包括访问接口模块,用于提供投票合约访问接口,投票合约模块,用于将投票合约的代码登记到区块链上;
代码执行模块用于将高级语言编写的投票合约代码解析形成汇编语言;
合约执行虚拟机,用于接收到执行区块链上的投票合约指令后,通过投票合约访问接口访问投票合约,判断即将执行的投票合约是否为汇编语言编写,如果是,则直接执行,如果否,则是高级语言编写的投票合约代码,将高级语言编写的投票合约代码解析,通过调用代码执行模块获取汇编语言,执行投票合约;投票结果公布模块,用于在区块链上公布投票合约执行的结果。
优选地,所述访问接口模块,用于提供投票合约访问接口,所述投票合约访问接口与投票合约的域名和地址唯一对应。
优选地,还包括外部数据模块,所述外部数据模块用于给合约执行虚拟机执行智能合约提供外部数据资源。
优选地,所述投票合约模块还包括将投票合约代码进行哈希运算,哈希运算后将哈希值登记到区块链上。
优选地,所述合约执行虚拟机还包括将投票合约代码哈希值与投票合约存储服务器中的投票合约代码相匹配,获取与哈希值相对应的投票合约代码。
第二方面,本发明提供了一种投票系统的实现方法,根据以上所述的一种投票系统,包括:
将投票合约的代码登记到区块链上;
接收到执行区块链上的投票合约指令后,通过投票合约访问接口访问投票合约,判断即将执行的投票合约是否为汇编语言编写,如果是,则直接执行,如果否,则是高级语言编写的投票合约代码,将高级语言编写的投票合约代码解析,转换成汇编语言,执行投票合约;将投票合约执行的结果在区块链上公布。
优选地,在执行投票合约时,投票合约中的部分条件或者参数可以采用外部数据资源。
优选地,将投票合约代码进行哈希运算,将哈希值登记到区块链上。
优选地,在所述通过投票合约访问接口访问投票合约之后,包括:若在区块链上获取到投票合约哈希值时,将哈希值与投票合约存储服务器中的投票合约代码相匹配,获取与哈希值相对应的投票合约代码,执行投票合约代码。
第三方面,本发明提供了一种设备,所述设备包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如以上所述的方法。
第四方面,本发明提供了一种存储有计算机程序的存储介质,该程序被处理器执行时实现如以上任一项所述的方法。
3.有益效果
采用本发明提供的技术方案,与现有技术相比,具有如下有益效果:
基于区块链网络的分布式,去中心化的特点,使记录在其上的内容不可篡改,确保投票系统的公正公开透明,也使投票结果能够做到有据可查,投票的数据真实可信。
附图说明
图1为本发明实施例1提供的一种投票系统的结构示意图。
图2为本发明实施例2提供的一种投票方法的流程图。
图3为本发明的一种设备结构示意图。
具体实施方式
为进一步了解本发明的内容,结合附图及实施例对本发明作详细描述。
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
本发明中所述的第一、第二等词语,是为了描述本发明的技术方案方便而设置,并没有特定的限定作用,均为泛指,对本发明的技术方案不构成限定作用。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
实施例1
一种投票系统,如图1所示,包括访问接口模块,用于提供投票合约访问接口,投票合约模块,用于将投票合约的代码登记到区块链上;
代码执行模块用于将高级语言编写的投票合约代码解析形成汇编语言;
合约执行虚拟机,用于接收到执行区块链上的投票合约指令后,通过投票合约访问接口访问投票合约,判断即将执行的投票合约是否为汇编语言编写,如果是,则直接执行,如果否,则是高级语言编写的投票合约代码,将高级语言编写的投票合约代码解析,通过调用代码执行模块获取汇编语言,执行投票合约;投票结果公布模块,用于在区块链上公布投票合约执行的结果。
所述访问接口模块,用于提供投票合约访问接口,所述投票合约访问接口与投票合约的域名和地址唯一对应。
还包括外部数据模块,所述外部数据模块用于给合约执行虚拟机执行智能合约提供外部数据资源。所述投票合约模块还包括将投票合约代码进行哈希运算,哈希运算后将哈希值登记到区块链上。
所述合约执行虚拟机还包括将投票合约代码哈希值与投票合约存储服务器中的投票合约代码相匹配,获取与哈希值相对应的投票合约代码。
一种投票系统的实现方法,如图2所示,根据以上所述的一种投票系统,包括:
S201、将投票合约的代码登记到区块链上;
S203、接收到执行区块链上的投票合约指令后,通过投票合约访问接口访问投票合约;
S205、判断即将执行的投票合约是否为汇编语言编写,如果是,则直接执行投票合约,如果否,则是高级语言编写的投票合约代码,将高级语言编写的投票合约代码解析,转换成汇编语言,执行投票合约;将投票合约执行的结果在区块链上公布。
在执行投票合约时,投票合约中的部分条件或者参数可以采用外部数据资源。将投票合约代码进行哈希运算,将哈希值登记到区块链上。在所述通过投票合约访问接口访问投票合约之后,包括:若在区块链上获取到投票合约哈希值时,将哈希值与投票合约存储服务器中的投票合约代码相匹配,获取与哈希值相对应的投票合约代码,执行投票合约代码。
特别是在一些重大会议上推广适用,比如选举,对待定人员进行投票选举,鉴于区块链网络的分布式,去中心化的特点,使记录在其上的内容不可篡改。
实施例3
一种设备,所述设备包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如以上所述的方法。一种存储有计算机程序的存储介质,该程序被处理器执行时实现如以上实施例所述的方法。
图3为本发明一实施例提供的一种设备的结构示意图。
如图3所示,作为另一方面,本申请还提供了一种设备500,包括一个或多个中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM503中,还存储有设备500操作所需的各种程序和数据。CPU501、ROM502以及RAM503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本申请公开的实施例,上述任一实施例描述的方法可以被实现为计算机软件程序。例如,本申请公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行上述任一实施例描述的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。
作为又一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例的装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,该程序被一个或者一个以上的处理器用来执行描述于本申请的方法。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以通过执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以通过专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,各所述单元可以是设置在计算机或移动智能设备中的软件程序,也可以是单独配置的硬件装置。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离本申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (11)
1.一种投票系统,其特征在于,包括访问接口模块,用于提供投票合约访问接口,投票合约模块,用于将投票合约的代码登记到区块链上;
代码执行模块用于将高级语言编写的投票合约代码解析形成汇编语言;
合约执行虚拟机,用于接收到执行区块链上的投票合约指令后,通过投票合约访问接口访问投票合约,判断即将执行的投票合约是否为汇编语言编写,如果是,则直接执行,如果否,则是高级语言编写的投票合约代码,将高级语言编写的投票合约代码解析,通过调用代码执行模块获取汇编语言,执行投票合约;投票结果公布模块,用于在区块链上公布投票合约执行的结果。
2.根据权利要求1所述的系统,其特征在于,所述访问接口模块,用于提供投票合约访问接口,所述投票合约访问接口与投票合约的域名和地址唯一对应。
3.根据权利要求1所述的系统,其特征在于,还包括外部数据模块,所述外部数据模块用于给合约执行虚拟机执行智能合约提供外部数据资源。
4.根据权利要求1所述的系统,其特征在于,所述投票合约模块还包括将投票合约代码进行哈希运算,哈希运算后将哈希值登记到区块链上。
5.根据权利要求1所述的系统,其特征在于,所述合约执行虚拟机还包括将投票合约代码哈希值与投票合约存储服务器中的投票合约代码相匹配,获取与哈希值相对应的投票合约代码。
6.一种投票系统的实现方法,其特征在于,根据权利要求1所述的一种投票系统,包括:
将投票合约的代码登记到区块链上;
接收到执行区块链上的投票合约指令后,通过投票合约访问接口访问投票合约,判断即将执行的投票合约是否为汇编语言编写,如果是,则直接执行,如果否,则是高级语言编写的投票合约代码,将高级语言编写的投票合约代码解析,转换成汇编语言,执行投票合约;将投票合约执行的结果在区块链上公布。
7.根据权利要求5所述的方法,其特征在于,在执行投票合约时,投票合约中的部分条件或者参数可以采用外部数据资源。
8.根据权利要求5所述的方法,其特征在于,将投票合约代码进行哈希运算,将哈希值登记到区块链上。
9.根据权利要求5所述的方法,其特征在于,在所述通过投票合约访问接口访问投票合约之后,包括:若在区块链上获取到投票合约哈希值时,将哈希值与投票合约存储服务器中的投票合约代码相匹配,获取与哈希值相对应的投票合约代码,执行投票合约代码。
10.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求5-8中任一项所述的方法。
11.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求5-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910762960.4A CN110543783A (zh) | 2019-08-19 | 2019-08-19 | 一种投票系统及其实现方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910762960.4A CN110543783A (zh) | 2019-08-19 | 2019-08-19 | 一种投票系统及其实现方法、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110543783A true CN110543783A (zh) | 2019-12-06 |
Family
ID=68711594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910762960.4A Pending CN110543783A (zh) | 2019-08-19 | 2019-08-19 | 一种投票系统及其实现方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110543783A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111353827A (zh) * | 2020-03-13 | 2020-06-30 | 杭州复杂美科技有限公司 | 区块链投票方法、设备和存储介质 |
CN111475777A (zh) * | 2020-03-09 | 2020-07-31 | 上海能链众合科技有限公司 | 一种区块链智能合约的升级方法 |
CN112070608A (zh) * | 2020-08-20 | 2020-12-11 | 财付通支付科技有限公司 | 信息处理方法、装置、介质及电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106598549A (zh) * | 2016-12-08 | 2017-04-26 | 天津米游科技有限公司 | 一种基于区块链的智能合约系统及实现方法 |
CN108765158A (zh) * | 2018-05-31 | 2018-11-06 | 杭州秘猿科技有限公司 | 一种基于区块链的智能合约引擎系统及其合约执行方法 |
CN109067553A (zh) * | 2018-10-17 | 2018-12-21 | 杭州趣链科技有限公司 | 一种基于智能合约的区块链分布式证书的管理方法 |
CN109314642A (zh) * | 2016-02-23 | 2019-02-05 | 区块链控股有限公司 | 用区块链实施的用于安全投票和分配的计数系统和方法 |
CN109358881A (zh) * | 2018-10-24 | 2019-02-19 | 杭州趣链科技有限公司 | 一种基于智能合约的权限可控的智能合约升级方法 |
CN109523383A (zh) * | 2018-10-30 | 2019-03-26 | 广州斯拜若科技有限公司 | 一种智能合约转换系统及方法 |
CN109582438A (zh) * | 2018-10-30 | 2019-04-05 | 广州斯拜若科技有限公司 | 一种具有多个智能合约执行引擎的虚拟机及其实现方法 |
CN109766722A (zh) * | 2019-01-22 | 2019-05-17 | 苏州同济区块链研究院有限公司 | 一种区块链中构建智能合约的方法及其系统 |
-
2019
- 2019-08-19 CN CN201910762960.4A patent/CN110543783A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109314642A (zh) * | 2016-02-23 | 2019-02-05 | 区块链控股有限公司 | 用区块链实施的用于安全投票和分配的计数系统和方法 |
CN106598549A (zh) * | 2016-12-08 | 2017-04-26 | 天津米游科技有限公司 | 一种基于区块链的智能合约系统及实现方法 |
CN108765158A (zh) * | 2018-05-31 | 2018-11-06 | 杭州秘猿科技有限公司 | 一种基于区块链的智能合约引擎系统及其合约执行方法 |
CN109067553A (zh) * | 2018-10-17 | 2018-12-21 | 杭州趣链科技有限公司 | 一种基于智能合约的区块链分布式证书的管理方法 |
CN109358881A (zh) * | 2018-10-24 | 2019-02-19 | 杭州趣链科技有限公司 | 一种基于智能合约的权限可控的智能合约升级方法 |
CN109523383A (zh) * | 2018-10-30 | 2019-03-26 | 广州斯拜若科技有限公司 | 一种智能合约转换系统及方法 |
CN109582438A (zh) * | 2018-10-30 | 2019-04-05 | 广州斯拜若科技有限公司 | 一种具有多个智能合约执行引擎的虚拟机及其实现方法 |
CN109766722A (zh) * | 2019-01-22 | 2019-05-17 | 苏州同济区块链研究院有限公司 | 一种区块链中构建智能合约的方法及其系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111475777A (zh) * | 2020-03-09 | 2020-07-31 | 上海能链众合科技有限公司 | 一种区块链智能合约的升级方法 |
CN111475777B (zh) * | 2020-03-09 | 2023-04-25 | 上海零数众合信息科技有限公司 | 一种区块链智能合约的升级方法 |
CN111353827A (zh) * | 2020-03-13 | 2020-06-30 | 杭州复杂美科技有限公司 | 区块链投票方法、设备和存储介质 |
CN112070608A (zh) * | 2020-08-20 | 2020-12-11 | 财付通支付科技有限公司 | 信息处理方法、装置、介质及电子设备 |
CN112070608B (zh) * | 2020-08-20 | 2024-03-19 | 财付通支付科技有限公司 | 信息处理方法、装置、介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109558748B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN111401558B (zh) | 数据处理模型训练方法、数据处理方法、装置、电子设备 | |
US10963400B2 (en) | Smart contract creation and monitoring for event identification in a blockchain | |
CN109815742B (zh) | 数据脱敏方法及装置 | |
KR101702614B1 (ko) | 온라인 사기 검출 동적 점수 합계 시스템 및 방법 | |
US10873596B1 (en) | Cybersecurity alert, assessment, and remediation engine | |
US20180196875A1 (en) | Determining repeat website users via browser uniqueness tracking | |
US11956272B2 (en) | Identifying legitimate websites to remove false positives from domain discovery analysis | |
CN110992169A (zh) | 一种风险评估方法、装置、服务器及存储介质 | |
US10547618B2 (en) | Method and apparatus for setting access privilege, server and storage medium | |
CN110543783A (zh) | 一种投票系统及其实现方法、设备及存储介质 | |
CN105471823A (zh) | 一种敏感信息处理方法、装置、服务器及安全判定系统 | |
CN109495467B (zh) | 拦截规则的更新方法、设备及计算机可读存储介质 | |
CN106295333A (zh) | 用于检测恶意代码的方法和系统 | |
CN111327607B (zh) | 一种基于大数据的安全威胁情报管理方法、系统、存储介质及终端 | |
EP2901290A1 (en) | Detecting malicious advertisements using source code analysis | |
US20230216868A1 (en) | Analysis of endpoint detect and response data | |
CN112422574A (zh) | 风险账号的识别方法、装置、介质及电子设备 | |
CN111783142A (zh) | 数据保护方法、装置、服务器和介质 | |
US11356469B2 (en) | Method and apparatus for estimating monetary impact of cyber attacks | |
CN111985504A (zh) | 基于人工智能的翻拍检测方法、装置、设备及介质 | |
CN112307464A (zh) | 诈骗识别方法、装置及电子设备 | |
CN108062423B (zh) | 信息推送方法和装置 | |
US20180365687A1 (en) | Fraud detection | |
US20220131896A1 (en) | Contextual Data Security |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191206 |