CN115085909B - 一种随机数生成方法、装置、计算机设备及介质 - Google Patents
一种随机数生成方法、装置、计算机设备及介质 Download PDFInfo
- Publication number
- CN115085909B CN115085909B CN202210496312.0A CN202210496312A CN115085909B CN 115085909 B CN115085909 B CN 115085909B CN 202210496312 A CN202210496312 A CN 202210496312A CN 115085909 B CN115085909 B CN 115085909B
- Authority
- CN
- China
- Prior art keywords
- transaction
- random number
- blockchain
- information
- application layer
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000004590 computer program Methods 0.000 claims description 19
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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/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/3236—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 using cryptographic hash functions
- H04L9/3239—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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Finance (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)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请实施例适用于区块链技术领域,提供了一种随机数生成方法、装置、计算机设备及介质,该方法可以应用于应用层,包括:向区块链发送存证交易,区块链包括多个共识节点,多个共识节点用于对存证交易进行同步,存证交易具有与随机数相关的交易业务数据;接收区块链针对存证交易返回的交易哈希;根据交易哈希,获取存证交易在多个共识节点的多个存储信息;基于多个存储信息,确定交易业务对应的随机数种子;将随机数种子发送至区块链,区块链用于根据随机数种子和预设的智能合约,生成随机数;接收区块链返回的随机数。采用上述方法,可以在保证可信度的情况下,快速生成随机数。
Description
技术领域
本申请属于区块链技术领域,特别是涉及一种随机数生成方法、装置、计算机设备及介质。
背景技术
区块链是一个分布式的去中心化的公共账本,具有不可逆和不可篡改的特点。区块链上的交易经常需要使用到随机数。但目前在区块链生成的随机数都有所限制和可操作控制的成分。
目前区块链生成随机数的方法主要有三种。第一种是通过第三方引入外部真随机数源。这种方法生成的是真随机数。但是这种方法受控于第三方,是一种中心化方法,与区块链的核心思想背道而驰。区块链上的节点无法证明该随机数的可信度,也就无法对随机数的真伪达成共识。
第二种是通过区块链系统中的公开信息生成种子,比如使用区块的哈希值、时间戳或难度系数等作为随机数。但这种方法存在一定的漏洞。
第三种方法是区块链上的节点先达成共识,提前规定以某组数据作为种子。比如以后天某一时段的天气温度,明天的股票价格等作为产生随机数的种子。但是这种方法生成随机数的速度受到了限制,想要生成随机数要等到相应信息被公开后才可以开始,不能随取随用。
发明内容
有鉴于此,本申请实施例提供了一种随机数生成方法、装置、计算机设备及介质,用以避免区块链生成的随机数被限制或被操控。
本申请实施例的第一方面提供了一种随机数生成方法,应用于应用层,所述方法包括:
向区块链发送存证交易,所述区块链包括多个共识节点,多个所述共识节点用于对所述存证交易进行同步,所述存证交易具有与随机数相关的交易业务数据;
接收所述区块链针对所述存证交易返回的交易哈希;
根据所述交易哈希,获取所述存证交易在多个所述共识节点的多个存储信息;
基于多个所述存储信息,确定所述交易业务数据对应的随机数种子;
将所述随机数种子发送至所述区块链,所述区块链用于根据所述随机数种子和预设的智能合约,生成随机数;
接收所述区块链针对所述随机数种子返回的所述随机数。
本申请实施例的第二方面提供了一种随机数生成方法,应用于区块链,所述方法包括:
当接收到来自应用层的存证交易时,向所述应用层返回交易哈希,所述存证交易具有与随机数相关的交易业务数据;
当接收所述应用层发送的交易哈希时,从所述区块链的多个共识节点中获取所述存证交易的多个存储信息;
将所述多个存储信息发送至所述应用层,所述应用层用于根据多个所述存储信息生成所述交易业务数据对应的随机数种子;
当接收到所述应用层根据多个所述存储信息返回的所述随机数种子时,根据所述随机数种子和预设的智能合约,生成所述随机数;
将所述随机数发送至所述应用层。
本申请实施例的第三方面提供了一种随机数生成装置,应用于应用层,所述装置包括:
第一发送模块,用于向区块链发送存证交易,所述区块链包括多个共识节点,多个所述共识节点用于对所述存证交易进行同步,所述存证交易具有与随机数相关的交易业务数据;
第一接收模块,用于接收所述区块链针对所述存证交易返回的交易哈希;
获取模块,用于根据所述交易哈希,获取所述存证交易在多个所述共识节点的多个存储信息;
确定模块,用于基于多个所述存储信息,确定所述交易业务数据对应的随机数种子;
第二发送模块,用于将所述随机数种子发送至所述区块链,所述区块链用于根据所述随机数种子和预设的智能合约,生成随机数;
第二接收模块,用于接收所述区块链针对所述随机数种子返回的所述随机数。
本申请实施例的第四方面提供了一种随机数生成装置,应用于区块链,所述装置包括:
交易哈希返回模块,用于当接收到来自应用层的存证交易时,向所述应用层返回交易哈希,所述存证交易具有与随机数相关的交易业务数据;
存储信息获取模块,用于当接收所述应用层发送的交易哈希时,从所述区块链的多个共识节点中获取所述存证交易的多个存储信息;
存储信息发送模块,用于将所述多个存储信息发送至所述应用层,所述应用层用于根据多个所述存储信息生成所述交易业务数据对应的随机数种子;
随机数生成模块,用于当接收到所述应用层根据多个所述存储信息返回的所述随机数种子时,根据所述随机数种子和预设的智能合约,生成所述随机数;
随机数发送模块,用于将所述随机数发送至所述应用层。
本申请实施例的第五方面提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面或第二方面所述的方法。
本申请实施例的第六方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面或第二方面所述的方法。
本申请实施例的第七方面提供了一种计算机程序产品,当所述计算机程序产品在计算机设备上运行时,使得所述计算机设备执行上述第一方面或第二方面所述的方法。
与现有技术相比,本申请实施例包括以下优点:
本申请实施例,应用层接收到存证交易时,可以将存证交易发送至区块链;区块链接收到交易存证时,区块链中的各个共识节点将会存储该存证交易,每个共识节点存储该存证交易后,具有对应的存储信息;区块链可以生成存证交易的交易哈希,然后向应用层返回该存证交易的交易哈希;应用层可以通过该交易哈希从区块链的各个共识节点中查找该存证交易的存储信息;应用层接收到存储信息后,可以根据多个存储信息生成随机数种子,然后基于该随机数种子调用区块链中的智能合约,从而生成交易业务所需的随机数。在本申请实施例中,由于信息在网络中的延时原因,存证交易被存储到各个共识节点的时间是不可控的,无法人为进行操作和篡改。因此存储信息可以不受操控,从而使得对应生成的随机数不被操控。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种随机数生成方法的步骤流程示意图;
图2是本申请实施例提供的另一种随机数生成方法的步骤流程示意图;
图3是本申请实施例提供的又一种随机数生成方法的步骤流程示意图;
图4是本申请实施例提供的再一种随机数生成方法的步骤流程示意图;
图5是本申请实施例提供的一种购买盲盒过程中随机数生成方法的步骤流程示意图;
图6是本申请实施例提供的一种随机数生成装置的示意图;
图7是本申请实施例提供的另一种随机数生成装置的示意图;
图8是本申请实施例提供的一种计算机设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域技术人员应当清楚,在没有这些具体细节的其他实施例中也可以实现本申请。在其他情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“实施例提供”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在实施例提供中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
下面通过具体实施例来说明本申请的技术方案。
参照图1,示出了本申请实施例提供的一种随机数生成方法的步骤流程示意图,具体可以包括如下步骤:
S101,应用层向区块链发送存证交易,区块链包括多个共识节点,多个共识节点用于对存证交易进行同步,存证交易具有与随机数相关的交易业务数据。
本实施例中的方法执行主体为应用层,应用层可以和区块链进行数据通信,从而调用区块链中的业务。
区块链数据存证是把数据存到区块链上,达到防篡改、可追溯、数据来源可信任的目的。在本实施例中,存证交易可以包括与随机数生成相关的交易业务数据。比如用户进行抽奖、抽取盲盒等交易业务,都需要随机数的参与,交易业务数据可以包括抽奖时间、抽奖项目、抽奖数量等信息。存证交易可以包括用户姓名、交易时间、交易编号等信息。应用层可以向区块链中的一个节点发起存证交易。区块链接收到该存证交易后,可以将该存证交易广播至区块链中的各个共识节点中。区块链中的各个共识节点接收到存证交易后,可以将该存证交易写入到共识节点中。由于存在网络延迟,各个共识节点写入存证交易的时间不同。
S102,应用层接收区块链针对存证交易返回的交易哈希。
具体地,交易哈希可以为唯一标识该存证交易的唯一标识符。区块链可以生成存证交易对应的交易哈希,然后将交易哈希返回至应用层中。应用层接收到该交易哈希之后,可以将该交易哈希与存证交易关联存储。同样地,区块链中地每个共识节点对于该存证交易,也会拥有唯一的交易哈希。基于该唯一的交易哈希,应用层和共识节点可以唯一确定一个存证交易。
S103,根据交易哈希,获取存证交易在多个共识节点的多个存储信息。
具体地,应用层可以将交易哈希发送至区块链,区块链接收到该交易哈希后,可以对各个共识节点进行轮询,确定交易哈希对应的存证交易在共识节点中的存储信息。
上述存储信息可以包括存证交易被写入共识节点的时间戳以及存证交易的位置信息。其中,存证交易的位置信息可以包括:交易额外信息和存证交易在区块中的第一位置。由于存证交易被存储到各个共识节点是互不干涉的,所以各个存储信息之间互不影响,互不关联;并且存证交易被存储到共识节点的时间位置等是不确定的,因此,存储信息是一个完全不确定、不依赖于第三方且不被操控的数据。
S104,基于多个存储信息,应用层确定交易业务数据对应的随机数种子。
具体地,可以将所有的存储信息按照一定的顺序拼接得到字符串,再对字符串进行运算,得到随机数种子。在进行运算时,可以采用哈希运算,将得到的哈希值作为随机数种子。也可以采用其他算法进行运算,比如可以采用MD5 算法。当然,还可以采用自定义的算法,将字符串转换为对应的随机数种子。
S105,应用层将随机数种子发送至区块链,区块链用于根据随机数种子和预设的智能合约,生成随机数。
具体地,当需要获取随机数时,应用层可以将随机数种子发送至区块链,区块链可以调用预设的智能合约,根据该随机数种子生成随机数。
预设的智能合约可以包括一个将随机数种子映射到随机数的算法,该合约还可以包括其他输入参数,比如随机数的起始编号、编号范围以及需要随机数的数量。
在一种可能的实现方式中,可以将随机数种子、随机数的起始编号、编号范围以及需要随机数的数量输入到智能合约中,生成随机数列表,随机数列表中可以包括至少一个随机数。
S106,应用层接收区块链针对随机数种子返回的随机数。
应用层接收区块链针对该随机数种子返回的随机数,可以将该随机数发送至交易业务对应的用户,以供他用户查看结果。
在本申请实施例中,在生成随机数种子时,采用了存证交易被写入到区块链的多个共识节点的存储信息;由于每个共识节点的存储信息都无法预测且不受操控,因此基于多个存储信息得到的随机数种子也是随机的;然后利用随机数种子生成的随机数也不被操控不受限制,可以满足区块链对随机数的要求。
参照图2,示出了本申请实施例提供的另一种随机数生成方法的步骤流程示意图,具体可以包括如下步骤:
S201,应用层向区块链发送存证交易,区块链包括多个共识节点,多个共识节点用于对存证交易进行同步,存证交易具有与随机数相关的交易业务数据。
S202,应用层接收区块链针对存证交易返回的交易哈希。
本实施例的S201-S202与上一实施例中的S101-S102类似,可以相互参考,在此不赘述。
S203,根据交易哈希,应用层获取存证交易在多个共识节点的多个存储信息;存储信息包括存证交易被写入共识节点的时间戳、存证交易所在的交易在区块中的第一位置、存证交易的交易额外信息和/或所述存证交易所在区块的区块编号。
在一种可能的实现方式中,应用层可以向区块链的多个共识节点发送交易哈希,共识节点可以根据交易哈希确定对应的存证交易,然后获取存证交易在共识节点的区块信息,再将区块信息发送至应用层;应用层接收多个区块信息,然后对区块信息进行解析,得到存证交易的存储信息,存储信息可以包括存证交易被写入共识节点的时间戳、存证交易所在的交易在区块中的第一位置、存证交易的交易额外信息和/或所述存证交易所在区块的区块编号。
存证交易被存储在区块中,每个区块都具有区块编号,从上述存储信息中可以解析得到存证交易所在区块的区块编号,区块编号可以用于识别区块。区块中可以包括多个交易表,每个交易表中可以包括多个存证交易,上述第一位置可以为存证交易所在的交易表的位置;上述交易额外信息,可以用来确定存证交易在交易表中的位置。也可以理解为,交易额外信息为存证交易在区块中的第二位置。根据第一位置和第二位置,可以唯一确定区块中该存证交易所在的位置。
S204,将多个时间戳按照预设的规则进行拼接得到字符串。
具体地,可以按照预先设定的顺序将存证时间戳拼接成字符串。比如,可以按照接收到存证时间戳的顺序,对时间戳进行拼接,得到字符串。也可以设定共识节点的顺序,然后根据共识节点的顺序对存证时间戳进行拼接,得到字符串。
S205,对字符串、第一位置和交易额外信息进行运算,得到随机数种子。
由于多个存证交易可以在同一个区块中,那么存在一种情况:多个存证交易被写入共识节点的时间戳是相同的。基于交易额外信息和第一位置,可以唯一确定区块中的一个存证交易。因此,采用时间戳、第一位置以及交易额外信息来生成随机数种子,可以使存证交易对应一个唯一的随机数种子。
S206,将随机数种子发送至区块链,区块链用于根据随机数种子和预设的智能合约,生成随机数。
具体地,在生成随机数种子时,是调用区块链上的智能合约来实现的。可以将随机数种子发送至区块链,然后区块链根据该随机数种子和预设的智能合约生成对应的随机数。
在一种可能的实现方式中,该交易业务具有对应的随机数起始编号、编号范围将随机数种子和随机数数量,可以将这些信息全部发送至区块链。区快链可以将随机数种子、随机数起始编号、编号范围和交易业务所需的随机数数量发送至区块链,以调用区块链中的智能合约,得到随机数列表,随机数列表用于存放至少一个随机数。
在一种可能的实现方式中,当接收到用户执行交易业务的信息时,确定用户对应的交易记录;根据交易记录,确定对应的随机数种子;然后再将随机数种子。比如,用户购买一个盲盒,可以生成一个对应的随机数种子;当用户要打开该盲盒时,应用层就可以将其对应的信息发送至区块链,区块链调用智能合约,生成对应的随机数。
S207,应用层接收区块链针对随机数种子返回的随机数。
在本申请实施例中,可以利用存证交易分别被写入多个共识节点的多个时间戳,生成随机数种子。由于存证交易被写入各个公式节点的时间是不确定的,因此可以保证多个时间戳无法操控,不受限制;从而使得随机数种子不受操控不受限制。区块链基于该随机数种子生成的随机数同样不受操控不受限制。
参照图3,示出了本申请实施例提供的又一种随机数生成方法的步骤流程示意图,具体可以包括如下步骤:
S301,当接收到来自应用层的存证交易时,区块链向应用层返回交易哈希,存证交易具有与随机数相关的交易业务数据。
本申请实施例的执行主体为区块链,具体可以为区块链中的一个节点。为了提高性能,可以将多个存证交易打包到一个区块中进行操作。区块中可以包括多个交易表,每个交易表中可以包括多个存证交易,每笔交易中的多个存证交易与多个交易额外信息一一对应;交易额外信息可以为用户信息。每个存证交易在区块中具有一个唯一的位置信息,位置信息包括第一位置信息和第二位置信息,第一位置信息为存证交易对应的交易额外信息在交易表的位置,第二位置信息为存证交易所在的交易表在区块中的位置。
区块链将存证交易广播至共识节点,可以实现区块链各个节点之间的数据同步。区块可以具有唯一的标识信息,比如可以采用去中心化身份(Decentralized Identity,DID)进行标识,对区块的标识信息进行计算可以得到交易哈希,基于该交易哈希,区块链可以从各个共识节点中获取区块的区块信息。
S302,当接收应用层发送的交易哈希时,从区块链的多个共识节点中获取存证交易的多个存储信息。
上述存储信息可以包括存证交易被写入共识节点时的时间戳、第一位置信息和第二位置信息。根据存证交易被写入共识节点时的时间戳、第一位置信息和第二位置信息,可以唯一确定一个对应的存证交易。
上述存储信息是通过对区块信息进行解析得到,区块信息解析还可以得到存证交易所在区块的区块编号。
S303,区块链将多个存储信息发送至应用层,应用层用于根据多个存储信息生成交易业务数据对应的随机数种子。
从各个共识节点中轮询得到多个存储信息后,区块链可以将多个存储信息返回至应用层。应用层可以根据多个存储信息生成对应的随机数种子。
S304,当接收到应用层根据多个存储信息返回的随机数种子时,区块链根据随机数种子和预设的智能合约,生成随机数。
具体地,当接收到随机数种子时,可以确定随机数起始编号、编号范围以及交易业务所需的随机数数量;然后将随机数种子、随机数起始编号、编号范围和交易业务所需的随机数数量输入到智能合约中,得到随机数列表,随机数列表用于存放至少一个随机数。
S305,区块链将随机数发送至应用层。
区块链可以将随机数列表发送至应用层。
本实施例中,存证交易可以被写入区块中,按照区块被写入共识节点,可以避免共识节点之间频繁的通信,节省了资源,提高了性能。通过存证交易在区块中唯一的位置信息,确保了每个存证交易对应的随机数是唯一的。
需要说明的是,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
参照图4,示出了本申请实施例提供的再一种随机数生成方法的步骤流程示意图。
如图4所示,平台向区块链发起一个交易。该平台可以为应用层,用户可以通过应用层进行存证交易,从而实现对应的交易业务。该交易为存证交易,存证交易可以包括交易额外记录内容(extra),交易额外记录内容中记录与随机数生成相关的参数。业务场景不同,交易内容参数不同。比如,用户进行抽奖,则存证交易需要记录用户姓名、参与时间、参与编号等信息。用户抽取盲盒,则存证交易可以记录一个用户的购买记录,购买记录可以包括用户姓名,用户 DID等,DID标识是一个特定格式的字符串,用来代表一个实体的数字身份。 DID是为了使用户在这个购买业务中只能生成一个随机数,防止用户发现抽奖结果或盲盒抽取结果不符合用户期望时,再次生成随机数的行为。在本实施例中,交易额外记录内容可以如下所示:
第一笔交易
did:hpc:redcave:8u39jdiwoe
did:hpc:redcave:ioekjwsf131
第一个用户(did:hpc:redcave:8u39jdiwoe)
-“did在交易额外记录(extra)中的位置”是1(简称didindex)
第二个用户(did:hpc:redcave:ioekjwsf131)
-“did在交易额外记录(extra)中的位置”是2
在实际应用中,为了提高性能,一笔交易会记录多个用户的购买记录。多笔交易会打包成一个区块。但由于生成随机数种子的方式是基于“区块”在每个节点写入时间来确定的,所以在同一个区块中所有的交易中的所有用户的随机数种子都是相同的,无法达成每个用户的每笔交易会生成不一样的随机数的目标。所以交易额外记录内容还需要记录用户在交易中的位置以作为生成随机数种子的参数之一。
本实施例中,区块中的信息可以如下所示:
第xxx个区块
第一笔交易
did:hpc:redcave:8u39jdiwoe
did:hpc:redcave:ioekjwsf131
第二笔交易
did:hpc:redcave:oiuk32je00
did:hpc:redcave:9jijrij2901u
did:hpc:redcave:oikj32ew12
第一个用户(did:hpc:redcave:8u39jdiwoe)
-“did在extra中的位置”是1(简称didindex)
-“交易在区块中的位置”也是1(简称为交易index)
区块链链上n个共识节点接收到这个存证交易,开始写入信息,并记录写入时刻的时间戳。区块链中的各个共识节点需要同步交易中的信息数据,写入自己的账本中。各节点的系统均记录下写入信息时刻的时间戳。
当这n个共识节点都写完交易信息后,区块链向平台返回一个交易哈希。
平台可以通过交易哈希向所有共识节点查询该存证交易的时间戳,然后根据多个时间戳拼接得到1个字符串。按照一个既定规则将这n个时间戳进行拼接得到一个字符串。随后平台进行信息记录。平台记录内容与业务场景有关,业务场景不同,记录内容参数不同。比如,用户进行抽奖,平台需要记录用户抽奖存证交易的交易哈希,n个时间戳拼接后的字符串等。比如,用户抽取盲盒,平台需要记录用户购买盲盒存证交易的交易哈希,交易的额外记录信息,n个时间戳拼接后的字符串,用户所在交易在区块中的位置(index),使在同一个区块中的不同交易获得不同的随机数种子。
在生成随机数时,可以对提前拼接好的字符串进行哈希运算,得到1个定长的哈希值即随机数种子。将这个随机数种子、起始编号和编号范围等作为参数调用合约。区块链上的合约返回一个数字列表,得到随机数。
为了对本申请中方案进行更好地阐述,图5示出了本申请实施例提供的一种购买盲盒过程中随机数生成方法的步骤流程示意图。图5所示的应用层可以为区块链中一个节点的应用层,SDK可以为应用层的一部分,用于实现应用层与区块链的对接。用户通过该应用层可以进行购买盲盒和打开盲盒的操作。用户通过应用层购买盲盒时,应用层向SDK发起盲盒购买存证交易,并记录与存证交易相关的额外信息,比如用户姓名、参与时间、参与编号等信息。
区块链上的n个共识节点进行存证交易记录,并记录下写入信息时刻的时间戳。该存证交易是存在于区块中的,区块中可以包括多笔交易,一笔交易可以记录多个用户的购买记录。
所有节点同步信息完成后,区块链返回一个针对该存证交易的交易哈希。通过交易哈希可以查询共识节点该区块号的区块信息。应用层可以记录该交易哈希。
SDK通过该交易哈希查询多个节点中的多个区块信息,然后区块链中的多个节点向SDK返回区块信息。
SDK解析这n个节点的区块信息,得到n个节点写入存证交易的时间戳,交易额外信息以及交易在区块中的位置。并将这n个时间戳按一定规则进行拼接,得到一个字符串。
随后应用层记录用户购买的盲盒存证的交易哈希、区块信息包括交易的额外信息、交易在区块中的位置和拼接后的字符串这4个参数。
当应用层接收到用户打开盲盒的指令时,应用层确定用户身份,然后确定用户对应的哈希值,再根据哈希值确定用户购买记录对应的字符串、用户did在交易中的位置(didindex)和交易在区块中的位置。
SDK可以将字符串、用户did在交易中的位置和交易在区块中的位置这3 个参数进行哈希运算得到一个哈希值即随机数种子。
之后SDK可以采用随机数种子、盲盒的起始编号、编号范围和用户抽取盲盒个数作为参数调用合约得到1个随机数列表,该随机数列表中的随机数既是盲盒编号。
在本实施例中,随机数的生成过程不依赖于外部第三方,并且利用区块链上的数据,基于存证交易所在的区块在每个节点的写入时间进行随机数的生成,是一种去中心化的方法,与区块链的核心思想一致。
再者,由于信息在网络中的延时原因,消息在节点中传播的时间是不可控的,无法人为进行操作,篡改。因此,本实施例中生成的随机数受他人控制和影响的程度小。
此外,相比于传统用区块链生成随机数的方式:约定第1000个区块的区块哈希作为随机数种子,要提前约定好而且要等到第1000个区块产生了才知道随机数。本方法因为以每个节点写入时间为参数而且已经提前拼接好字符串,所以可以迅速生成随机数种子,实现对随机数的随取随用。
参照图6,示出了本申请实施例提供的一种随机数生成装置的示意图,该装置可以应用于应用层,具体可以包括第一发送模块61、第一接收模块62、获取模块63、确定模块64、第二发送模块65和第二接收模块66,其中:
第一发送模块61,用于向区块链发送存证交易,所述区块链包括多个共识节点,多个所述共识节点用于对所述存证交易进行同步,所述存证交易具有与随机数相关的交易业务数据;
第一接收模块62,用于接收所述区块链针对所述存证交易返回的交易哈希;
获取模块63,用于根据所述交易哈希,获取所述存证交易在多个所述共识节点的多个存储信息;
确定模块64,用于基于多个所述存储信息,确定所述交易业务数据对应的随机数种子;
第二发送模块65,用于将所述随机数种子发送至所述区块链,所述区块链用于根据所述随机数种子和预设的智能合约,生成随机数;
第二接收模块66,用于接收所述区块链针对所述随机数种子返回的所述随机数。
在一种可能的实现方式中,所述存证交易具有交易信息,上述获取模块62 包括:
发送子模块,用于向所述区块链的多个所述共识节点发送所述交易哈希,所述交易哈希用于所述共识节点获取所述存证交易在所述共识节点的区块信息;
接收子模块,用于接收多个所述区块信息;
得到子模块,用于对所述区块信息进行解析,得到所述存证交易的存储信息,所述存储信息包括所述存证交易被写入所述共识节点的时间戳、所述存证交易所在的交易在所述区块中的第一位置、所述存证交易的交易额外信息和、或所述存证交易所在区块的区块编号。
在一种可能的实现方式中,上述确定模块63包括:
拼接子模块,用于将多个所述时间戳按照预设的规则进行拼接得到字符串;
运算子模块,用于对所述字符串、所述第一位置和所述交易额外信息进行运算,得到所述随机数种子。
在一种可能的实现方式中,上述第二发送模块65包括:
发送单元,用于将所述随机数种子、随机数起始编号、编号范围和所述交易业务所需的随机数数量发送至所述区块链,以调用所述区块链中的所述智能合约,得到随机数列表,所述随机数列表用于存放至少一个随机数。
在一种可能的实现方式中,上述装置还包括:
交易记录确定模块,用于当接收到用户执行交易业务的信息时,确定所述用户对应的交易记录;
随机数种子茶轴模块,用于根据所述交易记录,确定对应的随机数种子。
参照图7,示出了本申请实施例提供的另一种随机数生成装置的示意图,该装置可以应用于区块链,具体可以包括交易哈希返回模块71、存储信息获取模块72、存储信息发送模块73、随机数生成模块74和随机数发送模块75,其中:
交易哈希返回模块71,用于当接收到来自应用层的存证交易时,向所述应用层返回交易哈希,所述存证交易具有与随机数相关的交易业务数据;
存储信息获取模块72,用于当接收所述应用层发送的交易哈希时,从所述区块链的多个共识节点中获取所述存证交易的多个存储信息;
存储信息发送模块73,用于将所述多个存储信息发送至所述应用层,所述应用层用于根据多个所述存储信息生成所述交易业务数据对应的随机数种子;
随机数生成模块74,用于当接收到所述应用层根据多个所述存储信息返回的所述随机数种子时,根据所述随机数种子和预设的智能合约,生成所述随机数;
随机数发送模块75,用于将所述随机数发送至所述应用层。
在一种可能的实现方式中,上述随机数生成模块74,包括:
确定子模块,用于当接收到所述随机数种子时,确定随机数起始编号、编号范围以及所述交易业务所需的随机数数量;
随机数生成子模块,用于将所述随机数种子、所述随机数起始编号、所述编号范围和所述交易业务所需的随机数数量输入到所述智能合约中,得到随机数列表,所述随机数列表用于存放至少一个随机数。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述得比较简单,相关之处参见方法实施例部分的说明即可。
图8为本申请实施例提供的一种计算机设备的结构示意图。如图8所示,该实施例的计算机设备8包括:至少一个处理器80(图8中仅示出一个)处理器、存储器81以及存储在所述存储器81中并可在所述至少一个处理器80上运行的计算机程序82,所述处理器80执行所述计算机程序82时实现上述任意各个方法实施例中的步骤。
该计算机设备可包括,但不仅限于,处理器80、存储器81。本领域技术人员可以理解,图8仅仅是计算机设备8的举例,并不构成对计算机设备8的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器80可以是中央处理单元(Central Processing Unit,CPU),该处理器80还可以是其他通用处理器、数字信号处理器(Digital Signal Processor, DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器81在一些实施例中可以是所述计算机设备8的内部存储单元,例如计算机设备8的硬盘或内存。所述存储器81在另一些实施例中也可以是所述计算机设备8的外部存储设备,例如所述计算机设备8上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器81还可以既包括所述计算机设备8的内部存储单元也包括外部存储设备。所述存储器81用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在计算机设备上运行时,使得计算机设备执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到计算机设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM, Random AccessMemory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制。尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种随机数生成方法,其特征在于,应用于应用层,所述方法包括:
向区块链发送存证交易,所述区块链包括多个共识节点,多个所述共识节点用于对所述存证交易进行同步,所述存证交易具有与随机数相关的交易业务数据;
接收所述区块链针对所述存证交易返回的交易哈希;
根据所述交易哈希,获取所述存证交易在多个所述共识节点的多个存储信息;
基于多个所述存储信息,确定所述交易业务数据对应的随机数种子;
将所述随机数种子发送至所述区块链,所述区块链用于根据所述随机数种子和预设的智能合约,生成随机数;
接收所述区块链针对所述随机数种子返回的所述随机数。
2.如权利要求1所述的方法,其特征在于,所述根据所述交易哈希,获取所述存证交易在多个所述共识节点的多个存储信息,包括:
向所述区块链的多个所述共识节点发送所述交易哈希,所述交易哈希用于所述共识节点获取所述存证交易在所述共识节点的区块信息;
接收多个所述区块信息;
对所述区块信息进行解析,得到所述存证交易的存储信息,所述存储信息包括所述存证交易被写入所述共识节点的时间戳、所述存证交易所在的交易在所述区块中的第一位置、所述存证交易的交易额外信息和/或所述存证交易所在区块的区块编号。
3.如权利要求2所述的方法,其特征在于,所述基于多个所述存储信息,确定所述交易业务的随机数种子,包括:
将多个所述时间戳按照预设的规则进行拼接得到字符串;
对所述字符串、所述第一位置和所述交易额外信息进行运算,得到所述随机数种子。
4.如权利要求1所述的方法,其特征在于,所述将所述随机数种子发送至所述区块链,所述区块链用于根据所述随机数种子和预设的智能合约,生成随机数,包括:
将所述随机数种子、随机数起始编号、编号范围和所述交易业务所需的随机数数量发送至所述区块链,以调用所述区块链中的所述智能合约,得到随机数列表,所述随机数列表用于存放至少一个随机数。
5.如权利要求4所述的方法,其特征在于,在根据所述随机数种子和预设的智能合约,生成随机数之前,还包括:
当接收到用户执行交易业务的信息时,确定所述用户对应的交易记录;
根据所述交易记录,确定对应的随机数种子。
6.一种随机数生成方法,其特征在于,应用于区块链,所述方法包括:
当接收到来自应用层的存证交易时,向所述应用层返回交易哈希,所述存证交易具有与随机数相关的交易业务数据;
当接收所述应用层发送的交易哈希时,从所述区块链的多个共识节点中获取所述存证交易的多个存储信息;
将所述多个存储信息发送至所述应用层,所述应用层用于根据多个所述存储信息生成所述交易业务数据对应的随机数种子;
当接收到所述应用层根据多个所述存储信息返回的所述随机数种子时,根据所述随机数种子和预设的智能合约,生成所述随机数;
将所述随机数发送至所述应用层。
7.如权利要求6所述的方法,其特征在于,所述当接收到所述应用层根据多个所述存储信息返回的所述随机数种子时,根据所述随机数种子和预设的智能合约,生成所述随机数,包括:
当接收到所述随机数种子时,确定随机数起始编号、编号范围以及所述交易业务所需的随机数数量;
将所述随机数种子、所述随机数起始编号、所述编号范围和所述交易业务所需的随机数数量输入到所述智能合约中,得到随机数列表,所述随机数列表用于存放至少一个随机数。
8.一种随机数生成装置,其特征在于,应用于应用层,所述装置包括:
第一发送模块,用于向区块链发送存证交易,所述区块链包括多个共识节点,多个所述共识节点用于对所述存证交易进行同步,所述存证交易具有与随机数相关的交易业务数据;
第一接收模块,用于接收所述区块链针对所述存证交易返回的交易哈希;
获取模块,用于根据所述交易哈希,获取所述存证交易在多个所述共识节点的多个存储信息;
确定模块,用于基于多个所述存储信息,确定所述交易业务数据对应的随机数种子;
第二发送模块,用于将所述随机数种子发送至所述区块链,所述区块链用于根据所述随机数种子和预设的智能合约,生成随机数;
第二接收模块,用于接收所述区块链针对所述随机数种子返回的所述随机数。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210496312.0A CN115085909B (zh) | 2022-05-09 | 2022-05-09 | 一种随机数生成方法、装置、计算机设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210496312.0A CN115085909B (zh) | 2022-05-09 | 2022-05-09 | 一种随机数生成方法、装置、计算机设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115085909A CN115085909A (zh) | 2022-09-20 |
CN115085909B true CN115085909B (zh) | 2024-06-25 |
Family
ID=83247567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210496312.0A Active CN115085909B (zh) | 2022-05-09 | 2022-05-09 | 一种随机数生成方法、装置、计算机设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115085909B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116346349B (zh) * | 2023-03-03 | 2023-10-20 | 广州玩胜网络科技有限公司 | 基于区块链和nft的数字盲盒管理方法及系统 |
CN117220947B (zh) * | 2023-09-13 | 2024-06-07 | 中国南方电网有限责任公司 | 基于区块链的数据存证方法、装置、计算机设备、存储介质和程序产品 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569668A (zh) * | 2019-09-11 | 2019-12-13 | 北京邮电大学 | 基于区块链的数据加密存储方法、装置、设备和介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110046996B (zh) * | 2019-01-18 | 2020-09-15 | 阿里巴巴集团控股有限公司 | 数据处理方法和装置 |
CN111080445B (zh) * | 2019-10-28 | 2022-06-17 | 北京大学 | 一种基于图结构的可信存证方法与系统 |
CN110825349B (zh) * | 2019-11-14 | 2023-03-28 | 深圳市迅雷网络技术有限公司 | 随机数生成方法、区块链节点、系统及介质 |
CN110941418B (zh) * | 2019-11-26 | 2022-04-01 | 杭州浮云网络科技有限公司 | 一种随机数生成的方法、装置、设备及可读存储介质 |
CN111596890A (zh) * | 2020-04-16 | 2020-08-28 | 浪潮云信息技术股份公司 | 一种基于分布式协议的区块链随机数种子生成方法、设备及介质 |
CN111865587B (zh) * | 2020-08-07 | 2021-08-31 | 腾讯科技(深圳)有限公司 | 数据处理方法、区块链节点设备、电子设备及计算机程序 |
-
2022
- 2022-05-09 CN CN202210496312.0A patent/CN115085909B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569668A (zh) * | 2019-09-11 | 2019-12-13 | 北京邮电大学 | 基于区块链的数据加密存储方法、装置、设备和介质 |
Non-Patent Citations (1)
Title |
---|
一种基于区块链的泛用型数据隐私保护的安全多方计算协议;刘峰 等;计算机研究与发展;20210208;第58卷(第2期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115085909A (zh) | 2022-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115085909B (zh) | 一种随机数生成方法、装置、计算机设备及介质 | |
CN109327528B (zh) | 一种基于区块链的节点管理方法和装置 | |
CN110311790B (zh) | 一种跨链发送可认证消息的方法和装置 | |
CN110288345B (zh) | 跨链通信方法、装置、主链节点及存储介质 | |
CN110046996B (zh) | 数据处理方法和装置 | |
CN108667632B (zh) | 基于区块链的信用记录共享方法及装置、电子设备 | |
CN110430162B (zh) | 一种跨链发送可认证消息的方法和装置 | |
CN109615383B (zh) | 基于区块链的数据存证、获取方法和装置 | |
CN111901121B (zh) | 跨区块链的认证方法及装置、电子设备 | |
CN110033244B (zh) | 基于区块链的智能合约执行方法及装置和电子设备 | |
CN110851879B (zh) | 一种基于存证区块链的侵权存证方法、装置及设备 | |
CN108389130B (zh) | 一种生成多交易模式联盟链的方法 | |
CN112000730B (zh) | 基于区块链的溯源信息写入、溯源信息验证的方法、系统 | |
CN110189122B (zh) | 为区块链上的数据锚定时间的方法及装置、电子设备 | |
CN109905351B (zh) | 存储数据的方法、装置、服务器和计算机可读存储介质 | |
CN112966311B (zh) | 智能合约校验方法及装置和电子设备 | |
CN112765268A (zh) | 基于区块链的数据隐私保护方法、装置及设备 | |
CN111192146B (zh) | 区块链数据的订正方法及装置 | |
CN112287033B (zh) | 一种数据同步方法、设备以及计算机可读存储介质 | |
CN111817859A (zh) | 基于零知识证明的数据共享方法、装置、设备及存储介质 | |
CN110417742B (zh) | 跨链发送、中转、接收可认证消息的方法、装置及存储介质 | |
CN112819464B (zh) | 一种智能合约处理方法、处理装置、终端设备及存储介质 | |
JP2000338868A (ja) | 公開鍵証明書発行方法、検証方法、システム及び記録媒体 | |
CN112632619A (zh) | 跨链存证方法、装置、终端设备及存储介质 | |
CN113064899B (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 |