在区块链网络中处理交易的方法和节点设备以及存储介质技术

技术编号:20969955 阅读:37 留言:0更新日期:2019-04-29 17:26
本发明专利技术涉及一种基于区块链的处理转账交易的方法和节点设备以及存储介质。该方法包括:在第一节点设备处,在发起涉及对第二节点设备进行转账的新交易时,在与所述第一节点设备相关联的第一区块链中创建与所述新交易相关联的第一区块,其中所述第一区块链仅记录与所述第一节点设备相关联的交易的交易信息;将所述第一区块发送给所述第二节点设备;其中,在与所述第一节点设备相关联的第一区块链中创建与所述新交易相关联的第一区块包括:在所述第一区块中生成所述新交易的一个或多个交易输入,其中所述一个或多个交易输入与从所述第一区块链中选出的一个或多个先前的未花费的交易输出相对应;在所述第一区块中生成所述新交易的多个交易输出。

Method of Dealing with Transactions in Block Chain Networks and Node Devices and Storage Medium

The invention relates to a method for processing transfer transactions based on block chains, a node device and a storage medium. The method includes: at the first node device, when initiating a new transaction involving transfer of the second node device, creating a first block associated with the new transaction in the first block chain associated with the first node device, in which the first block chain records only the transaction information associated with the first node device, and transmitting the first block. To the second node device, where the creation of the first block associated with the new transaction in the first block chain associated with the first node device includes: generating one or more transaction inputs of the new transaction in the first block, where one or more transaction inputs and one or more previously unspent ones selected from the first block chain The transaction output corresponds; a plurality of transaction outputs of the new transaction are generated in the first block.

