首页 / 专利库 / 银行与财务事项 / 区块链交易 / 一种基于区块链的彩票发行方法

一种基于链的彩票发行方法

阅读:937发布:2022-07-10

专利汇可以提供一种基于链的彩票发行方法专利检索,专利查询,专利分析的服务。并且本 发明 涉及 数字 货币 钱包 软件 ,具体说是一种基于 区 块 链 的彩票发行方法,其包括彩票发行用户利用区块链数字钱包程序的生成模块生成含有彩票钱包地址的彩票合约;将彩票合约作为交易数据写入区块链中;通过运行所述区块链数字钱包程序发行彩票合约;对发行的目标彩票合约进行投注后,再利用数字钱包程序的兑奖模块进行兑奖。本发明基于区块链技术,去中心化,任何一个拥有区块链钱包的用户,都可以发行自己的彩票。开奖结果基于未知区块进行运算,任何参于彩票的环结,都无法作弊,彩票开奖程序已开源,方便用户监督;就算是彩票发行方,也无法事先预知或设定开奖结果,克服了传统彩票中心化,不透明,不明确等弊端。,下面是一种基于链的彩票发行方法专利的具体信息内容。

1.一种基于链的彩票发行方法,其包括以下步骤:
(1)彩票发行用户利用区块链数字钱包程序的生成模块生成含有彩票钱包地址的彩票合约;
(2)将上述含有彩票钱包地址的彩票合约作为交易数据写入区块链中;
(3)彩票发行用户通过运行所述区块链数字钱包程序向各用户发行上述含有彩票钱包地址的彩票合约;
(4)各用户利用所述数字钱包程序的投注模块对发行的目标彩票合约进行投注后,再利用数字钱包程序的兑奖模块进行兑奖。
2.根据权利要求1所述基于区块链的彩票发行方法,其特征在于:所述彩票合约包括彩票标识、彩票ID 、彩票类型、投注类型 、投注金额 、最小投注金额、起始区块编号、目标区块编号、猜测的哈希码长度、 投注的号码 、彩票钱包地址、彩票钱包地址对应的私匙、投注者的钱包地址、目标彩票的交易哈希码和数字签名文本。
3.根据权利要求2所述基于区块链的彩票发行方法,其特征在于:所述彩票合约写入区块链后,所有用户通过数字钱包程序对该彩票合约的有效性进行验证,验证通过,则彩票发行成功。
4.根据权利要求3所述基于区块链的彩票发行方法,其特征在于:验证时,先验证彩票合约的彩票标识和彩票类型,然后验证起始区块编号和目标区块编号,再验证彩票钱包地址和彩票钱包地址对应的私匙是否匹配。
5.根据权利要求4所述基于区块链的彩票发行方法,其特征在于:用户先通过投注模块输入投注的金额及投注号码,并向目标彩票钱包地址充入投注设定的金额,然后投注模块自动完成投注合约。
6.根据权利要求5所述基于区块链的彩票发行方法,其特征在于:所述投注合约包括用户投注的目标彩票合约交易的哈希码、投注的金额和投注用户的钱包地址,该投注合约随投注交易写入区块链并生成兑奖券。
7.根据权利要求6所述基于区块链的彩票发行方法,其特征在于:当彩票合约设置的目标区块出现后,用户通过兑奖模块导入兑奖券,兑奖模块对目标彩票合约和投注合约进行验证。
8.根据权利要求7所述基于区块链的彩票发行方法,其特征在于:所述兑奖模块先验证目标彩票合约,该验证通过后再验证投注合约;当用户中奖后,中奖用户通过数字钱包程序导入彩票合约中彩票钱包地址对应的私匙,并将该地址中的数字币发送到中奖用户投注合约中设置的钱包地址中,同时生成用于验证的兑奖合约,该兑奖合约随兑奖交易写入区块链。
9.根据权利要求8所述基于区块链的彩票发行方法,其特征在于:所述兑奖合约包含用投注者的钱包地址对投注合约的交易哈希码字符串进行签名后的数字签名文本。
10.根据权利要求9所述基于区块链的彩票发行方法,其特征在于:各用户通过数字钱包程序收到包含兑奖合约的交易后,对该兑奖合约进行验证。

说明书全文

一种基于链的彩票发行方法

技术领域

[0001] 本发明涉及数字货币钱包类软件,具体说是一种基于区块链的彩票发行方法。

背景技术

