CN114170722A - 一种基于链上随机数的选房摇号方法 - Google Patents
一种基于链上随机数的选房摇号方法 Download PDFInfo
- Publication number
- CN114170722A CN114170722A CN202111525129.0A CN202111525129A CN114170722A CN 114170722 A CN114170722 A CN 114170722A CN 202111525129 A CN202111525129 A CN 202111525129A CN 114170722 A CN114170722 A CN 114170722A
- Authority
- CN
- China
- Prior art keywords
- house
- chain
- block
- random number
- method based
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000012797 qualification Methods 0.000 claims abstract description 5
- 238000012795 verification Methods 0.000 claims abstract description 4
- 230000000977 initiatory effect Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 6
- 230000007547 defect Effects 0.000 abstract description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME 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
- G07C15/00—Generating random numbers; Lottery apparatus
- G07C15/006—Generating random numbers; Lottery apparatus electronically
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及选房摇号,具体涉及一种基于链上随机数的选房摇号方法,开发商公示房源信息,将房源信息进行链上公示,购房者登记购房信息,开发商对购房者核实验证资格,将购房信息进行链上公示,区块链为每个购房者生成唯一ID,并通过智能合约为每个ID生成对应有序随机数,公证处进行公证验证,并按顺序摇号选出中签的购房者,中签购房者按顺序选房,开发商锁定房源,将选房信息进行链上公示;本发明提供的技术方案能够有效克服现有技术所存在的无法在保证随机数不可预测性的前提下,有效提高随机数生成效率的缺陷。
Description
技术领域
本发明涉及选房摇号,具体涉及一种基于链上随机数的选房摇号方法。
背景技术
随着中国城市化的快速发展,一些大城市中人口和资源的不对等性越来越强,导致很多资源需通过摇号的方式进行分配,包括车牌摇号、学区入学许可、买房选房资格等。
目前,摇号方案主要包括主办方通过自己设计的线上程序进行摇号,以及线下摇号。但是,这两种摇号方式均无法避免内部操控,包括程序被内部人员控制,摇号号码已经被内定等,导致摇号手段失去公信力。
线下摇号需要耗费大量的人力物力成本,占用购房者时间,而且对购房者来说,传统的摇号过程是黑箱操作,难以对结果信服。而现有技术方案中基于区块链的线上摇号方法,一般需要多个区块链节点各自生成独立的随机数并进行组合,需要对区块链进行一定的技术改造,而且不适合节点数量较多的区块链,局限性很大。
链上生成随机数非常困难,如果算法不好的话,那么很有可能会导致该随机数被提前计算出来,或者被矿工所控制,影响随机数最终生成的可靠性,所以传统随机数的生成方法无法用在区块链上。如何在保证随机数不可预测性的前提下,尽可能提高随机数的生成效率,是在链上生成随机数的过程中需要研究的一个重要问题。
发明内容
(一)解决的技术问题
针对现有技术所存在的上述缺点,本发明提供了一种基于链上随机数的选房摇号方法,能够有效克服现有技术所存在的无法在保证随机数不可预测性的前提下,有效提高随机数生成效率的缺陷。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:
一种基于链上随机数的选房摇号方法,包括以下步骤:
S1、开发商公示房源信息,将房源信息进行链上公示;
S2、购房者登记购房信息,开发商对购房者核实验证资格,将购房信息进行链上公示;
S3、区块链为每个购房者生成唯一ID,并通过智能合约为每个ID生成对应有序随机数;
S4、公证处进行公证验证,并按顺序摇号选出中签的购房者。
优选地,S3中通过智能合约为每个ID生成对应有序随机数,包括:
S31、从当前区块的上一个区块起,连续取k个区块的哈希值,分别记为H1、H2、H3…Hk;
S32、对H1、H2、H3…Hk中每个为1的位进行计数操作,产生一个计数数组A,并对数组A进行二值化处理得到二进制数字R;
S33、对于目标随机数区间[0,N),将二进制数字R进行分割处理,每一部分的位数b为log2N;
S34、对处于区间[N,2b)的结果直接丢弃,顺延取下一组结果。
优选地,S31中从当前区块的上一个区块起,连续取k个区块的哈希值之前,包括:
当区块链上产生设定数量的区块时发起交易,当前交易所在区块为获取最终结果的终区块,调用合约接口,触发有序随机数生成流程。
优选地,所述当区块链上产生设定数量的区块时发起交易,包括:
进入区块链中的一个区块,记录当前所在区块的区块号为n1;
任意选取一个正奇数k,并规定可以获取最终结果的终区块号ne为区块号n1的k个区块之后;
等待区块链上连续产生k个区块,当区块链上产生第k+1个区块时发起交易。
优选地,所述触发有序随机数生成流程之后,包括:
合约判断终区块号ne与区块号n1的差值是否大于k,如果是则流程继续,否则流程结束。
优选地,S32中对数组A进行二值化处理得到二进制数字R,包括:
判断数组A中每个元素是否大于k/2,如果是则记为1,否则记为0,二值化处理后产生一个和哈希值位数相同的二进制数字R。
优选地,所述数组A的长度等于哈希值位数。
优选地,S4中按顺序摇号选出中签的购房者之后,包括:
中签购房者按顺序选房,开发商锁定房源,将选房信息进行链上公示。
(三)有益效果
与现有技术相比,本发明所提供的一种基于链上随机数的选房摇号方法,具有以下有益效果:
1)利用区块链的特性进行选房摇号,过程公开透明,结果公平公正,并且能够保证链上信息真实可靠;
2)基于链上生成有序随机数的方法,能够在保证随机数不可预测性的前提下,有效提高随机数生成效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种基于链上随机数的选房摇号方法,如图1所示,包括以下步骤:
S1、开发商公示房源信息,将房源信息进行链上公示;
S2、购房者登记购房信息,开发商对购房者核实验证资格,将购房信息进行链上公示;
S3、区块链为每个购房者生成唯一ID,并通过智能合约为每个ID生成对应有序随机数;
S4、公证处进行公证验证,并按顺序摇号选出中签的购房者;
S5、中签购房者按顺序选房,开发商锁定房源,将选房信息进行链上公示。
本申请技术方案中,还提供了一种链上生成有序随机数的方法,该方法能够在保证随机数不可预测性的前提下,有效提高随机数生成效率,具体步骤如下:
进入区块链中的一个区块,记录当前所在区块的区块号为n1;
任意选取一个正奇数k,并规定可以获取最终结果的终区块号ne为区块号n1的k个区块之后;
等待区块链上连续产生k个区块,当区块链上产生第k+1个区块时发起交易;
当前交易所在区块为获取最终结果的终区块,调用合约接口,触发有序随机数生成流程;
合约判断终区块号ne与区块号n1的差值是否大于k,如果是则流程继续,否则流程结束;
从当前区块的上一个区块起,连续取k个区块的哈希值,分别记为H1、H2、H3…Hk;
对H1、H2、H3…Hk中每个为1的位进行计数操作,产生一个计数数组A,数组A的长度等于哈希值位数;
判断数组A中每个元素是否大于k/2,如果是则记为1,否则记为0,二值化处理后产生一个和哈希值位数相同的二进制数字R;
对于目标随机数区间[0,N),将二进制数字R进行分割处理,每一部分的位数b为log2N;
对处于区间[N,2b)的结果直接丢弃,顺延取下一组结果。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不会使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种基于链上随机数的选房摇号方法,其特征在于:包括以下步骤:
S1、开发商公示房源信息,将房源信息进行链上公示;
S2、购房者登记购房信息,开发商对购房者核实验证资格,将购房信息进行链上公示;
S3、区块链为每个购房者生成唯一ID,并通过智能合约为每个ID生成对应有序随机数;
S4、公证处进行公证验证,并按顺序摇号选出中签的购房者。
2.根据权利要求1所述的基于链上随机数的选房摇号方法,其特征在于:S3中通过智能合约为每个ID生成对应有序随机数,包括:
S31、从当前区块的上一个区块起,连续取k个区块的哈希值,分别记为H1、H2、H3…Hk;
S32、对H1、H2、H3…Hk中每个为1的位进行计数操作,产生一个计数数组A,并对数组A进行二值化处理得到二进制数字R;
S33、对于目标随机数区间[0,N),将二进制数字R进行分割处理,每一部分的位数b为log2N;
S34、对处于区间[N,2b)的结果直接丢弃,顺延取下一组结果。
3.根据权利要求2所述的基于链上随机数的选房摇号方法,其特征在于:S31中从当前区块的上一个区块起,连续取k个区块的哈希值之前,包括:
当区块链上产生设定数量的区块时发起交易,当前交易所在区块为获取最终结果的终区块,调用合约接口,触发有序随机数生成流程。
4.根据权利要求3所述的基于链上随机数的选房摇号方法,其特征在于:所述当区块链上产生设定数量的区块时发起交易,包括:
进入区块链中的一个区块,记录当前所在区块的区块号为n1;
任意选取一个正奇数k,并规定可以获取最终结果的终区块号ne为区块号n1的k个区块之后;
等待区块链上连续产生k个区块,当区块链上产生第k+1个区块时发起交易。
5.根据权利要求4所述的基于链上随机数的选房摇号方法,其特征在于:所述触发有序随机数生成流程之后,包括:
合约判断终区块号ne与区块号n1的差值是否大于k,如果是则流程继续,否则流程结束。
6.根据权利要求2所述的基于链上随机数的选房摇号方法,其特征在于:S32中对数组A进行二值化处理得到二进制数字R,包括:
判断数组A中每个元素是否大于k/2,如果是则记为1,否则记为0,二值化处理后产生一个和哈希值位数相同的二进制数字R。
7.根据权利要求6所述的基于链上随机数的选房摇号方法,其特征在于:所述数组A的长度等于哈希值位数。
8.根据权利要求1所述的基于链上随机数的选房摇号方法,其特征在于:S4中按顺序摇号选出中签的购房者之后,包括:
中签购房者按顺序选房,开发商锁定房源,将选房信息进行链上公示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111525129.0A CN114170722A (zh) | 2021-12-14 | 2021-12-14 | 一种基于链上随机数的选房摇号方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111525129.0A CN114170722A (zh) | 2021-12-14 | 2021-12-14 | 一种基于链上随机数的选房摇号方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114170722A true CN114170722A (zh) | 2022-03-11 |
Family
ID=80486370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111525129.0A Pending CN114170722A (zh) | 2021-12-14 | 2021-12-14 | 一种基于链上随机数的选房摇号方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114170722A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109583892A (zh) * | 2018-11-21 | 2019-04-05 | 安徽高山科技有限公司 | 一种区块链中的随机数选取方法 |
CN109934583A (zh) * | 2019-03-04 | 2019-06-25 | 安徽高山科技有限公司 | 一种区块链中可信随机数序列的生成方法 |
CN111314069A (zh) * | 2020-02-13 | 2020-06-19 | 苏州同济区块链研究院有限公司 | 基于区块链的摇号系统、方法、电子设备及存储介质 |
CN111445265A (zh) * | 2020-02-28 | 2020-07-24 | 北京瑞卓喜创科技发展有限公司 | 一种基于区块链的购房方法和装置 |
CN111445355A (zh) * | 2019-11-26 | 2020-07-24 | 杭州亿房达科技有限公司 | 一种基于区块链智能合约的去中心化购房摇号方法 |
CN112925826A (zh) * | 2021-02-28 | 2021-06-08 | 金陵科技学院 | 基于区块链技术构建城市智能交通多维大数据平台 |
-
2021
- 2021-12-14 CN CN202111525129.0A patent/CN114170722A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109583892A (zh) * | 2018-11-21 | 2019-04-05 | 安徽高山科技有限公司 | 一种区块链中的随机数选取方法 |
CN109934583A (zh) * | 2019-03-04 | 2019-06-25 | 安徽高山科技有限公司 | 一种区块链中可信随机数序列的生成方法 |
CN111445355A (zh) * | 2019-11-26 | 2020-07-24 | 杭州亿房达科技有限公司 | 一种基于区块链智能合约的去中心化购房摇号方法 |
CN111314069A (zh) * | 2020-02-13 | 2020-06-19 | 苏州同济区块链研究院有限公司 | 基于区块链的摇号系统、方法、电子设备及存储介质 |
CN111445265A (zh) * | 2020-02-28 | 2020-07-24 | 北京瑞卓喜创科技发展有限公司 | 一种基于区块链的购房方法和装置 |
CN112925826A (zh) * | 2021-02-28 | 2021-06-08 | 金陵科技学院 | 基于区块链技术构建城市智能交通多维大数据平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Blockchain technology in the energy sector: From basic research to real world applications | |
CN108512652B (zh) | 基于时间证明的去中心化共识方法、系统及区块链系统 | |
CN108573438A (zh) | 一种基于区块链的用户电力自主交易系统 | |
CN108924130B (zh) | 一种区块数据的验证方法、装置、设备和存储介质 | |
CN108985772A (zh) | 一种区块链的验证方法、装置、设备及存储介质 | |
CN109615383A (zh) | 基于区块链的数据存证、获取方法和装置 | |
CN109542883A (zh) | 一种基于区块链的信息查重方法 | |
CN108804706A (zh) | 一种区块链数据处理方法、装置、设备及存储介质 | |
CN110046894A (zh) | 一种基于纠删码的分组可重构区块链建立方法 | |
CN108009918A (zh) | 区块链共识算法交易系统的记账方法及电子设备 | |
CN108305156A (zh) | 基于区块链的实时竞价方法、装置、设备和存储介质 | |
CN109493057A (zh) | 一种基于utxo模型的交易方法及装置 | |
Wang et al. | Blockchain-based dynamic energy management mode for distributed energy system with high penetration of renewable energy | |
CN109815289A (zh) | 用于区块链网络的区块生成方法、计算设备、存储介质 | |
CN109493041B (zh) | 基于区域场链的分布式记账方法与交易平台 | |
CN114971625A (zh) | 一种基于区块链技术的微网绿电交易系统及数据存储与结算方法 | |
CN108876405A (zh) | 产品溯源记录处理方法、装置及电子设备 | |
CN115358856A (zh) | 一种基于区块链的电力交易数据存储、溯源方法及系统 | |
CN114913013A (zh) | 一种基于区块链的租房交易系统及租房交易方法 | |
CN113902135A (zh) | 样本数据量联合扩充方法、装置、设备、系统及存储介质 | |
CN108564365B (zh) | 一种基于区块链的智能电网的交易方法及系统 | |
CN114170722A (zh) | 一种基于链上随机数的选房摇号方法 | |
CN111552738B (zh) | 基于物联网的区块链生态系统和区块链上链方法 | |
CN113283892A (zh) | 一种基于投票机制的PoSearch与PBFT融合共识算法 | |
CN110413697B (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 |