【技术实现步骤摘要】
在区块链网络中处理交易的方法和节点设备以及存储介质
本专利技术涉及区块链
,更具体地涉及在区块链网络中处理交易的方法和节点设备以及存储介质。
技术介绍
狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。在目前的区块链系统中,通常为所有区块链节点维护同一个账本(例如,以比特币为代表的分布式账本),因此要在区块链系统中进行的所有的交易都必须串行执行。此外,这种分布式账本容易受到网络传输速度、全网共识算法等限制,而且交易确认时间长、交易吞吐量低,从而无法满足大规模商业应用。因此,需要一种能够提高交易确认速度以及交易吐吞量的交易方法,并且该方法不应受到整体节点数的增加而降低局部节点的交易速度。
技术实现思路
针对以上技术问题以及其他潜在的技术问题,本专利技术的实施例提供了一种用于在区块链网络中处理交易的方法和节点设备以及存储介质,其可提高区块链系统的交易吞吐量,尤其是当区块链系统中的节点设备的数目越多时,区块链系统中的交易吞吐量越高,进而可实现交易的无限的水平扩展。本专利技术的第一方面提供了一种基于区块链的处理转账交易的方法,所述方法包括:在第一节点设备处,在发起涉及对第二节点设备进行转账的新交易时,在与所述第一节点设备相关联的第一区块链中创建与所述新交易相关联的第一区块,其中所述第一区块链仅记录与所述第一节点设备相关联的交易的交易信息;将所述第一区块发送给所述第二节点设备;其中,在与所述第一节点设备相关联的第一区块链中创建与所述新交易相关联的第一区块包括:在所述第一区块中生成所述新交易的一个或多个交易输入,其中所述一个或多个交易输入与从所述第一区块链中选出的一个或多个未花费的交易输出相对应,并且其中所选出的一个或多个未花费的交易输出的余额的总和大于或等于所述新交易的总金额;在所述第一区块中生成所述新交易的多个交易输出,所述多个交易输出至少包括第一交易输出和第二交易输出,其中所述第一交易输出与所述第一节点设备相关联,所述第二交易输出与所述第二节点设备相关联。在一种实现中,所述方法还包括在将所述第一区块发送给所述第二节点设备的同时,将所述第一节点设备的公钥发送给所述第二节点设备。在一种实现中,在与所述第一节点设备相关联的第一区块链中创建与所述新交易相关联的第一区块还包括:为所述第一区块分配用于指示所述第一区块在所述第一区块链中的地址的区块散列值,以及在所述第一区块中添加用于指示所述第一区块在所述第一区块链中引用的父区块的父块散列值。在一种实现中,所述一个或多个交易输入中的每一交易输入包括:区块散列值,所述区块散列值用于指示包括与该交易输入相对应的未花费的交易输出的先前区块在所述第一区块链中的地址;未花费输出序号,所述未花费输出序号用于指示该未花费的交易输出在所述先前区块中的序号;以及,数字签名,所述数字签名为所述第一节点设备的签名以指示该交易输入是由所述第一节点设备生成的。在一种实现中,所述第一交易输出包括所述第一节点设备的第一地址以及所述第一节点设备与所述新交易相关联的第一余额,所述第一余额是通过将所述一个或多个未花费的交易输出的余额的总和减去所述新交易的总金额来计算出的;所述第二交易输出包括所述第二节点设备的第二地址以及所述第二节点设备与所述新交易相关联的第二余额,所述第二余额等于所述新交易中向所述第二节点设备转账的金额。在一种实现中,所述公钥为椭圆曲线公钥。在一种实现中,所述数字签名是基于所述第一节点设备的私钥生成的。在一种实现中,所述私钥为椭圆曲线私钥。本专利技术的第二方面提供了一种基于区块链的处理转账交易的方法,所述方法包括:在第二节点设备处,在接收到与由第一节点设备发起的涉及对所述第二节点进行转账的新交易相关联的第一区块后,在与所述第二节点设备相关联的第二区块链中创建第二区块,其中所述第二区块链仅记录与所述第二节点设备相关联的交易的交易信息;对所述第二区块的一个或多个交易输入进行有效性验证;在所述有效性验证通过的情况下,向所述第一节点设备发送所述新交易成功的消息;其中,在与所述第二节点设备相关联的第二区块链中创建第二区块包括:将所述第一区块所包括的一个或多个交易输入添加到所述第二区块中作为所述第二区块的一个或多个交易输入;将所述第一区块所包括的多个交易输出添加到所述第二区块中作为所述第二区块的多个交易输出,所述多个交易输出至少包括第一交易输出和第二交易输出,其中所述第一交易输出与所述第一节点设备相关联,所述第二交易输出与所述第二节点设备相关联。在一种实现中,在与所述第二节点设备相关联的第二区块链中创建第二区块还包括:为所述第二区块分配用于指示所述第二区块在所述第二区块链中的地址的区块散列值,以及在所述第二区块中添加用于指示所述第二区块在所述第二区块链中引用的父区块的父块散列值。在一种实现中,所述第二区块的一个或多个交易输入中的每一交易输入包括:区块散列值,所述区块散列值用于指示包括与该交易输入相对应的未花费的交易输出的先前区块在与所述第一节点设备相关联的第一区块链中的地址;未花费输出序号,所述未花费输出序号用于指示该未花费的交易输出在所述先前区块中的序号;以及,数字签名,所述数字签名为所述第一节点设备的签名以指示该交易输入是由所述第一节点设备生成的。在一种实现中,所述第二区块的第一交易输出包括所述第一节点设备的第一地址以及所述第一节点设备与所述新交易相关联的第一余额,所述第一余额是通过将所述一个或多个未花费的交易输出的余额的总和减去所述新交易的总金额来计算出的;所述第二区块的第二交易输出包括所述第二节点设备的第二地址以及所述第二节点设备与所述新交易相关联的第二余额,所述第二余额等于所述新交易中向所述第二节点设备转账的金额。在一种实现中,所述方法还包括:在接收所述第一区块的同时接收来自所述第一节点设备的公钥,以及在第二区块链中创建所述第二区块之前,利用所述公钥对所述第一区块进行验签,以验证所述第一区块是否确实来自所述第一节点设备。在一种实现中,对所述第二区块的一个或多个交易输入进行有效性验证包括:通过一直往上追溯与所述新交易有关的创世区块的方式来验证所述第二区块的一个或多个交易输入的有效性,并且在无法追溯到与所述新交易有关的任一创世区块的情况下,指示所述一个或多个交易输入无效。本专利技术的第三方面提供了一种基于区块链的处理交易的节点设备,包括:处理器;存储器,所述存储器耦合至所述处理器并且存储有指令,当所述指令执行时使得所述处理器执行根据本专利技术的第一方面或第二方面所述的方法。本专利技术的第四方面提供了一种计算机可读存储介质,其具有存储在其上的计算机可执行指令,所述计算机可执行指令在设备中运行时使得所述设备执行根据本专利技术的第一方面或第二方面所述的方法。附图说明参考附图示出并阐明本专利技术的各实施例。这些附图仅用于阐明基本原理,并示出对于理解该基本原理所必要的方面,而不旨在限制本专利技术所要求保护的范围。在附图本文档来自技高网...