[0002] 现行加密数字货币如目前主流加密数字货币比特币,是一种整合P2P、互联网、加密学原理的一种去中心化属性的数字货币。加密数字货币钱包程序中所有形式的钱都是协议(All forms of money are protocol),即所有的钱在进行交易之前都必须遵守的规则的正式描述。如比特币就是一种更高形式的协议,它是利用互联网技术和密码学设计的,而密码学的应用保证了支付系统的安全性。所以,比特币在这方面与其他的货币并没有太大的区别。比特币最独特的一点是其总账系统(ledger system)是去中心化的,而其他的货币都有一个中央机构来发行货币。
[0003] 初次数字货币使用者在电脑上安装该数字货币钱包程序, 这种程序生成钱包如比待币以wallet.dat 格式保存在电脑内。钱包生成多个比特币地址,地址是对外公开的账号用来接收别人发送的比特币。钱包程序生成加密数字货币地址就有该地址相对应的私钥和公钥,目前私钥和公钥都包含在钱包档案(wallet.dat) 内。在加密数字货币中,私钥(private key) 是保存在钱包里的一串信息。如比特币中,私钥就保存在钱包档案wallet.dat 内。私钥的作用是用来产生公钥(该公钥可以推导出比特币地址),并且用来做交易的数字签名。 这个签名保证了交易的可靠性, 不被篡改,不可否认的完整性。所有的交易记录都会被广播到用户群,并且在下一个规定时间被全网确认,这个过程又称为挖矿(Mining)。
[0004] 目前,所有加密数字货币的交易都是公开的,如比特币中所有交易一经全网确认就整合成”公开总账本”(shared public ledger) ,又叫区块链(Blockchain),每一个钱包的结余(Balance) 没有单独记录,都是透过区块链的交易信息计算出所有权人收入支付的结余。区块链是透过加密学根据交易记录和时间顺序整合而成的。“比特币交易”就是在各个比特币钱包之间的价值转款记录并整合到区块链中。然而,现有技术中没有利用区块链进行彩票发行等操作。

发明内容

[0005] 针对上述技术问题,本发明提供一种基于区块链的彩票发行方法,为用户投注提供便利。
[0006] 本发明解决上述技术问题所采用的技术方案为:一种基于区块链的彩票发行方法,其包括以下步骤:(1)彩票发行用户利用区块链数字钱包程序的生成模块生成含有彩票钱包地址的彩票合约;
(2)将上述含有彩票钱包地址的彩票合约作为交易数据写入区块链中;
(3)彩票发行用户通过运行所述区块链数字钱包程序向各用户发行上述含有彩票钱包地址的彩票合约;
(4)各用户利用所述数字钱包程序的投注模块对发行的目标彩票合约进行投注后,再利用数字钱包程序的兑奖模块进行兑奖。
[0007] 作为优选,所述彩票合约包括彩票标识、彩票ID 、彩票类型、投注类型 、投注金额 、最小投注金额、起始区块编号、目标区块编号、猜测的哈希码长度、 投注的号码 、彩票钱包地址、彩票钱包地址对应的私匙、投注者的钱包地址、目标彩票的交易哈希码和数字签名文本。
[0008] 作为优选,所述彩票合约写入区块链后,所有用户通过数字钱包程序对该彩票合约的有效性进行验证,验证通过,则彩票发行成功。
[0009] 作为优选,验证时,先验证彩票合约的彩票标识和彩票类型,然后验证起始区块编号和目标区块编号,再验证彩票钱包地址和彩票钱包地址对应的私匙。
[0010] 作为优选,用户先通过投注模块输入投注的金额及投注号码,并向目标彩票钱包地址充入投注设定的金额,然后投注模块自动完成投注合约。
[0011] 作为优选,所述投注合约包括用户投注的目标彩票合约交易的哈希码、投注的金额和投注用户的钱包地址,该投注合约随投注交易写入区块链并生成兑奖券。
[0012] 作为优选,当彩票合约设置的目标区块出现后,用户通过兑奖模块导入兑奖券,兑奖模块对目标彩票合约和投注合约进行验证。
[0013] 作为优选,所述兑奖模块先验证目标彩票合约,该验证通过后再验证投注合约;当用户中奖后,中奖用户通过数字钱包程序导入彩票合约中彩票钱包地址对应的私匙,并将该地址中的数字币发送到中奖用户投注合约中设置的钱包地址中,同时生成用于验证的兑奖合约,该兑奖合约随兑奖交易写入区块链。
[0014] 作为优选,所述兑奖合约包含利用投注者的钱包地址对投注合约的交易哈希码字符串进行签名后的数字签名文本。
[0015] 作为优选,各用户通过数字钱包程序收到包含兑奖合约的交易后,对所述兑奖合约进行验证。
[0016] 与现有技术相比,本发明具有以下优点:1、本发明基于区块链技术,去中心化,任何一个拥有区块链数字钱包的用户,都可以发行自己的彩票。2、本发明的开奖结果基于未知区块进行运算,任何参于彩票的环节都无法作弊,彩票开奖程序已开源,方便用户监督;就算是彩票发行方,也无法事先预知或设定开奖结果,克服了传统彩票中心化,不透明,不明确等的弊端。3、本发明的彩票从发行到购买都可以匿名进行,给用户更多的自由性。4、本发明属于免运营,免维护的彩票系统,只需要投入很少精就可以管理发行的彩票。

