CN108269099A - 一种去中心化的抽奖方法 - Google Patents
一种去中心化的抽奖方法 Download PDFInfo
- Publication number
- CN108269099A CN108269099A CN201810110720.1A CN201810110720A CN108269099A CN 108269099 A CN108269099 A CN 108269099A CN 201810110720 A CN201810110720 A CN 201810110720A CN 108269099 A CN108269099 A CN 108269099A
- Authority
- CN
- China
- Prior art keywords
- prize
- open
- prize drawing
- lottery
- people
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/018—Certifying business or products
- G06Q30/0185—Product, service or business identity fraud
Landscapes
- Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Finance (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Credit Cards Or The Like (AREA)
Abstract
在许多抽奖活动中,存在着作弊的可能性。在一些开放环境下的抽奖更容易作弊。有些抽奖是由于本身不透明造成的,有些则是因为内部人员作假,在网络等开放环境中,还可能存在黑客控制或篡改抽奖结果的行为。为了防止内部人员作弊,本发明设计了一种各方都可以参与的抽奖结果控制方法,同时有公开的规则检测抽奖结果是否被篡改。这种抽奖方式实现了去中心化,结果不是完全依靠抽奖机构产生,进一步为了避免伙同作弊的可能性,采用零知识证明防止作弊,为了避免个别人对抽奖的扰乱,采用了数字签名。
Description
技术领域
本发明属信息安全领域,涉及一种去中心化的安全的抽奖的方法。
背景技术
在许多抽奖活动中,存在着作弊的可能性。传统的抽奖采用抓阄、击鼓传花、转盘等方法。不适用于现代数字化环境,特别是参与抽奖人多,不能在现场的情况下。一些网站为了吸引人气,也有抽奖活动。但是在一些开放环境下的抽奖更容易作弊。有些抽奖是由于本身不透明造成的,有些则是因为内部人员作假,在网络等开放环境中,还可能存在黑客控制或篡改抽奖结果的行为。中心化的抽奖结果产生方式为舞弊提供了机会。为了防止内部人员作弊,本专利设计了一种去中心化的,各方都可以参与的抽奖结果控制方法,同时有公开的规则检测抽奖结果是否被篡改。
发明内容
在本发明中,我们将抽奖的计算方法公开,抽奖算法使用一些参数来产生抽奖结果,使用抽奖装置和抽奖用户产生的随机数作为参数来产生抽奖的结果,这样避免抽奖管理机构内部人员作弊,将奖项落空或者将奖分配给内部人员、熟悉人员,也避免用户自己控制抽奖结果以有利于自己。
方案一:将抽奖人(或者是抽奖券)的信息映射为一个数值ki,比如可以用连续的序号,将抽奖的过程映射为一个具有一般性的函数F(e1,e2,…,em,a0,a1,a2,…,an),用一些参数作为输入,产生输出结果,函数输出的结果的概率分布应该与每一个人的获奖权重一致。比如,根据情况,A可能获奖的概率是B的两倍,则函数结果对应A的概率是B的概率的两倍。但是一般情况下,获奖机会应该是均等的,所以此时函数的结果应该是均衡随机的,即通过该方法每一个人获奖的机会是均等的。网站公开自己的a0值,然后每个人提交自己的a值,则可以计算出抽奖结果。在用户提交a完成后,可以是公开抽奖结果前或者后,网站公开所有的抽奖人和a值的对应关系,每一个用户可以核对自己的a值是否被篡改。考虑简化,可以将函数设计为F(a0,a1,a2,…,an)将输出结果与抽奖人的信息对应起来。在这里,这些参数中,a0为抽奖装置或抽奖管理机构产生最先产生,a1至an由用户产生。这样抽奖的结果实现了去中心化,减少了各方作弊的机会。抽奖管理者难以控制抽奖结果。
方案二:对于多人获奖、多个奖项的情况,可以采取多次执行方案一的方法,每次抽奖都排除已经获奖的用户,但是这是代价比较高的。可以采用固定的相对位置来确定奖项。这个相对位置在抽奖开始就已经确定了。由于第一次抽奖结果随机,后面的在已经固定的相对位置下确定的奖项也是随机的,比如对于后面的奖项,采用排除已经获奖者后的固定的相对位置mi来确定奖项,在抽奖开始前就已经确定并且公开mi。相对位置是循环的,可以看成是把所有参与者按照顺时针排序,相对位置是看顺时针的距离,但是前面确定的获奖者按照次序依据顺序排除。
方案三:在方案一或者二的基础上,考虑到在算法公开的情况下,依然需要防止多人伙同作弊、偷窥作弊,特别是当各方数据不是同时产生的时候,可能后面的人会获得前面人产生的随机数据的值,从而导致产生有利于自己的结果。有时候部分人伙同的情况下,如果数据以明文的形式公开,会带来安全隐患,如果是加密,也容易伪造。所以,各个用户和管理者首先公开a0,a1,a2,…,an 的一个用零知识证明方法产生的数值b0,b1,b2,…,bn,这个方法可以保证外人能够根据b0,b1,b2,…,bn确定用户使用的数值是a0,a1,a2,…,an ,但是知道b0,b1,b2,…,bn并不泄露关于a0,a1,a2,…,an 的信息,比如可以采用随机数a的hash函数作为b,也可以用随机数a加密一个公开的数值,得到的密文作为b,由于hash函数和密码函数的不可逆性,通过b不能推出a,然后各个用户再提供相应的a0,a1,a2,…,an ,如果根据零知识证明,不能证明a和b的对应关系,则可以认为存在作弊和虚假,可以终止抽奖,重新再来一次。零知识证明通俗地说,就是泄露的知识是0,但是却可以证明他拥有该知识。比如一些具有单向性的函数。由于b并不泄露关于a的信息,所以除非所有的参与者都是共谋,才能知道对应的a值,而作弊,而作弊的目的是要骗一部分参与人,此时所有人都伙同作弊骗不了任何一个人,所以,此时作弊毫无意义。另外,即使是黑客窃取数据,由于他不能获得相关知识,也不能影响抽奖结果,如果黑客只是篡改最后抽奖结果,则根据规则是可以发现的。可以由用户(抽奖人)或者平台公开抽奖人与b的对应关系。这个公开可以是抽奖人自己公开,也可以是通过平台公开。
方案四:虽然平台作弊可以被发现,但是考虑到用户完全可以在自己没有中奖的情况下恶意声称网站作假,从而增加获奖可能性,扰乱抽奖秩序,无法分清是抽奖平台作假,还是用户撒谎,为了防止用户和平台互相篡改推诿抵赖的问题,可以要求在提交a和b等数据的同时,附上用户自己的签名。签名用的数字证书可以是平台签发,也可以是用户在可信认证机构申请。
在互联网和计算机环境下,为了吸引客户,方便用户,可以在用户电脑上调用随机数生成函数产生随机数a。这样增加了用户作弊的难度。为了避免给用户带来操作负担,可以在用户申请抽奖的同时提交最初数据。为了方便用户,还可以让网页或者客户端程序在预定的时间同时提交b和a。软件以开源的方式让用户可以分析其严格按照本方法执行发送数据和检验抽奖。
具体实施方式
应该说明的是,根据下面的具体实施方式,其中通过举例说明示出并描述了本技术的各种设置(或选择),本技术的其他设置将变得对本领域技术人员易于显而易见。本技术能够有其他不同的设置(或选择),并且其若干细节能够在各种其他方面被修改,所有均不会背离本技术的范围。因此,具体实施方式应被认为是举例说明性而非限制性的。为了便于理解发明,我们采用了非常简洁的描述方式。本发明中的许多特征可以自由组合,出于减少实施例的数目的目的,有些不相关的特征可能会同时增加到一个实施例中,一些显而易见的替代也被包括。比如,特征X和Y都写入一个实施例中,但是,明显两者并不关联,它们各自产生了优势,而且不依赖于另一方的存在,所以,可以去掉其中一个具体的特征,或者修改它。为了便于理解,我们选取的实施例都非常简单。为了便于区分每一个层次的技术特征和创新点,我们采用了前后引用的方式。
实施例1:将所有的抽奖人进行编号,数值ki,最好参与抽奖的人数为n,为了方便,我们假设每一个人获奖机会是均等的,为了保证每个用户的机会均等,将抽奖的过程映射为一个函数F(e1, e2, …, em, a1, a2,…,an)=(e1+e2+…+em+a0+a1+a2+…+an)mod n +1,e1,e2,…,em为设定的参数,为了方便也可以去掉它们,从而函数简化为F(a1,a2,…,an)=(a0+a1+a2+…+an)mod n +1。注意是模n后再加一,通过函数的值编号对应的用户就是获奖者。其中a0为抽奖管理者给出的随机数,a1、a2、…、an为全体用户提出的随机数。最后网站公开所有的数据,用户可以核实自己的数据是否真实。
实施例2:对于多个奖项的情况,在实施例1抽出第一个获奖者的基础上,可以采用固定的相对位置来确定奖项。为了方便,我们假设只有两个奖项,在出示数据之前,公开一个相对位置s,如果此编号已经获奖,像模加一样循环往后推一位,直到遇到没有获奖的人,最后一位的后一位是第一位,第二个获奖者的编号为(s+a0+a1+a2+…+an)mod n +1。有更多的奖项可以以此类推。
实施例3:在实施例1或2的基础上,考虑到在算法公开的情况下,我们采用零知识证明的方法,为了简洁,我们采用hash函数,每一个人选定了自己的随机数a以后,首先公开a的hash值hash(a)=b,公布完毕后,在平台上公布a,同时,平台和各个用户都可以检验公布的a和b是否是自己的,平台和用户也可以检验公布的a和b是否满足hash(a)=b,根据公布的随机数和公布的算法,可以计算出抽奖的结果。
实施例4:在实施例1或2的基础上,考虑到在算法公开的情况下,为了防范hash函数被查表攻击,我们设定一个数c,采用公开hash(c‖a)=b的方式,‖表示合并,类似于实施例3,公布完毕后,在平台上公布a,同时,平台和各个用户都可以检验公布的a和b是否是自己的,平台和用户也可以检验公布的a和b是否满足hash(c‖a)=b,根据公布的随机数和公布的算法,可以计算出抽奖的结果。
实施例5:在实施例3或4的基础上,为了便于大家都能检验,平台可以提供一个工具软件进行计算,或者是一个公开的网页调用函数进行计算,各方提供的a和b是否都存在一一对应关系,还可以根据所有的a计算出抽奖结果,核实抽奖结果与平台公布的结果是否一致。
实施例6:在发明前面实施例1-5的基础上,要求用户提供的数据(比如a和b等)均附上自己的数字签名。用户用自己的私钥对a和b签名,比如发送a时,附上Eks(a),E表示签名算法,ks表示私钥。在存在争议时,或者是平台接受数据时,对签名进行验证。
Claims (5)
1.一种公开抽奖方法,其特征为:将抽奖人(或者是抽奖券)的信息映射为一个数值ki,将抽奖的过程映射为一个函数F(e1,e2,…,em,a0,a1,a2,…,an),e1,e2,…,em为公开设定的参数,将输出结果与抽奖人的信息对应起来,如果是有多个获奖人,可以产生多个结果,在这里的参数中,a0为抽奖装置或抽奖管理机构产生最先产生的随机数,a1至an由用户产生,抽奖平台先公开自己的a0值,然后每个人提交自己的a值,即可计算出获奖者,在用户提交a完成后,在公开抽奖结果前或者后,网站公开所有的抽奖人和a值的对应关系。
2.如权利要求1所述的公开抽奖方法,其特征为:针对多个奖项,采用排除已经获奖者后的固定的相对位置mi来确定后面的第i+1个奖项,在抽奖开始前就已经随机地确定并且公开mi。
3.如权利要求1或2所述的公开抽奖方法,其特征为:各个抽奖人和管理者首先公开a0,a1,a2,…,an 的一个用零知识证明方法产生的数值b0,b1,b2,…,bn,公开完成后再提交a0,a1,a2,…,an 。
4.如权利要求3所述的公开抽奖方法,其特征为:采用两种方法确定bi:(1)采用安全的hash函数,b= hash(a),(2)设定一个数c,令b=hash(c‖a)的方式。
5.如权利要求3-4所述的公开抽奖方法,其特征为:提交a和b时,附上用提交者的私钥签名的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810110720.1A CN108269099A (zh) | 2018-02-05 | 2018-02-05 | 一种去中心化的抽奖方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810110720.1A CN108269099A (zh) | 2018-02-05 | 2018-02-05 | 一种去中心化的抽奖方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108269099A true CN108269099A (zh) | 2018-07-10 |
Family
ID=62773626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810110720.1A Withdrawn CN108269099A (zh) | 2018-02-05 | 2018-02-05 | 一种去中心化的抽奖方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108269099A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110012001A (zh) * | 2019-03-29 | 2019-07-12 | 北京金山安全软件有限公司 | 资源分配方法及装置 |
CN110135909A (zh) * | 2019-05-15 | 2019-08-16 | 山东工商学院 | 基于零知识证明的数据处理方法、系统、设备及存储介质 |
CN110309670A (zh) * | 2019-06-18 | 2019-10-08 | 阿里巴巴集团控股有限公司 | 一种抽奖后台服务方法、系统及设备 |
CN110557403A (zh) * | 2019-09-26 | 2019-12-10 | 腾讯科技(深圳)有限公司 | 基于区块链的资源分配方法、装置、存储介质及节点设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105321249A (zh) * | 2015-10-14 | 2016-02-10 | 贵阳朗玛信息技术股份有限公司 | 一种抽奖方法及装置 |
CN106127950A (zh) * | 2016-08-11 | 2016-11-16 | 北京君汇港沣科技发展有限公司 | 售货终端在线抽奖方法、装置及系统 |
CN106296267A (zh) * | 2016-07-27 | 2017-01-04 | 宁波圆形网络科技有限公司 | 一种众筹商品抽奖系统以及方法 |
CN106327225A (zh) * | 2015-06-18 | 2017-01-11 | 天脉聚源(北京)科技有限公司 | 一种互联网抽奖方法和系统 |
CN106875322A (zh) * | 2016-12-21 | 2017-06-20 | 乐视控股(北京)有限公司 | 一种网络抽奖方法及装置 |
CN106934908A (zh) * | 2017-03-17 | 2017-07-07 | 福建中金在线信息科技有限公司 | 一种抽奖方法和装置 |
CN107341695A (zh) * | 2017-07-12 | 2017-11-10 | 重庆浩品峰电子商务有限公司 | 抽奖方法以及装置 |
-
2018
- 2018-02-05 CN CN201810110720.1A patent/CN108269099A/zh not_active Withdrawn
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106327225A (zh) * | 2015-06-18 | 2017-01-11 | 天脉聚源(北京)科技有限公司 | 一种互联网抽奖方法和系统 |
CN105321249A (zh) * | 2015-10-14 | 2016-02-10 | 贵阳朗玛信息技术股份有限公司 | 一种抽奖方法及装置 |
CN106296267A (zh) * | 2016-07-27 | 2017-01-04 | 宁波圆形网络科技有限公司 | 一种众筹商品抽奖系统以及方法 |
CN106127950A (zh) * | 2016-08-11 | 2016-11-16 | 北京君汇港沣科技发展有限公司 | 售货终端在线抽奖方法、装置及系统 |
CN106875322A (zh) * | 2016-12-21 | 2017-06-20 | 乐视控股(北京)有限公司 | 一种网络抽奖方法及装置 |
CN106934908A (zh) * | 2017-03-17 | 2017-07-07 | 福建中金在线信息科技有限公司 | 一种抽奖方法和装置 |
CN107341695A (zh) * | 2017-07-12 | 2017-11-10 | 重庆浩品峰电子商务有限公司 | 抽奖方法以及装置 |
Non-Patent Citations (1)
Title |
---|
LEANCLOUD: "Rollup:去中心化随机抽奖程序", 《SEGMENTFAULT:HTTPS://SEGMENTFAULT.COM/A/1190000008412624》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110012001A (zh) * | 2019-03-29 | 2019-07-12 | 北京金山安全软件有限公司 | 资源分配方法及装置 |
CN110012001B (zh) * | 2019-03-29 | 2021-09-07 | 北京乐蜜科技有限责任公司 | 资源分配方法及装置 |
CN110135909A (zh) * | 2019-05-15 | 2019-08-16 | 山东工商学院 | 基于零知识证明的数据处理方法、系统、设备及存储介质 |
CN110309670A (zh) * | 2019-06-18 | 2019-10-08 | 阿里巴巴集团控股有限公司 | 一种抽奖后台服务方法、系统及设备 |
CN110309670B (zh) * | 2019-06-18 | 2023-06-20 | 创新先进技术有限公司 | 一种抽奖后台服务方法、系统及设备 |
CN110557403A (zh) * | 2019-09-26 | 2019-12-10 | 腾讯科技(深圳)有限公司 | 基于区块链的资源分配方法、装置、存储介质及节点设备 |
CN110557403B (zh) * | 2019-09-26 | 2022-05-31 | 腾讯科技(深圳)有限公司 | 基于区块链的资源分配方法、装置、存储介质及节点设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108269099A (zh) | 一种去中心化的抽奖方法 | |
US11233773B2 (en) | Trusted communications between untrusting parties | |
US6962530B2 (en) | Authentication in a secure computerized gaming system | |
US20170161991A1 (en) | System and method for public verification of a gambling website or gaming event | |
JP2022523643A (ja) | ブロックチェーンスマートコントラクトにおいて乱数を生成する方法 | |
US20080009337A1 (en) | Self-authenticating file system in an embedded gaming device | |
WO2018104728A1 (en) | Random number generation | |
US20230023060A1 (en) | Provably fair games using a blockchain | |
WO2020001368A1 (zh) | 一种竞猜游戏处理方法及系统 | |
KR20220122994A (ko) | 블록체인을 이용한 증명 가능하게 공정한 게임들 | |
WO2020102456A1 (en) | Gambling systems and methods based on blockchain technology | |
Back et al. | Note on fair coin toss via bitcoin | |
Jia et al. | Delottery: a novel decentralized lottery system based on blockchain technology | |
US20030104859A1 (en) | Random number generator security systems | |
Kushilevitz et al. | Fair e-lotteries and e-casinos | |
CN105763572B (zh) | 一种基于公钥签名的数字型彩票销售、开奖及兑奖方法 | |
US20140187303A1 (en) | Methods for Enhancing Payouts and Play in Games of Chance | |
KR102262047B1 (ko) | 블록체인을 기반으로 한 경품 추첨 이벤트 관리 시스템 및 방법 | |
US20150235504A1 (en) | Method for operating a gaming system | |
US10997827B2 (en) | Distributed and deterministic random number generation for lottery drawings | |
US20190057572A1 (en) | Method of selecting a contest winner | |
JP2004534580A5 (zh) | ||
AU2014100862A4 (en) | A method for operating a gaming system | |
Alleman | Randomness and Games on Ethereum | |
EP1563881A1 (en) | Method of obtaining an impartial result of a game via a communication network, and related protocols and programs |
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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20180710 |