CN110474779A - 基于区块链的投票存证方法、装置、设备及可读存储介质 - Google Patents

基于区块链的投票存证方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN110474779A
CN110474779A CN201910742747.7A CN201910742747A CN110474779A CN 110474779 A CN110474779 A CN 110474779A CN 201910742747 A CN201910742747 A CN 201910742747A CN 110474779 A CN110474779 A CN 110474779A
Authority
CN
China
Prior art keywords
ballot
voucher
voter
card
information
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.)
Granted
Application number
CN201910742747.7A
Other languages
English (en)
Other versions
CN110474779B (zh
Inventor
杜志星
何凌峰
苏小康
张开翔
范瑞彬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WeBank Co Ltd
Original Assignee
WeBank Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201910742747.7A priority Critical patent/CN110474779B/zh
Publication of CN110474779A publication Critical patent/CN110474779A/zh
Application granted granted Critical
Publication of CN110474779B publication Critical patent/CN110474779B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME 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/00Voting apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及金融科技技术领域,并公开了一种基于区块链的投票存证方法、装置、设备和计算机存储介质,该基于区块链的投票存证方法包括:投票人系统接收分布式中心链中的协会节点传递的各投票方案,并将具有各所述投票方案的通知信息发送至各投票人账号对应的预设终端;所述投票人系统接收各所述预设终端基于所述通知信息发送的投票信息,并创建各所述投票信息对应的投票凭证,计算各所述投票凭证对应的投票凭证哈希值,将各所述投票凭证哈希值传递至存证链进行存证;在各所述投票凭证哈希值存证完成后,基于各所述投票信息在各所述投票方案中确定目标投票方案。解决了现有技术中无法确定目标投票方案是否准确的技术问题。

Description

基于区块链的投票存证方法、装置、设备及可读存储介质
技术领域
本发明涉及科技金融(Fintech)技术领域,尤其涉及一种基于区块链的投票存证方法、装置、设备及可读存储介质。
背景技术
随着金融科技(Fintech),尤其是互联网科技金融的不断发展,越来越多的技术(如分布式、区块链Block chain、人工智能等)应用在金融领域,但金融行业也对技术提出了更高的要求,如对金融也各个设备的安全性提出了更高的要求。
目前,行业P2P公司存在“爆雷”现象,为了应对此类似事件,会对一些违规违法的P2P公司进行清退,即将各个清退方案提交到某金融协会,由金融协会针对这些清退方案发起投票,投票人(P2P公司的债务人)通过小程序接收通知,并处理投票通知,等待投票人都投票完成,且达到投票有效期后,投票系统发起目标投票方案统计,以确定目标清单方案,并执行该目标清单方案。但是在目标清退方案确定的过程中,无法追溯投票信息是投票人投的,并且若投票信息被篡改也无法知悉,因此,如何提高目标投票方案的准确性成为了目前亟待解决的技术问题。
发明内容
本发明的主要目的在于提供一种基于区块链的投票存证方法、装置、设备和计算机存储介质,旨在解决现有技术中无法确定目标投票方案是否准确的技术问题。
为实现上述目的,本发明提供一种基于区块链的投票存证方法、装置、设备以及计算机可读存储介质,所述基于区块链的投票存证方法包括:
投票人系统接收分布式中心链中的协会节点传递的各投票方案,并将具有各所述投票方案的通知信息发送至各投票人账号对应的预设终端;
所述投票人系统接收各所述预设终端基于所述通知信息发送的投票信息,并创建各所述投票信息对应的投票凭证,计算各所述投票凭证对应的投票凭证哈希值,将各所述投票凭证哈希值传递至存证链进行存证;
在各所述投票凭证哈希值存证完成后,基于各所述投票信息在各所述投票方案中确定目标投票方案。
可选地,所述基于区块链的投票存证系统包括Weldentity链中的审计办节点,
所述基于各所述投票信息在投票人系统中的各所述投票方案中确定目标投票方案,并存储所述目标投票方案的步骤之后,包括:
所述审计办节点对所述目标投票方案进行审计,确定所述目标投票方案是否有效;
若所述目标投票方案有效,则所述审计办节点发送所述目标投票方案有效的信息至所述投票人系统,以便所述投票人系统执行所述目标投票方案对应的投票方案。
可选地,所述审计办节点对所述目标投票方案进行审计的步骤,包括:
所述审计办节点获取各所述投票人账号对应的投票人信息,并依次对各所述投票人信息进行身份认证;
若各所述投票人信息对应的身份认证均通过,则所述审计办节点再次对各所述投票凭证进行检测,以获得检测结果,若各所述检查结果均无误,则确定所述目标投票方案无误。
可选地,所述依次对各所述投票人信息进行身份认证的步骤,包括:
依次遍历各所述投票人信息,并计算当前遍历的投票人信息对应的第一哈希值,根据预设签名算法和所述第一哈希值计算第一公钥,判断所述第一公钥是否和所述当前遍历的投票人信息对应的预存公钥相等;
若相等,则确定所述当前遍历的投票人信息对应的身份认证通过,直至各所述投票人信息遍历完成。
可选地,所述审计办节点对各所述投票凭证进行检测的步骤,包括:
所述审计办节点依次遍历各所述投票凭证,并检测当前遍历的投票凭证中的凭证字段是否和所述投票凭证对应的投票信息中的业务数据字段匹配;
若匹配,则对所述当前遍历的投票凭证对应的投票凭证哈希值进行验证,若验证成功,则确定当前遍历的投票凭证的检测结果无误,直至各所述投票凭证遍历完成。
可选地,所述对所述当前遍历的投票凭证对应的投票凭证哈希值进行验证的步骤,包括:
获取所述当前遍历的投票凭证对应的目标投票信息,并计算所述目标投票信息对应的目标哈希值,判断所述目标哈希值是否和所述当前遍历的投票凭证对应的投票凭证哈希值匹配;
若匹配,则确定所述当前遍历的投票凭证验证成功。
可选地,所述将各所述投票凭证哈希值传递至存证链进行存证的步骤之后,包括:
所述存证链中的仲裁机构节点和签名机构节点对各所述投票凭证哈希值进行签名,并在所述签名完成后,将各所述投票凭证哈希值标识为存证的状态。
此外,为实现上述目的,本发明还提供一种基于区块链的投票存证装置,所述基于区块链的投票存证装置包括:
接收模块,用于投票人系统接收分布式中心链中的协会节点传递的各投票方案,并将具有各所述投票方案的通知信息发送至各投票人账号对应的预设终端;
计算模块,用于所述投票人系统接收各所述预设终端基于所述通知信息发送的投票信息,并创建各所述投票信息对应的投票凭证,计算各所述投票凭证对应的投票凭证哈希值,将各所述投票凭证哈希值传递至存证链进行存证;
存储模块,用于在各所述投票凭证哈希值存证完成后,基于各所述投票信息在各所述投票方案中确定目标投票方案。
此外,为实现上述目的,本发明还提供一种基于区块链的投票存证设备;
所述基于区块链的投票存证设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中:
所述计算机程序被所述处理器执行时实现如上所述的基于区块链的投票存证方法的步骤。
此外,为实现上述目的,本发明还提供计算机存储介质;
所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的基于区块链的投票存证方法的步骤。
本发明实施例提出的一种基于区块链的投票存证方法、装置、设备及可读存储介质,通过所述投票人系统接收分布式中心链中的协会节点传递的各投票方案,并将具有各所述投票方案的通知信息发送至各投票人账号对应的预设终端;所述投票人系统接收各所述预设终端基于所述通知信息发送的投票信息,并创建各所述投票信息对应的投票凭证,计算各所述投票凭证对应的投票凭证哈希值,将各所述投票凭证哈希值传递至存证链进行存证;在各所述投票凭证哈希值存证完成后,基于各所述投票信息在各所述投票方案中确定目标投票方案。通过在进行投票方案选择时引入分布式中心链,从而保证了投票身份凭证和投票凭证的不可篡改,并通过计算各个投票凭证对应的投票凭证哈希值,再将各个投票凭证哈希值传递至存证链进行存证,从而保障了投票凭证司法的证据能力,并提高了目标投票方案的准确性。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的终端\装置结构示意图;
图2为本发明基于区块链的投票存证方法第一实施例的流程示意图;
图3为本发明基于区块链的投票存证方法的装置模块示意图;
图4为本发明基于区块链的投票存证方法的流程示意图。
本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端为基于区块链的投票存证设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在终端设备移动到耳边时,关闭显示屏和/或背光。当然,终端设备还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于区块链的投票存证程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的基于区块链的投票存证程序,并执行以下操作:
投票人系统接收所述分布式中心链中的协会节点传递的各投票方案,并将具有各所述投票方案的通知信息发送至各投票人账号对应的预设终端;
所述投票人系统接收各所述预设终端基于所述通知信息发送的投票信息,并创建各所述投票信息对应的投票凭证,计算各所述投票凭证对应的投票凭证哈希值,将各所述投票凭证哈希值传递至存证链进行存证;
在各所述投票凭证哈希值存证完成后,基于各所述投票信息在各所述投票方案中确定目标投票方案。
本发明提供一种基于区块链的投票存证方法,在基于区块链的投票存证方法第一实施例中,参照图2,基于区块链的投票存证方法包括以下步骤:
步骤S10,投票人系统接收分布式中心链中的协会节点传递的各投票方案,并将具有各所述投票方案的通知信息发送至各投票人账号对应的预设终端;
区块链是一种去中心化的分布式账本技术。Weldentity(即分布式中心链)是一套分布式中心的技术解决方案,可承载实体对象(如人或者物)的现实身份与区块链上身份的可信映射、以及实现实体对象之间安全的访问授权与数据交换。主要包括两大模块:WeIdentity DID以及WeIdentity Credential。WeIdentity DID:传统方式中,用户的注册和身份管理完全依赖于单一中心的注册机构;随着分布式账本技术(例如区块链)的出现,分布式多中心的身份注册、标识和管理成为可能。WeIdentity DID模块在FISCO-BCOS区块链底层平台上实现了一套符合W3C DID规范的分布式多中心的身份标识协议,使实体(人或物)的现实身份实现了链上的身份标识;同时,WeIdentity DID给与Subject(人或者物)直接拥有和控制自己身份ID的能力。WeIdentity Credential:可验证数字凭证,现实世界中存在着各种各样用于描述实体身份、实体间关系的数据,如身份证、行驶证、存款证明、处方、毕业证、房产证、信用报告等。WeIdentity Credential提供了一整套基于W3C VC规范的解决方案,旨在对这一类数据进行标准化、电子化,生成可验证、可交换的「凭证」(Credential)。投票案件是发起投票的内容,存储字段:{event_id(案件id),event_name(案件名称),desc(案件描述),option(选项)}。投票人账号是P2P公司的债务人账号。在本实施例中,WeIdentity链由拥有KYC系统的机构(简称:KYC机构)、某金融协会机构、某审计办机构共同组建,各机构都为自己创建WeIdentity DID,在链中标识自己的身份(WeIdentity DID格式:did:weid:公钥地址,例如:did:weid:0x0b736a3e2b96ba4fd900d2687c9414808da6ec9e)。
当投票人系统接收到发起投票指令时,会将区块链中的协会节点提供的各个投票方案存储至投票数据库中,同时投票人系统会推送具有各个投票方案的通知信息发送至各投票人账号所在的预设终端(如显示终端和移动终端等)。例如某金融协会根据P2P公司提供的资金清退方案发起投票,通知信息:A公司对欠投票人20万及20万以下的执行一次性还款,对20万以上执行分期还款,等额本息,按照银行存款利率,2年还清;执行时间:本方案通过的10个工作日开始执行;是否同意本方案?A.同意,B.不同意。投票人系统会将此通知信息发送到各个投票人账号所在终端,以供各个投票人开始投票。
步骤S20,所述投票人系统接收各所述预设终端基于所述通知信息发送的投票信息,并创建各所述投票信息对应的投票凭证,计算各所述投票凭证对应的投票凭证哈希值,将各所述投票凭证哈希值传递至存证链进行存证;
投票信息是投票人的投票内容,存储字段:{user_id(出借人id),event_id(案件id),option(投票的选项)}。存证链由仲裁机构与签名机构组建,具备存证,取证的服务,并且在本案例中,会使用存证链的存证、取证功能,保证hash在司法方面具备证据能力,功能描述如下:存证:投票凭证会计算出hash,将hash发起存证,也就是将hash进行签名算法,上传到存证链,存证链的仲裁机构与签名机构会对hash进行签名,签名完成后,会将hash标识为存证的状态;取证:当要证明某hash具备司法证据能力,只需要提供hash给存证server,就会返回hash是否已进行了存证。
当投票人账号所在的预设终端接收到投票人系统发送的通知信息后,会提醒各个投票人开始投票,并在接收到投票人输入的投票信息后,并将此投票信息通过该预设终端发送到投票人系统,投票人系统会在接收到各个投票信息,会为每个投票信息创建投票凭证,也就是每个投票信息均有一个与之对应的投票凭证,并在投票凭证创建成功后,对各个投票凭证进行计算,以得到各个投票凭证对应的投票凭证哈希值(其中,计算哈希值的方式可以采用现有计算方式进行计算),并将各个投票凭证哈希值传递至存证链进行存证。
步骤S30,在各所述投票凭证哈希值存证完成后,基于各所述投票信息在各所述投票方案中确定目标投票方案。
投票结果统计,存储字段:{option_id(决策id),event_id(案件id),count(票数),total(投票总数),percent(投票百分比),option_percent(投票选项占比)}。当将各个投票凭证哈希值存证完成后,可以将其存储至投票数据库中,并返回投票信息给到投票人账号,让投票人能够看到投票的状态。并在投票有效期结束后,根据各个投票信息执行投票结果统计,以便在各个投票方案中确定后续需要实施的投票方案,并将其作为目标投票方案,存储至投票数据库中。
为辅助理解本实施例中的投票存证流程,下面进行举例说明。
例如,如图4所示,投票人通过小程序进行注册登录;投票小程序调用KYC(Knowyour customer,充分了解你的客户)系统进行KYC认证,会将用户信息存储在投票数据库中,存储字段:{user_id(1),name(张三),card(3601211989XXXXXXXX),weid(null)},{user_id(2),name(李四),card(3601221989XXXXXXXX),weid(null)},{user_id(3),name(王五),card(3601231989XXXXXXXX),weid(null)};投票小程序为投票人WeldentityDID及出借人的公私钥(出借人公私钥托管在KYC系统,每次获取私钥通过KYC刷脸获取),完成后,在创建身份凭证,并更新投票数据库用户信息。然后某金融协会根据P2P公司提供的资金清退方案发起投票,投票人系统接收到发起投票指令后,将投票案件存储至投票数据库,同时投票人系统会向投票小程序推送投票通知,通知内容为投票案件,投票人收到推送通知后,开始通过投票小程序投票,并且投票人系统会根据投票信息创建投票凭证,并对投票凭证进行存证,在存证成功之后,返回投票信息给投票小程序,投票人可以通过投票小程序看到投票的状态。并在投票有效期结束后,执行目标投票方案统计,即定时统计目标投票方案,并将目标投票方案存储至投票数据库。在目标投票方案出来后,可以通过某审计办对统计目标投票方案进行审计。其中,KYC系统、某金融协会和某审计办均在Weldengtity链中具有各自的节点。避被并且存证链上具有仲裁机构节点、签名机构1节点和签名机构2节点等。
在本实施例中,通过投票人系统接收分布式中心链中的协会节点传递的各投票方案,并将具有各所述投票方案的通知信息发送至各投票人账号对应的预设终端;所述投票人系统接收各所述预设终端基于所述通知信息发送的投票信息,并创建各所述投票信息对应的投票凭证,计算各所述投票凭证对应的投票凭证哈希值,将各所述投票凭证哈希值传递至存证链进行存证;在各所述投票凭证哈希值存证完成后,基于各所述投票信息在各所述投票方案中确定目标投票方案。通过在进行投票方案选择时引入分布式中心链,从而保证了投票身份凭证和投票凭证的不可篡改,并通过计算各个投票凭证对应的投票凭证哈希值,再将各个投票凭证哈希值传递至存证链进行存证,从而保障了投票凭证司法的证据能力,并提高了目标投票方案的准确性。
进一步地,在本发明第一实施例的基础上,提出了本发明基于区块链的投票存证方法的第二实施例,本实施例是本发明第一实施例的步骤S30,基于各所述投票信息在投票人系统中的各所述投票方案中确定目标投票方案,并存储所述目标投票方案的步骤之后,包括:
步骤a,所述审计办节点对所述目标投票方案进行审计,确定所述目标投票方案是否有效;
在本实施例中,基于区块链的投票存证系统还包括Weldengtity链中的审计办节点。并且,审计办节点中的审计办机构具有提供验证投票凭证的能力,提供数据追溯的能力,当发起审计的时候,需要验证投票凭证(投票信息是否有效),需要验证投票数据库中的业务数据字段与投票凭证中的字段是否匹配,需要验证凭证计算的哈希值是否匹配,需要验证投票凭证计算出的哈希值是否已经进行了存证。
当目标投票方案出来后,审计办节点需要对目标投票方案进行审计,以确定目标投票方案是否有效,如投票信息是否有被篡改、或者投票信息确定是投票人本人投的等。若目标投票方案无误,则确定目标投票方案是有效的,可以让投票系统执行该目标投票方案对应的图片方案。拖目标投票方案存在有一定的误差,则该目标投票方案无效。
步骤b,若所述目标投票方案有效,则所述审计办节点发送所述目标投票方案有效的信息至所述投票人系统,以便所述投票人系统执行所述目标投票方案对应的投票方案。
当经过判断发现目标投票方案有效,则审计办节点发送目标投票方案有效的信息至投票系统,让投票人系统执行目标投票方案对应的投票方案。
在本实施例中,通过让审计办节点对目标投票方案进行审计,从而保障了目标投票方案的准确性。
具体地,审计办节点对所述目标投票方案进行审计的步骤,包括:
步骤a1,所述审计办节点获取各所述投票人账号对应的投票人信息,并依次对各所述投票人信息进行身份认证;
审计办节点中的审计办通过投票人系统查询所有的投票人账号对应的投票人信息,如身份凭证、weid(实体标识化),并对各个投票人信息进行身份认证,以确定各个投票人信息是否为有效的。
步骤a2,若各所述投票人信息对应的身份认证均通过,则所述审计办节点再次对各所述投票凭证进行检测,以获得检测结果,若各所述检测结果均无误,则确定所述目标投票方案无误。
当经过判断发现投票人信息对应的身份认证均通过,则可以认为所有的投票人信息均是有效的,此时审计办节点需要再次对各个投票凭证进行检测,以确定各个投票信息是否被篡改过。若经过判断发现各个检测结果均是正确的,则可以认为目标投票方案是有效的,可以执行的。但是当经过判断发现存在有投票人信息对应的身份认证未通过,则可以确定投票人信息存在错误,需要进行检查修正。
在本实施例中,通过审计办节点对各个投票人信息进行身份认证,并对各个投票凭证进行检测,从而保障了目标投票方案的准确性。
具体地,依次对各所述投票人信息进行身份认证的步骤,包括:
步骤a11,依次遍历各所述投票人信息,并计算当前遍历的投票人信息对应的第一哈希值,根据预设签名算法和所述第一哈希值计算第一公钥,判断所述第一公钥是否和所述当前遍历的投票人信息对应的预存公钥相等;
对投票人信息进行身份认证时,可以通过调用KYC系统提供的验证身份接口进行验证,KYC系统验证身份规则:使用weid查询出weid的预存公钥,然后使用身份凭证credential的card与weid分别计算哈希值hash(即第一哈希值),得出cardhash、weidhash,然后拼接成字符串cardhash&weidhash,再调用签名算法(cardhash&weidhash,credential的sign)算出公钥(即第一公钥),并判预存公钥和第一公钥是否相等,若相等,则当前投票人信息无误,并继续对下一个投票人信息进行身份认证,若不相等,则当前投票人信息出现错误,直到所有投票人信息的身份认证均完成。
步骤a12,若相等,则确定所述当前遍历的投票人信息对应的身份认证通过,直至各所述投票人信息遍历完成。
当经过判断发现第一公钥和当前遍历的投票人信息对应的预存公钥相等,则当前遍历的投票人信息对应的身份认证通过,需要继续对下一个投票人信息进行身份认证,直到所有的投票人信息对应的身份认证均完成。
在本实施例中,通过对各个投票人信息进行身份认证,从而保障了各个投票信息均是投票人本人投票的,并保障了目标投票方案的准确性。
具体地,审计办节点再次对各所述投票凭证进行检测的步骤,包括:
步骤a21,所述审计办节点依次遍历各所述投票凭证,并检测当前遍历的投票凭证中的凭证字段是否和所述投票凭证对应的投票信息中的业务数据字段匹配;
当审计办需要对各个投票凭证进行检测时,可以让审计办节点先通过投票人系统查询所有投票信息,如投票凭证等,然后调用验证投票凭证接口进行验证。即审计办节点依次遍历各个投票凭证,并检测当前遍历的投票凭证中的凭证字段是否和投票凭证对应的投票信息中的业务数据字段匹配,若匹配,则当前遍历的投票凭证无误,若不匹配,当前遍历的投票凭证是无效的。其中,凭证字段是投票凭证中的字段。业务数据字段是该投票凭证对应的投票信息中的预设字段。
步骤a22,若匹配,则对所述当前遍历的投票凭证对应的投票凭证哈希值进行验证,若验证成功,则确定当前遍历的投票凭证的检测结果无误,直至各所述投票凭证遍历完成。
当经过判断发现凭证字段和业务数据字段匹配,则需要对当前遍历的图片凭证对应的投票凭证哈希值进行验证,确定投票是否有进行过篡改。若验证成功,则当前遍历的图片凭证是有效的,并且需要对所有的投票凭证进行验证。另外需要说明的是对投票凭证进行检测的方法,还可以采用和身份认证相同的方式,即计算投票凭证的哈希值,并通过签名算法来计算公钥,再将计算的公钥和预存的投票凭证对应的公钥进行匹配,若匹配,则投票凭证检测成功,若不匹配,则投票凭证检测失败。
在本实施例中,通过对各个投票凭证进行检查,确定凭证字段是否准确,从而有效地检测到投票信息是否有进行篡改,提高了目标投票方案的准确性。
具体地,对所述当前遍历的投票凭证对应的投票凭证哈希值进行验证的步骤,包括:
步骤a221,获取所述当前遍历的投票凭证对应的目标投票信息,并计算所述目标投票信息对应的目标哈希值,判断所述目标哈希值是否和所述当前遍历的投票凭证对应的投票凭证哈希值匹配;
获取当前遍历的投票凭证对应的目标投票信息,并计算目标投票信息对应的目标哈希值,再获取预存的当前遍历的投票凭证对应的投票凭证哈希值,并检测目标哈希值和投票凭证哈希值是否匹配,并基于检测结果执行不同的操作。
步骤a222,若匹配,则确定所述当前遍历的投票凭证验证成功。
当经过判断发现目标哈希值和当前遍历的投票凭证对应的投票凭证哈希值匹配,则当前遍历的投票凭证验证成功,可以对下一个投票凭证进行验证了,但是当经过判断发现目标哈希值和投票凭证哈希值不匹配时,则可以确定当前遍历的投票凭证验证失败。
在本实施例中,通过检测计算的目标哈希值是否预存的投票凭证哈希值匹配,从而准确地知道投票凭证是否有进行过篡改,间接地保障了目标投票方案的准确性。
进一步地,将各所述投票凭证哈希值传递至存证链进行存证的步骤之后,包括:
步骤e,所述存证链中的仲裁机构节点和签名机构节点对各所述投票凭证哈希值进行签名,并在所述签名完成后,将各所述投票凭证哈希值标识为存证的状态。
当投票人系统将各个投票凭证哈希值传递到存证链进行存证时,存证链中的所有仲裁机构节点和签名机构节点会对各个投票凭证哈希值进行签名标记,并在签名完成后,将各个投票凭证哈希值标识为存证的状态,即存证完成。
在本实施例中,通过在存证链中对各个投票凭证哈希值进行签名存证,从而保障了投票凭证司法的证据能力。
此外,参照图3,本发明实施例还提出一种基于区块链的投票存证装置,所述基于区块链的投票存证装置包括:
接收模块,用于投票人系统接收分布式中心链中的协会节点传递的各投票方案,并将具有各所述投票方案的通知信息发送至各投票人账号对应的预设终端;
计算模块,用于所述投票人系统接收各所述预设终端基于所述通知信息发送的投票信息,并创建各所述投票信息对应的投票凭证,计算各所述投票凭证对应的投票凭证哈希值,将各所述投票凭证哈希值传递至存证链进行存证;
存储模块,用于在各所述投票凭证哈希值存证完成后,基于各所述投票信息在各所述投票方案中确定目标投票方案。
可选地,所述存储模块,还用于:
所述审计办节点对所述目标投票方案进行审计,确定所述目标投票方案是否有效;
若所述目标投票方案有效,则所述审计办节点发送所述目标投票方案有效的信息至所述投票人系统,以便所述投票人系统执行所述目标投票方案对应的投票方案。
可选地,所述存储模块,还用于:
所述审计办节点获取各所述投票人账号对应的投票人信息,并依次对各所述投票人信息进行身份认证;
若各所述投票人信息对应的身份认证均通过,则所述审计办节点再次对各所述投票凭证进行检测,以获得检测结果,若各所述检查结果均无误,则确定所述目标投票方案无误。
可选地,所述存储模块,还用于:
依次遍历各所述投票人信息,并计算当前遍历的投票人信息对应的第一哈希值,根据预设签名算法和所述第一哈希值计算第一公钥,判断所述第一公钥是否和所述当前遍历的投票人信息对应的预存公钥相等;
若相等,则确定所述当前遍历的投票人信息对应的身份认证通过,直至各所述投票人信息遍历完成。
可选地,所述存储模块,还用于:
所述审计办节点依次遍历各所述投票凭证,并检测当前遍历的投票凭证中的凭证字段是否和所述投票凭证对应的投票信息中的业务数据字段匹配;
若匹配,则对所述当前遍历的投票凭证对应的投票凭证哈希值进行验证,若验证成功,则确定当前遍历的投票凭证的检测结果无误,直至各所述投票凭证遍历完成。
可选地,所述存储模块,还用于:
获取所述当前遍历的投票凭证对应的目标投票信息,并计算所述目标投票信息对应的目标哈希值,判断所述目标哈希值是否和所述当前遍历的投票凭证对应的投票凭证哈希值匹配;
若匹配,则确定所述当前遍历的投票凭证验证成功。
可选地,所述计算模块,还用于:
所述存证链中的仲裁机构节点和签名机构节点对各所述投票凭证哈希值进行签名,并在所述签名完成后,将各所述投票凭证哈希值标识为存证的状态。
其中,基于区块链的投票存证装置的各个功能模块实现的步骤可参照本发明基于区块链的投票存证方法的各个实施例,此处不再赘述。
本发明还提供一种终端,所述终端包括:存储器、处理器、通信总线以及存储在所述存储器上的基于区块链的投票存证程序:
所述通信总线用于实现处理器和存储器之间的连接通信;
所述处理器用于执行所述基于区块链的投票存证程序,以实现上述基于区块链的投票存证方法各实施例的步骤。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述基于区块链的投票存证方法各实施例的步骤。
本发明计算机可读存储介质具体实施方式与上述基于区块链的投票存证方法各实施例基本相同,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种基于区块链的投票存证方法,其特征在于,所述基于区块链的投票存证方法包括以下步骤:
投票人系统接收所述分布式中心链中的协会节点传递的各投票方案,并将具有各所述投票方案的通知信息发送至各投票人账号对应的预设终端;
所述投票人系统接收各所述预设终端基于所述通知信息发送的投票信息,并创建各所述投票信息对应的投票凭证,计算各所述投票凭证对应的投票凭证哈希值,将各所述投票凭证哈希值传递至存证链进行存证;
在各所述投票凭证哈希值存证完成后,基于各所述投票信息在各所述投票方案中确定目标投票方案。
2.如权利要求1所述的基于区块链的投票存证方法,其特征在于,所述基于各所述投票信息在投票人系统中的各所述投票方案中确定目标投票方案的步骤之后,包括:
所述审计办节点对所述目标投票方案进行审计,确定所述目标投票方案是否有效;
若所述目标投票方案有效,则所述审计办节点发送所述目标投票方案有效的信息至所述投票人系统,以便所述投票人系统执行所述目标投票方案。
3.如权利要求2所述的基于区块链的投票存证方法,其特征在于,所述审计办节点对所述目标投票方案进行审计的步骤,包括:
所述审计办节点获取各所述投票人账号对应的投票人信息,并依次对各所述投票人信息进行身份认证;
若各所述投票人信息对应的身份认证均通过,则所述审计办节点对各所述投票凭证进行检测,以获得检测结果,若各所述检测结果均无误,则确定所述目标投票方案无误。
4.如权利要求3所述的基于区块链的投票存证方法,其特征在于,所述依次对各所述投票人信息进行身份认证的步骤,包括:
依次遍历各所述投票人信息,并计算当前遍历的投票人信息对应的第一哈希值,根据预设签名算法和所述第一哈希值计算第一公钥,判断所述第一公钥是否和所述当前遍历的投票人信息对应的预存公钥相等;
若相等,则确定所述当前遍历的投票人信息对应的身份认证通过,直至各所述投票人信息遍历完成。
5.如权利要求3所述的基于区块链的投票存证方法,其特征在于,所述审计办节点对各所述投票凭证进行检测的步骤,包括:
所述审计办节点依次遍历各所述投票凭证,并检测当前遍历的投票凭证中的凭证字段是否和所述投票凭证对应的投票信息中的业务数据字段匹配;
若匹配,则对所述当前遍历的投票凭证对应的投票凭证哈希值进行验证,若验证成功,则确定当前遍历的投票凭证的检测结果无误,直至各所述投票凭证遍历完成。
6.如权利要求5所述的基于区块链的投票存证方法,其特征在于,所述对所述当前遍历的投票凭证对应的投票凭证哈希值进行验证的步骤,包括:
获取所述当前遍历的投票凭证对应的目标投票信息,并计算所述目标投票信息对应的目标哈希值,判断所述目标哈希值是否和所述当前遍历的投票凭证对应的投票凭证哈希值匹配;
若匹配,则确定所述当前遍历的投票凭证验证成功。
7.如权利要求1-6任一项所述的基于区块链的投票存证方法,其特征在于,所述将各所述投票凭证哈希值传递至存证链进行存证的步骤之后,包括:
所述存证链中的仲裁机构节点和签名机构节点对各所述投票凭证哈希值进行签名,并在所述签名完成后,将各所述投票凭证哈希值标识为存证的状态。
8.一种基于区块链的投票存证装置,其特征在于,所述基于区块链的投票存证装置包括:
接收模块,用于投票人系统接收分布式中心链中的协会节点传递的各投票方案,并将具有各所述投票方案的通知信息发送至各投票人账号对应的预设终端;
计算模块,用于所述投票人系统接收各所述预设终端基于所述通知信息发送的投票信息,并创建各所述投票信息对应的投票凭证,计算各所述投票凭证对应的投票凭证哈希值,将各所述投票凭证哈希值传递至存证链进行存证;
存储模块,用于在各所述投票凭证哈希值存证完成后,基于各所述投票信息在各所述投票方案中确定目标投票方案。
9.一种基于区块链的投票存证设备,其特征在于,所述基于区块链的投票存证设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于区块链的投票存证程序,所述基于区块链的投票存证程序被所述处理器执行时实现如权利要求1至7中任一项所述的基于区块链的投票存证方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有基于区块链的投票存证程序,所述基于区块链的投票存证程序被处理器执行时实现如权利要求1至7中任一项所述的基于区块链的投票存证方法的步骤。
CN201910742747.7A 2019-08-09 2019-08-09 基于区块链的投票存证方法、装置、设备及可读存储介质 Active CN110474779B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910742747.7A CN110474779B (zh) 2019-08-09 2019-08-09 基于区块链的投票存证方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910742747.7A CN110474779B (zh) 2019-08-09 2019-08-09 基于区块链的投票存证方法、装置、设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN110474779A true CN110474779A (zh) 2019-11-19
CN110474779B CN110474779B (zh) 2024-06-25

Family

ID=68510709

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910742747.7A Active CN110474779B (zh) 2019-08-09 2019-08-09 基于区块链的投票存证方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN110474779B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111369730A (zh) * 2020-02-20 2020-07-03 腾讯科技(深圳)有限公司 基于区块链的投票表决处理方法和装置
CN112466032A (zh) * 2020-11-23 2021-03-09 深圳前海微众银行股份有限公司 电子投票方法、装置及电子设备
CN113438088A (zh) * 2021-06-28 2021-09-24 湖南天河国云科技有限公司 基于区块链分布式身份的社交网络信用监测方法及装置
CN115688183A (zh) * 2022-12-01 2023-02-03 国网冀北电力有限公司物资分公司 一种云签署电子凭证的上链存证和取证鉴定方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170109955A1 (en) * 2015-10-20 2017-04-20 Follow My Vote, Inc. Blockchain electronic voting system and method
US20170352219A1 (en) * 2015-08-06 2017-12-07 Blockchain Technologies Corporation System and method for securely receiving and counting votes in an election
CN108109257A (zh) * 2018-01-05 2018-06-01 杭州电子科技大学 一种基于区块链的匿名电子投票方法
KR101908677B1 (ko) * 2017-09-29 2018-10-16 숭실대학교산학협력단 블록체인을 이용한 전자투표 관리 시스템 및 방법
CN108711212A (zh) * 2018-05-21 2018-10-26 中国联合网络通信集团有限公司 投票存证方法、装置及系统
CN108933656A (zh) * 2018-07-18 2018-12-04 京东方科技集团股份有限公司 在线作品投票方法及装置、计算机设备、可读存储介质
CN109558517A (zh) * 2018-10-24 2019-04-02 中山大学 一种基于区块链的多方安全选举系统
CN109903450A (zh) * 2019-03-28 2019-06-18 深圳职业技术学院 电子投票方法以及系统
CN109934988A (zh) * 2019-02-15 2019-06-25 哈尔滨工程大学 一种基于区块链的电子投票方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170352219A1 (en) * 2015-08-06 2017-12-07 Blockchain Technologies Corporation System and method for securely receiving and counting votes in an election
US20170109955A1 (en) * 2015-10-20 2017-04-20 Follow My Vote, Inc. Blockchain electronic voting system and method
KR101908677B1 (ko) * 2017-09-29 2018-10-16 숭실대학교산학협력단 블록체인을 이용한 전자투표 관리 시스템 및 방법
CN108109257A (zh) * 2018-01-05 2018-06-01 杭州电子科技大学 一种基于区块链的匿名电子投票方法
CN108711212A (zh) * 2018-05-21 2018-10-26 中国联合网络通信集团有限公司 投票存证方法、装置及系统
CN108933656A (zh) * 2018-07-18 2018-12-04 京东方科技集团股份有限公司 在线作品投票方法及装置、计算机设备、可读存储介质
CN109558517A (zh) * 2018-10-24 2019-04-02 中山大学 一种基于区块链的多方安全选举系统
CN109934988A (zh) * 2019-02-15 2019-06-25 哈尔滨工程大学 一种基于区块链的电子投票方法
CN109903450A (zh) * 2019-03-28 2019-06-18 深圳职业技术学院 电子投票方法以及系统

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
VIJAYALAKSHMI V,等: "A Novel P2P based System with Blockchain for Secured Voting Scheme", 《2019 FIFTH INTERNATIONAL CONFERENCE ON SCIENCE TECHNOLOGY ENGINEERING AND MATHEMATICS》, 15 March 2019 (2019-03-15), pages 153 - 156, XP033642360, DOI: 10.1109/ICONSTEM.2019.8918895 *
张昕伟,等: "基于区块链的电子投票选举系统研究分析", 《电子技术应用》, vol. 43, no. 11, pages 3 *
范洪博;谢华材;张晶;: "一种基于区块链技术的可信电子投票方法", 软件导刊, no. 05, 15 May 2018 (2018-05-15) *
郄九玲;胡浩;: "基于区块链的投票系统设计", 通信技术, no. 07 *
郄九玲;胡浩;: "基于区块链的投票系统设计", 通信技术, no. 07, 10 July 2018 (2018-07-10) *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111369730A (zh) * 2020-02-20 2020-07-03 腾讯科技(深圳)有限公司 基于区块链的投票表决处理方法和装置
CN112466032A (zh) * 2020-11-23 2021-03-09 深圳前海微众银行股份有限公司 电子投票方法、装置及电子设备
CN112466032B (zh) * 2020-11-23 2021-08-17 深圳前海微众银行股份有限公司 电子投票方法、装置及电子设备
CN113438088A (zh) * 2021-06-28 2021-09-24 湖南天河国云科技有限公司 基于区块链分布式身份的社交网络信用监测方法及装置
CN115688183A (zh) * 2022-12-01 2023-02-03 国网冀北电力有限公司物资分公司 一种云签署电子凭证的上链存证和取证鉴定方法
CN115688183B (zh) * 2022-12-01 2023-06-23 国网冀北电力有限公司物资分公司 一种云签署电子凭证的上链存证和取证鉴定方法

Also Published As

Publication number Publication date
CN110474779B (zh) 2024-06-25

Similar Documents

Publication Publication Date Title
CN110474779A (zh) 基于区块链的投票存证方法、装置、设备及可读存储介质
US11562451B1 (en) Apparatus for proportional calculation regarding non-fungible tokens
Mercuri Electronic vote tabulation checks and balances
CN106357612B (zh) 基于公有区块链的认证记录审查方法及装置
CN105243313B (zh) 用于对验证令牌的任何时候确认的方法
CN109639410A (zh) 基于区块链的数据存证方法及装置、电子设备
CN110533429A (zh) 区块链中的交易背书方法、装置和区块链网络
CN111369730B (zh) 基于区块链的投票表决处理方法和装置
CN109325848A (zh) 基于区块链的债务催收方法、设备及计算机可读存储介质
CN107066893A (zh) 区块链中账户信息的处理方法和装置
CN110674222B (zh) 一种数据共享方法、装置、设备及介质
CN108769230A (zh) 交易数据存储方法、装置、服务器及存储介质
KR20220093198A (ko) 전용 및 개방형 블록체인을 이용한 거래의 수행
CN103443813A (zh) 使用移动设备标识符认证交易
CN108615152B (zh) 一种基于区块链的交易装置
CN116192405A (zh) 一种电子投票方法及相关装置
CN112950195A (zh) 数字货币离线支付方法、系统、存储介质及付款终端
CN109493212A (zh) 征信管理方法、装置、电子设备及计算机可读存储介质
Avitabile et al. Terrorist attacks for fake exposure notifications in contact tracing systems
CN113506112A (zh) 应收账款确权方法及装置和电子设备
Nita et al. A Novel Authentication Scheme Based on Verifiable Credentials Using Digital Identity in the Context of Web 3.0
CN108416588A (zh) 用于电子交易认证的数据处理方法及装置
KR20210083457A (ko) 블록체인 기반 전자투표 이력 관리 시스템
US20200226629A1 (en) Trading platform system and method
CN106373012A (zh) 一种理财产品交易控制方法和设备

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
GR01 Patent grant
GR01 Patent grant