CN111884807A - 基于区块链的物品预约方法、装置、设备以及介质 - Google Patents
基于区块链的物品预约方法、装置、设备以及介质 Download PDFInfo
- Publication number
- CN111884807A CN111884807A CN202010670261.XA CN202010670261A CN111884807A CN 111884807 A CN111884807 A CN 111884807A CN 202010670261 A CN202010670261 A CN 202010670261A CN 111884807 A CN111884807 A CN 111884807A
- Authority
- CN
- China
- Prior art keywords
- reservation
- user
- block chain
- transaction data
- result
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Computer Security & Cryptography (AREA)
- Technology Law (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Marketing (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例提供了一种基于区块链的物品预约方法、装置、设备以及介质,该方法包括:预约设备将用户预约标识、可验证随机数以及证明数据封装成预约交易数据;预约设备将预约交易数据发送至区块链节点;区块链节点若根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件,则根据可验证随机数确定用户预约标识对应的抽签概率;区块链节点根据抽签概率确定与用户预约标识相关联的预约结果,将预约结果返回至预约设备;预约结果用于指示防控机构将与预约结果相匹配的防护物品配送给用户预约标识对应的目标用户。采用本申请实施例,可以提高物品预约的公平性及有效性。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种基于区块链的物品预约方法、装置、设备以及介质。
背景技术
随着信息技术的快速发展,用户足不出户就可以在互联网上进行日常业务的办理,如用户可以在互联网应用软件中进行口罩预约,无需出门排队,可以避免用户聚集。
在现有的口罩预约***中,用户可以预先在口罩预约***中填入个人信息做好预约准备工作,随后可以由权威机构在规定的时间,采用摇号软件对参与预约的用户进行摇号产生。然而,由于摇号软件由中心化机构管理,存在作弊、数据篡改等不公平行为,难以确保预约结果的有效性。
发明内容
本申请实施例提供一种基于区块链的物品预约方法、装置、设备以及介质,可以提高物品预约结果的公平性及有效性。
本申请实施例一方面提供了一种基于区块链的物品预约方法,包括:
预约设备将用户预约标识、可验证随机数以及证明数据封装成预约交易数据;可验证随机数和证明数据是根据用户预约标识和用户私钥所生成的,证明数据用于表征可验证随机数的正确性;
预约设备将预约交易数据发送至区块链节点;
区块链节点若根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件,则根据可验证随机数确定用户预约标识对应的抽签概率;
区块链节点根据抽签概率确定与用户预约标识相关联的预约结果,将预约结果返回至预约设备;预约结果用于指示防控机构将与预约结果相匹配的防护物品配送给用户预约标识对应的目标用户。
本申请实施例一方面提供了一种基于区块链的物品预约方法,包括:
预约设备将用户预约标识、可验证随机数以及证明数据封装成预约交易数据;可验证随机数和证明数据是根据用户预约标识和用户私钥所生成的,证明数据用于表征可验证随机数的正确性;
预约设备将预约交易数据发送至区块链节点,以使区块链节点在根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件时,根据抽签概率确定与用户预约标识相关联的预约结果;抽签概率是根据可验证随机数所确定的;
预约设备接收区块链节点返回的预约结果;预约结果用于指示防控机构将与预约结果相匹配的防护物品配送给用户预约标识对应的目标用户。
本申请实施例一方面提供了一种基于区块链的物品预约方法,包括:
区块链节点接收预约设备发送的预约交易数据;预约交易数据包括用户预约标识、可验证随机数以及证明证据,可验证随机数和证明数据是根据用户预约标识和用户私钥所生成的,证明数据用于表征可验证随机数的正确性;
区块链节点若根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件,则根据可验证随机数,确定用户预约标识对应的抽签概率;
区块链节点根据抽签概率确定与用户预约标识相关联的预约结果,将预约结果返回至预约设备;预约结果用于指示防控机构将与预约结果相匹配的防护物品配送给用户预约标识对应的目标用户。
本申请实施例一方面提供了一种基于区块链的物品预约装置,包括:
第一封装模块,用于将用户预约标识、可验证随机数以及证明数据封装成预约交易数据;可验证随机数和证明数据是根据用户预约标识和用户私钥所生成的,证明数据用于表征可验证随机数的正确性;
第一发送模块,用于将预约交易数据发送至区块链节点;
概率确定模块,用于若根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件,则根据可验证随机数确定用户预约标识对应的抽签概率;
结果确定模块,用于根据抽签概率确定与用户预约标识相关联的预约结果,将预约结果返回至预约设备;预约结果用于指示防控机构将与预约结果相匹配的防护物品配送给用户预约标识对应的目标用户。
其中,该装置还包括:
第二封装模块,用于获取物品预约智能合约,将物品预约智能合约、平台证书哈希以及平台公钥封装成合约交易数据;物品预约智能合约包括区块链网络中通过预约审核的用户所对应的物品预约规则,平台证书哈希是指区块链网络中所存储的平台证书对应的哈希值,平台公钥用于区块链节点对合约交易数据进行验签;
第二发送模块,用于将合约交易数据发送至区块链节点;
合约部署模块,用于若根据平台证书哈希和平台公钥检测到合约交易数据满足合法性条件,则在区块链网络中对物品预约智能合约进行部署,得到物品预约智能合约对应的合约地址;
预约标识确定模块,用于接收区块链节点返回的合约地址,根据合约地址、审核规则信息以及用户信息,确定用户预约标识;审核规则信息是由防控机构所提供的用于审核用户信息的规则信息。
其中,预约标识确定模块包括:
规则封装单元,用于获取防控机构发布的审核规则信息,将审核规则信息、合约地址以及机构信息封装成规则交易数据;机构信息包括防控机构对应的机构标识信息、机构证书哈希以及机构公钥,机构证书哈希是指区块链网络中所存储的机构证书对应的哈希值,机构公钥用于区块链节点对规则交易数据进行验签;
规则发送单元,用于将规则交易数据发送至区块链节点,以使区块链节点在根据合约地址、机构证书哈希以及机构公钥检测到规则交易数据满足合法性条件时,在区块链网络中发布审核规则信息,得到审核规则信息对应的规则摘要哈希;
标识确定单元,用于接收区块链节点返回的规则摘要哈希,根据合约地址、规则摘要哈希以及用户信息,确定用户预约标识。
其中,标识确定单元包括:
用户信息发送子单元,用于获取与目标用户相关联的用户信息,将用户信息、规则摘要哈希以及合约地址封装成用户交易数据;用户信息包括用户标识信息、用户证书哈希、用户公钥以及用户基本信息,用户证书哈希是指区块链网络中所存储的用户证书对应的哈希值;
用户信息发送子单元,用于将用户交易数据发送至区块链节点,以使区块链节点在根据规则摘要哈希、合约地址、用户证书哈希以及用户公钥检测到用户交易数据满足合法性条件时,生成与目标用户相匹配的用户预约标识;
预约标识接收子单元,用于接收区块链节点返回的用户预约标识,将用户预约标识、规则摘要哈希以及合约地址关联存储在平台数据库中。
其中,该装置还包括:
证书申请模块,用于获取平台身份信息和平台资质信息,在本地生成平台密钥对,根据平台密钥对中的平台私钥对平台身份信息和平台资质信息进行签名,得到证书申请信息;
请求发送模块,用于向证书授权节点发送携带证书申请信息的证书申请请求,以使证书授权节点根据证书申请信息为预约平台颁发平台证书,并将平台证书进行上链处理以获取平台证书哈希;
证书接收模块,用于接收证书授权节点返回的平台证书和平台证书哈希。
其中,该装置还包括:
验签模块,用于根据用户公钥对用户交易数据进行验签,得到用户交易数据对应的验签结果;
审核模块,用于若在区块链网络中查询到与规则摘要哈希相匹配的审核规则信息,则根据审核规则信息确定用户基本信息的审核结果;
第一交易验证模块,用于若检测到区块链网络中包含合约地址和用户证书哈希,且验签结果和审核结果均为通过结果,则确定用户交易数据满足合法性条件。
其中,该装置还包括:
遍历模块,用于根据哈希运算生成证明数据对应的待验证结果,根据用户预约标识,对区块链网络中的区块链数据进行遍历查询;
第二交易验证模块,用于若检测到待验证结果与可验证随机数相同,且区块链数据包含用户预约标识,则确定预约交易数据满足合法性条件;
第二交易验证模块,还用于若检测到待验证结果与可验证随机数不相同,或者区块链数据不包含用户预约标识,则确定预约交易数据不满足合法性条件。
其中,概率确定模块包括:
合约获取单元,用于若根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件,则获取与用户预约标识相关联的物品预约智能合约;
哈希运算单元,用于根据物品预约智能合约对可验证随机数进行哈希运算,得到可验证随机数对应的候选哈希值;
概率计算单元,用于将候选哈希值和抽签参数之间的比值确定为候选随机数,根据候选随机数和权益参数,确定用户预约标识对应的抽签概率。
其中,结果确定模块包括:
概率获取单元,用于获取区块高度范围内至少两个预约标识分别对应的抽签概率;至少两个预约标识包括用户预约标识;
排序单元,用于根据至少两个预约标识分别对应的抽签概率,对至少两个预约标识进行排序,得到标识排序列表;
结果上链单元,用于根据标识排序列表确定与用户预约标识相关联的预约结果,将预约结果和至少两个预约标识分别对应的抽签概率进行上链处理。
其中,结果上链单元包括:
抽签结果确定子单元,用于根据标识排序列表确定至少两个预约标识分别对应的抽签结果;
分配信息获取子单元,用于获取防控机构所提供的防护物品数量,从用户预约标识相关联的物品预约智能合约中获取物品分配信息;
单位数量确定子单元,用于根据物品分配信息和抽签结果,对防护物品数量进行分配,得到用户预约标识对应的单位防护物品数量;
预约结果确定子单元,用于将用户预约标识对应的抽签结果和单位防护物品数量,确定为预约结果。
其中,该装置还包括:
验证请求接收模块,用于接收到预约设备发送的针对目标用户的结果验证请求时,根据结果验证请求中所携带的用户预约标识,从区块链网络的区块链数据中,获取用户预约标识对应的预约交易数据和抽签概率;
验证结果生成模块,用于区块链节点根据预约交易数据和抽签概率,生成目标用户对应的验证结果,将验证结果返回至预约设备。
本申请实施例一方面提供了一种基于区块链的物品预约装置,包括:
预约数据封装模块,用于将用户预约标识、可验证随机数以及证明数据封装成预约交易数据;可验证随机数和证明数据是根据用户预约标识和用户私钥所生成的,证明数据用于表征可验证随机数的正确性;
预约数据发送模块,用于将预约交易数据发送至区块链节点,以使区块链节点在根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件时,根据抽签概率确定与用户预约标识相关联的预约结果;抽签概率是根据可验证随机数所确定的;
预约结果接收模块,用于接收区块链节点返回的预约结果;预约结果用于指示防控机构将与预约结果相匹配的防护物品配送给用户预约标识对应的目标用户。
本申请实施例一方面提供了一种基于区块链的物品预约装置,包括:
预约数据接收模块,用于接收预约设备发送的预约交易数据;预约交易数据包括用户预约标识、可验证随机数以及证明证据,可验证随机数和证明数据是根据用户预约标识和用户私钥所生成的,证明数据用于表征可验证随机数的正确性;
抽签概率确定模块,用于若根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件,则根据可验证随机数,确定用户预约标识对应的抽签概率;
预约结果确定模块,用于根据抽签概率确定与用户预约标识相关联的预约结果,将预约结果返回至预约设备;预约结果用于指示防控机构将与预约结果相匹配的防护物品配送给用户预约标识对应的目标用户。
本申请实施例一方面提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行本申请实施例中一方面中方法的步骤。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被处理器执行时,执行如本申请实施例中一方面中方法的步骤。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面的各种可选方式中提供的方法。
本申请实施例可以通过预约设备将根据用户预约标识和用户私钥所生成的可验证随机数和证明数据,连同该用户预约标识封装成预约交易数据,并将预约交易数据发送至区块链节点;区块链节点可以基于用户预约标识和证明数据验证预约交易数据的合法性,当预约交易数据合法时,根据可验证随机数确定用户预约标识对应的抽签概率,进而根据抽签概率确定与用户预约标识相关联的预约结果,并将该预约结果返回至预约设备,该预约结果可以用于指示防控机构将与预约结果相匹配的防护物品配送给所述用户预约标识对应的目标用户。由于区块链的去中心化和不可篡改性,使得预约设备中的防护物品预约过程对于预约用户都是公开透明的,且在预约设备中预约防护物品的预约过程及预约结果均可以记录在区块链中,提高了物品预约结果的可信度、公平性及有效性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种***架构图;
图2是本申请实施例提供的一种基于区块链的物品预约场景示意图;
图3是本申请实施例提供的一种基于区块链的物品预约方法的流程示意图;
图4是本申请实施例提供的一种部署物品预约智能合约的示意图;
图5是本申请实施例提供的一种确定用户预约结果的示意图;
图6是本申请实施例提供的一种验证预约结果的示意图;
图7是本申请实施例提供的一种基于区块链的物品预约装置的结构示意图;
图8是本申请实施例提供的一种基于区块链的物品预约装置的结构示意图;
图9是本申请实施例提供的一种基于区块链的物品预约装置的结构示意图;
图10是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
区块链(Blockchain)是一种分布式数据存储、点对点传输(P2P传输)、共识机制、加密算法等计算机技术的新型应用模式。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
智能合约可以理解为运行在分布式账本(即区块链)上预置规则、具有状态、条件响应的,可封装、验证、执行分布式节点复杂行为,完成信息交换、价值转移和资产管理的计算机程序。基于区块链的分布式架构、共识算法等,智能合约允许相互不信任的用户在不需要任何第三方可信中介或权威的情况下完成交易,同时,数字形式的智能合约可灵活嵌入各种有形或无形的资产、交易和数据中,实现主动或被动的资产、信息管理与控制,逐步构建可编程的智能资产、***等。
请参见图1,图1是本申请实施例提供的一种***架构图。如图1所示,该***架构可以包括预约设备10a、用户终端10b、证书授权节点10c以及区块链网络。其中,预约设备10a可以是指用于预约防护物品的设备,用户终端10b可以是指需要在预约设备10a中预约防护物品的用户所对应的终端设备,证书授权节点10c可以是指证书授权机构(Certificate Authority,CA),证书授权机构作为电子商务交易中受信任的第三方,可以承担公钥体系中公钥合法性检验的责任,该证书授权节点10c可以对预约设备10a和用户(即需要预约防护物品的用户)进行实名认证,为实名认证后的预约设备10a颁发平台证书,并将该平台证书打包成交易上传至区块链网络;同样,该证书授权节点10c可以为实名认证后的用户颁发用户证书,并将用户证书打包成交易上传至区块链网络,以使区块链网络中的区块链节点将平台证书和用户证书均写入区块链中。
用户可以在预约设备10a中填写用户信息,并由该预约设备10a将用户信息上传至区块链网络,由区块链网络中的区块链节点对该用户信息进行审核,并将审核通过的用户信息写入区块链中,同时为审核通过的用户生成一个用户预约标识,区块链节点可以将用户预约标识返回至预约设备10a,该预约设备10a可以将用户预约标识告知用户。用户所对应的用户终端10b可以将用户预约标识和用户自己的私钥作为输入,运行可验证随机函数(Verifiable Random Function,VRF)生成可验证随机数和证明数据,用户终端10b可以将用户预约标识、可验证随机数以及证明数据封装成交易数据上传至区块链网络,由区块链节点对交易数据中所包含的可验证随机数进行抽签,得到与用户预约标识相关联的预约结果,并将预约结果返回给用户终端10b和权威机构(如防控机构),权威机构可以将与预约结果相匹配的防护物品配送给该用户。可选的,用户终端10b可以通过渔业设备10a将用户预约标识、可验证随机数以及证明数据封装成交易数据上传至区块链网络。
其中,预约设备10a可以为终端设备,或者是服务器,或者是计算机设备中的一个计算机程序(包括程序代码),其中,终端设备可以包括智能手机、平板电脑、笔记本电脑、台式计算机、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备(例如智能手表、智能手环等)等,但并不局限于此。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云计算服务的云服务器。终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
其中,云计算(cloud computing)指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算是网格计算(Grid Computing)、分布式计算(DistributedComputing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network StorageTechnologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。
随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。
请参见图2,图2是本申请实施例提供的一种基于区块链的物品预约场景示意图。如图2所示,用户1和用户2在参与防护物品预约摇号之前,预约设备20c可以将用户1所填写的用户信息和用户2所填写的用户信息分别上传至区块链网络,在用户1和用户2所对应的用户信息都通过审核时,区块链网络可以向预约设备20c返回针对用户1的预约标识1,以及针对用户2的预约标识2,进而预约设备20c可以将预约标识1告知用户1,将预约标识2告知用户2。换言之,所有想要参与防护物品预约摇号的用户,均需要预先在预约设备20c中填写用户信息,并由区块链网络对每个用户分别对应的用户信息进行审核,只有审核通过的用户才会具有预约标识,预约标识可以用于后续用户参与防护物品预约摇号。
用户终端20a(即用户1所对应的本地终端)可以将预约标识1和用户1自己的私钥1作为可验证随机函数的输入,通过VRF_Hash(私钥1,预约标识1)得到用户1对应的随机数1,通过VRF_Proof(私钥1,预约标识1)得到用户1对应的证明1,并将随机数1、证明1以及预约标识1发送至预约设备20c。同理,用户终端20b(即用户2所对应的本地终端)可以将预约标识2和用户2自己的私钥2作为可验证随机函数的输入,通过VRF_Hash(私钥2,预约标识2)得到用户2对应的随机数2,通过VRF_Proof(私钥2,预约标识2)得到用户2对应的证明2,并将随机数2、证明2以及预约标识2发送至预约设备20c。其中,VRF_Hash()用于表示可验证随机函数中用于生成随机数的函数,VRF_Proof()用于表示可验证随机函数中用于生成证明的函数;用户1和用户2在预约设备20c中进行实名认证后,预约设备20c可以在本地分别为用户1和用户2生成非对称密钥对,用户1对应的非对称密钥对包括公钥1和私钥1,用户2对应的非对称密钥对包括公钥2和私钥2,预约设备20c可以将用户1对应的非对称密钥对返回至用户终端20a,将用户2对应的非对称密钥对返回至用户终端20b;可选的,各用户所对应的非对称密钥对可以由对应用户终端所生成,如用户终端20a可以在本地为用户1生成非对称密钥对(包括公钥1和私钥1),用户终端20b可以在本地为用户2生成非对称密钥对(包括公钥2和私钥2),这里不做具体限定。
预约设备20c接收到用户终端20a发送的随机数1、证明1以及预约标识1后,可以将随机数1、证明1以及预约标识1打包成预约交易数据20d,并使用私钥1对预约交易数据20d进行数字签名,得到携带数字签名1的预约交易数据20d,预约设备20c将携带数字签名1的预约交易数据20d发送给区块链网络中的区块链节点20f。同理,预约设备20c接收到用户终端20b发送的随机数2、证明2以及预约标识2后,可以将随机数2、证明2以及预约标识2打包成预约交易数据20e,并使用私钥2对预约交易数据20e进行数字签名,得到携带数字签名2的预约交易数据20e,预约设备20c将携带数字签名2的预约交易数据20e发送给区块链网络中的区块链节点20f。
区块链节点20f在接收到预约交易数据20d之后,可以根据用户1对应的公钥1,验证预约交易数据20d中所携带的数字签名1的合法性,当数字签名1不合法时,区块链节点20f可以确定预约交易数据20d为无效数据,可以向预约设备20c返回错误结果;当数字签名1合法时,可以继续根据预约交易数据20d中的证明1校验随机数1的正确性,若随机数1校验成功,可以保存该预约交易数据20d,当检测到预约标识1为有效标识,即区块链中已经存储有该预约标识1时,可以将随机数1作为抽签算法的输入,通过抽签算法进行抽签,得到用户1对应的抽签概率为a1。同理,区块链节点20f在接收到预约交易数据20e之后,同样可以根据用户2对应的公钥2,验证预约交易数据20e中所携带的数字签名2的合法性,当数据签名2不合法时,可以继续根据预约交易数据20e中的证明2校验随机数2的正确性,若随机数2校验成功,可以保存该预约交易数据20e,当检测到区块链中已经存储有预约标识2时,可以将随机数2作为抽签算法的输入,通过抽签算法进行抽签,得到用户2对应的抽签概率为a2。换言之,区块链节点20f在接收到与用户向关联的预约交易数据时,可以对所接收到预约交易数据进行合法性验证,预约交易数据通过合法性验证之后,进而将预约交易数据中所包含的随机数作为抽签算法的输入,通过抽签算法得到每个用户分别对应的抽签概率;区块链节点20f可以将每个用户分别对应的抽签概率添加在抽签概率集合20g中,并将抽签概率集合20g中所包含的所有抽签概率打包成新区块20h,在新区块20h达成共识后,可以将新区块20h写入区块链20i中。
区块链节点20f可以将抽签概率集合20g中所包含的抽签概率,按照从大到小的顺序进行排序,根据物品预约智能合约中的物品分配信息、防护物品总数量以及抽签概率排序结果,确定每个用户分别对应的预约结果,如用户1对应的预约结果为:成功,可以发放防护物品(如5个防护物品等),用户2对应的预约结果为:失败,不能发放防护物品,此时用户1对应的抽签概率a1大于用户2对应的抽签概率a2。在防护物品的预约摇号场景中,通过区块链中的可验证随机函数和抽签算法实现防护物品预约,可以提高物品预约的公平性和有效性。
请参见图3,图3是本申请实施例提供的一种基于区块链的物品预约方法的流程示意图。如图3所示,该基于区块链的物品预约方法可以包括以下步骤:
步骤S101,将用户预约标识、可验证随机数以及证明数据封装成预约交易数据;可验证随机数和证明数据是根据用户预约标识和用户私钥所生成的。
具体的,预约设备(如上述图2所对应实施例中的预约设备20c)可以获取用户所对应用户终端发送的用户预约标识(如上述图2所对应实施例中的预约标识1)、可验证随机数(如上述图2所对应实施例中的随机数1)以及证明数据(如上述图2所对应实施例中的证明1),并将用户预约标识、可验证随机数以及证明数据封装成预约交易数据(如上述图2所对应实施例中的预约交易数据20d),可以基于该用户对应的用户私钥对预约交易数据进行数字签名。其中,用户预约标识用于表征用户已经通过了区块链网络中的信息审核,可验证随机数和证明数据均可以由用户终端根据用户私钥和用户预约标识,通过可验证随机函数进行计算得到,其中,可验证随机数和证明数据的具体计算方式可以参见上述图2所对应实施例中对随机数1和证明1的描述,这里不再进行赘述。
其中,可以理解的是,在预约设备将用户预约标识、可验证随机数以及证明数据封装成预约交易数据上传至区块链网络之前,预约设备还需要完成防护物品预约摇号前的准备工作,如预约设备向证书授权节点申请平台证书以进行实名认证,在区块链网络中部署物品预约智能合约,为防控机构向证书授权节点申请机构证书以进行实名认证,将防控机构发布的审核规则信息上传至区块链,为用户向证书授权节点申请用户证书以进行实名认证,将实名认证用户的用户信息上传至区块链网络进行身份审核以获取用户预约标识(即获取参与防护物品预约摇号的权限),等等。
下述对防护物品预约摇号的准备工作进行详细说明。预约设备可以在本地生成非对称密钥对(可以包括平台公钥和平台私钥),该非对称密钥对中的平台私钥可以由该预约设备自己管理,该平台私钥可以用于生成该预约设备的数字签名;该非对称密钥对中的平台公钥可以通知给证书授权节点,该平台公钥可以用于证书授权节点对预约设备所发送的消息数据进行验签。预约设备可以获取平台身份信息和平台资质信息,使用平台私钥对平台身份信息和平台资质信息进行签名,得到证书申请信息,进而可以向证书授权节点发送携带证书申请信息的证书申请请求,以使证书授权节点根据证书申请信息为预约平台颁发平台证书,并将平台证书进行上链处理以获取平台证书哈希,预约设备接收证书授权节点返回的平台证书和平台证书哈希。
其中,平台身份信息是指用于表征预约设备身份的信息,平台资质信息是指防控机构认可了预约设备的平台服务之后,为预约设备所颁布的平台服务资质信息,证书授权节点可以是指证书授权机构。预约设备通过平台私钥对平台身份信息和平台资质信息进行数字签名之后,可以将平台公钥、平台身份信息、平台资质信息以及数字签名发送至证书授权节点以申请平台证书;证书授权节点通过平台公钥对所接收的数字签名进行合法性验证,当预约设备的数字签名合法,且平台身份信息和平台资质信息判定有效时,证书授权节点可以对预约设备进行实名认证,将平台公钥和预约设备的身份信息进行绑定后并为其签名,为预约设备生成平台证书,该平台证书实质上是证书授权节点签发的对预约设备的平台公钥的认证,该平台证书的内容可以包括:证书授权节点的信息,预约设备的身份信息,平台公钥,证书序列号(每个证书的序列号具有唯一性),有效期等。证书授权节点可以将平台证书打包成证书交易数据,并使用自己的私钥对证书交易数据进行数字签名后上传至区块链网络,区块链网络中的区块链节点在接收到该证书交易数据之后,可以根据证书授权节点的公钥对证书交易数据所携带的数字签名进行合法性校验,若证书授权节点的数字签名合法性校验通过,可以调用虚拟机(以太坊虚拟机,可以用于解释执行智能合约中的字节码)执行该证书交易数据,在证书交易数据的执行过程中,可以调用智能合约(此处的智能合约是指用于存储数字证书的合约)开启证书存储,对证书交易数据中所包含的平台证书进行摘要哈希计算,即使用哈希算法对平台证书进行哈希运算,得到平台证书对应的平台证书哈希,根据平台证书哈希进行查询,若区块链网络中已经存在该平台证书哈希,则表明本次证书交易数据为无效数据,输出交易执行失败结果;若区块链网络中还未存储有该平台证书哈希,则可以将该平台证书哈希作为关键字(key),将平台证书作为值(Value)写入上述智能合约中,当添加了平台证书和平台证书哈希的智能合约在区块链网络中达成共识后,可以将添加了平台证书和平台证书哈希的智能合约写入区块链中;区块链节点可以将平台证书的上链结果(包括上链成功结果和上链失败结果,当添加了平台证书和平台证书哈希的智能合约达成共识并写入区块链时,该平台证书的上链结果为上链成功结果;当添加了平台证书和平台证书哈希的智能合约未达成共识时,该平台证书的上链结果为上链失败结果)和平台证书哈希返回至证书授权节点,进而该证书授权节点可以将平台证书和平台证书哈希返回至预约设备,预约设备可以将平台证书和平台证书哈希存储在平台数据库中。其中,哈希算法可以将数据或者消息压缩成摘要,不仅可以将数据的格式固定下来,还可以使数据量变小,哈希算法可以包括但不限于SHA-1、SHA-224、SHA-256、SHA-384以及SHA-512。以SHA-256算法为例,对于任意大小的数据,SHA-256算法均可以产生一个256比特的哈希值,对于不同的数据可以产生不同的哈希值。
同理,防控机构(也可以称为权威机构)可以在预约设备中输入机构身份信息进行实名认证,当防控机构通过预约设备的实名认证后,预约设备可以为防控机构生成非对称密钥对(可以包括机构公钥和机构私钥),进而可以通过机构私钥对机构身份信息进行数字签名,随后将机构公钥、机构身份信息以及防控机构的数字签名发送至证书授权节点以申请机构证书;证书授权节点在接收到机构公钥、机构身份信息以及防控机构的数字签名之后,可以为防控机构进行实名认证,为实名认证后的防控机构颁布机构证书,证书授权节点可以将机构证书打包成交易数据上传至区块链网络,以使区块链网络中的区块链节点向证书授权节点返回机构证书哈希,证书授权节点可以将机构证书和机构证书哈希返回至预约设备;预约设备可以将证书授权节点返回的机构证书和机构证书哈希存储在平台数据库中,当然,预约设备还可以将机构证书和机构证书哈希通知给防控机构。用户在预约设备中通过实名认证之后,预约设备同样可以为该用户生成非对称密钥对(包括用户私钥和用户公钥),通过用户私钥对用户身份信息进行数字签名,随后将用户公钥、用户身份信息以及该用户的数字签名发送至证书授权节点以申请用户证书,进而可以从证书授权节点处获取该用户对应的用户证书和用户证书哈希;预约设备可以将证书授权节点返回的用户证书和用户证书哈希存储在平台数据库中,当然,预约设备还可以将用户证书和用户证书哈希通知给用户。其中,证书授权节点向预约设备返回机构证书和机构证书哈希的过程,以及向预约设备返回用户证书和用户证书哈希的过程可以参见上述对平台证书和平台证书哈希获取过程的描述,这里不再进行赘述。
可选的,用户可以直接向证书授权节点申请用户证书,以从证书授权节点处获取用户证书和用户证书哈希,防控机构也可以直接向证书授权节点申请机构证书,以从证书授权节点处获取机构证书和机构证书哈希,这里不做具体限定,另外,本申请实施例对预约设备、用户以及防控机构向证书授权节点申请证书的时间顺序不做具体限定。
预约设备获得平台证书和平台证书哈希之后,可以获取物品预约智能合约,并将物品预约智能合约、平台证书哈希以及平台公钥封装成合约交易数据,其中,该物品预约智能合约包括区块链网络中通过预约审核的用户所对应的物品预约规则(可以包括预约设备中的预约流程、预约条件等),即预约设备和防控机构针对物品预约规则达成一致意见后由开发人员编写的计算机程序代码,该计算机程序代码可以包括与防护物品预约摇号相关联的业务逻辑,平台证书哈希是指区块链网络中所存储的平台证书对应的哈希值,平台公钥用于区块链节点对合约交易数据进行验签;随后预约设备可以将合约交易数据发送至区块链节点,区块链节点在接收到预约设备发送的合约交易数据后,可以对合约交易数据进行合法性验证,若根据平台证书哈希和平台公钥检测到合约交易数据满足合法性条件,则可以在区块链网络中对物品预约智能合约进行部署,得到物品预约智能合约对应的合约地址,并将合约地址返回至预约设备;预约设备接收区块链节点返回的合约地址,根据合约地址、审核规则信息以及用户信息,确定与用户信息相关联的用户预约标识,其中,合约地址可以是指通过哈希算法计算得到的针对物品预约智能合约的哈希值,审核规则信息是由防控机构所提供的用于审核用户信息的规则信息。
其中,预约设备在区块链网络中部署物品预约智能合约的具体过程可以包括:预约设备可以将物品预约智能合约以交易的形式上传至区块链网络,该交易也可以称为合约交易数据,合约交易数据可以包括物品预约智能合约、平台证书哈希以及平台公钥;可以理解的是,预约设备在将合约交易数据上传至区块链网络之前,还可以使用平台私钥对合约交易数据进行数字签名,将该数字签名和合约交易数据一起上传至区块链网络。区块链网络接收到该合约交易数据和对应的数字签名后,区块链网络中的区块链节点可以根据平台公钥对该合约交易数据所对应的数字签名进行验签,来校验该数字签名的合法性,当该数字签名校验失败(即数字签名不合法)时可以向预约设备返回校验失败结果,当数字签名校验成功(即数字签名合法)时可以将该合约交易数据打包成区块,并执行该区块中所包含的合约交易数据。
在合约交易数据的执行过程中,区块链节点可以使用哈希算法生成物品预约智能合约对应的合约哈希值,并将合约哈希值作为物品预约智能合约对应的合约地址;区块链节点可以根据该合约地址检查该物品预约智能合约是否已经部署在区块链中,若从区块链中查询到该合约地址,则表示该物品预约智能合约已经部署在区块链中,可以确定该合约交易数据的执行结果为交易执行失败结果;若从区块链中未查询到该合约地址,则表示该物品预约智能合约未部署在区块链中,区块链节点可以继续根据平台证书哈希查询区块链中是否存储有平台证书,若从区块链中未查询到与平台证书哈希相匹配的平台证书,则表示区块链中未存储有平台证书,即该预约设备在区块链中没有进行身份存证,不具备部署物品预约智能合约的权限,确定该合约交易数据的执行结果为交易执行失败结果;若从区块链中查询到与平台证书哈希相匹配的平台证书,则表示区块链中存储有平台证书,即该预约设备在区块链中进行了身份存证,已经具备了部署物品预约智能合约的权限,可以继续验证平台证书中所包含的平台公钥与合约交易数据中所包含的平台公钥是否一致,若平台证书中所包含的平台公钥与合约交易数据中所包含的平台公钥不一致,则表示预约设备的身份还有待验证,可以确定该合约交易数据的执行结果为交易执行失败结果;若平台证书中所包含的平台公钥与合约交易数据中所包含的平台公钥一致,则表示该合约交易数据满足合法性条件,可以确定该合约交易数据的执行结果为交易执行成功结果,并将合约地址作为关键字,将物品预约智能合约作为值进行缓存;区块链节点可以将合约交易数据的执行结果进行共识,并将包含该物品预约智能合约的区块以及达成共识的执行结果写入区块链中,区块链节点可以将合约交易数据的执行结果和物品预约智能合约所对应的合约地址返回至预约设备。预约设备可以将该合约交易数据、合约地址以及执行结果存储在平台数据库中。
其中,需要说明的是,物品预约智能合约为计算机程序代码,开发人员可以使用智能合约高级语言进行编写,通过编译器可以将高级语言编写的合约编译成区块链节点的以太坊虚拟机中的字节码,以太坊虚拟机可以用于解释执行智能合约中的字节码。智能合约高级语言包括但不限于Solidity(一种智能合约编程语言)、Serpent(一种智能合约编程语言)、LLL(一种智能合约编程语言)。
请一并参见图4,图4是本申请实施例提供的一种部署物品预约智能合约的示意图。如图4所示,预约设备在获取到物品预约智能合约30d后,可以通过发起交易来将物品预约智能合约30d部署在区块链中,即预约设备可以将携带物品预约智能合约30d的合约交易数据上传至区块链网络,区块链网络中的区块链节点30b可以接收合约交易数据,并基于预约设备30a对应的平台公钥对合约交易数据进行验签,验签通过后,区块链节点30b可以在以太坊虚拟机中执行合约交易数据,即执行物品预约智能合约30d中的合约代码,合约代码可以自动判断当前所处的场景是否满足合约触发条件,并严格执行合约响应规则,根据合约代码执行结果确定合约交易数据是否有效,当合约交易数据验证有效后,可以将合约交易数据打包进新的数据区块(即区块30c),区块链节点30b可以将区块30c在区块链网络中进行广播,以使区块链网络中的其余节点根据共识算法对区块30c进行共识验证,当该区块30c共识通过时,可以将区块30c进行正式上链,即区块30c在共识通过后,可以根据区块链节点30b所存储的区块链中的最大区块高度,对区块30c的区块高度进行更新,将更新后的区块30c存储在区块链节点30b的本地数据库中,此时更新后的区块30c即为区块链节点30b本地数据库中的区块N+i,N+i用于表征更新后的区块30c在本地区块链中的区块顺序,N和i均为大于或等于0的整数。此时,在区块链中完成了物品预约智能合约30d的部署和上链过程。
可选的,预约设备在获取到区块链节点返回的合约地址后,可以获取防控机构发布的审核规则信息,将审核规则信息、合约地址以及机构信息封装成规则交易数据,其中,机构信息可以包括防控机构对应的机构标识信息、机构证书哈希以及机构公钥,机构证书哈希可以是指区块链网络中所存储的机构证书对应的哈希值,机构公钥可以用于区块链节点对规则交易数据进行验签;预约设备可以将规则交易数据发送至区块链节点,以使区块链节点在根据合约地址、机构证书哈希以及机构公钥检测到规则交易数据满足合法性条件时,在区块链网络中发布审核规则信息,得到审核规则信息对应的规则摘要哈希;预约设备可以接收区块链节点返回的规则摘要哈希,该规则摘要哈希是指根据哈希算法计算得到的针对审核规则信息的哈希值,该预约设备可以根据合约地址、规则摘要哈希以及用户信息,确定用户预约标识。
其中,预约设备将防控机构发布的审核规则信息进行上链的具体过程可以包括:预约设备可以将审核规则信息以交易的形式上传至区块链网络,该交易也可以称为规则交易数据,规则交易数据可以包括审核规则信息、机构标识信息(如机构编号)、合约地址、机构证书哈希以及机构公钥;可以理解的是,预约设备在将规则交易数据上传至区块链网络之前,还可以使用机构私钥对规则交易数据进行数字签名,将该数字签名和规则交易数据一起上传至区块链网络。区块链网络接收到该规则交易数据和对应的数字签名后,区块链网络中的区块链节点可以根据机构公钥对该规则交易数据所对应的数字签名进行验签,来校验该数字签名的合法性,当该数字签名校验失败时可以向预约设备返回校验失败结果,当数字签名校验成功时可以将该规则交易数据打包成新区块,并执行该新区块中所包含的规则交易数据。
在规则交易数据的执行过程中,区块链节点可以根据合约地址检验物品预约智能合约是否部署,若区块链中无法查询到与该合约地址相匹配的物品预约智能合约,则可以确定规则交易数据的执行结果为交易执行失败结果;若区块链中可以查询到与该合约地址相匹配的物品预约智能合约,则调用物品预约智能合约,使用物品预约智能合约中的哈希算法生成审核规则信息对应的哈希值,并将该哈希值作为审核规则信息对应的规则摘要哈希;区块链节点可以根据该规则摘要哈希检查该审核规则信息是否已经部署在区块链中,若从区块链中查询到该规则摘要哈希,则表示该审核规则信息已经部署在区块链中,可以确定该规则交易数据的执行结果为交易执行失败结果;若从区块链中未查询到该规则摘要哈希,则表示该审核规则信息未部署在区块链中,区块链节点可以继续根据机构证书哈希查询区块链中是否存储有机构证书,若从区块链中未查询到与机构证书哈希相匹配的机构证书,则表示区块链中未存储有机构证书,即防控机构在区块链中没有进行身份存证,确定该规则交易数据的执行结果为交易执行失败结果;若从区块链中查询到与机构证书哈希相匹配的机构证书,则表示区块链中存储有机构证书,即防控机构在区块链中进行了身份存证,已经具备了部署审核规则信息的权限,可以继续验证机构证书中所包含的机构公钥与规则交易数据中所包含的机构公钥是否一致,若机构证书中所包含的机构公钥与规则交易数据中所包含的机构公钥不一致,则表示防控机构的身份还有待验证,可以确定该规则交易数据的执行结果为交易执行失败结果;若机构证书中所包含的机构公钥与规则交易数据中所包含的机构公钥一致,则表示该规则交易数据满足合法性条件,可以确定该规则交易数据的执行结果为交易执行成功结果,并将规则摘要哈希作为关键字,将审核规则信息和机构标识信息作为值写入智能合约,同时将规则摘要哈希作为关键字,规则交易数据对应的哈希值作为值写入智能合约,此处的智能合约可以是指上述物品预约智能合约,也可以是指与上述物品预约智能合约具有调用关系的智能合约;区块链节点可以对包含规则交易数据的新区块和规则交易数据的执行结果进行共识,并将包含该审核规则信息的区块以及达成共识的执行结果写入区块链中,此时表明审核规则信息在区块链上发布成功;区块链节点可以将审核规则信息的规则摘要哈希、链上发布结果以及规则交易数据对应的交易哈希值返回至预约设备。预约设备可以将该审核规则信息以及区块链节点返回的上述信息存储在平台数据库中,并将区块链节点返回的上述信息告知防控机构。
可选的,用户可以在预约设备中输入用户基本信息,或者在该用户所属用户终端中输入用户基本信息,由用户终端将用户基本信息传输给预约设备,预约设备可以获取每个用户分别对应的用户基本信息。预约设备在区块链中部署了物品预约智能合约,并将防控机构发布的审核规则信息进行上链之后,可以获取与目标用户相关联的用户信息,将用户信息、规则摘要哈希以及合约地址封装成用户交易数据,其中,用户信息可以包括用户标识信息(如用户编号、身份证号等用于表征身份的标识)、用户证书哈希、用户公钥以及用户基本信息,用户证书哈希可以是指区块链网络中所存储的用户证书对应的哈希值;预约设备可以将用户交易数据发送至区块链节点,以使区块链节点在根据规则摘要哈希、合约地址、用户证书哈希以及用户公钥检测到用户交易数据满足合法性条件时,生成与目标用户相匹配的用户预约标识;预约设备可以接收区块链节点返回的用户预约标识,并将用户预约标识、规则摘要哈希和合约地址关联存储在平台数据库中。
其中,预约设备将用户基本信息进行上链的具体过程可以包括:预约设备可以将用户基本信息以交易的形式上传至区块链网络,该交易也可以称为用户交易数据,用户交易数据可以包括用户基本信息、用户标识信息、合约地址、规则摘要哈希、用户证书哈希以及用户公钥;可以理解的是,预约设备在将用户交易数据上传至区块链网络之前,还可以使用用户私钥对用户交易数据进行数字签名,将该数字签名和用户交易数据一起上传至区块链网络。
区块链网络接收到该用户交易数据和对应的数字签名后,可以根据用户公钥对用户交易数据进行验签,得到用户交易数据对应的验签结果,若在区块链网络中查询到与规则摘要哈希相匹配的审核规则信息,则根据审核规则信息确定用户基本信息的审核结果,若检测到区块链网络中包含合约地址和用户证书哈希,且验签结果和审核结果均为通过结果,则确定用户交易数据满足合法性条件。换言之,区块链网络中的区块链节点可以根据用户公钥对该用户交易数据所对应的数字签名进行验签,来校验该数字签名的合法性,当该数字签名校验失败时,可以确定用户交易数据对应的验签结果为:验签未通过,区块链节点可以向预约设备返回验签失败结果;当数字签名校验成功时,可以确定用户交易数据对应的验签结果为:验签通过,可以将该用户交易数据打包成新区块,并执行该新区块中所包含的用户交易数据。
在用户交易数据的执行过程中,区块链节点可以根据合约地址检验物品预约智能合约是否部署,若区块链中无法查询到与该合约地址相匹配的物品预约智能合约,则可以确定用户交易数据的执行结果为交易执行失败结果;若区块链中可以查询到与该合约地址相匹配的物品预约智能合约,则调用物品预约智能合约,根据用户证书哈希查询区块链中是否存储有用户证书,若从区块链中未查询到与用户证书哈希相匹配的用户证书,则表示区块链中未存储有用户证书,可以确定该用户交易数据的执行结果为交易执行失败结果;若从区块链中查询到与用户证书哈希相匹配的用户证书,则表示区块链中存储有用户证书,可以继续验证用户证书中所包含的用户公钥与用户交易数据中所包含的用户公钥是否一致,若用户证书中所包含的用户公钥与用户交易数据中所包含的用户公钥不一致,则可以确定该用户交易数据的执行结果为交易执行失败结果;若用户证书中所包含的用户公钥与用户交易数据中所包含的用户公钥一致,则可以根据规则摘要哈希查询区块链中是否存储有与该规则摘要哈希相匹配的审核规则信息,若在区块链中未查询到与该规则摘要哈希相匹配的审核规则信息,则可以确定该用户交易数据的执行结果为交易执行失败结果;若在区块链中查询到与该规则摘要哈希相匹配的审核规则信息,则可以根据审核规则信息对用户基本信息进行审核,得到用户基本信息对应的审核结果,如根据用户基本信息得知目标用户为所管辖区域范围内居住的居民,目标用户预约登记时所处地理位置在所管辖区域范围内以及用户基本信息中的配送地址为所管辖区域范围内的有效地址时,可以确定用户基本信息的审核结果为:审核通过;根据用户基本信息得知目标用户不是所管辖区域范围内居住的居民,或者目标用户预约登记时所处地理位置在所管辖区域范围内,或者用户基本信息中的配送地址为所管辖区域范围内的有效地址时,可以确定用户基本信息的审核结果为:审核未通过;当用户基本信息的审核结果为审核未通过时,可以确定用户交易数据的执行结果为交易执行失败结果;当用户基本信息的审核结果为审核通过时,可以确定用户交易数据满足合法性条件。区块链节点可以为目标用户生成用户预约标识,并将用户预约标识写入智能合约中,此处的智能合约可以是指上述物品预约智能合约,也可以是指与上述物品预约智能合约具有调用关系的智能合约。
区块链节点可以对包含用户交易数据的新区块以及用户交易数据的执行结果进行共识,并将包含该用户基本信息的区块以及达成共识的执行结果写入区块链中;区块链节点可以将目标用户的用户预约标识和用户交易数据对应的交易哈希值返回至预约设备。预约设备可以将该用户基本信息以及区块链节点返回的用户预约标识和交易哈希值存储在平台数据库中,并将区块链节点返回的用户预约标识和交易哈希值告知目标用户,目标用户可以使用该用户预约标识参与防护物品预约摇号过程。可以理解的是,在平台数据库中,可以为存储的用户标识信息、合约地址以及规则摘要哈希建立关联关系。
步骤S102,发送预约交易数据。
具体的,预约设备可以将封装成的预约交易数据上传至区块链网络,该区块链网络中的任一区块链节点均可以获取该预约交易数据。
步骤S103,若根据用户预约标识和证明证据检测到预约交易数据满足合法性条件,则根据可验证随机数确定用户预约标识对应的抽签概率。
具体的,区块链网络中的区块链节点在接收到预约设备所发送的预约交易数据后,可以对预约交易数据进行合法性验证,该合法性验证过程可以包括:预约交易数据中所携带的数字签名的合法性验证、预约交易数据中可验证随机数的正确性验证以及用户预约标识的有效性验证等。区块链节点可以根据目标用户的用户公钥对预约交易数据进行验签,若数字签名为不合法的数字签名,则可以确定预约交易数据的验签结果为:验签失败;若数字签名为合法的数字签名,则可以根据证明数据校验可验证随机数的正确性,并检验用户预约标识的有效性,即区块链节点可以根据哈希运算生成证明数据对应的待验证结果,同时也可以根据用户预约标识对区块链网络中的区块链数据(即区块链)进行遍历查询,若区块链节点检测到待验证结果与可验证随机数相同,且区块链数据包含用户预约标识,则确定预约交易数据满足合法性条件;区块链节点若检测到待验证结果与可验证随机数不相同,或者区块链数据不包含用户预约标识,则确定预约交易数据不满足合法性条件。换言之,区块链节点检测到待验证结果与可验证随机数相同时,表示可验证随机数正确,即在区块链节点对可验证随机数进行正确性验证的过程中,可以通过用户预约标识可以生成证明数据,通过证明数据计算得到可验证随机数,进而可以推导出可验证随机数与用户预约标识是相互匹配的,从而确定可验证随机数的验证结果为正确;若区块链节点检测到待验证结果与可验证随机数不相同,即无法通过证明数据计算得到可验证随机数,表示可验证随机数错误。区块链节点从区块链中查询到用户预约标识时,表示用户预约标识为有效标识;未查询到用户预约标识时,表示用户预约标识为无效标识。区块链节点只有在检测到预约交易数据中所携带的数字签名通过验签,且可验证随机数正确,且用户预约标识有效时,可以确定预约交易数据满足合法性条件,上述验证过程中任一项不满足条件,均可以确定预约交易数据不满足合法性条件。
当区块链节点确定预约交易数据满足合法性条件时,可以获取与用户预约标识相关联的物品预约智能合约,并根据物品预约智能合约对可验证随机数进行哈希运算,得到可验证随机数对应的候选哈希值,将候选哈希值和抽签参数之间的比值确定为候选随机数,根据候选随机数和权益参数可以确定用户预约标识对应的抽签概率。换言之,区块链节点可以根据用户预约标识获取物品预约智能合约,通过调用该物品预约智能合约中的抽签算法对预约交易数据进行抽签,该抽签算法可以将预约交易数据中的可验证随机数作为输入,并输出用户预约标识对应的抽签概率,具体计算公式如:候选哈希值=float64(hash(可验证随机数)),抽签参数可以是指32位最大整数(MaxUint32),候选随机数=候选哈希值/MaxUint32,抽签概率=候选随机数(1.0/float64(总参与人数)*1000000000),其中,float64用于表示64位的浮点型数据,hash()用于表示哈希函数,(1.0/float64(总参与人数)*1000000000)表示权益参数。
需要说明的是,每次防护物品预约摇号均可以具有有效期限,用户在该有效期限内向区块链节点发送预约交易数据,区块链节点才会接收该预约数据,并对满足合法性条件的预约交易数据进行抽签,在该有效期限之外发送的预约交易数据,区块链节点可以拒绝收取,因此,在有效期限内,区块链节点可以统计得到参与防护物品预约摇号的总人数,即权益参数中的总参与人数,该有效期限可以是指时间期限(如8:00-8:30),也可以是指区块高度范围(由于上传至区块链网络中的预约交易数据和计算得到的抽签概率可以被区块链节点打包成区块,写入区块链中,因此有效期限可以为区块高度1000-区块高度2000等区块高度范围),每个参与防护物品预约摇号的用户,均可以向区块链节点发送预约交易数据,由区块链节点基于上述共识计算得到每个用户分别对应的抽签概率。
步骤S104,根据抽签概率确定与用户预约标识相关联的预约结果。
具体的,区块链节点可以根据有效期限内每个用户分别对应的抽签概率,确定与用户预约标识相关联的预约结果。以有效期限为区块高度范围为例,区块链节点可以获取该区块高度范围内至少两个预约标识分别对应的抽签概率,其中,至少两个预约标识可以包括用户预约标识,根据至少两个预约标识分别对应的抽签概率,对至少两个预约标识进行排序,得到标识排序列表,进而根据标识排序列表可以确定与用户预约标识相关联的预约结果,将预约结果和至少两个预约标识分别对应的抽签概率进行上链处理。区块链节点可以按照抽签概率的大小,对至少两个预约标识分别对应的抽签概率进行排序,得到排序后的抽签概率列表,每个抽签概率对应一个预约标识,因此排序后的抽签概率列表可以表示为至少两个预约标识对应的标识排序列表,根据标识排序列表可以确定用户预约标识对应的预约结果。
举例来说,区块高度范围内参与防护物品预约摇号的总人数为5个,该5个用户中每个用户均对应一个预约标识,即5个用户对应5个预约标识,该5个预约标识分别表示为:预约标识1,预约标识2,……,预约标识5,通过抽签算法计算得到预约标识1对应的抽签概率为:0.2,预约标识2对应的抽签概率为:0.4,预约标识3对应的抽签概率为:0.3,预约标识4对应的抽签概率为:0.7,预约标识5对应的抽签概率为:0.1,根据抽签概率从大到小的顺序,对5个抽签概率进行排序,得到标识排序列表为:预约标识4的抽签概率0.7-预约标识2的抽签概率0.4-预约标识3的抽签概率0.3-预约标识1的抽签概率0.2-预约标识5的抽签概率0.1。
可选的,区块链节点可以根据标识排序列表确定至少两个预约标识分别对应的抽签结果,进而可以获取防控机构所提供的防护物品数量,从用户预约标识相关联的物品预约智能合约中获取物品分配信息,可以根据物品分配信息和抽签结果,对防护物品数量进行分配,得到用户预约标识对应的单位防护物品数量,区块链节点可以将用户预约标识对应的抽签结果和单位防护物品数量,确定为目标用户的预约结果。可以理解的是,物品预约智能合约中可以包括每次防护物品预约摇号所发送的防护物品总数量,每次防护物品预约摇号中摇号成功的总人数(可以设置数量阈值,也可以设置概率阈值,由概率阈值来确定每次防护物品预约摇号中预约成功的人数),每个预约摇号成功的用户可以分配的防护物品数量(也可以称为单位防护物品数量),每个预约摇号成功的用户分配的防护物品数量可以相同,也可以不同,如可以根据用户所在的地理位置,为用户分配防护物品数量,例如,物品预约智能合约中可以规定所管辖的区域范围为深圳,南山区的用户预约成功后可以分配10个防护物品,光明区的用户预约成功后可以分配7个防护物品。区块链节点可以根据物品预约智能合约中所规定的摇号成功人数,从标识排序列表中确定预约成功的用户和预约未成功的用户(即用户的抽签结果),根据物品预约智能合约中所规定的物品分配信息以及防控机构所提供的防护物品总数量,得到每个预约成功的用户所分配的防护物品数量,预约未成功的用户不能分配防护物品,即预约未成功的用户所分配的防护物品数量为0,可以将用户的抽签结果以及防护物品数量确定为用户的预约结果。
请一并参见图5,图5是本申请实施例提供的一种确定用户预约结果的示意图。如图5所示,在防护物品预约摇号过程中,预约设备40a可以将参与防护物品预约摇号的每个用户所对应的用户预约标识、可验证随机数以及证明数据分别打包成预约交易数据发送给区块链节点40b,如预约设备40a在防护物品预约摇号的有效期限内接收到n(n为正整数)个用户的预约摇号申请,则预约设备40a可以将n个用户分别对应的用户预约标识、可验证随机数以及证明数据打包成预约交易数据,若n个用户所对应的预约交易数据均满足合法性条件,则区块链节点40b可以调用物品预约智能合约中的抽签算法,计算每个用户分别对应的抽签概率,得到抽签概率集合40c,抽签概率的具体计算方式可以参见上述步骤S103中的描述,这里不再进行赘述。其中,抽签概率集合40c中可以包括每个用户分别对应的抽签概率,如用户1对应的抽签概率为:b1,用户2对应的抽签概率为:b2,用户3对应的抽签概率为:b3,……,用户n对应的抽签概率为:bn。
区块链节点40b可以按照抽签概率从高到低的顺序对抽签概率集合40c中所包含的抽签概率进行排序,得到排序列表40d,如用户4对应的抽签概率b4最高,则用户4对应的抽签概率b4位于排序列表40d中首位,用户5对应的抽签概率b5仅低于用户4对应的抽签概率b4,用户5对应的抽签概率b5位于排序列表40d中第第二位,……,用户2对应的抽签概率b2最低,用户2对应的抽签概率b2位于排序列表40d的末尾。
区块链节点40b可以从物品预约智能合约中获取物品分配信息40e,该物品分配信息40e中可以包括:该次防护物品预约摇号过程中,防护物品总数量为:x,预约成功总人数为:y,区域a的用户预约成功后分配数量为:c,其余区域的用户预约成功后分配数量为:d等信息,其中,当c大于d时,防护物品总数量x可以等于y*c。根据物品分配信息40e可以从排序列表40d中选取前y个用户确定为预约成功的用户,排序列表40d中剩下的用户为预约未成功的用户,进而可以根据每个用户所在的区域位置,确定每个用户分别对应的预约结果,得到预约结果集合40e。其中,用户4所在的区域位置为区域a时,可以得到用户4的预约结果为:预约成功,并分配c个防护物品;用户5所在的区域位置为区域b时,可以得到用户5的预约结果为:预约成功,并分配d个防护物品;用户1所在的区域位置为区域a时,可以得到用户1的预约结果为:预约成功,并分配c个防护物品,……,用户2预约未成功,可以得到用户4的预约结果为:预约失败,并分配0个防护物品。
步骤S105,返回预约结果。
具体的,区块链节点可以将与用户预约标识相关联的预约结果返回至预约设备,预约设备在接收到区块链节点返回的预约结果之后,可以将预约结果告知防控机构和目标用户,该预约结果可以用于指示防控机构将与预约结果相匹配的防护物品配送给该用户预约标识对应的目标用户。例如,预约结果为目标用户预约成功,发放的防护物品(如口罩、护目镜、手套等)为10个,则防控机构可以根据目标用户在预约设备中所输入的配送地址,将10个防护物品通过物流公司配送给目标用户。
可选的,区块链节点接收到预约设备发送的针对目标用户的结果验证请求时,根据结果验证请求中所携带的用户预约标识,从区块链网络的区块链数据中,获取用户预约标识对应的预约交易数据和抽签概率;区块链节点根据预约交易数据和抽签概率,生成目标用户对应的验证结果,将验证结果返回至预约设备。换言之,用户若对自己的预约结果有疑问,则可以通过预约设备向区块链节点发送携带用户预约标识的结果验证请求,区块链节点在接收到携带用户预约标识的结果验证请求后,可以根据用户预约标识从区块链中查询与用户预约标识相关联的完整预约流程,如与用户预约标识相关联的预约交易数据和抽签概率,进而根据返回给用户的预约结果,以及从区块链网络中查询到的预约交易数据和抽签概率,当根据查询到的预约交易数据和抽签概率重新确定的预约结果与之前返回给用户的预约结果相同时,可以确定用户对应的验证结果为:验证正常结果;当根据查询到的预约交易数据和抽签概率重新确定的预约结果与之前返回给用户的预约结果不相同时,可以确定用户对应的验证结果为:验证异常结果。
可选的,区块链节点可以将防护物品预约摇号过程中与用户预约标识相关联的每个用户的预约交易数据,以及每个用户分别对应的抽签概率返回给预约设备,用户可以在预约设备中查看每个用户分别对应的抽签概率,进而验证自己的预约结果是否存在问题。
请一并参见图6,图6是本申请实施例提供的一种验证预约结果的示意图。如图6所示,若用户对自己的预约结果存在疑问时,可以在预约设备中输入用户相关信息查询该次预约摇号过程中的完整流程信息,以对预约结果进行验证。如用户1在预约设备中输入预约标识1以验证预约结果,则预约设备可以为该用户1生成结果验证请求,该结果验证请求可以携带预约标识1。
区块链节点在接收到该结果验证请求后,可以根据预约标识1从区块链50c中查询与预约标识1相关联的抽签概率集合50d和预约交易数据50e,抽签概率集合50d中包括与预约标识1所对应的用户参与同期预约摇号的所有用户分别对应的抽签概率,该预约交易数据50e可以是指预约标识1所对应用户的预约交易数据,也可以包括所有用户分别对应的预约交易数据。区块链节点可以将抽签概率集合50d和预约交易数据50e返回给预约设备50a。由于预约设备诶50a的平台数据库中存储有物品预约智能合约,因此可以根据物品预约智能合约中的物品分配规则,以及返回的抽签概率集合50d,重新确定用户1对应的预约结果,若重新确定的预约结果与之前的预约结果相同,则表示之前的预约结果没有问题,若重新确定的预约结果与之前的预约结果不相同,则表示之前的预约结果存在问题,可以向防控机构申请按照新的预约结果分配防护物品。
本申请实施例可以通过预约设备将根据用户预约标识和用户私钥所生成的可验证随机数和证明数据,连同该用户预约标识封装成预约交易数据,并将预约交易数据发送至区块链节点;区块链节点可以基于用户预约标识和证明数据验证预约交易数据的合法性,当预约交易数据合法时,根据可验证随机数确定用户预约标识对应的抽签概率,进而根据抽签概率确定与用户预约标识相关联的预约结果,并将该预约结果返回至预约设备,该预约结果可以用于指示防控机构将与预约结果相匹配的防护物品配送给所述用户预约标识对应的目标用户。由于区块链的去中心化和不可篡改性,使得预约设备中的防护物品预约过程对于预约用户都是公开透明的,且在预约设备中预约防护物品的预约过程及预约结果均可以记录在区块链中,提高了物品预约结果的可信度、公平性及有效性;由于区块链具有公开透明性,每个参与防护物品预约的用户均可以通过预约设备查询完整的预约流程,使得整个预约流程公开化,有利于提高预约结果的可验证性。
请参见图7,图7是本申请实施例提供的一种基于区块链的物品预约装置的结构示意图。该基于区块链的物品预约装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该基于区块链的物品预约装置为一个应用软件;该基于区块链的物品预约装置可以用于执行上述图3所对应实施例中的相应步骤,如图7所示,该基于区块链的物品预约装置1可以包括:第一封装模块101,第一发送模块102,概率确定模块103,结果确定模块104;
第一封装模块101,用于将用户预约标识、可验证随机数以及证明数据封装成预约交易数据;可验证随机数和证明数据是根据用户预约标识和用户私钥所生成的,证明数据用于表征可验证随机数的正确性;
第一发送模块102,用于将预约交易数据发送至区块链节点;
概率确定模块103,用于若根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件,则根据可验证随机数确定用户预约标识对应的抽签概率;
结果确定模块104,用于根据抽签概率确定与用户预约标识相关联的预约结果,将预约结果返回至预约设备;预约结果用于指示防控机构将与预约结果相匹配的防护物品配送给用户预约标识对应的目标用户。
其中,第一封装模块101,第一发送模块102,概率确定模块103,结果确定模块104的具体功能实现方式可以参见上述图3所对应实施例中的步骤S101-步骤S105,这里不再进行赘述。
请一并参见图7,该基于区块链的物品预约装置1还可以包括:证书申请模块105,请求发送模块106,证书接收模块107,第二封装模块108,第二发送模块109,合约部署模块110,预约标识确定模块111;
证书申请模块105,用于获取平台身份信息和平台资质信息,在本地生成平台密钥对,根据平台密钥对中的平台私钥对平台身份信息和平台资质信息进行签名,得到证书申请信息;
请求发送模块106,用于向证书授权节点发送携带证书申请信息的证书申请请求,以使证书授权节点根据证书申请信息为预约平台颁发平台证书,并将平台证书进行上链处理以获取平台证书哈希;
证书接收模块107,用于接收证书授权节点返回的平台证书和平台证书哈希。
第二封装模块108,用于获取物品预约智能合约,将物品预约智能合约、平台证书哈希以及平台公钥封装成合约交易数据;物品预约智能合约包括区块链网络中通过预约审核的用户所对应的物品预约规则,平台证书哈希是指区块链网络中所存储的平台证书对应的哈希值,平台公钥用于区块链节点对合约交易数据进行验签;
第二发送模块109,用于将合约交易数据发送至区块链节点;
合约部署模块110,用于若根据平台证书哈希和平台公钥检测到合约交易数据满足合法性条件,则在区块链网络中对物品预约智能合约进行部署,得到物品预约智能合约对应的合约地址;
预约标识确定模块111,用于接收区块链节点返回的合约地址,根据合约地址、审核规则信息以及用户信息,确定用户预约标识;审核规则信息是由防控机构所提供的用于审核用户信息的规则信息。
其中,证书申请模块105,请求发送模块106,证书接收模块107,第二封装模块108,第二发送模块109,合约部署模块110,预约标识确定模块111的具体功能实现方式可以参见上述图3所对应实施例中的步骤S101,这里不再进行赘述。
请一并参见图7,预约标识确定模块111可以包括:规则封装单元1111,规则发送单元1112,标识确定单元1113;
规则封装单元1111,用于获取防控机构发布的审核规则信息,将审核规则信息、合约地址以及机构信息封装成规则交易数据;机构信息包括防控机构对应的机构标识信息、机构证书哈希以及机构公钥,机构证书哈希是指区块链网络中所存储的机构证书对应的哈希值,机构公钥用于区块链节点对规则交易数据进行验签;
规则发送单元1112,用于将规则交易数据发送至区块链节点,以使区块链节点在根据合约地址、机构证书哈希以及机构公钥检测到规则交易数据满足合法性条件时,在区块链网络中发布审核规则信息,得到审核规则信息对应的规则摘要哈希;
标识确定单元1113,用于接收区块链节点返回的规则摘要哈希,根据合约地址、规则摘要哈希以及用户信息,确定用户预约标识。
其中,规则封装单元1111,规则发送单元1112,标识确定单元1113的具体功能实现方式可以参见上述图3所对应实施例中的步骤S101,这里不再进行赘述。
请一并参见图7,标识确定单元1113可以包括:用户信息发送子单元11131,用户信息发送子单元11132,预约标识接收子单元11133;
用户信息发送子单元11131,用于获取与目标用户相关联的用户信息,将用户信息、规则摘要哈希以及合约地址封装成用户交易数据;用户信息包括用户标识信息、用户证书哈希、用户公钥以及用户基本信息,用户证书哈希是指区块链网络中所存储的用户证书对应的哈希值;
用户信息发送子单元11132,用于将用户交易数据发送至区块链节点,以使区块链节点在根据规则摘要哈希、合约地址、用户证书哈希以及用户公钥检测到用户交易数据满足合法性条件时,生成与目标用户相匹配的用户预约标识;
预约标识接收子单元11133,用于接收区块链节点返回的用户预约标识,将用户预约标识、规则摘要哈希以及合约地址关联存储在平台数据库中。
其中,用户信息发送子单元11131,用户信息发送子单元11132,预约标识接收子单元11133的具体功能实现方式可以参见上述图3所对应实施例中的步骤S101,这里不再进行赘述。
请一并参见图7,该基于区块链的物品预约装置1还可以包括:验签模块112,审核模块113,第一交易验证模块114;
验签模块112,用于根据用户公钥对用户交易数据进行验签,得到用户交易数据对应的验签结果;
审核模块113,用于若在区块链网络中查询到与规则摘要哈希相匹配的审核规则信息,则根据审核规则信息确定用户基本信息的审核结果;
第一交易验证模块114,用于若检测到区块链网络中包含合约地址和用户证书哈希,且验签结果和审核结果均为通过结果,则确定用户交易数据满足合法性条件。
其中,验签模块112,审核模块113,第一交易验证模块114的具体功能实现方式可以参见上述图3所对应实施例中的步骤S101,这里不再进行赘述。
请一并参见图7,该基于区块链的物品预约装置1还可以包括:遍历模块115,第二交易验证模块116;
遍历模块115,用于根据哈希运算生成证明数据对应的待验证结果,根据用户预约标识,对区块链网络中的区块链数据进行遍历查询;
第二交易验证模块116,用于若检测到待验证结果与可验证随机数相同,且区块链数据包含用户预约标识,则确定预约交易数据满足合法性条件;
第二交易验证模块116,还用于若检测到待验证结果与可验证随机数不相同,或者区块链数据不包含用户预约标识,则确定预约交易数据不满足合法性条件。
其中,遍历模块115,第二交易验证模块116的具体功能实现方式可以参见上述图3所对应实施例中的步骤S103,这里不再进行赘述。
请一并参见图7,概率确定模块103可以包括:合约获取单元1031,哈希运算单元1032,概率计算单元1033;
合约获取单元1031,用于若根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件,则获取与用户预约标识相关联的物品预约智能合约;
哈希运算单元1032,用于根据物品预约智能合约对可验证随机数进行哈希运算,得到可验证随机数对应的候选哈希值;
概率计算单元1033,用于将候选哈希值和抽签参数之间的比值确定为候选随机数,根据候选随机数和权益参数,确定用户预约标识对应的抽签概率。
其中,合约获取单元1031,哈希运算单元1032,概率计算单元1033的具体功能实现方式可以参见上述图3所对应实施例中的步骤S103,这里不再进行赘述。
请一并参见图7,结果确定模块104可以包括:概率获取单元1041,排序单元1042,结果上链单元1043;
概率获取单元1041,用于获取区块高度范围内至少两个预约标识分别对应的抽签概率;至少两个预约标识包括用户预约标识;
排序单元1042,用于根据至少两个预约标识分别对应的抽签概率,对至少两个预约标识进行排序,得到标识排序列表;
结果上链单元1043,用于根据标识排序列表确定与用户预约标识相关联的预约结果,将预约结果和至少两个预约标识分别对应的抽签概率进行上链处理。
其中,概率获取单元1041,排序单元1042,结果上链单元1043的具体功能实现方式可以参见上述图3所对应实施例中的步骤S103,这里不再进行赘述。
请一并参见图7,结果上链单元1043可以包括:抽签结果确定子单元10431,分配信息获取子单元10432,单位数量确定子单元10433,预约结果确定子单元10434;
抽签结果确定子单元10431,用于根据标识排序列表确定至少两个预约标识分别对应的抽签结果;
分配信息获取子单元10432,用于获取防控机构所提供的防护物品数量,从用户预约标识相关联的物品预约智能合约中获取物品分配信息;
单位数量确定子单元10433,用于根据物品分配信息和抽签结果,对防护物品数量进行分配,得到用户预约标识对应的单位防护物品数量;
预约结果确定子单元10434,用于将用户预约标识对应的抽签结果和单位防护物品数量,确定为预约结果。
其中,抽签结果确定子单元10431,分配信息获取子单元10432,单位数量确定子单元10433,预约结果确定子单元10434的具体功能实现方式可以参见上述图3所对应实施例中的步骤S104,这里不再进行赘述。
请一并参见图7,该基于区块链的物品预约装置还可以包括:验证请求接收模块117,验证结果生成模块118;
验证请求接收模块117,用于接收到预约设备发送的针对目标用户的结果验证请求时,根据结果验证请求中所携带的用户预约标识,从区块链网络的区块链数据中,获取用户预约标识对应的预约交易数据和抽签概率;
验证结果生成模块118,用于区块链节点根据预约交易数据和抽签概率,生成目标用户对应的验证结果,将验证结果返回至预约设备。
其中,验证请求接收模块117,验证结果生成模块118的具体功能实现方式可以参见上述图3所对应实施例中的步骤S104,这里不再进行赘述。
本申请实施例可以通过预约设备将根据用户预约标识和用户私钥所生成的可验证随机数和证明数据,连同该用户预约标识封装成预约交易数据,并将预约交易数据发送至区块链节点;区块链节点可以基于用户预约标识和证明数据验证预约交易数据的合法性,当预约交易数据合法时,根据可验证随机数确定用户预约标识对应的抽签概率,进而根据抽签概率确定与用户预约标识相关联的预约结果,并将该预约结果返回至预约设备,该预约结果可以用于指示防控机构将与预约结果相匹配的防护物品配送给所述用户预约标识对应的目标用户。由于区块链的去中心化和不可篡改性,使得预约设备中的防护物品预约过程对于预约用户都是公开透明的,且在预约设备中预约防护物品的预约过程及预约结果均可以记录在区块链中,提高了物品预约结果的可信度、公平性及有效性;由于区块链具有公开透明性,每个参与防护物品预约的用户均可以通过预约设备查询完整的预约流程,使得整个预约流程公开化,有利于提高预约结果的可验证性。
请参见图8,图8是本申请实施例提供的一种基于区块链的物品预约装置的结构示意图。如图8所示,该基于区块链的物品预约装置2可以包括:预约数据封装模块21,预约数据发送模块22,预约结果接收模块23;
预约数据封装模块21,用于将用户预约标识、可验证随机数以及证明数据封装成预约交易数据;可验证随机数和证明数据是根据用户预约标识和用户私钥所生成的,证明数据用于表征可验证随机数的正确性;
预约数据发送模块22,用于将预约交易数据发送至区块链节点,以使区块链节点在根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件时,根据抽签概率确定与用户预约标识相关联的预约结果;抽签概率是根据可验证随机数所确定的;
预约结果接收模块23,用于接收区块链节点返回的预约结果;预约结果用于指示防控机构将与预约结果相匹配的防护物品配送给用户预约标识对应的目标用户。
其中,预约数据封装模块21,预约数据发送模块22,预约结果接收模块23的具体实现功能方式可以参见上述图3所对应实施例中的步骤S101,步骤S102和步骤S105,这里不再进行赘述。
本申请实施例可以通过预约设备将根据用户预约标识和用户私钥所生成的可验证随机数和证明数据,连同该用户预约标识封装成预约交易数据,并将预约交易数据发送至区块链节点;区块链节点可以基于用户预约标识和证明数据验证预约交易数据的合法性,当预约交易数据合法时,根据可验证随机数确定用户预约标识对应的抽签概率,进而根据抽签概率确定与用户预约标识相关联的预约结果,并将该预约结果返回至预约设备,该预约结果可以用于指示防控机构将与预约结果相匹配的防护物品配送给所述用户预约标识对应的目标用户。由于区块链的去中心化和不可篡改性,使得预约设备中的防护物品预约过程对于预约用户都是公开透明的,且在预约设备中预约防护物品的预约过程及预约结果均可以记录在区块链中,提高了物品预约结果的可信度、公平性及有效性。
请参见图9,图9是本申请实施例提供的一种基于区块链的物品预约装置的结构示意图。如图9所示,该基于区块链的物品预约装置3可以包括:预约数据接收模块31,抽签概率确定模块32,预约结果确定模块33;
预约数据接收模块31,用于接收预约设备发送的预约交易数据;预约交易数据包括用户预约标识、可验证随机数以及证明证据,可验证随机数和证明数据是根据用户预约标识和用户私钥所生成的,证明数据用于表征可验证随机数的正确性;
抽签概率确定模块32,用于若根据用户预约标识和证明证据,检测到预约交易数据满足合法性条件,则根据可验证随机数,确定用户预约标识对应的抽签概率;
预约结果确定模块33,用于根据抽签概率确定与用户预约标识相关联的预约结果,将预约结果返回至预约设备;预约结果用于指示防控机构将与预约结果相匹配的防护物品配送给用户预约标识对应的目标用户。
其中,预约数据接收模块31,抽签概率确定模块32,预约结果确定模块33的具体实现功能方式可以参见上述图3所对应实施例中的步骤S102-步骤S105,这里不再进行赘述。
本申请实施例可以通过预约设备将根据用户预约标识和用户私钥所生成的可验证随机数和证明数据,连同该用户预约标识封装成预约交易数据,并将预约交易数据发送至区块链节点;区块链节点可以基于用户预约标识和证明数据验证预约交易数据的合法性,当预约交易数据合法时,根据可验证随机数确定用户预约标识对应的抽签概率,进而根据抽签概率确定与用户预约标识相关联的预约结果,并将该预约结果返回至预约设备,该预约结果可以用于指示防控机构将与预约结果相匹配的防护物品配送给所述用户预约标识对应的目标用户。由于区块链的去中心化和不可篡改性,使得预约设备中的防护物品预约过程对于预约用户都是公开透明的,且在预约设备中预约防护物品的预约过程及预约结果均可以记录在区块链中,提高了物品预约结果的可信度、公平性及有效性。
请参见图10,图10是本申请实施例提供的一种计算机设备的结构示意图。如图10所示,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。可选的,网络接口1004可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器1005还可以是至少一个位于远离前述处理器1001的存储装置。如图10所示,作为一种计算机可读存储介质的存储器1005中可以包括操作***、网络通信模块、用户接口模块以及设备控制应用程序。
在如图10所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现前文图3所对应实施例中对基于区块链的物品预约方法的描述。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3所对应实施例中对基于区块链的物品预约方法的描述,也可执行前文图7所对应实施例中对基于区块链的物品预约装置1的描述、前文图8所对应实施例中对基于区块链的物品预约装置2的描述以及前文图9所对应实施例中对基于区块链的物品预约装置3的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的基于区块链的物品预约装置1、基于区块链的物品预约装置2以及基于区块链的物品预约装置3所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图3所对应实施例中对基于区块链的物品预约方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可被部署在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行,分布在多个地点且通过通信网络互连的多个计算设备可以组成区块链***。
此外,需要说明的是:本申请实施例还提供了一中计算机程序产品或计算机程序,该计算机程序产品或者计算机程序可以包括计算机指令,该计算机指令可以存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器可以执行该计算机指令,使得该计算机设备执行前文图3所对应实施例中对基于区块链的物品预约方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机程序产品或者计算机程序实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储存储器(Read-Only Memory,ROM)或随机存储存储器(Random Access Memory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (15)
1.一种基于区块链的物品预约方法,其特征在于,包括:
预约设备将用户预约标识、可验证随机数以及证明数据封装成预约交易数据;所述可验证随机数和所述证明数据是根据所述用户预约标识和用户私钥所生成的,所述证明数据用于表征所述可验证随机数的正确性;
所述预约设备将所述预约交易数据发送至区块链节点;
所述区块链节点若根据所述用户预约标识和所述证明证据,检测到所述预约交易数据满足合法性条件,则根据所述可验证随机数确定所述用户预约标识对应的抽签概率;
所述区块链节点根据所述抽签概率确定与所述用户预约标识相关联的预约结果,将所述预约结果返回至所述预约设备;所述预约结果用于指示防控机构将与所述预约结果相匹配的防护物品配送给所述用户预约标识对应的目标用户。
2.根据权利要求1所述的方法,其特征在于,还包括:
所述预约设备获取物品预约智能合约,将所述物品预约智能合约、平台证书哈希以及平台公钥封装成合约交易数据;所述物品预约智能合约包括区块链网络中通过预约审核的用户所对应的物品预约规则,所述平台证书哈希是指所述区块链网络中所存储的平台证书对应的哈希值,所述平台公钥用于所述区块链节点对所述合约交易数据进行验签;
所述预约设备将所述合约交易数据发送至所述区块链节点;
所述区块链节点若根据所述平台证书哈希和所述平台公钥检测到所述合约交易数据满足合法性条件,则在所述区块链网络中对所述物品预约智能合约进行部署,得到所述物品预约智能合约对应的合约地址;
所述预约设备接收所述区块链节点返回的所述合约地址,根据所述合约地址、审核规则信息以及用户信息,确定所述用户预约标识;所述审核规则信息是由所述防控机构所提供的用于审核所述用户信息的规则信息。
3.根据权利要求2所述的方法,其特征在于,所述根据所述合约地址、审核规则信息以及用户信息,确定所述用户预约标识,包括:
所述预约设备获取所述防控机构发布的所述审核规则信息,将所述审核规则信息、所述合约地址以及机构信息封装成规则交易数据;所述机构信息包括所述防控机构对应的机构标识信息、机构证书哈希以及机构公钥,所述机构证书哈希是指所述区块链网络中所存储的机构证书对应的哈希值,所述机构公钥用于所述区块链节点对所述规则交易数据进行验签;
所述预约设备将所述规则交易数据发送至所述区块链节点,以使所述区块链节点在根据所述合约地址、所述机构证书哈希以及所述机构公钥检测到所述规则交易数据满足合法性条件时,在所述区块链网络中发布所述审核规则信息,得到所述审核规则信息对应的规则摘要哈希;
所述预约设备接收所述区块链节点返回的所述规则摘要哈希,根据所述合约地址、所述规则摘要哈希以及所述用户信息,确定所述用户预约标识。
4.根据权利要求3所述的方法,其特征在于,所述根据所述合约地址、所述规则摘要哈希以及所述用户信息,确定所述用户预约标识,包括:
所述预约设备获取与所述目标用户相关联的用户信息,将所述用户信息、所述规则摘要哈希以及所述合约地址封装成用户交易数据;所述用户信息包括用户标识信息、用户证书哈希、所述用户公钥以及用户基本信息,所述用户证书哈希是指区块链网络中所存储的用户证书对应的哈希值;
所述预约设备将所述用户交易数据发送至所述区块链节点,以使所述区块链节点在根据所述规则摘要哈希、所述合约地址、所述用户证书哈希以及所述用户公钥检测到所述用户交易数据满足合法性条件时,生成与所述目标用户相匹配的所述用户预约标识;
所述预约设备接收所述区块链节点返回的所述用户预约标识,将所述用户预约标识、所述规则摘要哈希以及所述合约地址关联存储在平台数据库中。
5.根据权利要求2所述的方法,其特征在于,还包括:
所述预约设备获取平台身份信息和平台资质信息,在本地生成平台密钥对,根据所述平台密钥对中的平台私钥对所述平台身份信息和所述平台资质信息进行签名,得到证书申请信息;
所述预约设备向证书授权节点发送携带所述证书申请信息的证书申请请求,以使所述证书授权节点根据所述证书申请信息为预约平台颁发所述平台证书,并将所述平台证书进行上链处理以获取所述平台证书哈希;
所述预约设备接收所述证书授权节点返回的所述平台证书和所述平台证书哈希。
6.根据权利要求4所述的方法,其特征在于,还包括:
所述区块链节点根据所述用户公钥对所述用户交易数据进行验签,得到所述用户交易数据对应的验签结果;
所述区块链节点若在所述区块链网络中查询到与所述规则摘要哈希相匹配的所述审核规则信息,则根据所述审核规则信息确定所述用户基本信息的审核结果;
所述区块链节点若检测到所述区块链网络中包含所述合约地址和所述用户证书哈希,且所述验签结果和所述审核结果均为通过结果,则确定所述用户交易数据满足合法性条件。
7.根据权利要求1所述的方法,其特征在于,还包括:
所述区块链节点根据哈希运算生成所述证明数据对应的待验证结果,根据所述用户预约标识,对区块链网络中的区块链数据进行遍历查询;
所述区块链节点若检测到所述待验证结果与所述可验证随机数相同,且所述区块链数据包含所述用户预约标识,则确定所述预约交易数据满足合法性条件;
所述区块链节点若检测到所述待验证结果与所述可验证随机数不相同,或者所述区块链数据不包含所述用户预约标识,则确定所述预约交易数据不满足合法性条件。
8.根据权利要求1所述的方法,其特征在于,所述区块链节点若根据所述用户预约标识和所述证明证据,检测到所述预约交易数据满足合法性条件,则根据所述可验证随机数确定所述用户预约标识对应的抽签概率,包括:
所述区块链节点若根据所述用户预约标识和所述证明证据,检测到所述预约交易数据满足合法性条件,则获取与所述用户预约标识相关联的所述物品预约智能合约;
所述区块链节点根据所述物品预约智能合约对所述可验证随机数进行哈希运算,得到所述可验证随机数对应的候选哈希值;
所述区块链节点将所述候选哈希值和抽签参数之间的比值确定为候选随机数,根据所述候选随机数和权益参数,确定所述用户预约标识对应的所述抽签概率。
9.根据权利要求1所述的方法,其特征在于,所述区块链节点根据所述抽签概率确定与所述可验证随机数相关联的预约结果,包括:
所述区块链节点获取区块高度范围内至少两个预约标识分别对应的抽签概率;所述至少两个预约标识包括所述用户预约标识;
所述区块链节点根据所述至少两个预约标识分别对应的抽签概率,对所述至少两个预约标识进行排序,得到标识排序列表;
所述区块链节点根据所述标识排序列表确定与所述用户预约标识相关联的所述预约结果,将所述预约结果和所述至少两个预约标识分别对应的抽签概率进行上链处理。
10.根据权利要求9所述的方法,其特征在于,所述区块链节点根据所述标识排序列表确定与所述用户预约标识相关联的所述预约结果,包括:
所述区块链节点根据所述标识排序列表确定至少两个预约标识分别对应的抽签结果;
所述区块链节点获取所述防控机构所提供的防护物品数量,从所述用户预约标识相关联的物品预约智能合约中获取物品分配信息;
所述区块链节点根据所述物品分配信息和所述抽签结果,对所述防护物品数量进行分配,得到所述用户预约标识对应的单位防护物品数量;
所述区块链节点将所述用户预约标识对应的抽签结果和所述单位防护物品数量,确定为所述预约结果。
11.根据权利要求1所述的方法,其特征在于,还包括:
所述区块链节点接收到所述预约设备发送的针对所述目标用户的结果验证请求时,根据所述结果验证请求中所携带的所述用户预约标识,从所述区块链网络的区块链数据中,获取所述用户预约标识对应的所述预约交易数据和所述抽签概率;
所述区块链节点根据所述预约交易数据和所述抽签概率,生成所述目标用户对应的验证结果,将所述验证结果返回至所述预约设备。
12.一种基于区块链的物品预约方法,其特征在于,包括:
预约设备将用户预约标识、可验证随机数以及证明数据封装成预约交易数据;所述可验证随机数和所述证明数据是根据所述用户预约标识和用户私钥所生成的,所述证明数据用于表征所述可验证随机数的正确性;
所述预约设备将所述预约交易数据发送至区块链节点,以使所述区块链节点在根据所述用户预约标识和所述证明证据,检测到所述预约交易数据满足合法性条件时,根据抽签概率确定与所述用户预约标识相关联的预约结果;所述抽签概率是根据所述可验证随机数所确定的;
所述预约设备接收所述区块链节点返回的所述预约结果;所述预约结果用于指示防控机构将与所述预约结果相匹配的防护物品配送给所述用户预约标识对应的目标用户。
13.一种基于区块链的物品预约方法,其特征在于,包括:
区块链节点接收预约设备发送的预约交易数据;所述预约交易数据包括所述用户预约标识、所述可验证随机数以及所述证明证据,所述可验证随机数和所述证明数据是根据所述用户预约标识和用户私钥所生成的,所述证明数据用于表征所述可验证随机数的正确性;
所述区块链节点若根据所述用户预约标识和所述证明证据,检测到所述预约交易数据满足合法性条件,则根据所述可验证随机数,确定所述用户预约标识对应的抽签概率;
所述区块链节点根据所述抽签概率确定与所述用户预约标识相关联的预约结果,将所述预约结果返回至所述预约设备;所述预约结果用于指示防控机构将与所述预约结果相匹配的防护物品配送给所述用户预约标识对应的目标用户。
14.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,所述处理器执行权利要求1至13中任一项所述方法的步骤。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,执行权利要求1至13中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010670261.XA CN111884807B (zh) | 2020-07-13 | 2020-07-13 | 基于区块链的物品预约方法、装置、设备以及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010670261.XA CN111884807B (zh) | 2020-07-13 | 2020-07-13 | 基于区块链的物品预约方法、装置、设备以及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111884807A true CN111884807A (zh) | 2020-11-03 |
CN111884807B CN111884807B (zh) | 2021-10-26 |
Family
ID=73150729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010670261.XA Active CN111884807B (zh) | 2020-07-13 | 2020-07-13 | 基于区块链的物品预约方法、装置、设备以及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111884807B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112559599A (zh) * | 2020-12-18 | 2021-03-26 | 杭州趣链科技有限公司 | 基于区块链的数据查询方法、***和区块链处理装置 |
CN112948866A (zh) * | 2021-03-29 | 2021-06-11 | iCALC控股有限公司 | 一种数据处理方法、装置、设备及可读存储介质 |
CN112949798A (zh) * | 2021-05-17 | 2021-06-11 | 北京楠昊鹏物联网科技有限公司 | 基于rfid技术的实验室设备管理方法及其*** |
CN113572620A (zh) * | 2021-09-27 | 2021-10-29 | 中邮消费金融有限公司 | 一种基于区块链的线上表决方法和*** |
CN113822974A (zh) * | 2021-11-24 | 2021-12-21 | 支付宝(杭州)信息技术有限公司 | 生成虚拟形象的方法、装置、电子设备、介质和程序 |
CN114091061A (zh) * | 2021-11-12 | 2022-02-25 | 天津理工大学 | 基于vrf和区块链的多云协同数据安全存储及审计方法 |
CN115907593A (zh) * | 2023-02-14 | 2023-04-04 | 湖南炅旭生物科技有限公司 | 基于区块链的药品运输管理方法、***、设备及存储介质 |
CN112988893B (zh) * | 2021-03-15 | 2023-05-12 | 中国联合网络通信集团有限公司 | 基于区块链的信息管理方法、***、区块链节点及介质 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107103097A (zh) * | 2017-05-22 | 2017-08-29 | 中链科技有限公司 | 基于区块链技术的抽签方法和终端设备 |
CN107742352A (zh) * | 2017-09-20 | 2018-02-27 | 黄玉宇 | 基于区块链及智能合约的去中心化抽签/排队方法及*** |
US20180374091A1 (en) * | 2017-03-31 | 2018-12-27 | Vijay K. Madisetti | Method and System for Blockchain-Based Combined Identity, Ownership, Integrity and Custody Management |
CN109584432A (zh) * | 2018-10-26 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 对象选取方法及装置、电子设备 |
CN109886750A (zh) * | 2019-02-25 | 2019-06-14 | 浪潮软件集团有限公司 | 一种基于区块链的透明的随机抽奖实现方法 |
CN110247918A (zh) * | 2019-06-24 | 2019-09-17 | 北京艾摩瑞策科技有限公司 | 应用于区块链的摇号数据上链方法及其设备 |
CN110310097A (zh) * | 2019-07-05 | 2019-10-08 | 匿名科技(重庆)集团有限公司 | 一种智能合约的公租房可信摇号方法 |
CN110599173A (zh) * | 2019-09-20 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 区块链的共识节点确定方法、装置、设备及存储介质 |
CN110933183A (zh) * | 2019-12-16 | 2020-03-27 | 杭州羿贝科技有限公司 | 一种基于区块链的摇号方法、摇号*** |
CN110968644A (zh) * | 2019-11-29 | 2020-04-07 | 腾讯科技(深圳)有限公司 | 一种数据处理方法以及设备 |
CN110990790A (zh) * | 2019-11-29 | 2020-04-10 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及设备 |
CN111008863A (zh) * | 2019-11-28 | 2020-04-14 | 湖南天河国云科技有限公司 | 一种基于区块链的抽奖方法及*** |
CN111314069A (zh) * | 2020-02-13 | 2020-06-19 | 苏州同济区块链研究院有限公司 | 基于区块链的摇号***、方法、电子设备及存储介质 |
EP3678346A1 (en) * | 2018-09-20 | 2020-07-08 | Baidu Online Network Technology (Beijing) Co., Ltd. | Blockchain smart contract verification method and apparatus, and storage medium |
-
2020
- 2020-07-13 CN CN202010670261.XA patent/CN111884807B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180374091A1 (en) * | 2017-03-31 | 2018-12-27 | Vijay K. Madisetti | Method and System for Blockchain-Based Combined Identity, Ownership, Integrity and Custody Management |
CN107103097A (zh) * | 2017-05-22 | 2017-08-29 | 中链科技有限公司 | 基于区块链技术的抽签方法和终端设备 |
CN107742352A (zh) * | 2017-09-20 | 2018-02-27 | 黄玉宇 | 基于区块链及智能合约的去中心化抽签/排队方法及*** |
EP3678346A1 (en) * | 2018-09-20 | 2020-07-08 | Baidu Online Network Technology (Beijing) Co., Ltd. | Blockchain smart contract verification method and apparatus, and storage medium |
CN109584432A (zh) * | 2018-10-26 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 对象选取方法及装置、电子设备 |
CN109886750A (zh) * | 2019-02-25 | 2019-06-14 | 浪潮软件集团有限公司 | 一种基于区块链的透明的随机抽奖实现方法 |
CN110247918A (zh) * | 2019-06-24 | 2019-09-17 | 北京艾摩瑞策科技有限公司 | 应用于区块链的摇号数据上链方法及其设备 |
CN110310097A (zh) * | 2019-07-05 | 2019-10-08 | 匿名科技(重庆)集团有限公司 | 一种智能合约的公租房可信摇号方法 |
CN110599173A (zh) * | 2019-09-20 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 区块链的共识节点确定方法、装置、设备及存储介质 |
CN111008863A (zh) * | 2019-11-28 | 2020-04-14 | 湖南天河国云科技有限公司 | 一种基于区块链的抽奖方法及*** |
CN110968644A (zh) * | 2019-11-29 | 2020-04-07 | 腾讯科技(深圳)有限公司 | 一种数据处理方法以及设备 |
CN110990790A (zh) * | 2019-11-29 | 2020-04-10 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及设备 |
CN110933183A (zh) * | 2019-12-16 | 2020-03-27 | 杭州羿贝科技有限公司 | 一种基于区块链的摇号方法、摇号*** |
CN111314069A (zh) * | 2020-02-13 | 2020-06-19 | 苏州同济区块链研究院有限公司 | 基于区块链的摇号***、方法、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
JIASHENG LI; ZIJIAN ZHANG: ""BanFEL: A Blockchain Based Smart Contract for Fair and Efficient Lottery Scheme"", 《2019 IEEE CONFERENCE ON DEPENDABLE AND SECURE COMPUTING (DSC)》 * |
佟铮: ""基于区块链的公开可验证随机数生成方法研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112559599A (zh) * | 2020-12-18 | 2021-03-26 | 杭州趣链科技有限公司 | 基于区块链的数据查询方法、***和区块链处理装置 |
CN112988893B (zh) * | 2021-03-15 | 2023-05-12 | 中国联合网络通信集团有限公司 | 基于区块链的信息管理方法、***、区块链节点及介质 |
CN112948866A (zh) * | 2021-03-29 | 2021-06-11 | iCALC控股有限公司 | 一种数据处理方法、装置、设备及可读存储介质 |
CN112948866B (zh) * | 2021-03-29 | 2024-05-10 | iCALC控股有限公司 | 一种数据处理方法、装置、设备及可读存储介质 |
CN112949798A (zh) * | 2021-05-17 | 2021-06-11 | 北京楠昊鹏物联网科技有限公司 | 基于rfid技术的实验室设备管理方法及其*** |
CN112949798B (zh) * | 2021-05-17 | 2021-09-24 | 北京楠昊鹏物联网科技有限公司 | 基于rfid技术的实验室设备管理方法及其*** |
CN113572620A (zh) * | 2021-09-27 | 2021-10-29 | 中邮消费金融有限公司 | 一种基于区块链的线上表决方法和*** |
CN114091061A (zh) * | 2021-11-12 | 2022-02-25 | 天津理工大学 | 基于vrf和区块链的多云协同数据安全存储及审计方法 |
CN114091061B (zh) * | 2021-11-12 | 2024-05-03 | 天津理工大学 | 基于vrf和区块链的多云协同数据安全存储及审计方法 |
CN113822974A (zh) * | 2021-11-24 | 2021-12-21 | 支付宝(杭州)信息技术有限公司 | 生成虚拟形象的方法、装置、电子设备、介质和程序 |
CN115907593A (zh) * | 2023-02-14 | 2023-04-04 | 湖南炅旭生物科技有限公司 | 基于区块链的药品运输管理方法、***、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111884807B (zh) | 2021-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111884807B (zh) | 基于区块链的物品预约方法、装置、设备以及介质 | |
CN111445333B (zh) | 区块生成方法、装置、计算机设备以及存储介质 | |
CN110933163B (zh) | 区块链合约部署方法、装置、设备以及存储介质 | |
CN111444210B (zh) | 区块链共识节点管理方法、装置、设备以及存储介质 | |
CN111427957B (zh) | 区块链投票信息校验方法、装置、设备以及存储介质 | |
CN110602125B (zh) | 数据处理方法、装置、终端及存储介质 | |
CN111027028A (zh) | 基于智能合约的版权数据处理方法以及装置 | |
CN110443075A (zh) | 一种区块链智能合约验证部署的方法及装置 | |
CN112632629B (zh) | 基于区块链的投票管理方法、装置、介质及电子设备 | |
CN110601896B (zh) | 一种基于区块链节点的数据处理方法以及设备 | |
CN112686671A (zh) | 基于区块链的智能合约部署方法、装置、设备以及介质 | |
CN112700246B (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN111934870B (zh) | 区块链网络中的根证书更新方法、装置、设备以及介质 | |
CN111311211A (zh) | 一种基于区块链的数据处理方法以及设备 | |
CN111488372A (zh) | 一种数据处理方法、设备及存储介质 | |
CN111222841A (zh) | 一种基于区块链的数据分配方法及其设备、存储介质 | |
CN111090581A (zh) | 智能合约测试方法、装置、计算机设备和存储介质 | |
CN111292057A (zh) | 一种基于区块链的业务处理方法 | |
CN112907244A (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN115701078B (zh) | 跨链交易处理方法、装置、电子设备以及存储介质 | |
CN111008900A (zh) | 基于智能合约的数据分配方法以及装置 | |
CN115913734A (zh) | 应用于联盟链的用户权限管理方法、装置及设备 | |
CN117474676A (zh) | 基于区块链的数据处理方法、装置、设备以及介质 | |
CN115601091A (zh) | 一种基于区块链的票据管理方法以及相关设备 | |
CN118333288A (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 |