CN110889793A - 基于区块链的数字彩票发行方法及区块链节点 - Google Patents

基于区块链的数字彩票发行方法及区块链节点 Download PDF

Info

Publication number
CN110889793A
CN110889793A CN201811041023.1A CN201811041023A CN110889793A CN 110889793 A CN110889793 A CN 110889793A CN 201811041023 A CN201811041023 A CN 201811041023A CN 110889793 A CN110889793 A CN 110889793A
Authority
CN
China
Prior art keywords
winning
numbers
lottery
block chain
alternative
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
CN201811041023.1A
Other languages
English (en)
Other versions
CN110889793B (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.)
Xiangtan University
Original Assignee
Xiangtan University
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 Xiangtan University filed Critical Xiangtan University
Priority to CN201811041023.1A priority Critical patent/CN110889793B/zh
Publication of CN110889793A publication Critical patent/CN110889793A/zh
Application granted granted Critical
Publication of CN110889793B publication Critical patent/CN110889793B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/34Betting or bookmaking, e.g. Internet betting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Tourism & Hospitality (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Finance (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种基于区块链的数字彩票发行方法及区块链节点,方法包括:在购买彩票的界面选择备选中奖数字以及购买彩票号码;对备选中奖数字和彩票号码进行加密处理,得到加密号码信息,将加密号码信息发送到其他区块链节点;将其他区块链节点发送的加密号码信息进行验证,如果验证成功则生成确认信息,每个确认信息对应一个第一区块链节点;当第一区块链节点的数量满足预设条件时,选择一个第二区块链节点;利用所有备选中奖数字获取中奖号码,并生成存储中奖号码的数据区块;将中奖号码向所有区块链节点进行广播;将中奖号码与所有彩票号码进行匹配,得到具有不同匹配度的匹配结果;根据匹配结果生成中奖信息。

Description

基于区块链的数字彩票发行方法及区块链节点
技术领域
本发明涉及信息技术领域,尤其涉及一种基于区块链的数字彩票发行方法及区块链节点。
背景技术
区块链是一种去中心化的协议,由节点参与的分布式数据库系统,能安全存储数据,且信息透明不可篡改,可以自动执行智能合约,无需任何中心化机构审核。
目前区块链2.0的技术架构采用的是五层架构如图1所示,从下到上分别是数据层、网络层、共识层、激励层、智能合约层。
数据层是最底层的技术,主要是存储区块数据,保证账户和交易的安全。数据存储主要基于Merkle树,通过区块的方式和链式结构实现。账户和交易的安全是基于数字签名,哈希函数以及非对称加密技术实现的。
网络层主要通过P2P网络实现节点的连接和通讯,没有中心服务器,用户之间互相交换信息,每个用户节点都有服务器的功能。
共识层主要实现全网所有节点对交易和数据达成一致,防止各种共识攻击,所以在这一层使用的算法叫做共识算法。
激励层主要通过发行机制实现区块链代币的发行和通过分配机制实现区块链代币的分配。
智能合约就是一段可执行的计算机程序,满足条件时即自动执行。基于区块链的智能合约包括事务处理和保存的机制,以及一个完备的状态机,用于接受和处理各种智能合约;并且事务的保存和状态处理都在区块链上完成。
区块链最重要的特点是“去中心化”和“安全透明”,这完美的契合了目前彩票行业以及未来发展所需要的基础能力。目前互联网彩票系统存在的安全性、可靠性不足以及结果可被第三方控制的弊端。因此,需要一种将区块链技术应用于构建数字彩票发行系统的解决方案。
发明内容
本发明的目的是针对现有技术中存在的缺陷,提供一种基于区块链的数字彩票发行方法及区块链节点。
为实现上述目的,第一方面,本发明提供了一种基于区块链的数字彩票发行方法,包括:
每个区块链节点在购买彩票的界面通过购买彩票接口选择备选中奖数字以及购买彩票号码;
对所述备选中奖数字和所述彩票号码进行加密处理,得到加密号码信息,并通过提交号码接口将所述加密号码信息发送到其他区块链节点;
每个区块链节点将其他区块链节点发送的所述加密号码信息进行验证,如果验证成功则生成确认信息,每个所述确认信息对应一个第一区块链节点;
当所述第一区块链节点的数量满足预设条件时,在所有所述第一区块链节点中选择一个第二区块链节点;
所述第二区块链节点根据预设规则利用所有所述备选中奖数字获取中奖号码,并生成存储所述中奖号码的数据区块;
将所述中奖号码向所有区块链节点进行广播,以使每个所述区块链节点生成存储所述中奖号码的数据区块;
每个所述区块链节点将所述中奖号码与所有所述彩票号码进行匹配,得到具有不同匹配度的匹配结果;
每个所述区块链节点根据所述匹配结果生成中奖信息。
进一步的,所述对所述备选中奖数字和所述彩票号码进行加密处理,得到加密号码信息具体包括:
所述区块链节点利用哈希算法对所述备选中奖数字和所述彩票号码进行处理,得到所述备选中奖数字和所述彩票号码的哈希值;
生成私钥和公钥,利用所述私钥对所述备选中奖数字和所述彩票号码的哈希值进行加密处理,得到所述加密号码信息;
将所述公钥广播给其他区块链节点。
进一步的,所述每个区块链节点将其他区块链节点发送的所述加密号码信息进行验证,如果验证成功则生成确认信息具体包括:
所述每个区块链节点利用所述公钥对所述加密号码信息进行解密,得到所述备选中奖数字和所述彩票号码的哈希值;
判断所述备选中奖数字和所述彩票号码的哈希值与预设的哈希值是否相同;
如果相同,则生成所述区块链节点对应的所述确认信息。
进一步的,所述当所述第一区块链节点的数量满足预设条件时,在所有所述第一区块链节点中选择一个第二区块链节点具体包括:
当所述第一区块链节点的数量在共识时间内超过所有区块链节点数量的三分之二时,在所述第一区块链节点中随机选择一个第二区块链节点。
进一步的,所述第二区块链节点根据预设规则利用所有所述备选中奖数字获取中奖号码具体包括:
所述第二区块链节点在所有所述区块链节点提交的所述备选中奖数字中选取出现的百分比在0-30%的多个第一备选数字;
在所述第一备选数字中间隔5%依次选取占百分比最少的至少一个第二备选数字;
当选取的所述第二备选数字的数量达到预设的数量阈值时,将所有所述第二备选数字进行组合,得到所述中奖号码。
进一步的,所述每个所述区块链节点将所述中奖号码与所有所述彩票号码进行匹配,得到具有不同匹配度的匹配结果具体包括:
所述区块链节点按照所述中奖号码、所述彩票号码中的号码数字和排列顺序进行匹配,生成具有不同匹配度的匹配结果。
进一步的,所述每个所述区块链节点根据所述匹配结果生成中奖信息具体包括:
每个所述区块链节点根据所述匹配结果的匹配度设定中奖级别,生成包含多个中奖级别的中奖信息。
第二方面,本发明提供了一种用于数字彩票发行的区块链节点,包括:
选择模块,用于在购买彩票的界面通过购买彩票接口选择备选中奖数字以及购买彩票号码;
加密模块,用于对所述备选中奖数字和所述彩票号码进行加密处理,得到加密号码信息,并通过提交号码接口将所述加密号码信息发送到其他区块链节点;
验证模块,用于将其他区块链节点发送的所述加密号码信息进行验证,如果验证成功则生成确认信息;
获取模块,用于根据预设规则利用所有所述备选中奖数字获取中奖号码,并生成存储所述中奖号码的数据区块;
广播模块,用于将所述中奖号码向所有区块链节点进行广播,以使每个所述区块链节点生成存储所述中奖号码的数据区块;
匹配模块,用于将所述中奖号码与所有所述彩票号码进行匹配,得到具有不同匹配度的匹配结果;
生成模块,用于根据所述匹配结果生成中奖信息。
进一步的,所述获取模块具体用于:
在所有所述区块链节点提交的所述备选中奖数字中选取出现的百分比在0-30%的多个第一备选数字;
在所述第一备选数字中间隔5%依次选取占百分比最少的至少一个第二备选数字;
当选取的所述第二备选数字的数量达到预设的数量阈值时,将所有所述第二备选数字进行组合,得到所述中奖号码。
进一步的,所述匹配模块具体用于:
按照所述中奖号码、所述彩票号码中的号码数字和排列顺序进行匹配,生成具有不同匹配度的匹配结果。
本发明提供的基于区块链的数字彩票发行方法及区块链节点,利用区块链技术的“去中心化”和“安全透明”的特点进行数字彩票发行,提高了数字彩票发行的安全性。
附图说明
图1为本发明背景技术中的区块链2.0的技术架构示意图;
图2为本发明实施例提供的基于区块链的数字彩票发行方法的系统架构示意图;
图3为本发明实施例提供的基于区块链的数字彩票发行方法的节点网络示意图;
图4为本发明实施例提供的基于区块链的数字彩票发行方法流程图;
图5为本发明实施例提供的用于数字彩票发行的区块链节点的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。
本发明技术方案基于区块链技术,构建一个公有网络的公有链区块链彩票系统。没有任何中心化机构介入彩票的整个开奖过程,整个区块链是由所有区块链节点按照一定的区块链标准和合约运行的,整个区块链彩票系统的一致性是由所有区块链节点通过拜占庭容错PBFT共识算法实现的。
本发明技术方案的区块链分三个时间节点,一个时间节点是用户提交各自的备选中奖数字和购买的彩票号码(开始时间段)截止时间;一个时间节点是提交备选中奖数字秘钥的时间(确认购买时间段);一个时间节点是提交彩票号码秘钥的时间(确认提交号码时间段)。将选择备选中奖数字和购买的彩票号码以及提交备选中奖数字和彩票号码的过程放在共识时间之前,共识时间每个节点提交秘钥确认自己的备选中奖数字和彩票号码。
本发明构建的数字彩票发行系统的区块链中包含应用层的彩票系统界面,链上代码的智能合约,还有接口来接收买彩票的号码、提交号码、公私钥同步和投票确认广播等,共识层的确认区块链节点提交号码,网络层的P2P传播,以及数据层的存储方式,如图2所示。
应用层:彩票购买系统,有选择买彩票的号码和提交一个备选中奖数字的功能。
链上代码:包括开奖号码选择的智能合约和派奖的智能合约。保证开奖、派奖过程的不可逆不可修改。且部署在区块链上一直执行。
接口:买彩票的接口、提交号码接口、广播接口,提交秘钥接口等。
共识层:PBFT共识机制。保证整个基于区块链的数字彩票发行系统的一致性。
网络层:P2P网络、传播机制。各个节点之间相互交换信息,确认后转发出去。
数据层:区块数据、同构链式结构、梅克尔树、非对称加密、数字签名以及哈希函数。保存着每次所有通过确认的区块链节点提交的号码的数据。
基于区块链的数字彩票发行系统的网络是按照P2P协议运行的区块链节点的集合,如图3所示。区块链节点所拥有的完整功能应该有彩票购买功能、提交号码功能、钱包、完整区块链和路由功能。
彩票购买功能用于提交自己所购买的彩票号码;
提交号码功能用于提交用于开奖选择的备选中奖号码;
钱包用于记录区块链节点的数字资产的数额;
完整区块链用于记录了所有历史开奖记录,并且通过特殊结构保证历史开奖记录的安全性,还可以用来验证新开奖记录的合法性;
路由功能用于把其他区块链节点的提交数据及验证结果等信息传送给更多的区块链节点。
具体的,通过应用层的界面来买彩票和提交号码用以选出中奖号码以及提交秘钥来验证提交号码;通过接口来传递所买彩票的信息和每个节点提交号码信息;再在共识时间内由所有节点选出提议节点,并确认自己提交号码,由接口来广播给其他节点,直到共识时间完并且得到了超过2/3的确认,就由提议节点生成新区块来记录开奖号码;最后通过链上代码的智能合约的自动执行来派奖。
图4为本发明实施例提供的基于区块链的数字彩票发行方法的流程图。如图4所示,方法包括如下步骤:
步骤401,每个区块链节点在购买彩票的界面通过购买彩票接口选择备选中奖数字以及购买彩票号码;
其中,区块链节点为购买彩票的用户的终端设备,具体为具有处理能力的固定终端或移动终端,例如,台式电脑、笔记本电脑、平板电脑、智能手机等。用户通过彩票发行方提供的购买彩票的界面选择备选中奖数字、购买的彩票号码以及投注金额。
选择备选中奖数字的目的是后续从所有区块链节点提供的备选中奖数字中选取数字并进行组合得到中奖号码。
步骤402,对备选中奖数字和彩票号码进行加密处理,得到加密号码信息,并通过提交号码接口将加密号码信息发送到其他区块链节点;
为了保证各个区块链数据节点之间传递信息的安全性,避免被截获或篡改,需要对传递的信息进行加密。加密之前首先对传递的信息进行哈希处理,得到哈希字符串,然后对哈希字符串进行加密。加密的方式包括对称加密和非对称加密。
对称加密为利用算法生成秘钥,利用秘钥对哈希字符串进行加密,然后将秘钥广播给其他区块链节点,使信息接收方能够利用秘钥对接收到信息进行解密。
非对称加密为利用算法生成私钥和公钥,利用私钥对备选中奖数字和彩票号码的哈希值进行加密处理,得到加密号码信息;将公钥广播给其他区块链节点,使信息接收方能够利用公钥对接收到信息进行解密。
将备选中奖数字和彩票号码进行加密处理之后的加密号码信息向其他区块链节点进行广播。
步骤403,每个区块链节点将其他区块链节点发送的加密号码信息进行验证,如果验证成功则生成确认信息,每个确认信息对应一个第一区块链节点;
每个区块链节点对加密号码信息进行解密之后,得到备选中奖数字和彩票号码的哈希值;判断备选中奖数字和彩票号码的哈希值与预设的哈希值是否相同;如果相同,则生成区块链节点对应的确认信息向其他区块链节点进行广播。
对加密号码信息进行验证的目的是使区块链节点达成共识,维护区块链节点的一致性。其中,第一区块链节点为达成共识的区块链节点。
步骤404,当第一区块链节点的数量满足预设条件时,在所有第一区块链节点中选择一个第二区块链节点;
当第一区块链节点的数量在共识时间内超过所有区块链节点数量的三分之二时,说明已达成共识,则在达成共识的区块链节点中随机选择一个提议节点,后续由提议节点生成新的区块数据,其中,第二区块链节点为提议节点。
使用PBFT共识算法,当有超过2/3的区块链节点生成确认信息就是达成共识,由于PBFT共识算法所需要的共识时间比较久,不符合彩票系统开奖过程;因此本发明使用同构多链架构,这样就加快了速度,能够达到彩票系统开奖所需时间要求。
同构多链就是每次多条同构链同时进行共识,在共识时间内,当有2/3的区块链节点生成确认信息,继续等待一段时间,得到更多的确认,每条链都在共识时间快要结束时得到超过2/3确认,则认为达成共识。
步骤405,第二区块链节点根据预设规则利用所有备选中奖数字获取中奖号码,并生成存储中奖号码的数据区块;
提议节点在所有区块链节点提交的备选中奖数字中选取出现的百分比在0-30%的多个第一备选数字;在第一备选数字中间隔5%依次选取占百分比最少的至少一个第二备选数字;当选取的第二备选数字的数量达到预设的数量阈值时,将所有第二备选数字进行组合,得到中奖号码。
具体的,在所有备选中奖数字处于0%-30%区间的备选中奖数字中,每隔5%一个区间选取一个占百分比最少的备选中奖数字,比如0%-5%这个区间,就取最靠近0%的号码作为中奖数字,若这个区间没有中奖数字,则从下一个区间取占百分比最少的两个中奖数字;如果最后一个区间25%-30%没有中奖数字,或者中奖数字选取还不够,则扩大到区间30%-35%,以此类推,直到选择到6个中奖数字,将得到的中奖数字进行排序组合,得到最终的中奖号码。提议节点生成新的数据区块存储中奖号码,并且锁定这个新的数据区块,避免重复通信。
步骤406,将中奖号码向所有区块链节点进行广播,以使每个区块链节点生成存储中奖号码的数据区块;
提议节点将中奖号码向所有区块链节点进行广播,所有区块链节点均生成新的数据区块存储中奖号码,并且锁定这个新的数据区块,避免重复通信。
步骤407,每个区块链节点将中奖号码与所有彩票号码进行匹配,得到具有不同匹配度的匹配结果;
区块链节点将之前所有区块链节点提交的用户购买的彩票号码按照号码数字和数字的排列顺序与中奖号码进行匹配,生成具有不同匹配度的匹配结果。
例如,中奖号码:12 07 24 50 87 16;彩票号码1:12 08 35 06 23 57;
彩票号码2:35 12 47 19 34 03,则彩票号码1与中奖号码的匹配数字为12,数字一致、位置一致;彩票号码2与中奖号码的匹配数字也为12,数字一致,但位置不一致,则彩票号码1与中奖号码的匹配度高于彩票号码2与中奖号码的匹配度。
步骤408,每个区块链节点根据匹配结果生成中奖信息。
每个区块链节点根据匹配结果的匹配度设定中奖级别,生成包含多个中奖级别的中奖信息。匹配度越高,则奖项级别越高。
例如,彩票号码与中奖号码匹配度为100%,则该彩票号码为一等奖;彩票号码与中奖号码匹配度为80%,则该彩票号码为二等奖;彩票号码与中奖号码匹配度为60%,则该彩票号码为三等奖。
本发明技术方案中开奖过程的智能合约是得到多方区块链节点认证并且预先设定好满足条件,即按照所有备选中奖数字固定某些区间且不可控的选定的中奖号码匹配的多少分级排奖,再与每个区块链节点提交的彩票号码进行比较自动派奖。
开奖过程是没有任何人为因素或中心机构的影响,并且这个基于区块链的数字彩票发行系统的智能合约是一直都在运行的,是链上代码,只要遇到满足条件的情况就执行,不需要本地以太虚拟机EVM;开奖智能合约根据开奖号码随机选择到的多个号码,自动执行开奖,中间没有任何中心化机构,满足条件即自动开奖。
本发明提供的基于区块链的数字彩票发行方法,利用区块链技术的“去中心化”和“安全透明”的特点进行数字彩票发行,提高了数字彩票发行的安全性。
图5为本发明实施例提供的用于数字彩票发行的区块链节点的示意图。如图5所示,区块链节点包括:选择模块51、加密模块52、验证模块53、获取模块54、广播模块55、匹配模块56和生成模块57;
选择模块51,用于在购买彩票的界面通过购买彩票接口选择备选中奖数字以及购买彩票号码;
具体的,选择模块51通过彩票发行方提供的购买彩票的界面选择备选中奖数字、购买的彩票号码以及投注金额。
选择备选中奖数字的目的是后续从所有区块链节点提供的备选中奖数字中选取数字并进行组合得到中奖号码。
加密模块52,用于对备选中奖数字和彩票号码进行加密处理,得到加密号码信息,并通过提交号码接口将加密号码信息发送到其他区块链节点;
为了保证各个区块链数据节点之间传递信息的安全性,避免被截获或篡改,需要对传递的信息进行加密。加密之前首先对传递的信息进行哈希处理,得到哈希字符串,然后对哈希字符串进行加密。加密的方式包括对称加密和非对称加密。
对称加密为利用算法生成秘钥,利用秘钥对哈希字符串进行加密,然后将秘钥广播给其他区块链节点,使信息接收方能够利用秘钥对接收到信息进行解密。
非对称加密为利用算法生成私钥和公钥,利用私钥对备选中奖数字和彩票号码的哈希值进行加密处理,得到加密号码信息;将公钥广播给其他区块链节点,使信息接收方能够利用公钥对接收到信息进行解密。
将备选中奖数字和彩票号码进行加密处理之后的加密号码信息向其他区块链节点进行广播。
验证模块53,用于将其他区块链节点发送的加密号码信息进行验证,如果验证成功则生成确认信息;
具体的,验证模块53对加密号码信息进行解密之后,得到备选中奖数字和彩票号码的哈希值;判断备选中奖数字和彩票号码的哈希值与预设的哈希值是否相同;如果相同,则生成区块链节点对应的确认信息向其他区块链节点进行广播。
对加密号码信息进行验证的目的是使区块链节点达成共识,维护区块链节点的一致性。
获取模块54,用于根据预设规则利用所有备选中奖数字获取中奖号码,并生成存储中奖号码的数据区块;
当达成共识的区块链节点的数量在共识时间内超过所有区块链节点数量的三分之二时,说明已达成共识,则在达成共识的区块链节点中随机选择一个提议节点,后续由提议节点生成新的区块数据。
使用PBFT共识算法,当有超过2/3的区块链节点生成确认信息就是达成共识,由于PBFT共识算法所需要的共识时间比较久,不符合彩票系统开奖过程;因此本发明使用同构多链架构,这样就加快了速度,能够达到彩票系统开奖所需时间要求。
同构多链就是每次多条同构链同时进行共识,在共识时间内,当有2/3的区块链节点生成确认信息,继续等待一段时间,得到更多的确认,每条链都在共识时间快要结束时得到超过2/3确认,则认为达成共识。
达成共识之后,提议节点的获取模块54在所有区块链节点提交的备选中奖数字中选取出现的百分比在0-30%的多个第一备选数字;在第一备选数字中间隔5%依次选取占百分比最少的至少一个第二备选数字;当选取的第二备选数字的数量达到预设的数量阈值时,将所有第二备选数字进行组合,得到中奖号码。
具体的,在所有备选中奖数字处于0%-30%区间的备选中奖数字中,每隔5%一个区间选取一个占百分比最少的备选中奖数字,比如0%-5%这个区间,就取最靠近0%的号码作为中奖数字,若这个区间没有中奖数字,则从下一个区间取占百分比最少的两个中奖数字;如果最后一个区间25%-30%没有中奖数字,或者中奖数字选取还不够,则扩大到区间30%-35%,以此类推,直到选择到6个中奖数字,将得到的中奖数字进行排序组合,得到最终的中奖号码。提议节点生成新的数据区块存储中奖号码,并且锁定这个新的数据区块,避免重复通信。
广播模块55,用于将中奖号码向所有区块链节点进行广播,以使每个区块链节点生成存储中奖号码的数据区块;
提议节点的广播模块55将中奖号码向所有区块链节点进行广播,所有区块链节点均生成新的数据区块存储中奖号码,并且锁定这个新的数据区块,避免重复通信。
匹配模块56,用于将中奖号码与所有彩票号码进行匹配,得到具有不同匹配度的匹配结果;
具体的,匹配模块56将之前所有区块链节点提交的用户购买的彩票号码按照号码数字和数字的排列顺序与中奖号码进行匹配,生成具有不同匹配度的匹配结果。
例如,中奖号码:12 07 24 50 87 16;彩票号码1:12 08 35 06 23 57;
彩票号码2:35 12 47 19 34 03,则彩票号码1与中奖号码的匹配数字为12,数字一致、位置一致;彩票号码2与中奖号码的匹配数字也为12,数字一致,但位置不一致,则彩票号码1与中奖号码的匹配度高于彩票号码2与中奖号码的匹配度。
生成模块57,用于根据匹配结果生成中奖信息。
具体的,生成模块57根据匹配结果的匹配度设定中奖级别,生成包含多个中奖级别的中奖信息。匹配度越高,则奖项级别越高。
例如,彩票号码与中奖号码匹配度为100%,则该彩票号码为一等奖;彩票号码与中奖号码匹配度为80%,则该彩票号码为二等奖;彩票号码与中奖号码匹配度为60%,则该彩票号码为三等奖。
本发明技术方案中开奖过程的智能合约是得到多方区块链节点认证并且预先设定好满足条件,即按照所有备选中奖数字固定某些区间且不可控的选定的中奖号码匹配的多少分级排奖,再与每个区块链节点提交的彩票号码进行比较自动派奖。
开奖过程是没有任何人为因素或中心机构的影响,并且这个基于区块链的数字彩票发行系统的智能合约是一直都在运行的,是链上代码,只要遇到满足条件的情况就执行,不需要本地以太虚拟机EVM;开奖智能合约根据开奖号码随机选择到的多个号码,自动执行开奖,中间没有任何中心化机构,满足条件即自动开奖。
本实施例提供的用于数字彩票发行的区块链节点,利用区块链技术的“去中心化”和“安全透明”的特点进行数字彩票发行,提高了数字彩票发行的安全性。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于区块链的数字彩票发行方法,其特征在于,所述方法包括:
每个区块链节点在购买彩票的界面通过购买彩票接口选择备选中奖数字以及购买彩票号码;
对所述备选中奖数字和所述彩票号码进行加密处理,得到加密号码信息,并通过提交号码接口将所述加密号码信息发送到其他区块链节点;
每个区块链节点将其他区块链节点发送的所述加密号码信息进行验证,如果验证成功则生成确认信息,每个所述确认信息对应一个第一区块链节点;
当所述第一区块链节点的数量满足预设条件时,在所有所述第一区块链节点中选择一个第二区块链节点;
所述第二区块链节点根据预设规则利用所有所述备选中奖数字获取中奖号码,并生成存储所述中奖号码的数据区块;
将所述中奖号码向所有区块链节点进行广播,以使每个所述区块链节点生成存储所述中奖号码的数据区块;
每个所述区块链节点将所述中奖号码与所有所述彩票号码进行匹配,得到具有不同匹配度的匹配结果;
每个所述区块链节点根据所述匹配结果生成中奖信息。
2.根据权利要求1所述的基于区块链的数字彩票发行方法,其特征在于,所述对所述备选中奖数字和所述彩票号码进行加密处理,得到加密号码信息具体包括:
所述区块链节点利用哈希算法对所述备选中奖数字和所述彩票号码进行处理,得到所述备选中奖数字和所述彩票号码的哈希值;
生成私钥和公钥,利用所述私钥对所述备选中奖数字和所述彩票号码的哈希值进行加密处理,得到所述加密号码信息;
将所述公钥广播给其他区块链节点。
3.根据权利要求2所述的基于区块链的数字彩票发行方法,其特征在于,所述每个区块链节点将其他区块链节点发送的所述加密号码信息进行验证,如果验证成功则生成确认信息具体包括:
所述每个区块链节点利用所述公钥对所述加密号码信息进行解密,得到所述备选中奖数字和所述彩票号码的哈希值;
判断所述备选中奖数字和所述彩票号码的哈希值与预设的哈希值是否相同;
如果相同,则生成所述区块链节点对应的所述确认信息。
4.根据权利要求1所述的基于区块链的数字彩票发行方法,其特征在于,所述当所述第一区块链节点的数量满足预设条件时,在所有所述第一区块链节点中选择一个第二区块链节点具体包括:
当所述第一区块链节点的数量在共识时间内超过所有区块链节点数量的三分之二时,在所述第一区块链节点中随机选择一个第二区块链节点。
5.根据权利要求1所述的基于区块链的数字彩票发行方法,其特征在于,所述第二区块链节点根据预设规则利用所有所述备选中奖数字获取中奖号码具体包括:
所述第二区块链节点在所有所述区块链节点提交的所述备选中奖数字中选取出现的百分比在0-30%的多个第一备选数字;
在所述第一备选数字中间隔5%依次选取占百分比最少的至少一个第二备选数字;
当选取的所述第二备选数字的数量达到预设的数量阈值时,将所有所述第二备选数字进行组合,得到所述中奖号码。
6.根据权利要求1所述的基于区块链的数字彩票发行方法,其特征在于,所述每个所述区块链节点将所述中奖号码与所有所述彩票号码进行匹配,得到具有不同匹配度的匹配结果具体包括:
所述区块链节点按照所述中奖号码、所述彩票号码中的号码数字和排列顺序进行匹配,生成具有不同匹配度的匹配结果。
7.根据权利要求1所述的基于区块链的数字彩票发行方法,其特征在于,所述每个所述区块链节点根据所述匹配结果生成中奖信息具体包括:
每个所述区块链节点根据所述匹配结果的匹配度设定中奖级别,生成包含多个中奖级别的中奖信息。
8.一种用于数字彩票发行的区块链节点,其特征在于,所述区块链节点包括:
选择模块,用于在购买彩票的界面通过购买彩票接口选择备选中奖数字以及购买彩票号码;
加密模块,用于对所述备选中奖数字和所述彩票号码进行加密处理,得到加密号码信息,并通过提交号码接口将所述加密号码信息发送到其他区块链节点;
验证模块,用于将其他区块链节点发送的所述加密号码信息进行验证,如果验证成功则生成确认信息;
获取模块,用于根据预设规则利用所有所述备选中奖数字获取中奖号码,并生成存储所述中奖号码的数据区块;
广播模块,用于将所述中奖号码向所有区块链节点进行广播,以使每个所述区块链节点生成存储所述中奖号码的数据区块;
匹配模块,用于将所述中奖号码与所有所述彩票号码进行匹配,得到具有不同匹配度的匹配结果;
生成模块,用于根据所述匹配结果生成中奖信息。
9.根据权利要求8所述的区块链节点,其特征在于,所述获取模块具体用于:
在所有所述区块链节点提交的所述备选中奖数字中选取出现的百分比在0-30%的多个第一备选数字;
在所述第一备选数字中间隔5%依次选取占百分比最少的至少一个第二备选数字;
当选取的所述第二备选数字的数量达到预设的数量阈值时,将所有所述第二备选数字进行组合,得到所述中奖号码。
10.根据权利要求8所述的区块链节点,其特征在于,所述匹配模块具体用于:
按照所述中奖号码、所述彩票号码中的号码数字和排列顺序进行匹配,生成具有不同匹配度的匹配结果。
CN201811041023.1A 2018-09-07 2018-09-07 基于区块链的数字彩票发行方法及区块链节点 Active CN110889793B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811041023.1A CN110889793B (zh) 2018-09-07 2018-09-07 基于区块链的数字彩票发行方法及区块链节点

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811041023.1A CN110889793B (zh) 2018-09-07 2018-09-07 基于区块链的数字彩票发行方法及区块链节点

Publications (2)

Publication Number Publication Date
CN110889793A true CN110889793A (zh) 2020-03-17
CN110889793B CN110889793B (zh) 2024-05-14

Family

ID=69744411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811041023.1A Active CN110889793B (zh) 2018-09-07 2018-09-07 基于区块链的数字彩票发行方法及区块链节点

Country Status (1)

Country Link
CN (1) CN110889793B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112714135A (zh) * 2021-01-20 2021-04-27 福州市长乐区三互信息科技有限公司 基于区块链的活动管理方法
CN113128850A (zh) * 2021-04-02 2021-07-16 深圳市易讯天空网络技术有限公司 一种彩票流程管理方法、系统、终端设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100454467B1 (ko) * 2003-11-18 2004-10-28 폰또정보기술(주) 유무선 네트워크 상에서 개인용 단말기를 이용한 복권사업 시스템 및 그 운용 방법
KR20040093356A (ko) * 2003-04-28 2004-11-05 송현종 온라인 분할 로또복권 제공시스템 및 그 제공방법
CN105913174A (zh) * 2016-04-07 2016-08-31 彭军红 一种基于区块链的彩票发行方法
CN106504174A (zh) * 2016-09-27 2017-03-15 布比(北京)网络技术有限公司 基于区块链的博彩发行系统及装置
CN108418622A (zh) * 2018-02-11 2018-08-17 西安电子科技大学昆山创新研究院 一种基于区块链的无人机群体决策方法
CN108447014A (zh) * 2018-03-19 2018-08-24 成都零光量子科技有限公司 一种区块链博彩方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040093356A (ko) * 2003-04-28 2004-11-05 송현종 온라인 분할 로또복권 제공시스템 및 그 제공방법
KR100454467B1 (ko) * 2003-11-18 2004-10-28 폰또정보기술(주) 유무선 네트워크 상에서 개인용 단말기를 이용한 복권사업 시스템 및 그 운용 방법
CN105913174A (zh) * 2016-04-07 2016-08-31 彭军红 一种基于区块链的彩票发行方法
CN106504174A (zh) * 2016-09-27 2017-03-15 布比(北京)网络技术有限公司 基于区块链的博彩发行系统及装置
CN108418622A (zh) * 2018-02-11 2018-08-17 西安电子科技大学昆山创新研究院 一种基于区块链的无人机群体决策方法
CN108447014A (zh) * 2018-03-19 2018-08-24 成都零光量子科技有限公司 一种区块链博彩方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
孙佳男;: "一种即开型电子彩票发行方案", 网络安全技术与应用, no. 05, 15 May 2010 (2010-05-15) *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112714135A (zh) * 2021-01-20 2021-04-27 福州市长乐区三互信息科技有限公司 基于区块链的活动管理方法
CN113128850A (zh) * 2021-04-02 2021-07-16 深圳市易讯天空网络技术有限公司 一种彩票流程管理方法、系统、终端设备及存储介质
CN113128850B (zh) * 2021-04-02 2024-04-19 深圳市易讯天空网络技术有限公司 一种彩票流程管理方法、系统、终端设备及存储介质

Also Published As

Publication number Publication date
CN110889793B (zh) 2024-05-14

Similar Documents

Publication Publication Date Title
KR102409819B1 (ko) 분산 거래 전파 및 검증 시스템
CN108256859B (zh) 基于区块链的金融产品交易共识方法、节点及系统
EP3449451B1 (en) Implementing logic gate functionality using a blockchain
CN113728351A (zh) 区块链系统中的可信通证化交易
CN111414210B (zh) 基于主链生成侧链的方法、装置及计算机可读存储介质
CN111164626A (zh) 使用分布式协调的智能合约执行
CN107464106A (zh) 区块链主链与侧链间交易的方法及系统
CN109544331A (zh) 基于区块链的供应链金融应用方法、装置及终端设备
CN113874897A (zh) 用于通过区块链网络实现转账的计算机实现的系统和方法
KR20160050876A (ko) 스마트 카드에 저장된 공개키와 개인키를 이용한 비트코인 거래방법
Gayvoronskaya et al. Blockchain
CN109242663A (zh) 一种基于区块链技术的记账方法及系统
CN113486407B (zh) 基于区块链的存单管理系统和方法
CN112801778A (zh) 联盟式不良资产区块链
CN116595094A (zh) 基于区块链的联邦学习激励方法、装置、设备和存储介质
KR20190099365A (ko) 블록체인 기술을 이용한 모바일 게임 사용자 정보 관리 및 아이템 거래
CN110889793B (zh) 基于区块链的数字彩票发行方法及区块链节点
Bilal et al. Blockchain technology: Opportunities & challenges
Asayag et al. Helix: A scalable and fair consensus algorithm resistant to ordering manipulation
JP6911231B1 (ja) デジタル資産データパケットの信頼性検証システム
CN110634072A (zh) 一种基于多签和硬件加密的区块链交易系统及其运行机制
UA64833C2 (uk) Спосіб затребування власником картки виконання зобов'язання, зв'язаного з карткою, і визнання цього зобов'язання емітентом
CN115499379B (zh) 一种基于区块链的信息交互方法、装置、设备及介质
KR102003731B1 (ko) 가상머신을 이용한 암호화폐 보호 시스템 및 방법
CN113159940A (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