基于区块链预言机的抽奖方法和抽奖设备技术

技术编号:35264926 阅读:18 留言:0更新日期:2022-10-19 10:26
本发明专利技术公开了一种基于区块链预言机的抽奖方法和抽奖设备,包括抽奖主办方和抽奖参与者,具体步骤:S1、抽奖主办方部署智能合约到区块链,并确定输入区块链预言机的随机源;S2、抽奖主办方链下宣传抽奖活动,并声明最大参与人数、最大获奖人数、报名截止时间、抽奖时间、抽奖模式和随机源的基准参数,并写入智能合约;S3、抽奖参与者在报名截止时间前通过登录区块链帐户报名参加活动并生成注册号;S4、抽奖主办方将区块链预言机作为参数输入智能合约后,智能合约根据最大参与人数、最大获奖人数和抽奖时间生成中奖号;S5、抽奖主办方根据中奖号通知对应的注册号抽奖参与者。实现抽奖方法与文旅项目结合,对实体经济起到推进作用,为实体产业赋能。体产业赋能。体产业赋能。

【技术实现步骤摘要】
基于区块链预言机的抽奖方法和抽奖设备


[0001]本专利技术属于区块链预言机的
,具体涉及一种基于区块链预言机的抽奖方法和抽奖设备。

技术介绍

[0002]传统的抽奖方法都是中心化部署,存在抽奖机制及数据不透明的情况。近年来有许多研究采用了区块链技术设计抽奖方法期望实现去中心化、透明的抽奖方案。由于区块链是一种确定性的图灵机,所有分布式节点需要对链上状态改变达成共识,就需要交易在所有节点上的计算结果都是一样的。这意味着区块链本身不能涉及随机性。如果存在随机的操作码,则所有矿工将获得不同的结果,网络将无法达成共识。因此,真正的随机源需要从链下获取,于是进一步引入了预言机,通过预言机将链下处理获得的随机数上传至链上智能合约,以实现随机。
[0003]而如何将区块链技术结合链下随机源应用在抽奖方案中,保证抽奖方案去中心化且公开透明,成为业内需要解决的问题。

技术实现思路