【技术保护点】
1.一种基于区块链的处理转账交易的方法,所述方法包括:在第一节点设备处,在发起涉及对第二节点设备进行转账的新交易时,在与所述第一节点设备相关联的第一区块链中创建与所述新交易相关联的第一区块,其中所述第一区块链仅记录与所述第一节点设备相关联的交易的交易信息;将所述第一区块发送给所述第二节点设备;其中,在与所述第一节点设备相关联的第一区块链中创建与所述新交易相关联的第一区块包括:在所述第一区块中生成所述新交易的一个或多个交易输入,其中所述一个或多个交易输入与从所述第一区块链中选出的一个或多个未花费的交易输出相对应,并且其中所选出的一个或多个未花费的交易输出的余额的总和大于或等于所述新交易的总金额;在所述第一区块中生成所述新交易的多个交易输出,所述多个交易输出至少包括第一交易输出和第二交易输出,其中所述第一交易输出与所述第一节点设备相关联,所述第二交易输出与所述第二节点设备相关联。

【技术特征摘要】
1.一种基于区块链的处理转账交易的方法,所述方法包括:在第一节点设备处,在发起涉及对第二节点设备进行转账的新交易时,在与所述第一节点设备相关联的第一区块链中创建与所述新交易相关联的第一区块,其中所述第一区块链仅记录与所述第一节点设备相关联的交易的交易信息;将所述第一区块发送给所述第二节点设备;其中,在与所述第一节点设备相关联的第一区块链中创建与所述新交易相关联的第一区块包括:在所述第一区块中生成所述新交易的一个或多个交易输入,其中所述一个或多个交易输入与从所述第一区块链中选出的一个或多个未花费的交易输出相对应,并且其中所选出的一个或多个未花费的交易输出的余额的总和大于或等于所述新交易的总金额;在所述第一区块中生成所述新交易的多个交易输出,所述多个交易输出至少包括第一交易输出和第二交易输出,其中所述第一交易输出与所述第一节点设备相关联,所述第二交易输出与所述第二节点设备相关联。2.根据权利要求1所述的方法,其特征在于,还包括在将所述第一区块发送给所述第二节点设备的同时,将所述第一节点设备的公钥发送给所述第二节点设备。3.根据权利要求1所述的方法,其特征在于,在与所述第一节点设备相关联的第一区块链中创建与所述新交易相关联的第一区块还包括:为所述第一区块分配用于指示所述第一区块在所述第一区块链中的地址的区块散列值,以及在所述第一区块中添加用于指示所述第一区块在所述第一区块链中引用的父区块的父块散列值。4.根据权利要求3所述的方法,其特征在于,所述一个或多个交易输入中的每一交易输入包括:区块散列值,所述区块散列值用于指示包括与该交易输入相对应的未花费的交易输出的先前区块在所述第一区块链中的地址;未花费输出序号,所述未花费输出序号用于指示该未花费的交易输出在所述先前区块中的序号;以及,数字签名,所述数字签名为所述第一节点设备的签名以指示该交易输入是由所述第一节点设备生成的。5.根据权利要求1所述的方法,其特征在于:所述第一交易输出包括所述第一节点设备的第一地址以及所述第一节点设备与所述新交易相关联的第一余额,所述第一余额是通过将所述一个或多个未花费的交易输出的余额的总和减去所述新交易的总金额来计算出的;所述第二交易输出包括所述第二节点设备的第二地址以及所述第二节点设备与所述新交易相关联的第二余额,所述第二余额等于所述新交易中向所述第二节点设备转账的金额。6.根据权利要求2所述的方法,其特征在于,所述公钥为椭圆曲线公钥。7.根据权利要求4所述的方法,其特征在于,所述数字签名是基于所述第一节点设备的私钥生成的。8.根据权利要求7所述的方法,其特征在于,所述私钥为椭圆曲线私钥。9.一种基于区块链的处理转账交易的方法,所述方法包括:在第二节点设备处,在接收到与由第一节点设备发起的涉及对所述第二节点进行转账的新交易相关联的第一区块后,在与所述第二节点设备相关联的第二区块链中创建第二区块,其中所述第二区块链仅记录与所述第二节点设备相关联的交易的交易...

【专利技术属性】
技术研发人员:王明瞿争
申请(专利权)人:众安信息技术服务有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1