具体实施方式

[0017] 下面将详细说明本发明,在此本发明的示意性实施例以及说明用来解释本发明,但并不作为对本发明的限定。
[0018] 一种基于区块链的彩票发行方法,其包括以下步骤:首先,彩票发行用户利用区块链数字钱包程序的生成模块生成含有彩票钱包地址的彩票合约,合约的详细格式如下:
“彩票标识 | 彩票ID | 彩票类型(1 表示发行彩票,2表示投注彩票,3表示兑奖彩票)| 投注类型 | 投注金额 | 最小投注金额 | 起始区块编号 | 目标区块编号 | 猜测的哈希码长度(即难度)| 投注的号码 | 彩票的钱包地址 | 彩票钱包地址对应的私匙 | 投注者的钱包地址(用于验证身份以及中奖后接收奖金)| 目标彩票的交易哈希码 | 数字签名文本”。
[0019] Lottery Flag | Lottery ID | Lottery Type (Genesis = 1, Bet = 2, Cash = 3) | Bet Type | Bet Amount | Mini Bet Amount | Start block | Target block | Guess HASH Length | Bet Text | Lottery wallet address | Lottery wallet Private Key | Bettor's default Wallet Address | Lottery Tx ID | Sign message。
[0020] 在彩票未上市销售之前,给彩票预先充入一定数量的数字币如5000数字币等;彩票的中奖号码的产生方式,可以是猜未来某个区块的哈希码(最后N个字符),该数字值表示使用这个哈希码的最后多少位的字符作为开奖结果,如这里为3,即表示使用最后三个字符作为开奖结果;目标区块即未来某天才会产生的区块,这是一个相对于当前来说的值,由于它是还没有产生的区块,所以只有这个区块产生后,彩票才可以完成开奖操作;彩票的中奖号码就是这个区块的哈希码的最后N位,而这里设置的仅仅是一个未来某个区块的编号,如第31000个区块,即表示在31000个区块后开奖;然后设置每注彩票销售时单注最少的投注金额,如这里为50数字币,即用户购买彩票最少需要花50数字币才算购买到一注彩票;投注号码是玩家认为目标区块的哈希码的最后N位的字符串号码,每个人的投注号码可能都不相同,但正确答案只有一个;当你发行一张彩票,就会首先生成一张彩票合约,而用户购买彩票,都是在这张彩票合约的基础上派生。以下举例说明:李是一名彩票发行人,他想发行一张自己的彩票。那么他的第一件事,就是设置彩票的奖池,做为彩票发行的底金,如5000数字币。接下来他要设置彩票号码产生的类型,如这里设置为猜测未来某个区块的哈希码(最后N个字符),然后设置号码产生难度,如这里设置为
2个字符,即表示使用哈希码的最后两位字符做为开奖号码。然后他希望是三天后开奖,那么按照产生区块的数量计算,每天预计为1440个区块,三天后就是1440*3= 4320,目标区块设置为4320,接着,李希望他的发行每注彩票最小投注金额为50数字币,所以在最小投注额中输入50,接着设置第一张彩票投注号码:1a。当一切都设置好后,即生成一张图片,这张图片就是李发行的彩票,后面兑奖时要用到这个图片;随着区块链的同步更新,其他用户的数字钱包程序收到包含彩票合约的区块后,就可以先验证然后参与投注。
以下是一个彩票合约样本即发行合约样本:
“BitNet Lottery:|0000000207F0|1|0|1000000|50|379760|384080|4|abcd|V b Y P L A 3 b M 3 J P J 6 o 8 y o S m T A T b N K d 1 4 9 i H D 3 |WTFQpuM5X8tew9rcZ83PqBmGRDDvAprayrQsy9ePmeydD6mbpeMh|
Vmgaq4QQY2SUnNvjoQ3NoEi5dM4i3WneFY|0|0”
以下是一个投注合约样本:
“BitNet Lottery: |0000000207F0|2|0|51|50|384007|384080|4|6624|VbYPLA3bM3JPJ6o8yoSmTATbNKd149iHD3|0|VeGF1qUpNJ51rNkSjyZ6i5uMuQ1edqb4Kn|
3555782f07664022e4e8c49b049aa9895e2387ce052837c9c45603b325ac1191|0”以下是一个兑奖合约样本:
“BitNet Lottery: |0000000207F0|3|0|0|0|0|0|0|0|
VbYPLA3bM3JPJ6o8yoSmTATbNKd149iHD3|0|Vmgaq4QQY2SUnNvjoQ3NoEi5dM4i3WneFY|
3555782f07664022e4e8c49b049aa9895e2387ce052837c9c45603b325ac1191|H+KubEXXHTKMqdD2EtjfIsuqXUwFgu6J1FbGZDMSM9tIX4GBECDZ29mZao4MG2/
6P0eCXWXSWhL9AdvZdW6nLVg=”
彩票合约生成后,将作为交易数据写入区块链中;彩票发行用户通过运行区块链数字钱包程序向各用户发行上述含有彩票钱包地址的彩票合约;在实施过程中,彩票合约写入区块链后,所有用户通过数字钱包程序对该彩票合约的有效性进行验证,验证通过,则彩票发行成功,各用户可参与投注。具体验证过程为:先验证彩票标识,必须是 “BitNet Lottery: ”,彩票类型必须等于1(表示发行),然后验证起始区块编号和目标区块编号,再验证彩票钱包地址和彩票钱包地址对应的私匙是否一致。
[0021] 彩票发行后,各用户利用所述数字钱包程序的投注模块对发行的目标彩票合约进行投注。为了防止作弊,如果当前区块总数大于彩票合约中设置的区块编号减三,则不能投注,即使强制投注也不能通过兑奖模块的验证,如果当前区块总数小于彩票合约中设置的目标区块编号减三(如当前区块总数是60,设置的目标区块编号是100,在60~96这个区块范围内)用户可以投注。用户通过投注模块输入投注的金额及投注号码,并向该彩票钱包地址充入投注设定的金额,投注模块自动完成投注合约,该投注合约包括用户投注的目标彩票合约交易的哈希码,投注的金额,用户的钱包地址等信息,投注合约随投注交易写入区块链并生成兑奖券(二维码图片),兑奖券的二维码信息里面包含投注彩票合约的交易哈希码。
[0022] 用户投注后,可利用数字钱包程序的兑奖模块进行兑奖;为了防止作弊,当彩票合约中设置的目标区块编号加三个块(比如设置的目标区块编号是100,在第103个块)出现后,用户才可以通过兑奖模块进行兑奖。用户通过兑奖模块导入奖券,兑奖模块先验证目标彩票合约是否有效,如果有效则继续验证投注合约是否有效;当中奖后,中奖用户通过数字钱包程序导入该彩票合约中彩票钱包地址对应的私匙,并将该地址中的数字币发送到中奖者的投注合约中设置的钱包地址中,同时生成用于验证的兑奖合约,并利用数字钱包的签名函数 string signMessage(“投注者的钱包地址”, “投注合约的交易哈希码”) 得到“数字签名文本”保存到兑奖合约,以防止其他人冒领奖金,然后将该兑奖合约随兑奖交易写入区块链,供其它数字钱包节点验证。验证投注合约的过程为:先验证目标彩票合约,验证通过后验证投注合约,具体过程为:彩票标识必须是“BitNet Lottery:”, 彩票ID 必须和目标彩票一致,投注的彩票类型必须等于2(表示是投注彩票),投注类型必须和目标彩票的一致,投注金额必须大于或等于目标彩票的最小投注金额,起始区块编号必须大于目标彩票的起始区块编号,且小于目标彩票的目标区块编号,目标区块编号必须等于目标彩票的目标区块编号,猜测的哈希码长度(即难度)必须和目标彩票的一致,投注的号码字符串的长度必须和猜测的哈希码长度一致,彩票的钱包地址必须和目标彩票的一致,“目标彩票的交易哈希码”字段的内容必须和目标彩票的交易哈希码一致,然后对比投注的号码字符串,其内容必须和目标区块哈希码字符串的最后几位(由“猜测的哈希码长度”设定)一致。
[0023] 用户通过数字钱包程序收到包含彩票兑奖合约的交易后会验证兑奖合约的合法性,如果验证失败将拒绝这笔交易。验证兑奖合约的流程为:根据兑奖彩票合约的“目标彩票的交易哈希码”(该信息在兑奖合约里面是投注合约的交易哈希码,即投注证明)获得投
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