[0004]为解决上述技术问题中的至少之一,本专利技术提出一种基于区块链预言机的抽奖方法和抽奖设备。
[0005]本专利技术的目的通过以下技术方案实现:
[0006]本专利技术提供了一种基于区块链预言机的抽奖方法,包括抽奖主办方和抽奖参与者,具体步骤如下:
[0007]S1、抽奖主办方部署智能合约到区块链,并确定输入区块链预言机的随机源;
[0008]S2、抽奖主办方链下宣传抽奖活动,并声明最大参与人数、最大获奖人数、报名截止时间、抽奖时间、抽奖模式和随机源的基准值参数,同时将这些参数写入智能合约;
[0009]S3、抽奖参与者在报名截止时间前通过登录区块链帐户,调用智能合约报名功能,参加抽奖活动并生成注册号;
[0010]S4、抽奖主办方将区块链预言机作为参数输入智能合约后,智能合约根据最大参与人数、最大获奖人数、抽奖时间和抽奖模式生成中奖号;
[0011]S5、抽奖主办方根据中奖号通知对应的注册号抽奖参与者。
[0012]作为进一步的改进,所述区块链预言机的随机源为气象参数,所述随机源的基准参数是气象参数的基准时间和基准地点。
[0013]作为进一步的改进,所述区块链预言机为分布式预言机,各方预言机的随机源对应一个气象中心的气象参数。
[0014]作为进一步的改进,所述步骤S3中,每位抽奖参与者在调用智能合约报名功能时,智能合约进行报名人数累计后获得抽奖参与总人数,同时验证报名参与人数是否等于最大参与人数,否则抽奖参与者可继续报名,是则停止抽奖参与者注册。
[0015]作为进一步的改进,所述步骤S4中,智能合约根据最大参与人数、最大获奖人数和抽奖时间生成中奖号时,包括如下步骤:
[0016]S41、各方预言机通过气象路由从不同气象中心获取基准时间和基准地点的气象参数输入智能合约;
[0017]S42、智能合约判断报名截止时间后抽奖参与人数是否大于最大获奖人数,否则所有抽奖参与者注册号即为所有中奖号,并跳转至步骤S5,是则跳转至步骤S43;
[0018]S43、智能合约将各方预言机的气象参数进行计算后得出中奖的起始号,根据起始号和最大获奖人数确定所有中奖号;
[0019]作为进一步的改进,所述步骤S43中,智能合约将各方预言机的气象参数进行计算后得出中奖的起始号,根据起始号和最大获奖人数确定所有中奖号,包括如下步骤:
[0020]S431、声明一个中奖号数组;
[0021]S432、智能合约将各方预言机的气象参数进行哈希计算后获得多个预言机的哈希数据;
[0022][0023]S433、对各方预言机的哈希数据进行加权计算后获得抽奖的当前基准值;
[0024]S434、将抽奖的当前基准值进行哈希计算后,将哈希值除以抽奖参与总人数后取余数得出一个中奖号。
[0025]S435、判断抽奖模式是否为连续取号,是则从中奖号开始结合最大获奖人数进行连续取号并存储至中奖号数组,跳转至步骤S436;否则为不连续号,跳转至步骤S436;
[0026]S436、判断中奖号数组中保存的数据个数是否小于最大获奖人数,是则跳转至步骤S437,否则跳转到步骤S438;
[0027]S437、判断中奖号数组中是否存在该中奖号,否则将该中奖号存储至中奖号数组,并将抽奖当前基准值进行哈希计算,得出的结果作为下一个中奖号的抽奖当前基准值,跳转至步骤S434;是则,将抽奖当前基准值进行哈希计算,得出的结果作为下一个中奖号
[0028]的抽奖当前基准值,跳转至步骤S434;
[0029]S438、中奖号数组中存储的数据即为所有中奖号。
[0030]作为进一步的改进,所述S5步骤抽奖结束后,抽奖参与者对各方预言机进行投票以实现分布式预言机的信誉度评比。
[0031]作为进一步的改进,所述S3步骤中,抽奖参与者报名参加抽奖活动后,抽奖主办方鼓励抽奖参与者在参与过程中通过测量仪器实时对基准时刻和基准地点的气象参数进行测量记录,以用于对各方预言机进行投票后获得分布式预言机的信誉度评比数据。
[0032]作为进一步的改进,所述步骤S433中,对多个预言机的哈希数据进行加权计算后获得抽奖的当前基准值时,加权比重与各方预言机所得票数成正比,各方预言机初始得票数均为1,对于多个预言机为N的场景,各方预言机初始权重均是1/N,当各方预言机经过至少一轮的抽奖参与者投票后,各方预言机的权重即为该预言机得票数除以所有预言机总得票数。
[0033]本专利技术提供的基于区块链预言机的抽奖方法,包括抽奖主办方和抽奖参与者,具体步骤:S1、抽奖主办方部署智能合约到区块链,并确定输入区块链预言机的随机源;S2、抽奖主办方链下宣传抽奖活动,并声明最大参与人数、最大获奖人数、报名截止时间、抽奖时
间、抽奖模式和随机源的基准参数,同时将这些参数写入智能合约;S3、抽奖参与者在报名截止时间前通过登录区块链帐户,调用智能合约的报名功能,参加抽奖活动并生成注册号;S4、抽奖主办方将区块链预言机作为参数输入智能合约后,智能合约根据最大参与人数、最大获奖人数、抽奖时间和抽奖模式生成中奖号;S5、抽奖主办方根据中奖号通知对应的注册号抽奖参与者。本专利技术在使用时,结合文旅项目的抽奖活动,抽奖主办方部署智能合约到区块链,并确定输入区块链预言机的随机源是文旅过程中的气象参数,包括指定与文旅项目相关的气象参数的基准时间和基准地点,以及在链下进行文旅项目抽奖活动宣传时声明的最大参与人数、最大获奖人数、报名截止时间、抽奖时间和抽奖模式,抽奖参与者为文旅项目的游客,游客在报名截止时间前登录区块链帐户,通过调用智能合约的报名功能,参加抽奖活动并生成注册号,文旅项目主办方将区块链预言机作为参数输入智能合约后,智能合约根据最大参与人数、最大获奖人数、抽奖时间和抽奖模式生成中奖号后,通知对应的注册号游客领取奖品,实现基于区块链技术的抽奖方法与文旅项目结合,数据全生命周期在区块链、预言机和链下随机源之间流转,对实体经济起到推进作用,为实体产业赋能。
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于区块链预言机的抽奖方法,其特征在于,包括抽奖主办方和抽奖参与者,具体步骤如下:S1、抽奖主办方部署智能合约到区块链,并确定输入区块链预言机的随机源;S2、抽奖主办方链下宣传抽奖活动,并声明最大参与人数、最大获奖人数、报名截止时间、抽奖时间、抽奖模式和随机源的基准参数,同时将这些参数写入智能合约;S3、抽奖参与者在报名截止时间前通过登录区块链帐户,调用智能合约报名功能,参加抽奖活动并生成注册号;S4、抽奖主办方将区块链预言机作为参数输入智能合约后,智能合约根据最大参与人数、最大获奖人数、抽奖时间和抽奖模式生成中奖号;S5、抽奖主办方根据中奖号通知对应的注册号抽奖参与者。2.如权利要求1所述的基于区块链预言机的抽奖方法,其特征在于,所述区块链预言机的随机源为气象参数,所述随机源的基准参数是气象参数的基准时间和基准地点。3.如权利要求2所述的基于区块链预言机的抽奖方法,其特征在于,所述区块链预言机为分布式预言机,各方预言机的随机源对应一个气象中心的气象参数。4.如权利要求1所述的基于区块链预言机的抽奖方法,其特征在于,所述步骤S3中,每位抽奖参与者在调用智能合约报名功能时,智能合约进行报名人数累计后获得抽奖参与总人数,同时验证报名参与人数是否等于最大参与人数,否则抽奖参与者可继续报名,是则停止抽奖参与者注册。5.如权利要求3所述的基于区块链预言机的抽奖方法,其特征在于,所述步骤S4中,智能合约根据最大参与人数、最大获奖人数和抽奖时间生成中奖号时,包括如下步骤:S41、各方预言机通过气象路由从不同气象中心获取基准时间和基准地点的气象参数输入智能合约;S42、智能合约判断报名截止时间后抽奖参与人数是否大于最大获奖人数,否则所有抽奖参与者注册号即为所有中奖号,并跳转至步骤S5,是则跳转至步骤S43;S43、智能合约将各方预言机的气象参数进行计算后得出中奖的起始号,根据起始号和最大获奖人数确定所有中奖号。6.如权利要求5所述的基于区块链预言机的抽奖方法,其特征在于,所述步骤S43中,智能合约将各方预言机的气象参数进行计算后得出中奖的起始号,根据起始号和最大获奖人数确定所有中奖号,包括如下步骤:S431、声...

【专利技术属性】
技术研发人员:谭林罗鼎臣姚昱旻刘齐军王云丽杨征
申请(专利权)人:湖南天河国云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1