CN108009918A - 区块链共识算法交易系统的记账方法及电子设备 - Google Patents
区块链共识算法交易系统的记账方法及电子设备 Download PDFInfo
- Publication number
- CN108009918A CN108009918A CN201711182863.5A CN201711182863A CN108009918A CN 108009918 A CN108009918 A CN 108009918A CN 201711182863 A CN201711182863 A CN 201711182863A CN 108009918 A CN108009918 A CN 108009918A
- Authority
- CN
- China
- Prior art keywords
- node
- random
- result
- calculation
- transaction system
- 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
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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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/12—Accounting
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
Abstract
本发明公开一种区块链共识算法交易系统的记账方法及电子设备,方法包括:响应于交易系统在选举发起时间发起的选举,在所述选举发起时间开始进行预设随机计算,所述随机计算对选举发起时间所选取的随机值进行计算,以得到满足预设条件的计算结果;经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员;所有交易由所述随机记账员进行签名确认。本发明通过随机计算的方式来克服伪随机数的问题,使得所选举的记账人为真实随机,从而避免假冒记账人的问题,从而使得交易时的确认时间可以缩短,在保证交易真实可靠的同时,能够提高交易效率。
Description
技术领域
本发明涉及区块链共识算法交易系统相关技术领域,特别是一种区块链共识算法交易系统的记账方法及电子设备。
背景技术
区块链共识算法交易系统,例如比特币等,采用采用工作量证明方式(power ofwork,POW)选举出相对可信的“记账人”对交易系统中的交易进行记账。
然而,现有的记账人选举方式,是随机选择交易系统中的多个节点作为记账人,然而,随机选择的方式是通过随机数选定的,而计算机中的随机数是伪随机数,是由可确定的函数(例如,线性同余),通过一个种子(例如系统时间),来产生的伪随机数。因此,当知道了种子,或者已经产生的随机数,都可能获得接下来的随机数序列的信息。因此,现有技术所选择的记账人容易假冒,并不可靠。
为此,为了避免记账人被假冒,现有技术需要为每笔交易设定长达1个小时的确认时间,通过长时间多个记账人之间反复比较,来确认交易,造成交易时间过长。
发明内容
基于此,有必要针对现有技术的记账人选举不可靠,需要较长确认时间的技术问题,提供一种区块链共识算法交易系统的记账方法及电子设备。
本发明提供一种区块链共识算法交易系统的记账方法,包括:
响应于交易系统在选举发起时间发起的选举,在所述选举发起时间开始进行预设随机计算,所述随机计算对选举发起时间所选取的随机值进行计算,以得到满足预设条件的计算结果;
经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员;
所有交易由所述随机记账员进行签名确认。
进一步的,所述预设随机计算为:
获取所述选举发起时间的随机字符串;
在所述随机字符串后增加动态字符,以使得所述随机字符串增加所述动态字符后得到的最终字符串,经过哈希运算后得到的运算结果中,多个检测位置的值为检测字符。
更进一步的,所述根据所述计算结果进行排序,具体包括:
根据计算结果中检测位置为所述检测字符的数量进行降序排序。
再进一步的,所述检测位置为计算结果的前M个位置,其中M为大于1的自然数。
进一步的,所述经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员,具体包括:
经过预设时间后,响应于首次发起事件,向交易系统中的其他节点依次转发节点维护表,所述节点维护表包括N个数据项,每个数据项包括一节点的计算结果、以及节点的公钥,所述节点维护表根据每个数据项的计算结果进行排序,N>4,或者;
响应于收到所述节点维护表事件,将本节点的计算结果与节点维护表中每个数据项的计算结果进行排序,如果本节点的计算结果的序列为L,其中L≤N,则在节点维护表的第L项节点前插入一包括本节点的计算结果、以及本节点的公钥的数据项,并删除节点维护表的最后一个数据项,然后执行最后节点判断子步骤,否则执行最后节点判断子步骤;
如果当前节点为交易系统中最后一个收到所述节点维护表的节点,则以所述节点维护表中的N个数据项所包括的公钥对应的节点为随机记账员并向交易系统中所有节点广播,否则向下一节点转发所述节点维护表。
本发明提供一种电子设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
响应于交易系统在选举发起时间发起的选举,在所述选举发起时间开始进行预设随机计算,所述随机计算对选举发起时间所选取的随机值进行计算,以得到满足预设条件的计算结果;
经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员;
所有交易由所述随机记账员进行签名确认。
进一步的,所述预设随机计算为:
获取所述选举发起时间的随机字符串;
在所述随机字符串后增加动态字符,以使得所述随机字符串增加所述动态字符后得到的最终字符串,经过哈希运算后得到的运算结果中,多个检测位置的值为检测字符。
更进一步的,所述根据所述计算结果进行排序,具体包括:
根据计算结果中检测位置为所述检测字符的数量进行降序排序。
再进一步的,所述检测位置为计算结果的前M个位置,其中M为大于1的自然数。
进一步的,所述经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员,具体包括:
经过预设时间后,响应于首次发起事件,向交易系统中的其他节点依次转发节点维护表,所述节点维护表包括N个数据项,每个数据项包括一节点的计算结果、以及节点的公钥,所述节点维护表根据每个数据项的计算结果进行排序,N>4,或者;
响应于收到所述节点维护表事件,将本节点的计算结果与节点维护表中每个数据项的计算结果进行排序,如果本节点的计算结果的序列为L,其中L≤N,则在节点维护表的第L项节点前插入一包括本节点的计算结果、以及本节点的公钥的数据项,并删除节点维护表的最后一个数据项,然后执行最后节点判断子步骤,否则执行最后节点判断子步骤;
如果当前节点为交易系统中最后一个收到所述节点维护表的节点,则以所述节点维护表中的N个数据项所包括的公钥对应的节点为随机记账员并向交易系统中所有节点广播,否则向下一节点转发所述节点维护表。
本发明提供一种可读存储介质,所述可读存储介质存储计算机指令,当计算机执行所述计算机指令时,用于执行上述的区块链共识算法交易系统的记账方法。
本发明通过随机计算的方式来克服伪随机数的问题,使得所选举的记账人为真实随机,从而避免假冒记账人的问题,从而使得交易时的确认时间可以缩短,在保证交易真实可靠的同时,能够提高交易效率。
附图说明
图1为本发明一种区块链共识算法交易系统的记账方法的工作流程图;
图2为本发明最佳实施例一种区块链共识算法交易系统的记账方法的工作流程图;
图3为本发明一种电子设备的硬件结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明做进一步详细的说明。
如图1所示为本发明一种区块链共识算法交易系统的记账方法的工作流程图,包括:
步骤S101,响应于交易系统在选举发起时间发起的选举,在所述选举发起时间开始进行预设随机计算,所述随机计算对选举发起时间所选取的随机值进行计算,以得到满足预设条件的计算结果;
步骤S102,经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员;
步骤S103,所有交易由所述随机记账员进行签名确认。
具体来说,交易系统中的节点在选举发起时间执行步骤S101,进行随机计算,由于随机计算需要计算出最终结果,通过设置恰当的随机计算,使得所有的节点无法在预设时间内得到完全满足预设条件的计算结果,而只能得出接近预设条件的部分结果,然后步骤S102对所有节点的计算结果进行比较,选择最为接近预设条件的N个节点作为随机记账员。由于随机计算需要每个节点随机选择答案,来比较是否满足预设条件,因此,每个节点的计算结果均不相等,从而保证所选择的随机记账员的随机性,使得后续的签名确认步骤无需耗费过长的确认时间。
步骤S103在确定随机记账员后,所有交易由所述随机记账员进行签名确认。
具体来说:记账人收到一笔交易记录时,使用自己的私钥和其他记账员的公钥进行签名,并通过网络传递出去。其他记账员可以通过根据签名可以判定改签名是否为备选举的记账员的签名,如果不是,则存在欺诈风险,则放弃进一步签名。如果判定为记账人群体中的签名,则自己在对该交易验证,验证通过后,使用自己的私钥加上其他记账人的公钥混合后签名。此处签名算法可以为环签名算法。当正确的签名人数达到整个签名人数的3/4时候。可确认交易。
本发明通过随机计算的方式来克服伪随机数的问题,使得所选举的记账人为真实随机,从而避免假冒记账人的问题,从而使得交易时的确认时间可以缩短,在保证交易真实可靠的同时,能够提高交易效率。
在其中一个实施例中,所述预设随机计算为:
获取所述选举发起时间的随机字符串;
在所述随机字符串后增加动态字符,以使得所述随机字符串增加所述动态字符后得到的最终字符串,经过哈希运算后得到的运算结果中,多个检测位置的值为检测字符。
由于随机字符串为伪随机,因此,本实施例的随机计算,要求节点在随机字符串后增加动态字符,然后通过哈希运算,使得哈希运算后得到的运算结果中,多个检测位置的值为检测字符。节点通过节点在随机字符串后增加不同的动态字符,来尝试最终的计算结果,以使得最终的计算结果能够满足预设条件。由于所增加的动态字符为每个节点自行选择的,因此其随机性能够得到提高。在本实施例中的预设条件即为:经过哈希运算后得到的运算结果中,多个检测位置的值为检测字符。
在其中一个实施例中,所述根据所述计算结果进行排序,具体包括:
根据计算结果中检测位置为所述检测字符的数量进行降序排序。
在其中一个实施例中,所述检测位置为计算结果的前M个位置,其中M为大于1的自然数。
在其中一个实施例中,所述经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员,具体包括:
经过预设时间后,响应于首次发起事件,向交易系统中的其他节点依次转发节点维护表,所述节点维护表包括N个数据项,每个数据项包括一节点的计算结果、以及节点的公钥,所述节点维护表根据每个数据项的计算结果进行排序,N>4,或者;
响应于收到所述节点维护表事件,将本节点的计算结果与节点维护表中每个数据项的计算结果进行排序,如果本节点的计算结果的序列为L,其中L≤N,则在节点维护表的第L项节点前插入一包括本节点的计算结果、以及本节点的公钥的数据项,并删除节点维护表的最后一个数据项,然后执行最后节点判断子步骤,否则执行最后节点判断子步骤;
如果当前节点为交易系统中最后一个收到所述节点维护表的节点,则以所述节点维护表中的N个数据项所包括的公钥对应的节点为随机记账员并向交易系统中所有节点广播,否则向下一节点转发所述节点维护表。
具体来说,交易系统中的其中一节点会响应首次发起事件,向交易系统中的其他节点依次转发节点维护表,而其他节点在收到所述节点维护表后,会执行后续步骤。
如图2所示为本发明最佳实施例一种区块链共识算法交易系统的记账方法,包括:
步骤S101,网络中节点响应于记账人选举,获得起始时间所给定的随机字符串。
步骤S102,节点在随机字符串后面加上动态字符让整个字符串通过哈希运算(SHA256运算)后前10位为0,即SHA256(X+Ex)=0000000000?????????。
其中,动态字符可以动态变化,例如递增变化、递减变化、随机变化等,动态字符每次变化后,判断随机字符串后面加上动态字符后的整个字符串通过SHA256运算后,其前10位为0的数量,如果10位都为0,则可以停止运算,否则动态字符继续变化,直到到达指定时间。
例如当动态字符Ex为0时,SHA256(X+Ex)输出为:
"Hello,world!0"=>
1312af178c253f84028d480a6adc1e25e81caa44c749ec81976192e2ec934c64
当动态字符Ex为4250时,SHA256(X+Ex)输出为:
"Hello,world!4250"=>
0000c3af42fc31103f1fdc0151fa747ff87349a4714df7cc52ea464e12dcd4e9
因此,在某选定随机数X下,动态字符Ex为4250的SHA256运算结果,其前10位为0的个数为4,大于动态字符Ex为0的SHA256运算结果,其前10位为0的个数为0。
步骤S203,到达指定时间10分钟后,每个节点提交计算结果,并包含自己的公钥。
步骤S204,每个节点收到其他节点信息后如果自己计算的0位数大于接收到其他节点计算的0位数据,则将自己的节点数据和签名替换掉小于自己的数据,继续转发提交,直到所有的节点均完成签名。
具体来说:
维护一个节点维护表,该节点维护表如下:
经过预设时间后,交易系统其中一节点生成上述节点维护表,节点维护表中先填入其计算结果和公钥,然后向交易系统中的其他节点依次转发节点维护表;
其他节点收到节点维护表后,响应于收到所述节点维护表事件,将本节点的计算结果与节点维护表中每个数据项的计算结果进行排序比较,如果本节点的计算结果比节点维护表中的某项计算结果更优,则将本节点的计算结果和公钥插入节点维护表中相应的位置,同时删除节点维护表的最后一个数据项,如果本节点的计算结果没有比节点维护表中的计算结果更优,则无需更新节点维护表;
然后执行判断当前节点是否为交易系统中最后一个收到所述节点维护表的节点,如果是,则以所述节点维护表中的N个数据项所包括的公钥对应的节点为随机记账员并向交易系统中所有节点广播,否则向下一节点转发所述节点维护表。
步骤S205,当随机记账员收到一笔交易记录时,使用自己的私钥和其他记账员的公钥进行签名,并通过网络传递出去。每个随机记账员均通过签名判定该签名是否为被选举的随机记账员的签名,如果不是,则存在欺诈风险,则放弃进一步签名。如果判定为随机记账员的签名,则自己再对该交易验证,验证通过后,使用自己的私钥加上其他随机记账员的公钥进行混合后签名。此处签名算法优选为环签名算法。
步骤S206,当正确的签名人数达到整个签名人数的3/4时候,可确认交易。
如图3所示为本发明一种电子设备的硬件结构示意图,包括:
至少一个处理器301;以及,
与所述至少一个处理器301通信连接的存储器302;其中,
所述存储器302存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
响应于交易系统在选举发起时间发起的选举,在所述选举发起时间开始进行预设随机计算,所述随机计算对选举发起时间所选取的随机值进行计算,以得到满足预设条件的计算结果;
经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员;
所有交易由所述随机记账员进行签名确认。
图3中以一个处理器302为例。
服务器还可以包括:输入装置303和输出装置304。
处理器301、存储器302、输入装置303及显示装置304可以通过总线或者其他方式连接,图中以通过总线连接为例。
存储器302作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的区块链共识算法交易系统的记账方法对应的程序指令/模块,例如,图1、图2所示的方法流程。处理器301通过运行存储在存储器302中的非易失性软件程序、指令以及模块,从而执行各种功能应用以及数据处理,即实现上述实施例中的区块链共识算法交易系统的记账方法。
存储器302可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据区块链共识算法交易系统的记账方法的使用所创建的数据等。此外,存储器302可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器302可选包括相对于处理器301远程设置的存储器,这些远程存储器可以通过网络连接至执行区块链共识算法交易系统的记账方法的装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置303可接收输入的用户点击,以及产生与区块链共识算法交易系统的记账方法的用户设置以及功能控制有关的信号输入。显示装置304可包括显示屏等显示设备。
在所述一个或者多个模块存储在所述存储器302中,当被所述一个或者多个处理器301运行时,执行上述任意方法实施例中的区块链共识算法交易系统的记账方法。
在其中一个实施例中,所述预设随机计算为:
获取所述选举发起时间的随机字符串;
在所述随机字符串后增加动态字符,以使得所述随机字符串增加所述动态字符后得到的最终字符串,经过哈希运算后得到的运算结果中,多个检测位置的值为检测字符。
在其中一个实施例中,所述根据所述计算结果进行排序,具体包括:
根据计算结果中检测位置为所述检测字符的数量进行降序排序。
在其中一个实施例中,所述检测位置为计算结果的前M个位置,其中M为大于1的自然数。
在其中一个实施例中,所述经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员,具体包括:
经过预设时间后,响应于首次发起事件,向交易系统中的其他节点依次转发节点维护表,所述节点维护表包括N个数据项,每个数据项包括一节点的计算结果、以及节点的公钥,所述节点维护表根据每个数据项的计算结果进行排序,N>4,或者;
响应于收到所述节点维护表事件,将本节点的计算结果与节点维护表中每个数据项的计算结果进行排序,如果本节点的计算结果的序列为L,其中L≤N,则在节点维护表的第L项节点前插入一包括本节点的计算结果、以及本节点的公钥的数据项,并删除节点维护表的最后一个数据项,然后执行最后节点判断子步骤,否则执行最后节点判断子步骤;
如果当前节点为交易系统中最后一个收到所述节点维护表的节点,则以所述节点维护表中的N个数据项所包括的公钥对应的节点为随机记账员并向交易系统中所有节点广播,否则向下一节点转发所述节点维护表。
本发明一种可读存储介质,所述可读存储介质存储计算机指令,当计算机执行所述计算机指令时,用于执行上述的区块链共识算法交易系统的记账方法。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (11)
1.一种区块链共识算法交易系统的记账方法,其特征在于,包括:
响应于交易系统在选举发起时间发起的选举,在所述选举发起时间开始进行预设随机计算,所述随机计算对选举发起时间所选取的随机值进行计算,以得到满足预设条件的计算结果;
经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员;
所有交易由所述随机记账员进行签名确认。
2.根据权利要求1所述的区块链共识算法交易系统的记账方法,其特征在于,所述预设随机计算为:
获取所述选举发起时间的随机字符串;
在所述随机字符串后增加动态字符,以使得所述随机字符串增加所述动态字符后得到的最终字符串,经过哈希运算后得到的运算结果中,多个检测位置的值为检测字符。
3.根据权利要求2所述的区块链共识算法交易系统的记账方法,其特征在于,所述根据所述计算结果进行排序,具体包括:
根据计算结果中检测位置为所述检测字符的数量进行降序排序。
4.根据权利要求2或3所述的区块链共识算法交易系统的记账方法,其特征在于,所述检测位置为计算结果的前M个位置,其中M为大于1的自然数。
5.根据权利要求1所述的区块链共识算法交易系统的记账方法,其特征在于,所述经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员,具体包括:
经过预设时间后,响应于首次发起事件,向交易系统中的其他节点依次转发节点维护表,所述节点维护表包括N个数据项,每个数据项包括一节点的计算结果、以及节点的公钥,所述节点维护表根据每个数据项的计算结果进行排序,N>4,或者;
响应于收到所述节点维护表事件,将本节点的计算结果与节点维护表中每个数据项的计算结果进行排序,如果本节点的计算结果的序列为L,其中L≤N,则在节点维护表的第L项节点前插入一包括本节点的计算结果、以及本节点的公钥的数据项,并删除节点维护表的最后一个数据项,然后执行最后节点判断子步骤,否则执行最后节点判断子步骤;
如果当前节点为交易系统中最后一个收到所述节点维护表的节点,则以所述节点维护表中的N个数据项所包括的公钥对应的节点为随机记账员并向交易系统中所有节点广播,否则向下一节点转发所述节点维护表。
6.一种电子设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
响应于交易系统在选举发起时间发起的选举,在所述选举发起时间开始进行预设随机计算,所述随机计算对选举发起时间所选取的随机值进行计算,以得到满足预设条件的计算结果;
经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员;
所有交易由所述随机记账员进行签名确认。
7.根据权利要求6所述的电子设备,其特征在于,所述预设随机计算为:
获取所述选举发起时间的随机字符串;
在所述随机字符串后增加动态字符,以使得所述随机字符串增加所述动态字符后得到的最终字符串,经过哈希运算后得到的运算结果中,多个检测位置的值为检测字符。
8.根据权利要求7所述的电子设备,其特征在于,所述根据所述计算结果进行排序,具体包括:
根据计算结果中检测位置为所述检测字符的数量进行降序排序。
9.根据权利要求7或8所述的电子设备,其特征在于,所述检测位置为计算结果的前M个位置,其中M为大于1的自然数。
10.根据权利要求6所述的电子设备,其特征在于,所述经过预设时间后,提交对所述预设随机计算的计算结果,选择计算结果最接近所述预设条件的前N个节点作为随机记账员,具体包括:
经过预设时间后,响应于首次发起事件,向交易系统中的其他节点依次转发节点维护表,所述节点维护表包括N个数据项,每个数据项包括一节点的计算结果、以及节点的公钥,所述节点维护表根据每个数据项的计算结果进行排序,N>4,或者;
响应于收到所述节点维护表事件,将本节点的计算结果与节点维护表中每个数据项的计算结果进行排序,如果本节点的计算结果的序列为L,其中L≤N,则在节点维护表的第L项节点前插入一包括本节点的计算结果、以及本节点的公钥的数据项,并删除节点维护表的最后一个数据项,然后执行最后节点判断子步骤,否则执行最后节点判断子步骤;
如果当前节点为交易系统中最后一个收到所述节点维护表的节点,则以所述节点维护表中的N个数据项所包括的公钥对应的节点为随机记账员并向交易系统中所有节点广播,否则向下一节点转发所述节点维护表。
11.一种可读存储介质,其特征在于,所述可读存储介质存储计算机指令,当计算机执行所述计算机指令时,用于执行上述权利要求1-5任一项所述的区块链共识算法交易系统的记账方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711182863.5A CN108009918B (zh) | 2017-11-23 | 2017-11-23 | 区块链共识算法交易系统的记账方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711182863.5A CN108009918B (zh) | 2017-11-23 | 2017-11-23 | 区块链共识算法交易系统的记账方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108009918A true CN108009918A (zh) | 2018-05-08 |
CN108009918B CN108009918B (zh) | 2021-10-26 |
Family
ID=62053586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711182863.5A Active CN108009918B (zh) | 2017-11-23 | 2017-11-23 | 区块链共识算法交易系统的记账方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108009918B (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108616363A (zh) * | 2018-05-11 | 2018-10-02 | 北京奇虎科技有限公司 | 一种记账权确认方法、装置及计算机存储介质 |
CN108717630A (zh) * | 2018-05-19 | 2018-10-30 | 上海分布信息科技有限公司 | 一种出块方法及其实现系统 |
CN108777704A (zh) * | 2018-05-16 | 2018-11-09 | 横琴密达科技有限责任公司 | 一种区块链共识方法及系统 |
CN108833484A (zh) * | 2018-05-22 | 2018-11-16 | 四川海纳仁东科技有限公司 | Pos机制下记账节点选择方法 |
CN109067516A (zh) * | 2018-07-20 | 2018-12-21 | 杭州复杂美科技有限公司 | 一种抽签方法、共识方法、设备和存储介质 |
CN109102287A (zh) * | 2018-08-13 | 2018-12-28 | 中国联合网络通信集团有限公司 | 区块链记账方法、装置、设备及存储介质 |
CN109741039A (zh) * | 2019-01-07 | 2019-05-10 | 深圳市红砖坊技术有限公司 | 记账方法、矿池服务器、终端设备、挖矿节点及矿池 |
CN110022231A (zh) * | 2019-03-26 | 2019-07-16 | 广州供电局有限公司 | 区块链共识推举方法 |
CN110431580A (zh) * | 2018-11-30 | 2019-11-08 | 阿里巴巴集团控股有限公司 | 使用随机数表来减少并发区块链交易失败 |
CN110443614A (zh) * | 2018-09-07 | 2019-11-12 | 腾讯科技(深圳)有限公司 | 节点设备删除方法、装置、计算机设备及存储介质 |
CN110689428A (zh) * | 2018-07-05 | 2020-01-14 | 厦门本能管家科技有限公司 | 一种基于区块链的交易瞬间确认的方法及系统 |
TWI684100B (zh) * | 2018-06-12 | 2020-02-01 | 中華電信股份有限公司 | 分散式公開帳本的共識形成方法及使用該共識形成方法的系統 |
CN110866743A (zh) * | 2018-08-28 | 2020-03-06 | 精工爱普生株式会社 | 提供装置、处理系统以及通信方法 |
CN111078787A (zh) * | 2019-11-11 | 2020-04-28 | 重庆邮电大学 | 一种基于随机数映射的区块链共识方法 |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103294447A (zh) * | 2013-05-30 | 2013-09-11 | 华为技术有限公司 | 一种生成随机数的方法和装置 |
US20160085955A1 (en) * | 2013-06-10 | 2016-03-24 | Doosra, Inc. | Secure Storing and Offline Transferring of Digitally Transferable Assets |
US20160254910A1 (en) * | 2016-05-07 | 2016-09-01 | Keir Finlow-Bates | Revocation of cryptographic keys in the absence of a trusted central authority |
US20160330034A1 (en) * | 2015-05-07 | 2016-11-10 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
CN106296184A (zh) * | 2015-06-05 | 2017-01-04 | 地气股份有限公司 | 电子货币管理方法及电子货币系统 |
CN106296191A (zh) * | 2016-08-13 | 2017-01-04 | 深圳市樊溪电子有限公司 | 一种区块链功耗感知的PoW共识机制 |
CN106445711A (zh) * | 2016-08-28 | 2017-02-22 | 杭州云象网络技术有限公司 | 一种应用于区块链的拜占庭容错共识方法 |
CN106815722A (zh) * | 2016-12-22 | 2017-06-09 | 中钞信用卡产业发展有限公司北京智能卡技术研究院 | 基于区块链的信息处理方法和装置 |
CN106920097A (zh) * | 2017-02-27 | 2017-07-04 | 钱德君 | 一种量子链共识协议的生成时间块链方法 |
CN106952082A (zh) * | 2017-03-06 | 2017-07-14 | 钱德君 | 一种基于股份证明的量子链共识机制方法 |
CN106980488A (zh) * | 2017-03-14 | 2017-07-25 | 腾讯科技(深圳)有限公司 | 随机数生成方法及装置 |
US20170237569A1 (en) * | 2016-02-16 | 2017-08-17 | Xerox Corporation | Secure revisioning auditing system for electronic document files |
CN107070644A (zh) * | 2016-12-26 | 2017-08-18 | 北京科技大学 | 一种基于信任网络的去中心化公钥管理方法和管理系统 |
CN107124403A (zh) * | 2017-04-14 | 2017-09-01 | 朱清明 | 区块链中共识区块的生成方法与计算设备 |
CN107220130A (zh) * | 2017-05-12 | 2017-09-29 | 北京众享比特科技有限公司 | 一种在区块链的节点处实现的信息共识方法、装置及系统 |
CN107301546A (zh) * | 2017-05-03 | 2017-10-27 | 北京众享比特科技有限公司 | 随机数生成和应用方法及装置 |
US20170323392A1 (en) * | 2016-05-05 | 2017-11-09 | Lance Kasper | Consensus system for manipulation resistant digital record keeping |
CN107347009A (zh) * | 2017-08-30 | 2017-11-14 | 北京知金链网络技术有限公司 | 区块链一维随机数共识推举方法 |
-
2017
- 2017-11-23 CN CN201711182863.5A patent/CN108009918B/zh active Active
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103294447A (zh) * | 2013-05-30 | 2013-09-11 | 华为技术有限公司 | 一种生成随机数的方法和装置 |
US20160085955A1 (en) * | 2013-06-10 | 2016-03-24 | Doosra, Inc. | Secure Storing and Offline Transferring of Digitally Transferable Assets |
US20160330034A1 (en) * | 2015-05-07 | 2016-11-10 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
CN106296184A (zh) * | 2015-06-05 | 2017-01-04 | 地气股份有限公司 | 电子货币管理方法及电子货币系统 |
US20170237569A1 (en) * | 2016-02-16 | 2017-08-17 | Xerox Corporation | Secure revisioning auditing system for electronic document files |
US20170323392A1 (en) * | 2016-05-05 | 2017-11-09 | Lance Kasper | Consensus system for manipulation resistant digital record keeping |
US20160254910A1 (en) * | 2016-05-07 | 2016-09-01 | Keir Finlow-Bates | Revocation of cryptographic keys in the absence of a trusted central authority |
CN106296191A (zh) * | 2016-08-13 | 2017-01-04 | 深圳市樊溪电子有限公司 | 一种区块链功耗感知的PoW共识机制 |
CN106445711A (zh) * | 2016-08-28 | 2017-02-22 | 杭州云象网络技术有限公司 | 一种应用于区块链的拜占庭容错共识方法 |
CN106815722A (zh) * | 2016-12-22 | 2017-06-09 | 中钞信用卡产业发展有限公司北京智能卡技术研究院 | 基于区块链的信息处理方法和装置 |
CN107070644A (zh) * | 2016-12-26 | 2017-08-18 | 北京科技大学 | 一种基于信任网络的去中心化公钥管理方法和管理系统 |
CN106920097A (zh) * | 2017-02-27 | 2017-07-04 | 钱德君 | 一种量子链共识协议的生成时间块链方法 |
CN106952082A (zh) * | 2017-03-06 | 2017-07-14 | 钱德君 | 一种基于股份证明的量子链共识机制方法 |
CN106980488A (zh) * | 2017-03-14 | 2017-07-25 | 腾讯科技(深圳)有限公司 | 随机数生成方法及装置 |
CN107124403A (zh) * | 2017-04-14 | 2017-09-01 | 朱清明 | 区块链中共识区块的生成方法与计算设备 |
CN107301546A (zh) * | 2017-05-03 | 2017-10-27 | 北京众享比特科技有限公司 | 随机数生成和应用方法及装置 |
CN107220130A (zh) * | 2017-05-12 | 2017-09-29 | 北京众享比特科技有限公司 | 一种在区块链的节点处实现的信息共识方法、装置及系统 |
CN107347009A (zh) * | 2017-08-30 | 2017-11-14 | 北京知金链网络技术有限公司 | 区块链一维随机数共识推举方法 |
Non-Patent Citations (1)
Title |
---|
邵奇峰 等: ""区块链技术:架构及进展"", 《计算机学报(网络出版)》 * |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108616363A (zh) * | 2018-05-11 | 2018-10-02 | 北京奇虎科技有限公司 | 一种记账权确认方法、装置及计算机存储介质 |
CN108616363B (zh) * | 2018-05-11 | 2021-08-06 | 北京奇虎科技有限公司 | 一种记账权确认方法、装置及计算机存储介质 |
CN108777704A (zh) * | 2018-05-16 | 2018-11-09 | 横琴密达科技有限责任公司 | 一种区块链共识方法及系统 |
CN108717630A (zh) * | 2018-05-19 | 2018-10-30 | 上海分布信息科技有限公司 | 一种出块方法及其实现系统 |
CN108717630B (zh) * | 2018-05-19 | 2020-12-22 | 上海分布信息科技有限公司 | 一种出块方法及其实现系统 |
CN108833484A (zh) * | 2018-05-22 | 2018-11-16 | 四川海纳仁东科技有限公司 | Pos机制下记账节点选择方法 |
CN108833484B (zh) * | 2018-05-22 | 2020-12-08 | 四川海纳仁东科技有限公司 | Pos机制下记账节点选择方法 |
US11121880B2 (en) * | 2018-06-12 | 2021-09-14 | Chunghwa Telecom Co., Ltd. | Method for reaching consensus on public distributed ledgers and system using the same |
TWI684100B (zh) * | 2018-06-12 | 2020-02-01 | 中華電信股份有限公司 | 分散式公開帳本的共識形成方法及使用該共識形成方法的系統 |
CN110689428A (zh) * | 2018-07-05 | 2020-01-14 | 厦门本能管家科技有限公司 | 一种基于区块链的交易瞬间确认的方法及系统 |
CN110689428B (zh) * | 2018-07-05 | 2022-08-05 | 本无链科技(深圳)有限公司 | 一种基于区块链的交易瞬间确认的方法及系统 |
CN109067516B (zh) * | 2018-07-20 | 2021-05-11 | 杭州复杂美科技有限公司 | 一种抽签方法、共识方法、设备和存储介质 |
CN109067516A (zh) * | 2018-07-20 | 2018-12-21 | 杭州复杂美科技有限公司 | 一种抽签方法、共识方法、设备和存储介质 |
CN109102287A (zh) * | 2018-08-13 | 2018-12-28 | 中国联合网络通信集团有限公司 | 区块链记账方法、装置、设备及存储介质 |
CN110866743A (zh) * | 2018-08-28 | 2020-03-06 | 精工爱普生株式会社 | 提供装置、处理系统以及通信方法 |
CN110443614A (zh) * | 2018-09-07 | 2019-11-12 | 腾讯科技(深圳)有限公司 | 节点设备删除方法、装置、计算机设备及存储介质 |
CN110431580A (zh) * | 2018-11-30 | 2019-11-08 | 阿里巴巴集团控股有限公司 | 使用随机数表来减少并发区块链交易失败 |
CN109741039A (zh) * | 2019-01-07 | 2019-05-10 | 深圳市红砖坊技术有限公司 | 记账方法、矿池服务器、终端设备、挖矿节点及矿池 |
CN109741039B (zh) * | 2019-01-07 | 2021-01-19 | 深圳市红砖坊技术有限公司 | 记账方法、矿池服务器、终端设备、挖矿节点及矿池 |
CN110022231A (zh) * | 2019-03-26 | 2019-07-16 | 广州供电局有限公司 | 区块链共识推举方法 |
CN111078787A (zh) * | 2019-11-11 | 2020-04-28 | 重庆邮电大学 | 一种基于随机数映射的区块链共识方法 |
CN111078787B (zh) * | 2019-11-11 | 2023-07-21 | 重庆邮电大学 | 一种基于随机数映射的区块链共识方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108009918B (zh) | 2021-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108009918A (zh) | 区块链共识算法交易系统的记账方法及电子设备 | |
CN111814985B (zh) | 联邦学习网络下的模型训练方法及其相关设备 | |
US10853812B2 (en) | Blockchain transaction safety | |
CN105337928B (zh) | 用户身份识别方法、安全保护问题生成方法及装置 | |
CN104767613B (zh) | 签名验证方法、装置及系统 | |
WO2019072107A1 (zh) | 消费能力预测 | |
US20190035015A1 (en) | Method and apparatus for obtaining a stable credit score | |
KR20190138803A (ko) | 블록체인을 사용해서 데이터 레코드를 분산하기 위한 시스템 및 방법 | |
CN108985772A (zh) | 一种区块链的验证方法、装置、设备及存储介质 | |
CN107846278A (zh) | 智能合约处理方法及装置 | |
CA2876732A1 (en) | Method and system for secured communication of personal information | |
CN108428132A (zh) | 欺诈交易识别方法、装置、服务器及存储介质 | |
CN109118186A (zh) | 一种基于硬件芯片的数字货币交易方法 | |
CN109447791B (zh) | 一种基于区块链的资金交易方法及装置 | |
CN104967594B (zh) | 被盗帐号的识别方法及装置 | |
CN111860865B (zh) | 模型构建和分析的方法、装置、电子设备和介质 | |
WO2020259035A1 (zh) | 一种业务代码的生成、执行方法及装置 | |
CN109558723A (zh) | 密码字典生成方法、装置以及计算机设备 | |
CN109815289A (zh) | 用于区块链网络的区块生成方法、计算设备、存储介质 | |
CN110070363A (zh) | 区块链网络中的账户管理方法、验证方法及终端设备 | |
CN110570188A (zh) | 用于处理交易请求的方法和系统 | |
CN108985559A (zh) | 风控数据处理方法、装置、计算机设备及存储介质 | |
CN106897880A (zh) | 一种账号风险评估方法和设备 | |
US10902428B1 (en) | Maintaining a risk model using feedback directed to other risk models | |
CN108428137A (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 |