CN109544161A - 区块链数据处理方法、系统及设备和序列号生成方法 - Google Patents
区块链数据处理方法、系统及设备和序列号生成方法 Download PDFInfo
- Publication number
- CN109544161A CN109544161A CN201811437039.4A CN201811437039A CN109544161A CN 109544161 A CN109544161 A CN 109544161A CN 201811437039 A CN201811437039 A CN 201811437039A CN 109544161 A CN109544161 A CN 109544161A
- Authority
- CN
- China
- Prior art keywords
- data
- sequence number
- received
- sequence
- block chain
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3823—Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请公开了一种区块链数据处理方法、系统、设备及一种序列号生成方法、系统,区块链数据处理方法包括:当获取到发送节点的数据发送请求时,确定数据发送请求中待接收数据对应的序列号;其中,序列号为表征数据接收顺序的序号;判断当前序列号之前的待接收序列号对应的数据是否已接收;如果是,则响应数据发送请求,以接收待接收数据;如果否,则获取待接收序列号对应的数据,并返回判断当前序列号之前的待接收序列号对应的数据是否已接收的步骤。也即,本申请在接收到数据发送请求时先判断当前序列之前的序列号对应的数据是否已接收,如果否,则先获取之前序列号的数据,实现数据的有序接收,避免区块链出现分叉,进一步提高了区块链的可靠性。
Description
技术领域
本申请涉及区块链技术领域,更具体地说,涉及一种区块链数据处理方法、系统及一种电子设备和一种序列号生成方法、系统。
背景技术
在区块链中,通过共识机制出块,而共识机制基本上设计为去中心的,没有中心的共识机制往往会导致区块链出现分叉。如果区块链是可分叉的,从理论上将任何一笔交易都存在被取消的可能,也即没有一笔交易是100%得到确认的,这在实际商业化环境中不友好且不符合大多数业务需求。而分叉也往往是作恶的先决条件,区块链分叉能让部分作恶者通过控制算力、资源等作恶,比如把对自己不利的交易分叉掉。鉴于此,如何提高区块链在实际业务场景中的可靠性是本领域技术人员需要解决的问题。
发明内容
本申请的目的在于提供一种区块链数据处理方法、系统及一种电子设备和一种序列号生成方法、系统,能够防止区块链出现分叉,进而提高区块链的可靠性。
为实现上述目的,本申请提供了一种区块链数据处理方法,包括:
当获取到发送节点的数据发送请求时,确定所述数据发送请求中待接收数据对应的序列号;其中,所述序列号为利用序列号生成器中心生成的表征数据接收顺序的序号;
根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收;
如果是,则响应所述数据发送请求,以接收所述待接收数据;
如果否,则获取所述待接收序列号对应的数据,并返回根据数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收的步骤。
可选的,所述根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收之前,还包括:
验证所述待接收数据是否合法;
如果是,则启动根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收的进程;
如果否,则结束当前接收进程。
可选的,所述验证所述待接收数据是否合法,包括:
利用所述序列号生成器中心发布的公钥验证签名,以判断所述待接收数据是否合法;其中,所述签名为利用所述待接收数据和所述序列号生成的签名。
可选的,当所述待接收数据对应的序列号为所述数据接收顺序的第一个时,直接接收所述待接收数据。
可选的,所述获取所述待接收序列号对应的数据,包括:
根据所述待接收序列号,获取序列号生成器中心保存的与所述待接收序列号对应的数据。
为实现上述目的,本申请提供了一种序列号生成方法,包括:
接收发送节点的序列号生成请求;
对所述序列号生成请求进行响应,以生成按照数据接收顺序排列的序列号;
将所述序列号发送至所述发送节点。
可选的,所述序列号生成请求中包括所述发送节点的待发送数据;
相应的,所述接收发送节点的序列号生成请求之后,还包括:
将所述待发送数据保存,以便根据所述待发送数据的序列号获取所述待发送数据。
可选的,所述将所述待发送数据保存之后,还包括:
利用所述待发送数据的哈希值和所述序列号生成签名;
相应的,所述将所述序列号发送至所述发送节点,包括:
将所述序列号、所述哈希值和所述签名发送至所述发送节点,以使所述发送节点利用所述签名和所述哈希值验证所述待发送数据是否被篡改。
为实现上述目的,本申请提供了一种区块链数据处理系统,包括:
序列号确定模块,用于当获取到发送节点的数据发送请求时,确定所述数据发送请求中待接收数据对应的序列号;其中,所述序列号为利用序列号生成器中心生成的表征数据接收顺序的序号;
判断模块,用于根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收;
数据接收模块,用于如果所述待接收序列号对应的数据已接收,则响应所述数据发送请求,以接收所述待接收数据;
数据获取模块,用于如果所述待接收序列号对应的数据未接收,则获取所述待接收序列号对应的数据,并返回根据数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收的步骤。
为实现上述目的,本申请提供了一种序列号生成系统,包括:
请求接收模块,用于接收发送节点的序列号生成请求;
序列号生成模块,用于对所述序列号生成请求进行响应,以生成按照数据接收顺序排列的序列号;
序列号发送模块,用于将所述序列号发送至所述发送节点。
为实现上述目的,本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现前述公开的区块链数据处理方法。
为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述公开的区块链数据处理方法。
通过以上方案可知,本申请提供的一种区块链数据处理方法,包括:当获取到发送节点的数据发送请求时,确定所述数据发送请求中待接收数据对应的序列号;其中,所述序列号为利用序列号生成器中心生成的表征数据接收顺序的序号;根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收;如果是,则响应所述数据发送请求,以接收所述待接收数据;如果否,则获取所述待接收序列号对应的数据,并返回根据数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收的步骤。
本申请提供的区块链数据处理方法在接收到数据发送请求时并不直接接收数据,而是先判断当前序列号在数据接收顺序中之前的序列号对应的数据是否已接收,如果否,则先获取之前序列号的数据之后再接收当前数据,实现数据的有序接收,避免了区块链出现分叉的问题,进一步提高了区块链在实际业务场景中的可靠性。本申请还公开了一种区块链数据处理系统及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种区块链数据处理方法的流程图;
图2为本申请实施例公开的另一种区块链数据处理方法的流程图;
图3为本申请实施例公开的一种序列号生成方法的流程图;
图4为本申请实施例公开的另一种序列号生成方法的流程图;
图5为本申请实施例公开的一种区块链数据处理方法的流程图;
图6为本申请实施例公开的一种区块链数据处理系统的结构图;
图7为本申请实施例公开的一种序列号生成系统的结构图;
图8为本申请实施例公开的一种电子设备的结构图;
图9为本申请实施例公开的另一种电子设备的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在现有技术中,区块链通过共识机制出块,而没有中心的共识机制往往会导致区块链出现分叉。区块链分叉导致区块链上的交易得不到100%的确认,也容易被控制大规模算力的节点作恶导致区块链用户利益受损。
本申请实施例公开了一种区块链数据处理方法,提高了区块链在业务场景中的可靠性。参见图1,本申请实施例公开的一种区块链数据处理方法的流程图,如图1所示,包括:
S101:当获取到发送节点的数据发送请求时,确定所述数据发送请求中待接收数据对应的序列号;其中,所述序列号为利用序列号生成器中心生成的表征数据接收顺序的序号;
本实施例中,当接收节点获取到发送节点的数据发送请求时,解析所述数据发送请求,从而确定当前待接收数据对应的用于表征数据接收顺序的序列号。具体地,所述数据接收顺序可以利用递增的序号表示。
S102:根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收;
具体地,基于数据接收顺序判断当前序列号之前的待接收序列号对应的数据是否已经接收。
S103:如果是,则响应所述数据发送请求,以接收所述待接收数据;
可以理解的是,若当前所述序列号之前的待接收序列号对应的数据均被接收,则响应发送数据发送请求,以接收本次待接收数据。
S104:如果否,则获取所述待接收序列号对应的数据,并返回根据数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收的步骤。
另外,若当前所述序列号之前的待接收序列号对应的数据仍未接收,则获取待接收序列号对应的数据,并返回步骤S102,确保当前序列号之前的待接收序列号对应的数据均接收后,接收本次待接收数据。
具体地,若待接收序列号对应的数据仍未接收,本实施例主动获取待接收序列号对应的数据,在另一种实施方式中,也可以等待待接收序列号对应的数据。
本申请提供的区块链数据处理方法在接收到数据发送请求时并不直接接收数据,而是先判断当前序列号在数据接收顺序中之前的序列号对应的数据是否已接收,如果否,则先获取之前序列号的数据之后再接收当前数据,实现数据的有序接收,避免了区块链出现分叉的问题,进一步提高了区块链在实际业务场景中的可靠性。
本申请实施例公开了一种区块链数据处理方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。参见图2所示,具体包括:
S201:当获取到发送节点的数据发送请求时,确定所述数据发送请求中待接收数据对应的序列号;其中,所述序列号为利用序列号生成器中心生成的表征数据接收顺序的序号;
S202:验证所述待接收数据是否合法;
在本实施例获取到数据发送请求时,首先对数据请求进行校验,从而验证待接收数据是否合法。
具体地,本实施例利用所述序列号生成器中心发布的公钥验证签名,以判断所述待接收数据是否合法。其中,所述签名为序列号生成器中心利用所述待接收数据和所述序列号生成的签名。
S203:如果是,则启动根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收的进程;
可以理解的是,若签名验证通过后,则判定所述待接收数据合法,可以接收当前发送请求,进一步进入步骤S204。
S204:根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收;
S205:如果是,则响应所述数据发送请求,以接收所述待接收数据;
S206:如果否,则获取所述待接收序列号对应的数据,并返回根据数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收的步骤。
本实施例中,当所述待接收数据对应的序列号为所述数据接收顺序的第一个时,本实施例直接接收所述待接收数据。
关于上述步骤S204至S206的具体过程可参考前述实施例公开的内容,在此不再进行赘述。
在本发明所提供的区块链数据处理方法的一种具体实施方式中,针对获取待接收序列号对应的数据的过程进行进一步阐述,具体地:
根据所述待接收序列号,获取序列号生成器中心保存的与所述待接收序列号对应的数据。
可以理解的是,序列号生成器中心预先保存了各个序列号对应的数据,因此本实施例可通过待接收序列号获取序列号生成器中心的与所述待接收序号对应的数据。
参见图3所示,本申请提供了一种序列号生成方法,包括:
S301:接收发送节点的序列号生成请求;
本实施例中,发送节点在发送数据之前向序列号生成器中心发送序列号生成请求。
S302:对所述序列号生成请求进行响应,以生成按照数据接收顺序排列的序列号;
S303:将所述序列号发送至所述发送节点。
具体地,序列号生成器中心响应所述序列号生成请求,生成按照数据接收顺序排列的序列号,并将序列号发送至发送节点,以使接收节点在接收数据时利用序列号进行排序。
本申请实施例公开了一种序列号生成方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。参见图4所示,具体包括:
S401:接收发送节点的序列号生成请求;所述序列号生成请求中包括所述发送节点的待发送数据;
S402:对所述序列号生成请求进行响应,生成按照数据接收顺序排列的序列号,并将所述待发送数据保存;
需要说明的是,本实施例中,序列号生成请求中包括发送节点的待发送数据。相应的,序列号生成器中心在接收到请求及数据后,生成序列号,并将待发送数据保存,以便利用待发送数据的序列号获取待发送数据。
S403:利用所述待发送数据的哈希值和所述序列号生成签名;
进一步地,本实施例利用待发送数据的哈希值和序列号的联合体生成用于验证的签名,保证数据不被篡改。
S404:将所述序列号、所述哈希值和所述签名发送至所述发送节点,以使所述发送节点利用所述签名和所述哈希值验证所述待发送数据是否被篡改。
在本实施例生成序列号和签名之后,将序列号、待发送数据的哈希值和签名发送至发送节点,发送节点能够通过验证签名与哈希值来判断待发送数据是否被篡改,从而保证数据的可靠性。
图5为本申请实施例提供的区块链数据处理方法的一种具体实施方式的流程图,如图5所示,本实施例基于P2P(peer to peer,端对端)的先发先到网络协议,在发送节点发送P2P数据时,向序列号生成器中心发送序列号请求,请求数据中附上本次发送的内容。序列号生成器中心接受到请求后保存该P2P数据内容,生成唯一递增的序列号,并用私钥对数据内容的hash和序列号的联合体做签名,并把签名、hash和序列号返回给P2P发送节点。进一步地,P2P发送节点用序列号生成器中心发布的公钥验证签名,签名验证通过后,通过P2P网络发送给其他P2P节点;其他P2P接收节点收到P2P数据后验证签名是否正确,并判断本次序列号之前的序列号都正确接收;如果都正常接收,则接收本次数据;否则可以通过其他P2P渠道,例如非先发先到的P2P网络获取未收取到的前序列号的数据内容,也可以通过直接向序列号生成器中心获取。由于序列号生成器中心在P2P发送节点请求序列号生成时已经保存了该序列号的内容,可以将对应的内容直接发送至接收节点。
在本实施例过程中,如果序列号生成器中心作恶,任何一个P2P节点发现有序列号一样但内容不同的数据,并且都通过序列号生成器中心有效签名,则可以举报中心作恶;如果序列号生成器中心修改发送的P2P数据内容,则发送节点发送的内容和返回的hash对不上,也可以举报中心作恶;为了杜绝被篡改可能性,可以结合共识算法,对要传输的数据内容做签名,被篡改后签名将不能验证通过,从而避免序列号生成器中心作恶;
如果发送节点向序列号生成器中心获取序列号对应的数据时序列号生成器中心作恶,由于区块链的后块prehash必须要等于前块的hash,被伪造的块将不会继续向后生长,节点可以检查原因,最终发现同个序列号有2块不同的内容,可以举报序列号生成器中心作恶。
通过上述本实施例所述的措施,可以监督序列号生成器中心不能作恶,一旦作恶必然被发现,从而保证区块链可靠可信的运行。
下面对本申请实施例提供的一种区块链数据处理系统进行介绍,下文描述的一种区块链数据处理系统与上文描述的一种区块链数据处理方法可以相互参照。
参见图6,本申请实施例提供的一种区块链数据处理系统的结构图,如图6所示,包括:
序列号确定模块100,用于当获取到发送节点的数据发送请求时,确定所述数据发送请求中待接收数据对应的序列号;其中,所述序列号为利用序列号生成器中心生成的表征数据接收顺序的序号;
判断模块200,用于根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收;
数据接收模块300,用于如果所述待接收序列号对应的数据已接收,则响应所述数据发送请求,以接收所述待接收数据;
数据获取模块400,用于如果所述待接收序列号对应的数据未接收,则获取所述待接收序列号对应的数据,并返回根据数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收的步骤。
本实施例的区块链数据处理系统用于实现前述的区块链数据处理方法,因此区块链数据处理系统中的具体实施方式可见前文中的区块链数据处理方法的实施例部分,在此不再进行赘述。
下面对本申请实施例提供的一种序列号生成系统进行介绍,下文描述的一种序列号生成系统与上文描述的一种序列号生成方法可以相互参照。
参见图7,本申请实施例提供的一种序列号生成系统的结构图,如图7所示,包括:
请求接收模块500,用于接收发送节点的序列号生成请求;
序列号生成模块600,用于对所述序列号生成请求进行响应,以生成按照数据接收顺序排列的序列号;
序列号发送模块700,用于将所述序列号发送至所述发送节点。
本实施例的序列号生成系统用于实现前述的序列号生成方法,因此序列号生成系统中的具体实施方式可见前文中的序列号生成方法的实施例部分,在此不再进行赘述。
本申请还提供了一种电子设备,参见图8,本申请实施例提供的一种电子设备的结构图,如图8所示,包括:
存储器11,用于存储计算机程序;
处理器12,用于执行所述计算机程序时可以实现上述实施例所提供的步骤。
具体的,存储器11包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令,该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器12在一些实施例中可以是一中央处理器(CentralProcessing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,为电子设备提供计算和控制能力,执行所述存储器11中保存的计算机程序时,可以实现前述公开的区块链数据处理方法。
在上述实施例的基础上,作为优选实施方式,参见图9,所述电子设备还包括:
输入接口13,与处理器12相连,用于获取外部导入的计算机程序、参数和指令,经处理器12控制保存至存储器11中。该输入接口13可以与输入装置相连,接收用户手动输入的参数或指令。该输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是键盘、触控板或鼠标等。
显示单元14,与处理器12相连,用于显示处理器12处理的数据以及用于显示可视化的用户界面。该显示单元14可以为LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。
网络端口15,与处理器12相连,用于与外部各终端设备进行通信连接。该通信连接所采用的通信技术可以为有线通信技术或无线通信技术,如移动高清链接技术(MHL)、通用串行总线(USB)、高清多媒体接口(HDMI)、无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术等。
图9仅示出了具有组件11-15的电子设备,本领域技术人员可以理解的是,图9示出的结构并不构成对电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
本申请还提供了一种计算机可读存储介质,该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述公开的区块链数据处理方法。
本申请提供的区块链数据处理方法在接收到数据发送请求时并不直接接收数据,而是先判断当前序列号在数据接收顺序中之前的序列号对应的数据是否已接收,如果否,则先获取之前序列号的数据之后再接收当前数据,实现数据的有序接收,避免了区块链出现分叉的问题,进一步提高了区块链在实际业务场景中的可靠性。
本申请还提供了一种计算机可读存储介质,该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述公开的序列号生成方法。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (11)
1.一种区块链数据处理方法,其特征在于,包括:
当获取到发送节点的数据发送请求时,确定所述数据发送请求中待接收数据对应的序列号;其中,所述序列号为利用序列号生成器中心生成的表征数据接收顺序的序号;
根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收;
如果是,则响应所述数据发送请求,以接收所述待接收数据;
如果否,则获取所述待接收序列号对应的数据,并返回根据数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收的步骤。
2.根据权利要求1所述的区块链数据处理方法,其特征在于,所述根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收之前,还包括:
验证所述待接收数据是否合法;
如果是,则启动根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收的进程;
如果否,则结束当前接收进程。
3.根据权利要求2所述的区块链数据处理方法,其特征在于,所述验证所述待接收数据是否合法,包括:
利用所述序列号生成器中心发布的公钥验证签名,以判断所述待接收数据是否合法;其中,所述签名为利用所述待接收数据和所述序列号生成的签名。
4.根据权利要求1所述的区块链数据处理方法,其特征在于,当所述待接收数据对应的序列号为所述数据接收顺序的第一个时,直接接收所述待接收数据。
5.根据权利要求1至4任一项所述的区块链数据处理方法,其特征在于,所述获取所述待接收序列号对应的数据,包括:
根据所述待接收序列号,获取序列号生成器中心保存的与所述待接收序列号对应的数据。
6.一种序列号生成方法,其特征在于,包括:
接收发送节点的序列号生成请求;
对所述序列号生成请求进行响应,以生成按照数据接收顺序排列的序列号;
将所述序列号发送至所述发送节点。
7.根据权利要求6所述的序列号生成方法,其特征在于,所述序列号生成请求中包括所述发送节点的待发送数据;
相应的,所述接收发送节点的序列号生成请求之后,还包括:
将所述待发送数据保存,以便根据所述待发送数据的序列号获取所述待发送数据。
8.根据权利要求6或7所述的序列号生成方法,其特征在于,所述将所述待发送数据保存之后,还包括:
利用所述待发送数据的哈希值和所述序列号生成签名;
相应的,所述将所述序列号发送至所述发送节点,包括:
将所述序列号、所述哈希值和所述签名发送至所述发送节点,以使所述发送节点利用所述签名和所述哈希值验证所述待发送数据是否被篡改。
9.一种区块链数据处理系统,其特征在于,包括:
序列号确定模块,用于当获取到发送节点的数据发送请求时,确定所述数据发送请求中待接收数据对应的序列号;其中,所述序列号为利用序列号生成器中心生成的表征数据接收顺序的序号;
判断模块,用于根据所述数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收;
数据接收模块,用于如果所述待接收序列号对应的数据已接收,则响应所述数据发送请求,以接收所述待接收数据;
数据获取模块,用于如果所述待接收序列号对应的数据未接收,则获取所述待接收序列号对应的数据,并返回根据数据接收顺序判断当前所述序列号之前的待接收序列号对应的数据是否已接收的步骤。
10.一种序列号生成系统,其特征在于,包括:
请求接收模块,用于接收发送节点的序列号生成请求;
序列号生成模块,用于对所述序列号生成请求进行响应,以生成按照数据接收顺序排列的序列号;
序列号发送模块,用于将所述序列号发送至所述发送节点。
11.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述的区块链数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811437039.4A CN109544161B (zh) | 2018-11-28 | 2018-11-28 | 区块链数据处理方法、系统及设备和序列号生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811437039.4A CN109544161B (zh) | 2018-11-28 | 2018-11-28 | 区块链数据处理方法、系统及设备和序列号生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109544161A true CN109544161A (zh) | 2019-03-29 |
CN109544161B CN109544161B (zh) | 2021-05-28 |
Family
ID=65852003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811437039.4A Active CN109544161B (zh) | 2018-11-28 | 2018-11-28 | 区块链数据处理方法、系统及设备和序列号生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109544161B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111415154A (zh) * | 2020-03-17 | 2020-07-14 | 杰瑞石油天然气工程有限公司 | 一种以区块链技术实现公司级加气站账务管理的方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1411198A (zh) * | 2001-09-25 | 2003-04-16 | 义隆电子股份有限公司 | 无线通信中数据丢失的检测与恢复的方法及系统 |
CN101188477A (zh) * | 2007-12-25 | 2008-05-28 | 华为技术有限公司 | 一种数据包序列接收的方法及设备 |
CN101626597A (zh) * | 2009-08-07 | 2010-01-13 | 中国科学院软件研究所 | 一种基于卫星网络的跳到跳的传输方法 |
CN103188110A (zh) * | 2013-03-29 | 2013-07-03 | 汉柏科技有限公司 | 基于zookeeper的云平台上服务的热备份方法 |
CN105447183A (zh) * | 2015-12-12 | 2016-03-30 | 天津南大通用数据技术股份有限公司 | Mpp架构数据库集群序列系统及序列管理方法 |
CN107491356A (zh) * | 2017-08-28 | 2017-12-19 | 广州市百果园信息技术有限公司 | 基于序号的消息处理方法、终端设备和服务器 |
CN108269090A (zh) * | 2018-01-19 | 2018-07-10 | 中国科学院软件研究所 | 基于无协商随机抽签的用于区块链系统的共识方法和装置 |
-
2018
- 2018-11-28 CN CN201811437039.4A patent/CN109544161B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1411198A (zh) * | 2001-09-25 | 2003-04-16 | 义隆电子股份有限公司 | 无线通信中数据丢失的检测与恢复的方法及系统 |
CN101188477A (zh) * | 2007-12-25 | 2008-05-28 | 华为技术有限公司 | 一种数据包序列接收的方法及设备 |
CN101626597A (zh) * | 2009-08-07 | 2010-01-13 | 中国科学院软件研究所 | 一种基于卫星网络的跳到跳的传输方法 |
CN103188110A (zh) * | 2013-03-29 | 2013-07-03 | 汉柏科技有限公司 | 基于zookeeper的云平台上服务的热备份方法 |
CN105447183A (zh) * | 2015-12-12 | 2016-03-30 | 天津南大通用数据技术股份有限公司 | Mpp架构数据库集群序列系统及序列管理方法 |
CN107491356A (zh) * | 2017-08-28 | 2017-12-19 | 广州市百果园信息技术有限公司 | 基于序号的消息处理方法、终端设备和服务器 |
CN108269090A (zh) * | 2018-01-19 | 2018-07-10 | 中国科学院软件研究所 | 基于无协商随机抽签的用于区块链系统的共识方法和装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111415154A (zh) * | 2020-03-17 | 2020-07-14 | 杰瑞石油天然气工程有限公司 | 一种以区块链技术实现公司级加气站账务管理的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109544161B (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10586027B2 (en) | Method, device and system for sharing cross-platform account resources | |
ES2862397T3 (es) | Método y dispositivo para autenticar el inicio de sesión | |
CN106534072B (zh) | 用户信息授权方法、装置、设备及系统 | |
CN108183907A (zh) | 一种认证方法、服务器及认证系统 | |
CN107086984A (zh) | 一种获取和生成验证码的方法、终端及服务器 | |
EP3490304B1 (en) | Method for identifying access point and hotspot, and related products | |
CN104917807B (zh) | 资源转移方法、装置和系统 | |
CN104980925B (zh) | 用户请求的认证方法和装置 | |
CN104954126B (zh) | 敏感操作验证方法、装置及系统 | |
CN110517147A (zh) | 交易数据处理方法、装置、系统及计算机可读存储介质 | |
US20190205976A1 (en) | Account number registration method, apparatus, and system | |
CN105519028A (zh) | 一种无线系统接入控制方法及装置 | |
CN105278903A (zh) | 显示设备及其控制方法以及服务器 | |
CN110930011B (zh) | 一种工单管控系统、方法、及电子设备和存储介质 | |
WO2016119685A1 (zh) | 终端间数据传输方法和装置 | |
CN103986502A (zh) | 一种信息处理方法、电子设备及系统 | |
CN113743929A (zh) | 数据处理方法、终端设备和数据处理系统 | |
KR20130008340A (ko) | 웹을 통한 테스팅 자원 공유 방법 및 그 시스템 | |
CN108234124A (zh) | 身份验证方法、装置与系统 | |
CN104969209A (zh) | 在计算设备之间共享信息 | |
KR101914118B1 (ko) | 데이터 송수신 방법 및 시스템 | |
CN106656985A (zh) | 一种备份账号登录方法、装置及系统 | |
CN109544161A (zh) | 区块链数据处理方法、系统及设备和序列号生成方法 | |
KR20160062554A (ko) | 콘텐츠 전송 네트워크 서비스를 제공하기 위한 방법 및 그 전자 장치 | |
CN109871715A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200102 Address after: 310000 Room 203, floor 2, building 1, No.79 Yueda lane, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province Applicant after: Lianlian Yinjia Information Technology Co., Ltd Address before: 310000, Hangzhou, Zhejiang, Binjiang District C space building 6 Applicant before: Hangzhou Shield Network Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |