WO2019072136A1 - 区块链网络及其交易方法 - Google Patents

区块链网络及其交易方法 Download PDF

Info

Publication number
WO2019072136A1
WO2019072136A1 PCT/CN2018/109246 CN2018109246W WO2019072136A1 WO 2019072136 A1 WO2019072136 A1 WO 2019072136A1 CN 2018109246 W CN2018109246 W CN 2018109246W WO 2019072136 A1 WO2019072136 A1 WO 2019072136A1
Authority
WO
WIPO (PCT)
Prior art keywords
verification
node
transaction
partition
client
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.)
Ceased
Application number
PCT/CN2018/109246
Other languages
English (en)
French (fr)
Inventor
朱涛
郑建宾
周钰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Unionpay Co Ltd
Original Assignee
China Unionpay Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Publication of WO2019072136A1 publication Critical patent/WO2019072136A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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 digital signatures

Definitions

  • the invention relates to the field of blockchain technology, in particular to a blockchain network and a transaction method thereof.
  • Blockchain is a new application mode of computer technology such as distributed data storage, point-to-point transmission, consensus mechanism, and encryption algorithm.
  • the so-called consensus mechanism is a mathematical algorithm for realizing trust and acquiring rights between different nodes in the blockchain system.
  • Blockchain design is a protection measure, such as (applied) to a highly fault-tolerant distributed computing system.
  • the blockchain makes mixing consistency possible. This makes the blockchain suitable for recording events, headlines, medical records and other activities that require data collection, identity management, transaction process management and provenance management.
  • the blockchain has enormous potential for finance and has a huge impact on leading global trade.
  • the Chinese Patent Application No. 201110058800.5 entitled “A Log Event Correlation Analysis Method and Apparatus for Concurrent and Intermittent Analysis” provides a log event correlation analysis method and apparatus for concurrent and intermittent analysis.
  • the device needs to collect and analyze all the logs afterwards (that is, after the audit), and there is no intrinsic link between all the logs. That is to say, there is no immediate audit during the transaction.
  • the node may forge a large number of invalid transactions, verify the illegal transactions, and other cheating and inaction behaviors. These malicious behaviors cannot be detected in time, which may cause the blockchain system to fail to operate stably.
  • each partition may be provided with a partition identifier, and may be used as a Query partition or a Commit partition during the verification transaction.
  • the present invention proposes a design scheme based on a log hash chain, that is, after a transaction is verified by a Query and a Commit partition (different partitions), a log hash chain of the node itself is recorded, and the chain is visible throughout the network. It records all the behaviors of the node during the running of the system, and the chain header value of the hash chain will be sent to other nodes in the network in the form of signatures, and finally the cross-validation of node behavior in the network is realized.
  • the invention also proposes a method and a system for auditing the time block chain system, which is realized by mutual auditing and management between nodes in the network (belonging to the transaction real-time audit), and the hash algorithm is used to ensure that the record cannot be tampered with. Sex.
  • a blockchain network comprising: a plurality of verification nodes, a first portion of the plurality of verification nodes being divided into a first partition, the plurality of verifications The second portion of the node is divided into a second partition, wherein the partitioning is based on a business scenario, a group or a service vertical domain, and the verification node in the first partition is configured to perform a first transaction request from the client Verifying, and signing the first transaction request after verification is passed, and returning to the client; and the verification node in the second partition is configured to verify a second transaction request from the client, and Recorded after verification is passed, wherein the first transaction request includes transaction content, and the second transaction request includes the transaction content and a signature of a verification node within the first partition collected by the client.
  • the verification node in the first partition is configured to verify whether the digital signature and the input of the user in the transaction content are double-flowered after receiving the first transaction request.
  • the verification node in the second partition is configured to determine whether the transaction in the second transaction request obtains a signature of more than half of the verification nodes in the first partition.
  • the verification node in the first partition is a request node, and is configured to be logged in the form of Query (node, tx, input, timestamp) after the verification is passed, wherein node is current Verify the node number, tx is the transaction hash value, input is the transaction input that the verification node verifies, and timestamp is the current timestamp.
  • the verification node in the second partition is a confirmation node, and is configured to be logged in the form of Commit (node, tx, signs, timestamp) after the verification is passed, where node is the current Verify the node number, tx is the transaction hash value, signs are all signatures received by the verification node, and timestamp is the current timestamp.
  • each of the plurality of verification nodes has its own log hash chain for recording its request and/or acknowledgment behavior in the consensus protocol.
  • a blockchain network-based transaction method including a plurality of verification nodes, a first portion of the plurality of verification nodes being divided into a first partition, The second portion of the plurality of verification nodes is divided into a second partition, the partitioning is performed based on a service scenario, a group, or a service vertical domain, the method comprising: verifying a node pair in the first partition from a client The first transaction request of the terminal is verified; after the verification is passed, the verification node in the first partition signs the first transaction request and returns to the client; the verification node pair in the second partition comes from The second transaction request of the client is verified; and after the verification is passed, the verification node in the second partition records the transaction information into the ledger, wherein the first transaction request includes the transaction content, and the second transaction The request includes the transaction content and a signature of the verification node within the first partition collected by the client.
  • the verifying the first transaction request from the client by the verification node in the first partition comprises: after receiving the first transaction request, the verification node in the first partition is for the transaction Whether the user's digital signature and input in the content are double-checked.
  • the verifying node in the second partition to verify the second transaction request from the client includes: the verification node in the second partition determines whether the transaction in the second transaction request is obtained The signature of more than half of the verification nodes in the first partition.
  • the verification node in the first partition signs the first transaction request
  • the return to the client includes: the verification node in the first partition after the verification is passed Log in the form of Query (node, tx, input, timestamp), where node is the current verification node serial number, tx is the transaction hash value, input is the transaction input passed by the verification node verification, and timestamp is the current timestamp.
  • the verification node in the second partition records the transaction information into the ledger: the verification node in the second partition passes the Commit (node, tx, signs, The form of timestamp) is logged, where node is the current verification node number, tx is the transaction hash value, signs are all signatures received by the verification node, and timestamp is the current timestamp.
  • each of the plurality of verification nodes has its own log hash chain for recording its request and/or acknowledgment behavior in the consensus protocol.
  • a computer storage medium comprising instructions that, when executed, implement the method as previously described.
  • the technical solution of the present invention proposes a transaction method and system based on blockchain network node partitioning, and improves the transaction processing capability of the system in a partitioned manner.
  • the behavior of the nodes in the blockchain system network can be systematically analyzed and processed by the log data to form mutual audits between nodes, forming mutual witness (or cross-validation) of the behavior of each node.
  • FIG. 1 is a block diagram showing a block system of a transaction system based on a blockchain network according to an embodiment of the present invention
  • FIG. 2 is a block diagram showing a block system of a transaction system based on a blockchain network according to an embodiment of the present invention
  • Figure 3 is a schematic illustration of a blockchain network based transaction method in accordance with one embodiment of the present invention.
  • Figure 4 is a schematic illustration of a blockchain network based transaction method in accordance with one embodiment of the present invention.
  • Figure 5 illustrates schematically a log hash chain in accordance with one embodiment of the present invention.
  • each transaction requires 6 block confirmation, 10 minutes to generate a block, the entire network to confirm a transaction at least 1 hour, which is in many application scenarios Hard to accept.
  • the present invention uses the method of transaction verification as an entry point, through the sharding mechanism, that is, each node only processes a part of transactions, such as a part of the account-initiated transaction, thereby alleviating the calculation and storage burden of the node. , effectively improve the system's transaction throughput and transaction delay.
  • FIG. 1 is a block diagram showing the architecture of a blockchain network based transaction system in accordance with one embodiment of the present invention.
  • the entire transaction system can include a blockchain network 20 and a client 10.
  • a plurality of verification nodes are included within the blockchain network 20.
  • the verification nodes in the system can be partitioned based on different business scenarios, groups, or business vertical areas. For example, there may be a partition identifier of the corresponding partition before the public key address of each verification node.
  • Each partition includes a number of verification nodes for performing a Query or Commit process on the transaction.
  • FIG. 2 also shows a block system of a blockchain network based transaction system, wherein the blockchain network includes a plurality of verification nodes, some of which are divided into Query partitions, and a further portion is divided into Commit partitions.
  • this partitioning can be based on business scenarios, groups, or vertical areas of the business.
  • the partition identifier of the corresponding partition may be preceded by the public key address of each verification node.
  • Each partition includes a number of verification nodes for performing a Query or Commit process on the transaction.
  • Figure 2 further illustrates a gateway and system routing device.
  • a transaction request submitted by a user through a client is sent to each partition within the blockchain network via a gateway, system routing device.
  • the client is responsible for receiving the user's transaction request (the request includes node dynamic join and transaction request), and the transaction input and output portions are sent to the gateway along with the group package formation transaction hash value.
  • the gateway is responsible for parsing the transaction hash value into a multi-input, multi-output form and sending the result to the system routing device. According to the result of the gateway analysis, the system routing device sends each input and output to its corresponding Query and Commit partition for verification, including two parts of anti-double-flower verification and transaction legality verification. The pen transaction is recorded.
  • FIG. 3 schematically illustrates a blockchain network based transaction method 3000 in accordance with one embodiment of the present invention.
  • the blockchain network may refer to the blockchain network 20 described in FIG. 1 or 2, including a plurality of verification nodes, the first portion of the plurality of verification nodes being divided into a first partition, and the first of the plurality of verification nodes
  • the second part is divided into second partitions, which can be based on business scenarios, groups or vertical areas of the business.
  • step 310 the verification node within the first partition authenticates the first transaction request from the client.
  • step 320 after the verification is passed, the verification node in the first partition signs the first transaction request and returns to the client.
  • step 330 the verification node within the second partition authenticates the second transaction request from the client.
  • step 340 after the verification is passed, the verification node in the second partition records the transaction information into the ledger.
  • the first transaction request includes the transaction content
  • the second transaction request includes the transaction content and the signature of the verification node in the first partition collected by the client.
  • the above method is based on the multi-partition concept, and reduces the communication overhead caused by the consensus of the whole network by partitioning local consensus, thereby improving the system processing performance.
  • FIG. 4 there is shown in detail a transaction request processing procedure in accordance with one embodiment of the present invention. As shown in FIG. 4, it can include four major parts: transaction parsing, Query partition anti-double-star verification, client execution transactions, and verification transactions.
  • the gateway parses the transaction hash value to form a multi-input, multi-output form, and sends the result to the system routing device.
  • the system routing device looks for the Query partition to which it belongs, based on the results of the gateway analysis, through each entry in the transaction, and sends the transaction.
  • the above transaction resolution process can also be implemented by the client alone in one embodiment.
  • the transaction is parsed into an N input and an N output, the input and output being tuples, respectively represented as ('InputTx', ['keyid_in', 'pos', 'value_in'], ( 'OutputTx',['keyid_out', 'value_out']), where keyid_in is the transaction address corresponding to the pen input, pos is the partition ID to which the transaction address belongs, value_in is the value corresponding to the pen input, and keyid_out is the receiving The party's transaction address, value_out is the value paid to the recipient.
  • each verification node in the partition verifies the transaction, including anti-double-flowering, transaction legality, etc., and signs the transaction after the verification is passed.
  • each of the input is sent to the Query partition to which the transaction address belongs according to the POS identifier to which it belongs by parsing the N items of input.
  • Each verification node will perform double-proof confirmation on the input of the transaction, log in the form of Query (node, tx, input, timestamp) after confirmation, and then sign the transaction information. And return to the client.
  • the client collects the signature sent by the verification node in the Query partition and packages it with the transaction and sends it to the Commit partition.
  • the client collects the digital signature ⁇ sent by Node1, Node2, and Node3 in the Query partition, and sends the collected signature along with the transaction to the node Node4 of the Commit verification partition according to the pos identifier of each item. Node5, Node6.
  • the Commit partition verifies the transaction information, and focuses on judging whether the transaction is signed by more than half of the nodes in the Query partition, and after the verification is passed, it is recorded in the ledger.
  • the verification node verifies the information sent by the user, and after the verification is passed, the log is recorded in the form of Commit (node, tx, signs, timestamp), and the transaction tx is recorded into the ledger.
  • Commit node, tx, signs, timestamp
  • the log and the ledger are two different concepts.
  • the role of the log is to serve the log hash chain, which is mainly used for auditing and verifying the node behavior, and the account book refers to the verification of the verification node in the system. Consistent transaction book for recording transaction content.
  • the transaction method includes a policy for auditing the behavior of the verification node, and the implementation of the audit policy depends on the log hash chain of the node itself.
  • the specific implementation scheme is as follows:
  • All the verification nodes in the system have their own log hash chain.
  • the contents of the log include "Query” and "Commit”.
  • “Query” means that after the node receives the transaction request, it verifies the digital signature of the user in the transaction content and whether the input is double-flowered.
  • the log is recorded in the form of Query (node, tx, input, timestamp).
  • node refers to the current verification node serial number
  • tx is the transaction hash value
  • input is the transaction input passed by the verification node verification
  • timestamp is the current timestamp.
  • the hash chain value of the current log is signed The form is transmitted to the transaction Commit verification node, where ⁇ is the digital signature, pk is the public key of the sending information node, tx is the transaction hash value, input is the transaction input passed by the node verification, and node is the node number, h For the current chain header value, n is the corresponding record sequence number.
  • the Query and Commit behaviors of all nodes for a transaction will not only be recorded by themselves, but will be broadcast to all nodes in the system, and the logs of these nodes will be recorded at the same time.
  • a network for instant cross-validation between nodes in the system is formed.
  • the log of the node will expose its cheating behavior to ensure the normal operation of the entire system.
  • each node has its own log hash chain that records its behavior in the consensus protocol, including Query and Commit behavior. For example, when the client submits a new transaction tx to node 1-3, it will be recorded in the log as Query after the anti-double-factor authentication is passed, and the current chain header value (h n ) is signed. The form is transmitted to the client; after the client collects more than half of the signatures (signs containing the current chain name of each verifier as a witness), the signatures are sent along with the transaction to node 4-6 for transaction verification; After the verification is passed, Node 4-6 records all the signatures sent by the client in the log as Commit and generates a new chain header value (h m ).
  • the blockchain network-based transaction method of the present invention can be implemented by means of code.
  • the code can be stored on a variety of computer storage media including, but not limited to, magnetic disks, magnetic tapes, optical disks, hard disks, USB flash drives, SD cards, and memory sticks.
  • the technical solution of the present invention proposes a transaction method and system based on blockchain network node partitioning, and improves the transaction processing capability of the system in a partitioned manner.
  • the behavior of the nodes in the blockchain system network can be systematically analyzed and processed by the log data to form mutual audits between nodes, forming mutual witness (or cross-validation) of the behavior of each node.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供一种区块链网络,所述网络包括:多个验证节点,所述多个验证节点中的第一部分被划分为第一分区,所述多个验证节点中的第二部分被划分为第二分区,其中,所述划分基于业务场景、群体或业务垂直领域而进行,所述第一分区内的验证节点配置成对来自客户端的第一交易请求进行验证,并在验证通过后对所述第一交易请求进行签名,并返回所述客户端;以及所述第二分区内的验证节点配置成对来自所述客户端的第二交易请求进行验证,并在验证通过后记入账本。本发明还提供了一种基于区块链网络的交易方法和计算机存储介质。

Description

区块链网络及其交易方法 技术领域
本发明涉及区块链技术领域,特别涉及一种区块链网络及其交易方法。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。区块链的设计是一种保护措施,比如(应用于)高容错的分布式计算系统。区块链使混合一致性成为可能。这使区块链适合记录事件、标题、医疗记录和其他需要收录数据的活动、身份识别管理,交易流程管理和出处证明管理。区块链对于金融有巨大的潜能,对于引领全球贸易有着巨大的影响。
申请号为201110058800.5、发明名称为:“一种可并发和断续分析的日志事件关联分析方法和装置”的中国专利申请提供了一种可并发和断续分析的日志事件关联分析方法和装置。该装置需要对所有日志进行事后采集、分析(即事后审计),所有日志之间不存在内在联系。也就是说,在交易进行过程中不存在即时审计。当网络内存在恶意节点的情况下,该节点可能会伪造大量无效交易、对非法交易进行验证等作弊和不作为行为,这些恶意行为不能被及时察觉可能会造成区块链系统无法稳定的运行。
因此,期望一种改进的区块链网络及其交易方法。
以上公开于本发明背景部分的信息仅仅旨在增加对本发明的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。
发明内容
为了解决以上提及的一个或多个问题,本发明提出一种多分区的 区块链网络,每个分区可设有分区标识,并且在验证交易过程中均可作为Query分区或者Commit分区。此外,本发明提出一种基于日志哈希链的设计方案,即一笔交易经Query及Commit分区(不同分区)分别验证后,会记录至节点自身的日志哈希链,该链全网可见,其中记录了该节点在系统运行过程中的所有行为,并且该哈希链的链头值将以签名的形式发送至网络内其他节点,最终实现网络内节点行为的交叉验证。本发明还提出一种时间区块链系统可审计性的方法及系统,其通过网络内节点间的互相审计和管理来实现(属于交易即时审计),并通过哈希算法来保证记录的不可篡改性。
根据本发明的一个方面,提供了一种区块链网络,该区块链网络包括:多个验证节点,所述多个验证节点中的第一部分被划分为第一分区,所述多个验证节点中的第二部分被划分为第二分区,其中,所述划分基于业务场景、群体或业务垂直领域而进行,所述第一分区内的验证节点配置成对来自客户端的第一交易请求进行验证,并在验证通过后对所述第一交易请求进行签名,并返回所述客户端;以及所述第二分区内的验证节点配置成对来自所述客户端的第二交易请求进行验证,并在验证通过后记入账本,其中所述第一交易请求包括交易内容,以及所述第二交易请求包括所述交易内容和所述客户端收集的所述第一分区内的验证节点的签名。
在上述区块链网络中,所述第一分区内的验证节点配置成在收到所述第一交易请求后,针对所述交易内容中的用户的数字签名、输入是否双花进行验证。
在上述区块链网络中,所述第二分区内的验证节点配置成判断所述第二交易请求中的交易是否得到所述第一分区内半数以上的验证节点的签名。
在上述区块链网络中,所述第一分区内的验证节点是请求节点,其配置成在验证通过后,以Query(node,tx,input,timestamp)的形式记入日志,其中node为当前验证节点序号,tx为交易哈希值,input为验证节点验证通过的交易输入,timestamp为当前时间戳。
在上述区块链网络中,所述第二分区内的验证节点为确认节点, 其配置成在验证通过后,以Commit(node,tx,signs,timestamp)的形式记入日志,其中node为当前验证节点序号,tx为交易哈希值,signs为验证节点收到的所有签名,timestamp为当前时间戳。
在上述区块链网络中,所述多个验证节点中的每一个具有其自身的日志哈希链,用于记录其在共识协议中的请求和/或确认行为。
根据本发明的另一个方面,提供了一种基于区块链网络的交易方法,所述区块链网络包括多个验证节点,所述多个验证节点中的第一部分被划分为第一分区,所述多个验证节点中的第二部分被划分为第二分区,所述划分基于业务场景、群体或业务垂直领域而进行,所述方法包括:所述第一分区内的验证节点对来自客户端的第一交易请求进行验证;在验证通过后,所述第一分区内的验证节点对所述第一交易请求进行签名,并返回所述客户端;所述第二分区内的验证节点对来自所述客户端的第二交易请求进行验证;以及在验证通过后,所述第二分区内的验证节点将交易信息记入账本,其中所述第一交易请求包括交易内容,以及所述第二交易请求包括所述交易内容和所述客户端收集的所述第一分区内的验证节点的签名。
在上述方法中,所述第一分区内的验证节点对来自客户端的第一交易请求进行验证包括:在收到所述第一交易请求后,所述第一分区内的验证节点针对所述交易内容中的用户的数字签名、输入是否双花进行验证。
在上述方法中,所述第二分区内的验证节点对来自所述客户端的第二交易请求进行验证包括:所述第二分区内的验证节点判断所述第二交易请求中的交易是否得到所述第一分区内半数以上的验证节点的签名。
在上述方法中,在验证通过后,所述第一分区内的验证节点对所述第一交易请求进行签名,并返回所述客户端包括:所述第一分区内的验证节点在验证通过后,以Query(node,tx,input,timestamp)的形式记入日志,其中node为当前验证节点序号,tx为交易哈希值,input为验证节点验证通过的交易输入,timestamp为当前时间戳。
在上述方法中,在验证通过后,所述第二分区内的验证节点将交 易信息记入账本包括:所述第二分区内的验证节点在验证通过后,以Commit(node,tx,signs,timestamp)的形式记入日志,其中node为当前验证节点序号,tx为交易哈希值,signs为验证节点收到的所有签名,timestamp为当前时间戳。
在上述方法中,所述多个验证节点中的每一个具有其自身的日志哈希链,用于记录其在共识协议中的请求和/或确认行为。
根据本发明的又一个方面,提供了一种计算机存储介质,所述介质包括指令,所述指令在被执行时,实现如前所述的方法。
本发明的技术方案提出基于区块链网络节点分区的交易方法及系统,以分区的方式提高系统的交易处理能力。此外,区块链系统网络内节点的行为可通过对日志数据进行系统分析处理,形成节点间相互审计,形成各节点行为的互相见证(或交叉验证)。
通过纳入本文的附图以及随后与附图一起用于说明本发明的某些原理的具体实施方式,本发明的方法和装置所具有的其它特征和优点将更为具体地变得清楚或得以阐明。
附图说明
图1示意示出了本发明的一个实施例的基于区块链网络的交易系统架构图;
图2示意示出了本发明的一个实施例的基于区块链网络的交易系统架构图;
图3示意示出了本发明的一个实施例的基于区块链网络的交易方法;以及
图4示意示出了本发明的一个实施例的基于区块链网络的交易方法;以及
图5示意示出了根据本发明的一个实施例的日志哈希链。
具体实施方式
以下说明描述了本发明的特定实施方式以教导本领域技术人员如何制造和使用本发明的最佳模式。为了教导发明原理,已简化 或省略了一些常规方面。本领域技术人员应该理解源自这些实施方式的变型将落在本发明的范围内。本领域技术人员应该理解下述特征能够以各种方式接合以形成本发明的多个变型。由此,本发明并不局限于下述特定实施方式,而仅由权利要求和它们的等同物限定。
区块链系统中的可扩展性(Scalability)解决方案之于区块链的重要性,可类比于TCP/IP协议之于互联网的重要性。类似比特币区块链交易频率约6.67次/秒,每次交易需要6个区块确认,10分钟才能产生一个区块,全网确认一次交易至少需要1个小时,这在很多应用场景下是很难接受的。为了解决这个问题,本发明从交易验证的方式作为切入点,通过分片处理的机制(sharding),即每个节点只处理一部分交易,比如一部分账户发起的交易,从而减轻节点的计算和存储负担,有效提高系统的交易吞吐量和交易时延。
图1示意示出了本发明的一个实施例的基于区块链网络的交易系统架构图。如图1所示,整个交易系统可包括区块链网络20和客户端10。在区块链网络20内包括多个验证节点。可基于不同业务场景、群体或业务垂直领域对系统中的验证节点进行分区。例如,在每个验证节点的公钥地址前可具有相应分区的分区标识。每个分区包括若干的验证节点,用于对交易进行Query(请求)或Commit(确认)过程。
图2也示出了一种基于区块链网络的交易系统架构图,其中区块链网络包括多个验证节点,其中的一部分被划分为Query分区,其中的又一部分被划分为Commit分区。需要指出的是,该划分可基于业务场景、群体或业务垂直领域而进行。在一个示例中,在每个验证节点的公钥地址前可具有相应分区的分区标识。每个分区包括若干的验证节点,用于对交易进行Query(请求)或Commit(确认)过程。
与图1不同,图2进一步示出了网关和系统路由装置。在图2的示例中,用户通过客户端提交的交易申请会经由网关、系统路由装置发送至区块链网络内的各个分区。
在一个实施例中,客户端负责接收用户的交易请求(请求包括 节点动态加入和交易请求),对交易输入、输出部分连同进行组包形成交易哈希值发送给网关。网关负责将交易哈希值进行解析,形成一个多输入、多输出的形式,并将结果发送至系统路由装置。系统路由装置根据网关解析的结果,将每一笔输入、输出发往其所对应的Query及Commit分区进行验证,其中包括防双花验证、交易合法性验证两个部分,交易验证成功后对整笔交易进行记录。
图3示意示出了本发明的一个实施例的基于区块链网络的交易方法3000。区块链网络可参照图1或2中描述的区块链网络20,其中包括多个验证节点,该多个验证节点中的第一部分被划分为第一分区,该多个验证节点中的第二部分被划分为第二分区,划分可基于业务场景、群体或业务垂直领域而进行。
在步骤310中,第一分区内的验证节点对来自客户端的第一交易请求进行验证。
在步骤320中,在验证通过后,第一分区内的验证节点对第一交易请求进行签名,并返回客户端。
在步骤330中,第二分区内的验证节点对来自客户端的第二交易请求进行验证。
在步骤340中,在验证通过后,第二分区内的验证节点将交易信息记入账本。
有必要指出的是,在上述交易方法3000中,第一交易请求包括交易内容,以及第二交易请求包括交易内容和客户端收集的第一分区内的验证节点的签名。
上述方法以多分区概念为基础,通过分区局部共识来减少因全网共识产生的通讯开销,从而提高系统处理性能。
参考图4,它具体示出了根据本发明的一个实施例的交易请求处理过程。如图4所示,其可包括四大部分:交易解析、Query分区防双花验证、客户端执行交易以及验证交易。
在交易解析过程中,例如由网关将交易哈希值进行解析,形成一个多输入、多输出的形式,并将结果发送至系统路由装置。系统路由装置随后根据网关分析的结果,通过交易中的每一个输入项,寻找其 所属的Query分区,并发送交易。上述交易解析过程在一个实施例中也可由客户端单独实现。
在一个实施例中,交易被解析成N输入和N输出,所述输入、输出均为元组,分别表示为('InputTx',['keyid_in','pos','value_in'])、('OutputTx',['keyid_out','value_out']),其中keyid_in为当笔输入对应的交易地址,pos指该交易地址所属分区标识,value_in为当笔输入所对应的价值,keyid_out为所述接收方的交易地址,value_out为支付给该接收方的价值。
在Query分区防双花验证过程中,分区内各个验证节点对交易进行验证,包括防双花、交易合法性等,在验证通过后对交易签名。在一个实施例中,通过解析出的N项输入,将每一笔输入根据其所属pos标识,发送至交易地址所属Query分区。各验证节点会对该笔交易的input进行防双花确认,通过确认后以Query(node,tx,input,timestamp)的形式记入日志,然后对交易信息进行签名
Figure PCTCN2018109246-appb-000001
并返回给客户端。
在客户端执行交易过程中,客户端收集Query分区内验证节点发来的签名,将其与交易打包发送至Commit分区。在一个实施例中,客户端收集Query分区内Node1、Node2、Node3发送来的数字签名σ,根据每一项输出所属pos标识,将收集的签名连同该交易一起发送至Commit验证分区的节点Node4、Node5、Node6。
在验证交易过程中,Commit分区对交易信息进行验证,着重判断该交易是否得到Query分区半数以上节点的签名,在验证通过后,记入账本。在一个实施例中,验证节点对用户发送来的信息进行验证,验证通过后会以Commit(node,tx,signs,timestamp)的形式记入日志,同时将该交易tx记录至账本中。当同一片区内大于一半的记账节点记录该交易后,视为达成共识,该笔交易将不可篡改,并会将交易成功信息发送给用户。
需要强调的是,在本发明的上下文中,日志与账本是两种不同的概念,日志的作用是为日志哈希链服务,主要用于审计验证节点行为,而账本是指系统内验证节点保证一致性的交易账本,用于记录交易内 容。
在本发明的一个实施例中,上述交易方法包含了对验证节点行为进行审计的策略,该审计策略的实施需依托节点自身的日志哈希链,具体实施方案如下:
系统中所有验证节点均具有自身的日志哈希链,该日志中的内容包括“Query(请求)”、“Commit(确认)”两种。“Query(请求)”是指节点接收到交易请求后,针对交易内容中用户的数字签名、输入是否双花进行验证,验证通过后以Query(node,tx,input,timestamp)的形式记入日志,node指当前验证节点序号,tx为交易哈希值,input为验证节点验证通过的交易输入,timestamp为当前时间戳。当前日志哈希链的链头值会随着这条Query记录的加入而发生改变,h_n=H(Query‖h_(n-1)),式中h_n指第n条记录后的哈希链头值,Query指当前记录,h_(n-1)指日志中前n-1条的哈希链头值。当前日志的哈希链头值通过签名
Figure PCTCN2018109246-appb-000002
的形式传输给交易Commit(确认)验证节点,式中σ为数字签名,pk为发送信息节点的公钥,tx为交易哈希值,input为节点验证通过的交易输入,node指节点序号,h为当前链头值,n为对应的记录序列号。交易“Commit(确认)”节点收到前述各节点发来的签名后,会对这些签名进行验证(包括签名中所包含的输入、节点序号、日志链头值等),验证成功后会以Commit(node,tx,signs,timestamp)的形式记入日志,node指当前节点序号,tx为交易哈希值,signs为节点收到的所有签名,timestamp为当前时间戳。当前日志哈希链的链头值会随着这条Commit记录的加入而发生改变,h_m=H(Commit‖h_(m-1)),式中h_m指第m条记录后的哈希链头值,Commit指当前记录,h_(m-1)指日志中前m-1条的哈希链头值。
以此类推,即在整个区块链系统中,所有节点针对一笔交易的Query和Commit行为将不仅仅由自身记录,而是会广播到系统内的所有节点,并同时记录在这些节点的日志中,形成了系统内节点间即时交叉验证的网络,当某一节点想要去篡改记录或者不作为时,该节点的日志会将其作弊行为暴露,保证整个系统的正常运行。
如图4所示,每一个节点都具有其自身的日志哈希链,记录其在共识协议中的行为,包括Query(请求)和Commit(确认)行为。例如,当客户端提交一笔新的交易tx至节点1-3时,在防双花验证通过后会以Query的形式记录在日志中,并将当前的链头值(h n)以签名的形式传送给客户端;客户端收集到超过半数的签名(signs,签名中包含每一个验证者当前的链头值作为见证)后,将这些签名连同交易发送至节点4-6进行交易验证;交易验证通过后,节点4-6会将客户端发来的所有signs以Commit的形式记录在日志中,并生成一个新的链头值(h m)。
引入日志哈希链后,针对同一笔交易过程中“请求”、“确认”两个阶段行为的互相记录和验证,使得任何节点作弊及不作为行为均会在全网可见的日志中被发现。
此外,本发明的基于区块链网络的交易方法可通过代码的方式进行实现。该代码可存储在各种计算机存储介质(包括但不限于磁盘、磁带、光盘、硬盘、U盘、SD卡以及内存条等)上。
综上,本发明的技术方案提出基于区块链网络节点分区的交易方法及系统,以分区的方式提高系统的交易处理能力。此外,区块链系统网络内节点的行为可通过对日志数据进行系统分析处理,形成节点间相互审计,形成各节点行为的互相见证(或交叉验证)。
以上例子主要说明了基于区块链网络中网络节点分区的方案。尽管只对其中一些本发明的具体实施方式进行了描述,但是本领域普通技术人员应当了解,本发明可以在不偏离其主旨与范围内以许多其他的形式实施。因此,所展示的例子与实施方式被视为示意性的而非限制性的,在不脱离如所附各权利要求所定义的本发明精神及范围的情况下,本发明可能涵盖各种的修改与替换。

Claims (13)

  1. 一种区块链网络,其特征在于,所述网络包括:
    多个验证节点,所述多个验证节点中的第一部分被划分为第一分区,所述多个验证节点中的第二部分被划分为第二分区,
    其中,所述划分基于业务场景、群体或业务垂直领域而进行,
    所述第一分区内的验证节点配置成对来自客户端的第一交易请求进行验证,并在验证通过后对所述第一交易请求进行签名,并返回所述客户端;以及
    所述第二分区内的验证节点配置成对来自所述客户端的第二交易请求进行验证,并在验证通过后记入账本,其中所述第一交易请求包括交易内容,以及所述第二交易请求包括所述交易内容和所述客户端收集的所述第一分区内的验证节点的签名。
  2. 如权利要求1所述的区块链网络,其中,所述第一分区内的验证节点配置成在收到所述第一交易请求后,针对所述交易内容中的用户的数字签名、输入是否双花进行验证。
  3. 如权利要求1所述的区块链网络,其中,所述第二分区内的验证节点配置成判断所述第二交易请求中的交易是否得到所述第一分区内半数以上的验证节点的签名。
  4. 如权利要求2所述的区块链网络,其中,所述第一分区内的验证节点是请求节点,其配置成在验证通过后,以Query(node,tx,input,timestamp)的形式记入日志,其中node为当前验证节点序号,tx为交易哈希值,input为验证节点验证通过的交易输入,timestamp为当前时间戳。
  5. 如权利要求3所述的区块链网络,其中,所述第二分区内的验证节点为确认节点,其配置成在验证通过后,以Commit(node,tx,signs,timestamp)的形式记入日志,其中node为当前验证节点序号,tx为交易哈希值,signs为验证节点收到的所有签名,timestamp为当前时间戳。
  6. 如权利要求1所述的区块链网络,其中,所述多个验证节点 中的每一个具有其自身的日志哈希链,用于记录其在共识协议中的请求和/或确认行为。
  7. 一种基于区块链网络的交易方法,其特征在于,所述区块链网络包括多个验证节点,所述多个验证节点中的第一部分被划分为第一分区,所述多个验证节点中的第二部分被划分为第二分区,所述划分基于业务场景、群体或业务垂直领域而进行,所述方法包括:
    所述第一分区内的验证节点对来自客户端的第一交易请求进行验证;
    在验证通过后,所述第一分区内的验证节点对所述第一交易请求进行签名,并返回所述客户端;
    所述第二分区内的验证节点对来自所述客户端的第二交易请求进行验证;以及
    在验证通过后,所述第二分区内的验证节点将交易信息记入账本,其中所述第一交易请求包括交易内容,以及所述第二交易请求包括所述交易内容和所述客户端收集的所述第一分区内的验证节点的签名。
  8. 如权利要求7所述的方法,其中,所述第一分区内的验证节点对来自客户端的第一交易请求进行验证包括:
    在收到所述第一交易请求后,所述第一分区内的验证节点针对所述交易内容中的用户的数字签名、输入是否双花进行验证。
  9. 如权利要求7所述的方法,其中,所述第二分区内的验证节点对来自所述客户端的第二交易请求进行验证包括:
    所述第二分区内的验证节点判断所述第二交易请求中的交易是否得到所述第一分区内半数以上的验证节点的签名。
  10. 如权利要求8所述的方法,其中,在验证通过后,所述第一分区内的验证节点对所述第一交易请求进行签名,并返回所述客户端包括:
    所述第一分区内的验证节点在验证通过后,以Query(node,tx,input,timestamp)的形式记入日志,其中node为当前验证节点序号,tx为交易哈希值,input为验证节点验证通过的交易输入,timestamp 为当前时间戳。
  11. 如权利要求9所述的方法,其中,在验证通过后,所述第二分区内的验证节点将交易信息记入账本包括:
    所述第二分区内的验证节点在验证通过后,以Commit(node,tx,signs,timestamp)的形式记入日志,其中node为当前验证节点序号,tx为交易哈希值,signs为验证节点收到的所有签名,timestamp为当前时间戳。
  12. 如权利要求7所述的方法,其中,所述多个验证节点中的每一个具有其自身的日志哈希链,用于记录其在共识协议中的请求和/或确认行为。
  13. 一种计算机存储介质,其特征在于,所述介质包括指令,所述指令在被执行时,实现如权利要求7至12中任一项所述的方法。
PCT/CN2018/109246 2017-10-13 2018-10-05 区块链网络及其交易方法 Ceased WO2019072136A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710951045.0 2017-10-13
CN201710951045.0A CN108023729B (zh) 2017-10-13 2017-10-13 区块链网络及其交易方法

Publications (1)

Publication Number Publication Date
WO2019072136A1 true WO2019072136A1 (zh) 2019-04-18

Family

ID=62080229

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/109246 Ceased WO2019072136A1 (zh) 2017-10-13 2018-10-05 区块链网络及其交易方法

Country Status (2)

Country Link
CN (1) CN108023729B (zh)
WO (1) WO2019072136A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112084201A (zh) * 2020-08-27 2020-12-15 东软集团股份有限公司 分布式账本处理方法和装置、存储介质和电子设备
CN114418574A (zh) * 2020-01-17 2022-04-29 厦门潭宏信息科技有限公司 一种共识和资源传输方法、设备及存储介质
CN114462998A (zh) * 2020-11-09 2022-05-10 中国移动通信有限公司研究院 一种日志防篡改方法、系统及存储介质

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108023729B (zh) * 2017-10-13 2020-06-23 中国银联股份有限公司 区块链网络及其交易方法
CN108985760B (zh) * 2018-06-15 2021-07-06 杭州复杂美科技有限公司 支付方法及系统、设备和存储介质
CN108985740B (zh) * 2018-07-07 2021-08-06 夸克链科技(深圳)有限公司 高性能共识算法的实现方法
CN108960794A (zh) * 2018-07-14 2018-12-07 上海分布信息科技有限公司 一种区块生成方法及区块生成系统
CN108876380B (zh) * 2018-08-07 2021-03-23 创新先进技术有限公司 一种基于中心化结算与区块链存证的交易方法及系统
CN109309708B (zh) * 2018-08-16 2021-06-04 泰链(厦门)科技有限公司 区块链系统中区块生产速度的加快方法、介质、装置及区块链系统
CN109447630A (zh) * 2018-09-10 2019-03-08 北京安易信科技有限公司 一种支持多行业多应用的区块链构建方法及系统
CN109377364A (zh) * 2018-09-27 2019-02-22 中国联合网络通信集团有限公司 一种建组方法和装置、交易方法和系统
CN109462587B (zh) * 2018-11-09 2020-03-27 四川虹微技术有限公司 区块链分层共识方法、区块链网络系统及区块链节点
WO2020108288A1 (zh) * 2018-11-29 2020-06-04 华为技术有限公司 一种数据库系统、节点和方法
CN111274612B (zh) * 2018-12-04 2022-12-02 北京京东尚科信息技术有限公司 从业人员信任验证方法及系统、见证服务系统及存储介质
CN109886681B (zh) * 2019-01-31 2021-06-18 北京瑞卓喜投科技发展有限公司 区块链共识方法及共识系统
CN111614708B (zh) * 2019-02-26 2021-06-08 傲为信息技术(江苏)有限公司 一种基于区块链的交易系统
CN110225110B (zh) * 2019-06-06 2022-08-12 深圳前海微众银行股份有限公司 一种区块链群组的拆分方法及装置
CN110458560B (zh) * 2019-07-12 2021-10-12 创新先进技术有限公司 用于进行交易验证的方法及装置
US10951417B2 (en) 2019-07-12 2021-03-16 Advanced New Technologies Co., Ltd. Blockchain-based transaction verification
CN110445627B (zh) * 2019-08-12 2021-10-26 腾讯科技(深圳)有限公司 群组更新方法、装置、计算机设备以及计算机存储介质
US11323269B2 (en) * 2020-01-20 2022-05-03 International Business Machines Corporation Preserving privacy of linked cross-network transactions
CN112838930B (zh) * 2021-01-25 2022-12-06 网易(杭州)网络有限公司 区块链交易的执行方法及装置、电子设备、存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106656974A (zh) * 2016-10-17 2017-05-10 江苏通付盾科技有限公司 区块链的分组共识方法及系统
CN107196900A (zh) * 2017-03-24 2017-09-22 阿里巴巴集团控股有限公司 一种共识校验的方法及装置
WO2017175073A1 (en) * 2016-04-05 2017-10-12 Vchain Technology Limited Method and system for managing personal information within independent computer systems and digital networks
CN108023729A (zh) * 2017-10-13 2018-05-11 中国银联股份有限公司 区块链网络及其交易方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106530083B (zh) * 2016-10-27 2018-06-29 深圳壹账通智能科技有限公司 基于区块链的多链管理方法及系统
WO2018090331A1 (zh) * 2016-11-18 2018-05-24 深圳前海达闼云端智能科技有限公司 区块链网络、物品交易方法、装置及节点设备
CN106789095B (zh) * 2017-03-30 2020-12-08 腾讯科技(深圳)有限公司 分布式系统及消息处理方法
CN113435994A (zh) * 2017-03-31 2021-09-24 唐晓领 基于区块链的金融借贷多方共享交易元数据信息的方法、装置及系统
CN107239940A (zh) * 2017-05-11 2017-10-10 北京博晨技术有限公司 基于区块链系统的网络交易方法及装置
CN107240001B (zh) * 2017-06-06 2020-12-04 北京汇通金财信息科技有限公司 一种数字资产的交易方法和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017175073A1 (en) * 2016-04-05 2017-10-12 Vchain Technology Limited Method and system for managing personal information within independent computer systems and digital networks
CN106656974A (zh) * 2016-10-17 2017-05-10 江苏通付盾科技有限公司 区块链的分组共识方法及系统
CN107196900A (zh) * 2017-03-24 2017-09-22 阿里巴巴集团控股有限公司 一种共识校验的方法及装置
CN108023729A (zh) * 2017-10-13 2018-05-11 中国银联股份有限公司 区块链网络及其交易方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114418574A (zh) * 2020-01-17 2022-04-29 厦门潭宏信息科技有限公司 一种共识和资源传输方法、设备及存储介质
CN112084201A (zh) * 2020-08-27 2020-12-15 东软集团股份有限公司 分布式账本处理方法和装置、存储介质和电子设备
CN112084201B (zh) * 2020-08-27 2024-04-09 东软集团股份有限公司 分布式账本处理方法和装置、存储介质和电子设备
CN114462998A (zh) * 2020-11-09 2022-05-10 中国移动通信有限公司研究院 一种日志防篡改方法、系统及存储介质

Also Published As

Publication number Publication date
CN108023729A (zh) 2018-05-11
CN108023729B (zh) 2020-06-23

Similar Documents

Publication Publication Date Title
WO2019072136A1 (zh) 区块链网络及其交易方法
Mukta et al. Blockchain-based verifiable credential sharing with selective disclosure
CN112487778B (zh) 多用户在线签约系统及方法
CN107306183B (zh) 客户端、服务端、方法和身份验证系统
US12368601B2 (en) System for authenticating verified personal credentials
CN111523147B (zh) 一种基于区块链的核身方法及相关硬件
US9853964B2 (en) System and method for authenticating the legitimacy of a request for a resource by a user
US11240041B2 (en) Blockchain-based transaction verification
KR20190075772A (ko) 블록체인을 이용한 개인정보 분리 후 조합을 통한 인증 시스템
CN107124281B (zh) 一种数据保全方法和相关系统
Acar et al. A privacy‐preserving multifactor authentication system
CN113612616A (zh) 一种基于区块链的车辆通信方法和装置
WO2019178440A1 (en) System and method for securing private keys behind a biometric authentication gateway
US12182077B1 (en) Distributed ledger regulatory auditing system and method
EP4485241A1 (en) Method and apparatus for verifying applications
CN118316718B (zh) 数据处理方法、装置、存储介质及计算机设备
Shahin et al. Big data platform privacy and security, a review
Liu Improving the security and reliability of application systems with blockchain technology
CN114493586A (zh) 加密货币流向追踪方法和装置
CN116010956A (zh) 数据查询方法及相关产品
CN107612918B (zh) 对数据字典信息进行rsa加密存储的方法
RU2795371C1 (ru) Способ и система обезличенной оценки клиентов организаций для проведения операций между организациями
CN118869216B (zh) 基于证书的数据处理方法、装置、存储介质及电子设备
CN121283644A (zh) 验证码校验方法、中心服务器、边缘节点、介质和产品
Mohammad et al. A Lattice-Based Certificate Less Management Using M-Tree Hashing Technique for Detection of Malicious TPA.

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18867241

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18867241

Country of ref document: EP

Kind code of ref document: A1