[go: up one dir, main page]

CN111815321A - Transaction proposal processing method, device, system, storage medium and electronic device - Google Patents

Transaction proposal processing method, device, system, storage medium and electronic device Download PDF

Info

Publication number
CN111815321A
CN111815321A CN202010436876.6A CN202010436876A CN111815321A CN 111815321 A CN111815321 A CN 111815321A CN 202010436876 A CN202010436876 A CN 202010436876A CN 111815321 A CN111815321 A CN 111815321A
Authority
CN
China
Prior art keywords
information
client
signature
signature information
verification
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.)
Pending
Application number
CN202010436876.6A
Other languages
Chinese (zh)
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.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology 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 Beijing Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN202010436876.6A priority Critical patent/CN111815321A/en
Publication of CN111815321A publication Critical patent/CN111815321A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • 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/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • 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/3236Cryptographic 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请涉及一种交易提案的处理方法、装置、系统、存储介质和电子装置,其中,该方法包括:获取客户端的目标交易信息;使用客户端的客户端私钥对目标交易信息进行签名,得到第一签名信息;将携带有目标交易信息和第一签名信息的初始交易提案发送至区块链节点,其中,初始交易提案用于指示区块链节点获取携带有目标交易信息、第一签名信息和第二签名信息的目标交易提案,第二签名信息是区块链节点对目标交易信息进行签名得到的。本申请解决了相关技术中交易提案的验证过程安全性较低的技术问题。

Figure 202010436876

The present application relates to a method, device, system, storage medium and electronic device for processing a transaction proposal, wherein the method includes: acquiring target transaction information of a client; signing the target transaction information using the client private key of the client to obtain the first 1. Signature information; send the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, wherein the initial transaction proposal is used to instruct the blockchain node to obtain the target transaction information, the first signature information and The target transaction proposal of the second signature information. The second signature information is obtained by the blockchain node signing the target transaction information. The present application solves the technical problem of low security in the verification process of transaction proposals in the related art.

Figure 202010436876

Description

交易提案的处理方法、装置、系统、存储介质和电子装置Transaction proposal processing method, device, system, storage medium and electronic device

技术领域technical field

本申请涉及计算机领域,尤其涉及一种交易提案的处理方法、装置、系统、存储介质和电子装置。The present application relates to the field of computers, and in particular, to a method, device, system, storage medium and electronic device for processing a transaction proposal.

背景技术Background technique

随着区块链技术在金融领域的不断发展,特别是在BaaS(Blockchain as aService,区块链即服务)平台上,如何保证交易数据的真实性和可追溯性,成了BaaS平台面临的一个重要问题。With the continuous development of blockchain technology in the financial field, especially on the BaaS (Blockchain as a Service) platform, how to ensure the authenticity and traceability of transaction data has become a challenge faced by the BaaS platform. important question.

在相关技术中,基于BaaS的区块链交易验证方案主要为:当用户通过BaaS平台发起交易调用请求时,SDK使用组织私钥对交易信息进行一次签名,向区块链网络发起交易提案(Proposal),交易提案把交易调用的合约标志、参数信息以及签名等信息发送给背书(Endorser)节点;背书节点收到交易提案后,验证签名并确定提交者是否有权进行操作。In related technologies, the BaaS-based blockchain transaction verification scheme is mainly: when a user initiates a transaction call request through the BaaS platform, the SDK uses the organization's private key to sign the transaction information once, and initiates a transaction proposal to the blockchain network. ), the transaction proposal sends the contract flag, parameter information and signature information of the transaction call to the Endorser node; after the Endorser node receives the transaction proposal, it verifies the signature and determines whether the submitter has the right to operate.

基于目前联盟链的BaaS平台的区块链交易验证中,经过了区块链节点的背书、交易排序、签名、验证等过程,目前来说,区块链网络中的组织身份证书、私钥等信息托管于节点服务器中,当BaaS用户发起交易请求时,存在以下问题:首先,一旦组织身份证书、私钥被盗取或泄漏,不法分子就可以轻易伪造交易或盗取数字货币。此外,存在多笔交易对应同一身份证书、私钥等的情况,难以准确追踪交易的发起方用户信息。因此,现有BaaS的区块链交易验证存在一定的风险。In the blockchain transaction verification based on the BaaS platform of the current alliance chain, it has gone through the process of blockchain node endorsement, transaction sorting, signature, and verification. At present, the organizational identity certificate, private key, etc. in the blockchain network The information is hosted in the node server. When BaaS users initiate transaction requests, there are the following problems: First, once the organization's identity certificate and private key are stolen or leaked, criminals can easily forge transactions or steal digital currency. In addition, there are situations where multiple transactions correspond to the same identity certificate, private key, etc., and it is difficult to accurately track the user information of the initiator of the transaction. Therefore, the blockchain transaction verification of existing BaaS has certain risks.

针对上述的问题,目前尚未提出有效的解决方案。For the above problems, no effective solution has been proposed yet.

发明内容SUMMARY OF THE INVENTION

本申请提供了一种交易提案的处理方法、装置、系统、存储介质和电子装置,以至少解决相关技术中交易提案的验证过程安全性较低的技术问题。The present application provides a transaction proposal processing method, device, system, storage medium and electronic device, so as to at least solve the technical problem of low security in the verification process of the transaction proposal in the related art.

根据本申请实施例的一个方面,提供了一种交易提案的处理方法,包括:According to an aspect of the embodiments of the present application, a method for processing a transaction proposal is provided, including:

获取客户端的目标交易信息;Get the target transaction information of the client;

使用所述客户端的客户端私钥对所述目标交易信息进行签名,得到第一签名信息;Using the client private key of the client to sign the target transaction information to obtain first signature information;

将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至区块链节点,其中,所述初始交易提案用于指示所述区块链节点获取携带有所述目标交易信息、所述第一签名信息和第二签名信息的目标交易提案,所述第二签名信息是所述区块链节点对所述目标交易信息进行签名得到的。Send the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, wherein the initial transaction proposal is used to instruct the blockchain node to obtain the target transaction information carrying the target transaction information. , the target transaction proposal of the first signature information and the second signature information, where the second signature information is obtained by signing the target transaction information by the blockchain node.

根据本申请实施例的另一个方面,提供了另一种交易提案的处理方法,包括:According to another aspect of the embodiments of the present application, another method for processing a transaction proposal is provided, including:

获取携带有目标交易信息、第一签名信息和第二签名信息的目标交易提案,其中,所述目标交易信息是由客户端发起的,所述第一签名信息是使用所述客户端的客户端私钥对所述目标交易信息进行签名得到的,所述第二签名信息是区块链节点对所述目标交易信息进行签名得到的;Obtain the target transaction proposal carrying the target transaction information, the first signature information and the second signature information, wherein the target transaction information is initiated by the client, and the first signature information is obtained using the client's client private The second signature information is obtained by signing the target transaction information by the blockchain node;

对所述第一签名信息和所述第二签名信息进行签名验证;performing signature verification on the first signature information and the second signature information;

在所述第一签名信息和所述第二签名信息均验证通过的情况下,对所述目标交易提案进行背书处理。In the case that both the first signature information and the second signature information are verified and passed, the target transaction proposal is endorsed.

根据本申请实施例的另一方面,还提供了一种交易提案的处理系统,包括:客户端,区块链节点和背书节点,其中,According to another aspect of the embodiments of the present application, there is also provided a transaction proposal processing system, including: a client, a blockchain node and an endorsement node, wherein,

所述客户端,用于发起目标交易信息,使用所述客户端的客户端私钥对所述目标交易信息进行签名,得到第一签名信息,将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至所述区块链节点;The client is used for initiating target transaction information, and uses the client private key of the client to sign the target transaction information to obtain first signature information, which will carry the target transaction information and the first signature An initial transaction proposal for information is sent to the blockchain node;

所述区块链节点,用于使用组织私钥对所述目标交易信息进行签名得到第二签名信息,将携带有所述目标交易信息、所述第一签名信息和所述第二签名信息的目标交易提案发送至所述背书节点,其中,所述组织私钥是所述区块链节点所在的目标区块链组织的私钥;The blockchain node is used to sign the target transaction information using the organization's private key to obtain the second signature information, and will carry the target transaction information, the first signature information and the second signature information. The target transaction proposal is sent to the endorsement node, wherein the organization private key is the private key of the target blockchain organization where the blockchain node is located;

所述背书节点,用于获取所述目标交易提案,对所述第一签名信息和所述第二签名信息进行签名验证,在所述第一签名信息和所述第二签名信息均验证成功的情况下,对所述目标交易提案进行背书处理。The endorsement node is used to obtain the target transaction proposal, and perform signature verification on the first signature information and the second signature information. If both the first signature information and the second signature information are successfully verified, In this case, endorse the target transaction proposal.

根据本申请实施例的另一方面,还提供了一种交易提案的处理装置,包括:According to another aspect of the embodiments of the present application, a device for processing a transaction proposal is also provided, including:

第一获取模块,用于获取客户端的目标交易信息;The first acquisition module is used to acquire the target transaction information of the client;

第一签名模块,用于使用所述客户端的客户端私钥对所述目标交易信息进行签名,得到第一签名信息;a first signature module, configured to use the client private key of the client to sign the target transaction information to obtain first signature information;

第一发送模块,用于将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至区块链节点,其中,所述初始交易提案用于指示所述区块链节点获取携带有所述目标交易信息、所述第一签名信息和第二签名信息的目标交易提案,所述第二签名信息是所述区块链节点对所述目标交易信息进行签名得到的。a first sending module, configured to send an initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, wherein the initial transaction proposal is used to instruct the blockchain node to obtain A target transaction proposal carrying the target transaction information, the first signature information and the second signature information, where the second signature information is obtained by the blockchain node signing the target transaction information.

根据本申请实施例的另一方面,还提供了另一种交易提案的处理装置,包括:According to another aspect of the embodiments of the present application, another apparatus for processing a transaction proposal is also provided, including:

第三获取模块,用于获取携带有目标交易信息、第一签名信息和第二签名信息的目标交易提案,其中,所述目标交易信息是由客户端发起的,所述第一签名信息是使用所述客户端的客户端私钥对所述目标交易信息进行签名得到的,所述第二签名信息是区块链节点对所述目标交易信息进行签名得到的;The third obtaining module is configured to obtain the target transaction proposal carrying the target transaction information, the first signature information and the second signature information, wherein the target transaction information is initiated by the client, and the first signature information is obtained by using The client private key of the client is obtained by signing the target transaction information, and the second signature information is obtained by signing the target transaction information by the blockchain node;

验证模块,用于对所述第一签名信息和所述第二签名信息进行签名验证;a verification module, configured to perform signature verification on the first signature information and the second signature information;

处理模块,用于在所述第一签名信息和所述第二签名信息均验证通过的情况下,对所述目标交易提案进行背书处理。A processing module, configured to perform endorsement processing on the target transaction proposal when both the first signature information and the second signature information are verified.

根据本申请实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,程序运行时执行上述的方法。According to another aspect of the embodiments of the present application, a storage medium is also provided, where the storage medium includes a stored program, and the above method is executed when the program runs.

根据本申请实施例的另一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器通过计算机程序执行上述的方法。According to another aspect of the embodiments of the present application, an electronic device is also provided, including a memory, a processor, and a computer program stored in the memory and running on the processor, where the processor executes the above method through the computer program.

在本申请实施例中,采用获取客户端的目标交易信息;使用客户端的客户端私钥对目标交易信息进行签名,得到第一签名信息;将携带有目标交易信息和第一签名信息的初始交易提案发送至区块链节点,其中,初始交易提案用于指示区块链节点获取携带有目标交易信息、第一签名信息和第二签名信息的目标交易提案,第二签名信息通过区块链节点对目标交易信息进行签名得到的方式,客户端拥有一对属于自己的公私钥对,为客户端颁发的校验证书可由BaaS进行统一管理,而客户端私钥则由客户端自己保管,客户端发起交易请求时,首先使用自己的私钥对交易信息进行第一次签名加密,当交易信息发送到区块链网络中时,区块链节点对交易信息进行第二次签名加密,那么当后续交易提案发送到背书节点时,背书节点则需要对两次签名进行验证,两次签名验证均通过,交易数据方可上链,解决了身份证书、私钥泄露导致的伪造交易、盗取数字资产等问题,从而实现了提高交易提案的验证过程的安全性的技术效果,进而解决了相关技术中交易提案的验证过程安全性较低的技术问题。In the embodiment of the present application, the target transaction information of the client is obtained; the target transaction information is signed by the client private key of the client to obtain the first signature information; the initial transaction proposal carrying the target transaction information and the first signature information is used. Sent to the blockchain node, where the initial transaction proposal is used to instruct the blockchain node to obtain the target transaction proposal carrying the target transaction information, the first signature information and the second signature information, and the second signature information is paired by the blockchain node. In the method of signing the target transaction information, the client has its own public and private key pair, the verification certificate issued to the client can be managed by BaaS, and the client private key is kept by the client itself, and the client initiates When requesting a transaction, first sign and encrypt the transaction information with its own private key. When the transaction information is sent to the blockchain network, the blockchain node performs the second signature and encryption on the transaction information, then when subsequent transactions When the proposal is sent to the endorsement node, the endorsement node needs to verify the two signatures. After both signature verifications are passed, the transaction data can be uploaded to the chain, which solves forged transactions and theft of digital assets caused by the disclosure of identity certificates and private keys. Therefore, the technical effect of improving the security of the verification process of the transaction proposal is realized, and the technical problem of the low security of the verification process of the transaction proposal in the related art is solved.

附图说明Description of drawings

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and together with the description serve to explain the principles of the invention.

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the accompanying drawings that need to be used in the description of the embodiments or the prior art. In other words, on the premise of no creative labor, other drawings can also be obtained from these drawings.

图1是根据本申请实施例的交易提案的处理系统的硬件环境的示意图;FIG. 1 is a schematic diagram of a hardware environment of a transaction proposal processing system according to an embodiment of the present application;

图2是根据本申请实施例的一种可选的交易提案的处理方法的流程图;FIG. 2 is a flowchart of an optional transaction proposal processing method according to an embodiment of the present application;

图3是根据本申请实施例的另一种可选的交易提案的处理方法的流程图;3 is a flowchart of another optional transaction proposal processing method according to an embodiment of the present application;

图4是根据本申请可选实施例的一种区块链交易的二次验证方法的示意图;4 is a schematic diagram of a secondary verification method for a blockchain transaction according to an optional embodiment of the present application;

图5是根据本申请实施例的一种可选的交易提案的处理装置的示意图;5 is a schematic diagram of an optional transaction proposal processing apparatus according to an embodiment of the present application;

图6是根据本申请实施例的一种可选的交易提案的处理装置的示意图;6 is a schematic diagram of an optional transaction proposal processing apparatus according to an embodiment of the present application;

图7是根据本申请实施例的一种终端的结构框图。FIG. 7 is a structural block diagram of a terminal according to an embodiment of the present application.

具体实施方式Detailed ways

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。In order to make those skilled in the art better understand the solutions of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only The embodiments are part of the present application, but not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative work shall fall within the scope of protection of the present application.

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。It should be noted that the terms "first", "second", etc. in the description and claims of the present application and the above drawings are used to distinguish similar objects, and are not necessarily used to describe a specific sequence or sequence. It is to be understood that data so used may be interchanged under appropriate circumstances so that the embodiments of the application described herein can be practiced in sequences other than those illustrated or described herein. Furthermore, the terms "comprising" and "having" and any variations thereof, are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those expressly listed Rather, those steps or units may include other steps or units not expressly listed or inherent to these processes, methods, products or devices.

随着信息技术的更新,区块链作为新兴的存储技术逐渐成为发展热门,区块链系统是利用密码学保证数据传输和访问的安全,生成不可篡改和不可伪造的分布式账本的数据网络系统。区块链最重要的特点之一就是能够保证实现安全的交易,在没有中心化机构集中处理的情况下,为了达成数据的一致性,就需要网络中心全民参与管理,并以某种方法达成共识。With the update of information technology, blockchain, as an emerging storage technology, has gradually become a popular development. The blockchain system is a data network system that uses cryptography to ensure the security of data transmission and access, and generates a distributed ledger that cannot be tampered with and cannot be forged. . One of the most important features of blockchain is that it can ensure secure transactions. In the absence of centralized processing by a centralized organization, in order to achieve data consistency, it is necessary for the network center to participate in the management of all people, and to reach a consensus in some way. .

BaaS(Blockchain as a Service,区块链即服务)是结合区块链技术的用于帮助用户创建、管理和维护企业级区块链网络及应用的服务。BaaS的主要用途是:快速建立所需的区块链应用环境,提供基于区块链网络的搜索查询、交易、运维、数据分析等一系列操作服务。BaaS (Blockchain as a Service) is a service that combines blockchain technology to help users create, manage and maintain enterprise-level blockchain networks and applications. The main purpose of BaaS is to quickly establish the required blockchain application environment and provide a series of operational services such as search query, transaction, operation and maintenance, and data analysis based on the blockchain network.

为解决目前区块链技术中身份证书、私钥泄露导致的伪造交易、盗取数字资产等问题,本申请实施例提供了一种交易提案的处理的系统实施例。In order to solve the problems of forged transactions and theft of digital assets caused by the disclosure of identity certificates and private keys in the current blockchain technology, the embodiments of this application provide a system embodiment for processing transaction proposals.

可选地,在本实施例中,图1是根据本申请实施例的交易提案的处理系统的硬件环境的示意图,如图1所示,上述交易提案的处理系统可以应用于包括客户端101、区块链节点103和背书节点105的硬件环境中。其中,所述客户端101,用于发起目标交易信息,使用所述客户端101的客户端私钥对所述目标交易信息进行签名,得到第一签名信息,将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至所述区块链节点103;Optionally, in this embodiment, FIG. 1 is a schematic diagram of a hardware environment of a transaction proposal processing system according to an embodiment of the present application. As shown in FIG. 1 , the above transaction proposal processing system may be applied to a system including client 101, In the hardware environment of the blockchain node 103 and the endorsement node 105 . The client 101 is used to initiate target transaction information, and uses the client private key of the client 101 to sign the target transaction information to obtain first signature information, which will carry the target transaction information and The initial transaction proposal of the first signature information is sent to the blockchain node 103;

所述区块链节点103,用于使用组织私钥对所述目标交易信息进行签名得到第二签名信息,将携带有所述目标交易信息、所述第一签名信息和所述第二签名信息的目标交易提案发送至所述背书节点105,其中,所述组织私钥是所述区块链节点103所在的目标区块链组织的私钥;The blockchain node 103 is used to sign the target transaction information using the organization private key to obtain the second signature information, which will carry the target transaction information, the first signature information and the second signature information The target transaction proposal is sent to the endorsement node 105, wherein the organization private key is the private key of the target blockchain organization where the blockchain node 103 is located;

所述背书节点105,用于获取所述目标交易提案,对所述第一签名信息和所述第二签名信息进行签名验证,在所述第一签名信息和所述第二签名信息均验证成功的情况下,对所述目标交易提案进行背书处理。The endorsement node 105 is configured to obtain the target transaction proposal, perform signature verification on the first signature information and the second signature information, and verify that both the first signature information and the second signature information are successfully verified. In the case of , the target transaction proposal is endorsed.

可选地,在本实施例中,客户端101可以但不限于包括在区块链平台上开发的任何类型的应用程序的客户端,比如:电子政务应用、游戏应用、金融应用、购物应用、保险应用、多媒体应用、直播应用等等。Optionally, in this embodiment, the client 101 may include, but is not limited to, clients of any type of application developed on the blockchain platform, such as: e-government applications, game applications, financial applications, shopping applications, Insurance applications, multimedia applications, live broadcast applications, etc.

可选地,在本实施例中,区块链节点103是目标区块链组织中的任意一个服务节点。区块链节点用于为客户端提供服务。目标区块链组织中还可以包括排序(Orderers)节点、提交(Committer)节点等等。Optionally, in this embodiment, the blockchain node 103 is any service node in the target blockchain organization. Blockchain nodes are used to serve clients. The target blockchain organization may also include Orderers nodes, Committer nodes, and so on.

作为一种可选的实施例,所述客户端用于:生成所述客户端的公私钥对,其中,所述客户端的公私钥包括具有对应关系的所述客户端私钥和客户端公钥;使用所述客户端公钥获取所述客户端对应的客户端校验证书,其中,所述客户端校验证书用于对使用所述客户端私钥进行签名得到的签名信息进行签名验证;As an optional embodiment, the client is configured to: generate a public-private key pair of the client, wherein the public and private keys of the client include the client private key and the client public key having a corresponding relationship; Using the client public key to obtain a client verification certificate corresponding to the client, wherein the client verification certificate is used to perform signature verification on the signature information obtained by signing with the client private key;

所述背书节点用于:使用所述客户端校验证书对所述第一签名信息进行签名验证;在所述第一签名信息验证通过的情况下,使用所述区块链节点对应的组织身份证书对所述第二签名信息进行签名验证。The endorsement node is used for: using the client verification certificate to perform signature verification on the first signature information; in the case of passing the verification of the first signature information, using the organizational identity corresponding to the blockchain node The certificate performs signature verification on the second signature information.

作为一种可选的实施例,所述客户端还用于:在将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至所述区块链节点之后,发送查询信息,其中,所述查询信息用于查询所述第一签名信息和所述第二签名信息的验证过程;接收响应所述查询信息返回的所述验证过程;在所述客户端上展示所述验证过程。As an optional embodiment, the client is further configured to: after sending the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, send query information , wherein the query information is used to query the verification process of the first signature information and the second signature information; receive the verification process returned in response to the query information; display the verification process on the client process.

作为一种可选的实施例,所述背书节点用于:在所述第一签名信息验证未通过,或者,所述第二签名信息验证未通过的情况下,确定所述目标交易提案失败。As an optional embodiment, the endorsement node is configured to: determine that the target transaction proposal fails when the verification of the first signature information fails or the verification of the second signature information fails.

根据本申请实施例的一方面,提供了一种交易提案的处理的方法实施例。According to an aspect of the embodiments of the present application, a method embodiment for processing a transaction proposal is provided.

图2是根据本申请实施例的一种可选的交易提案的处理方法的流程图,如图2所示,该方法可以包括以下步骤:FIG. 2 is a flowchart of an optional transaction proposal processing method according to an embodiment of the present application. As shown in FIG. 2 , the method may include the following steps:

步骤S202,获取客户端的目标交易信息;Step S202, acquiring target transaction information of the client;

步骤S204,使用所述客户端的客户端私钥对所述目标交易信息进行签名,得到第一签名信息;Step S204, using the client private key of the client to sign the target transaction information to obtain first signature information;

步骤S206,将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至区块链节点,其中,所述初始交易提案用于指示所述区块链节点获取携带有所述目标交易信息、所述第一签名信息和第二签名信息的目标交易提案,所述第二签名信息是所述区块链节点对所述目标交易信息进行签名得到的。Step S206, sending an initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, wherein the initial transaction proposal is used to instruct the blockchain node to obtain the Target transaction information, the target transaction proposal of the first signature information and the second signature information, where the second signature information is obtained by signing the target transaction information by the blockchain node.

通过上述步骤S202至步骤S206,客户端拥有一对属于自己的公私钥对,为客户端颁发的校验证书可由BaaS进行统一管理,而客户端私钥则由客户端自己保管,客户端发起交易请求时,首先使用自己的私钥对交易信息进行第一次签名加密,当交易信息发送到区块链网络中时,区块链节点对交易信息进行第二次签名加密,那么当后续交易提案发送到背书节点时,背书节点则需要对两次签名进行验证,两次签名验证均通过,交易数据方可上链,解决了身份证书、私钥泄露导致的伪造交易、盗取数字资产等问题,从而实现了提高交易提案的验证过程的安全性的技术效果,进而解决了相关技术中交易提案的验证过程安全性较低的技术问题。Through the above steps S202 to S206, the client has a pair of its own public and private key pairs, the verification certificate issued to the client can be managed by BaaS, and the client private key is kept by the client itself, and the client initiates the transaction When requesting, the transaction information is first signed and encrypted with its own private key. When the transaction information is sent to the blockchain network, the blockchain node will perform the second signature and encryption on the transaction information, then when the subsequent transaction proposal When sending to the endorsement node, the endorsement node needs to verify the two signatures. Both signature verifications are passed, and the transaction data can be uploaded to the chain, which solves the problems of forged transactions and theft of digital assets caused by the disclosure of identity certificates and private keys. , so as to achieve the technical effect of improving the security of the verification process of the transaction proposal, thereby solving the technical problem of low security of the verification process of the transaction proposal in the related art.

可选地,在本实施例中,上述交易提案的处理方法可以但不限于应用于客户端侧,或者BaaS平台侧。Optionally, in this embodiment, the above-mentioned processing method of the transaction proposal may be applied to, but not limited to, the client side or the BaaS platform side.

在步骤S202提供的技术方案中,目标交易信息可以但不限于是客户端发起的需要上链的交易的信息。In the technical solution provided in step S202, the target transaction information may be, but is not limited to, information of a transaction initiated by the client that needs to be uploaded to the chain.

在步骤S204提供的技术方案中,第一签名信息的形式可以但不限于包括数字签名。In the technical solution provided in step S204, the form of the first signature information may include, but is not limited to, a digital signature.

可选地,在本实施例中,数字签名(又称公钥数字签名、电子签章),是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。发送节点信息数据通过哈希加密生成摘要,然后利用发送节点的私钥对摘要进行数字签名,发送节点把信息数据、数字签名、发送节点公钥一起全网广播给接收节点,就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。Optionally, in this embodiment, a digital signature (also known as a public key digital signature, an electronic signature) is a common physical signature similar to that written on paper, but implemented using technologies in the field of public key encryption, A method for authenticating digital information. A set of digital signatures usually defines two complementary operations, one for signing and the other for verification. The information data of the sending node is encrypted by hash to generate a digest, and then the digest is digitally signed by the private key of the sending node. A digital string that can only be generated by the sender and cannot be forged by others. This digital string is also an effective proof of the authenticity of the information sent by the sender of the information.

可选地,在本实施例中,数字签名的方式可以但不限于包括RSA算法、DSA算法和ECDSA椭圆曲线数字签名算法等。Optionally, in this embodiment, the digital signature may include, but is not limited to, an RSA algorithm, a DSA algorithm, an ECDSA elliptic curve digital signature algorithm, and the like.

其中,RSA算法是目前计算机密码学中最经典算法,也是目前为止使用最广泛的数字签名算法。由于RSA算法的公钥私钥的长度(模长度)要到1024位甚至2048位才能保证安全,因此,参数P、Q、E的选取,公钥、私钥的生成,加密、解密模指数运算都有一定的计算程序,需要依托计算机高速运算来完成。DSA算法全称为Digital Signature Algorithm,DSA只是一种算法,和RSA不同之处在于它不能用作加密和解密,也不能进行密钥交换,只用于签名,所以它比RSA要快很多,其安全性与RSA相比差不多。Among them, the RSA algorithm is the most classic algorithm in computer cryptography, and it is also the most widely used digital signature algorithm so far. Since the length (modulo length) of the public key and private key of the RSA algorithm can only be guaranteed to be 1024 bits or even 2048 bits, the selection of parameters P, Q and E, the generation of public and private keys, encryption and decryption of modular exponentiation operations There are certain calculation procedures, which need to be completed by relying on the high-speed operation of the computer. The full name of DSA algorithm is Digital Signature Algorithm. DSA is just an algorithm. The difference from RSA is that it cannot be used for encryption and decryption, nor can it be used for key exchange. It is only used for signature, so it is much faster than RSA and its security Sex is about the same as RSA.

DSA的一个重要特点是两个素数公开,这样,当使用别人的p和q时,即使不知道私钥,也能确认它们是否是随机产生的,还是作了手脚。RSA算法却做不到。An important feature of DSA is that the two prime numbers are public, so that when someone else's p and q are used, even if the private key is not known, it can be confirmed whether they are randomly generated or manipulated. The RSA algorithm can't do it.

ECDSA椭圆曲线数字签名算法用于数字签名,是ECC与DSA的结合,整个签名过程与DSA类似,所不一样的是签名中采取的算法为ECC,最后签名出来的值也是分为r,s。而ECC(全称Elliptic Curves Cryptography)是一种椭圆曲线密码编码学。The ECDSA elliptic curve digital signature algorithm is used for digital signature. It is a combination of ECC and DSA. The entire signature process is similar to DSA. The difference is that the algorithm used in the signature is ECC, and the final signed value is also divided into r, s. ECC (full name Elliptic Curves Cryptography) is an elliptic curve cryptography.

可选地,在本实施例中,客户端私钥是由客户端生成并保存的。Optionally, in this embodiment, the client private key is generated and stored by the client.

在步骤S206提供的技术方案中,由客户端将第一次签名的第一签名信息以及目标交易信息发送给其对应的区块链节点,由区块链节点对目标交易信息进行第二次签名得到第二签名信息。In the technical solution provided in step S206, the client sends the first signature information signed for the first time and the target transaction information to its corresponding blockchain node, and the blockchain node signs the target transaction information for the second time Obtain the second signature information.

可选地,在本实施例中,区块链节点可以但不限于将目标交易信息、第一签名信息和第二签名信息作为目标交易提案发送到区块链网络中进行交易上链。Optionally, in this embodiment, the blockchain node may, but is not limited to, send the target transaction information, the first signature information, and the second signature information as the target transaction proposal to the blockchain network for transaction on-chain.

作为一种可选的实施例,在使用所述客户端的客户端私钥对所述初始交易提案进行签名,得到第一签名信息之前,还包括:As an optional embodiment, before using the client private key of the client to sign the initial transaction proposal to obtain the first signature information, the method further includes:

S11,为所述客户端生成所述客户端的公私钥对,其中,所述客户端的公私钥包括具有对应关系的所述客户端私钥和客户端公钥;S11, generating a public and private key pair of the client for the client, wherein the public and private keys of the client include the client private key and the client public key having a corresponding relationship;

S12,使用所述客户端公钥获取所述客户端对应的客户端校验证书,其中,所述客户端校验证书用于对使用所述客户端私钥进行签名得到的签名信息进行签名验证。S12, using the client public key to obtain a client verification certificate corresponding to the client, where the client verification certificate is used to perform signature verification on signature information obtained by signing with the client private key .

可选地,在本实施例中,为了实现上述所说的两次签名加密过程,BaaS平台可以提供客户端对交易信息签名、客户端校验证书管理(包括校验证书的上传、下载、删除)等功能。Optionally, in this embodiment, in order to realize the above-mentioned two signature encryption processes, the BaaS platform can provide the client to sign the transaction information, and manage the client verification certificate (including uploading, downloading, and deleting the verification certificate. ) and other functions.

可选地,在本实施例中,客户端生成自己的公私钥对,即客户端私钥和客户端公钥。客户端私钥由客户端自己保管,客户端公钥用于向BaaS平台获取客户端校验证书。Optionally, in this embodiment, the client generates its own public and private key pair, that is, the client private key and the client public key. The client private key is kept by the client itself, and the client public key is used to obtain the client verification certificate from the BaaS platform.

可选地,在本实施例中,客户端校验证书用于对使用客户端私钥进行签名得到的签名信息进行签名验证。客户端校验证书可以但不限于包括数字证书。Optionally, in this embodiment, the client verification certificate is used to perform signature verification on the signature information obtained by signing with the client's private key. The client verification certificate may include, but is not limited to, a digital certificate.

可选地,在本实施例中,数字证书(Digital Certificate)又称为公钥证书,是网络通信双方用于身份认证及安全通信的保障。数字证书实际上是一份电子文件,包含了拥有者的身份和公钥信息,以及证书认证机构对这份文件的签名。Optionally, in this embodiment, a digital certificate (Digital Certificate), also called a public key certificate, is a guarantee used by both parties in network communication for identity authentication and secure communication. A digital certificate is actually an electronic document that contains the owner's identity and public key information, as well as the certificate authority's signature on this document.

作为一种可选的实施例,使用所述客户端公钥获取所述客户端对应的客户端校验证书包括:As an optional embodiment, using the client public key to obtain the client verification certificate corresponding to the client includes:

S21,向目标区块链组织对应的证书颁发机构发起携带有所述客户端公钥的调用请求,其中,所述调用请求用于请求所述证书颁发机构根据所述客户端公钥为所述客户端颁发所述客户端校验证书,所述目标区块链组织为所述区块链节点所在的区块链组织。S21: Initiate a call request carrying the client public key to a certificate authority corresponding to the target blockchain organization, where the call request is used to request the certificate authority to assign the client public key to the certificate authority according to the client public key. The client issues the client verification certificate, and the target blockchain organization is the blockchain organization where the blockchain node is located.

可选地,在本实施例中,客户端(例如BaaS用户)拥有一对属于自己的公私钥对,证书颁发机构(CA)根据用户的公钥颁发校验证书,该证书可由BaaS进行统一管理,而客户端私钥则由客户端自己保管。Optionally, in this embodiment, the client (for example, a BaaS user) has a pair of public and private keys that belong to itself, and a certificate authority (CA) issues a verification certificate according to the user's public key, and the certificate can be uniformly managed by BaaS. , while the client private key is kept by the client itself.

可选地,在本实施例中,公开密钥基础设施(Public Key Infrastructure,PKI)采用数字证书(或者说CA证书)进行公钥管理,通过CA(Certificate Authority)联盟链签发包含用户信息及其公钥信息的证书,用于网络中通信双方进行身份验证和安全通信。Optionally, in this embodiment, a public key infrastructure (Public Key Infrastructure, PKI) uses a digital certificate (or a CA certificate) to perform public key management, and the CA (Certificate Authority) consortium chain issues a certificate containing user information and other information. The certificate of public key information is used for authentication and secure communication between the two communicating parties in the network.

可选地,在本实施例中,调用请求可以但不限于是通过SDK发起的。用户通过应用程序客户端(BaaS)向SDK发起调用请求,调用证书服务(CA),获取自己的校验证书,之后,校验证书由BaaS进行管理。Optionally, in this embodiment, the calling request may be initiated through the SDK, but is not limited to. The user initiates a call request to the SDK through the application client (BaaS), calls the certificate service (CA), and obtains his own verification certificate. After that, the verification certificate is managed by the BaaS.

作为一种可选的实施例,在将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至所述区块链节点之后,还包括:As an optional embodiment, after sending the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, the method further includes:

S31,所述区块链节点使用组织私钥对所述目标交易信息进行签名,得到所述第二签名信息,其中,所述组织私钥是所述区块链节点所在的目标区块链组织的私钥;S31, the blockchain node signs the target transaction information using an organization private key to obtain the second signature information, wherein the organization private key is the target blockchain organization where the blockchain node is located 's private key;

S32,所述区块链节点将携带有所述目标交易信息、所述第一签名信息和所述第二签名信息的所述目标交易提案发送至背书节点,其中,所述目标交易提案用于请求所述背书节点对所述目标交易提案进行背书处理。S32, the blockchain node sends the target transaction proposal carrying the target transaction information, the first signature information and the second signature information to the endorsement node, where the target transaction proposal is used for Request the endorsement node to endorse the target transaction proposal.

可选地,在本实施例中,区块链节点收到客户端的初始交易提案后,使用区块链组织的组织私钥对目标交易信息进行二次签名,将包括两次签名信息的交易提案发送给背书节点,背书节点对两次签名逐一进行验证。Optionally, in this embodiment, after receiving the initial transaction proposal from the client, the blockchain node uses the organization private key of the blockchain organization to re-sign the target transaction information, and the transaction proposal including the twice-signed information is re-signed. It is sent to the endorsement node, and the endorsement node verifies the two signatures one by one.

作为一种可选的实施例,在将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至所述区块链节点之后,还包括:As an optional embodiment, after sending the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, the method further includes:

S41,发送查询信息,其中,所述查询信息用于查询所述第一签名信息和所述第二签名信息的验证过程;S41, sending query information, wherein the query information is used to query the verification process of the first signature information and the second signature information;

S42,接收响应所述查询信息返回的所述验证过程;S42, receiving the verification process returned in response to the query information;

S43,在所述客户端上展示所述验证过程。S43, displaying the verification process on the client.

可选地,在本实施例中,可以提供验证过程的查询功能以及展示功能,从而实现验证过程的可视化。Optionally, in this embodiment, a query function and a display function of the verification process can be provided, so as to realize the visualization of the verification process.

根据本申请实施例的一方面,提供了一种交易提案的处理的方法实施例。According to an aspect of the embodiments of the present application, a method embodiment for processing a transaction proposal is provided.

图3是根据本申请实施例的另一种可选的交易提案的处理方法的流程图,如图3所示,该方法可以包括以下步骤:FIG. 3 is a flowchart of another optional transaction proposal processing method according to an embodiment of the present application. As shown in FIG. 3 , the method may include the following steps:

步骤S302,获取携带有目标交易信息、第一签名信息和第二签名信息的目标交易提案,其中,所述目标交易信息是由客户端发起的,所述第一签名信息是使用所述客户端的客户端私钥对所述目标交易信息进行签名得到的,所述第二签名信息是区块链节点对所述目标交易信息进行签名得到的;Step S302, obtaining a target transaction proposal carrying target transaction information, first signature information and second signature information, wherein the target transaction information is initiated by the client, and the first signature information is used by the client The client private key is obtained by signing the target transaction information, and the second signature information is obtained by signing the target transaction information by the blockchain node;

步骤S304,对所述第一签名信息和所述第二签名信息进行签名验证;Step S304, performing signature verification on the first signature information and the second signature information;

步骤S306,在所述第一签名信息和所述第二签名信息均验证通过的情况下,对所述目标交易提案进行背书处理。Step S306, in the case that the first signature information and the second signature information are both verified and passed, perform an endorsement process on the target transaction proposal.

通过上述步骤S302至步骤S306,客户端拥有一对属于自己的公私钥对,为客户端颁发的校验证书可由BaaS进行统一管理,而客户端私钥则由客户端自己保管,客户端发起交易请求时,首先使用自己的私钥对交易信息进行第一次签名加密,当交易信息发送到区块链网络中时,区块链节点对交易信息进行第二次签名加密,那么当后续交易提案发送到背书节点时,背书节点则需要对两次签名进行验证,两次签名验证均通过,交易数据方可上链,解决了身份证书、私钥泄露导致的伪造交易、盗取数字资产等问题,从而实现了提高交易提案的验证过程的安全性的技术效果,进而解决了相关技术中交易提案的验证过程安全性较低的技术问题。Through the above steps S302 to S306, the client has a pair of its own public and private key pairs, the verification certificate issued to the client can be managed by BaaS, and the client's private key is kept by the client itself, and the client initiates the transaction When requesting, the transaction information is first signed and encrypted with its own private key. When the transaction information is sent to the blockchain network, the blockchain node will perform the second signature and encryption on the transaction information, then when the subsequent transaction proposal When sending to the endorsement node, the endorsement node needs to verify the two signatures. Both signature verifications are passed, and the transaction data can be uploaded to the chain, which solves the problems of forged transactions and theft of digital assets caused by the disclosure of identity certificates and private keys. , so as to achieve the technical effect of improving the security of the verification process of the transaction proposal, thereby solving the technical problem of low security of the verification process of the transaction proposal in the related art.

可选地,在本实施例中,上述交易提案的处理方法可以但不限于应用于区块链组织中的背书节点。Optionally, in this embodiment, the above-mentioned processing method of the transaction proposal may be applied to, but not limited to, an endorsement node in a blockchain organization.

在步骤S302提供的技术方案中,第一签名信息是使用客户端的客户端私钥对目标交易信息进行签名得到的,第二签名信息是区块链节点对目标交易信息进行签名得到的。区块链节点可以但不限于使用区块链节点所在的目标区块链组织的组织私钥对目标交易信息进行签名得到第二签名信息。In the technical solution provided in step S302, the first signature information is obtained by using the client private key of the client to sign the target transaction information, and the second signature information is obtained by signing the target transaction information by the blockchain node. The blockchain node may, but is not limited to, use the private key of the target blockchain organization where the blockchain node is located to sign the target transaction information to obtain the second signature information.

在步骤S304提供的技术方案中,对第一签名信息和第二签名信息进行签名验证的方式可以但不限于包括区块链签名验证。区块链签名验证使用公钥验证签名的真实性。接收节点把接收到的数据信息进行哈希加密得到散列数值。利用签名者的公钥对发送节点送来的数字签名解密得到的散列数值进行校验,若相同则签名有效。In the technical solution provided in step S304, the manner of performing signature verification on the first signature information and the second signature information may include, but is not limited to, blockchain signature verification. Blockchain signature verification uses the public key to verify the authenticity of the signature. The receiving node hashes and encrypts the received data information to obtain a hash value. Use the signer's public key to verify the hash value obtained by decrypting the digital signature sent by the sending node. If they are the same, the signature is valid.

可选地,在本实施例中,Hash(哈希或散列)算法,又常被称为指纹(fingerprint)或摘要(digest)算法,是非常基础也非常重要的一类算法。可以将任意长度的二进制明文串映射为较短的(通常是固定长度的)二进制串(Hash值),并且不同的明文很难映射为相同的Hash值。Optionally, in this embodiment, a Hash (hash or hash) algorithm, also often referred to as a fingerprint (fingerprint) or digest (digest) algorithm, is a very basic and very important type of algorithm. A binary plaintext string of arbitrary length can be mapped to a shorter (usually fixed-length) binary string (Hash value), and it is difficult for different plaintexts to be mapped to the same Hash value.

可选地,在本实施例中,使用的Hash算法可以但不限于包括国际上的MessageDigest(MD)系列和Secure Hash Algorithm(SHA)系列算法,以及国内的SM3算法等等。MD算法可以但不限于包括MD4和MD5算法等等。SHA算法可以但不限于包括SHA256算法、SHA-3相关算法等等。Optionally, in this embodiment, the used Hash algorithm may include, but is not limited to, the international MessageDigest (MD) series and the Secure Hash Algorithm (SHA) series algorithms, and the domestic SM3 algorithm, and so on. The MD algorithm may include, but is not limited to, MD4 and MD5 algorithms, and so on. SHA algorithms may include, but are not limited to, SHA256 algorithms, SHA-3 related algorithms, and the like.

在步骤S306提供的技术方案中,第一签名信息和第二签名信息均验证通过才判定为交易提案有效,对目标交易提案进行背书处理。In the technical solution provided in step S306, the transaction proposal is determined to be valid only after both the first signature information and the second signature information are verified, and the target transaction proposal is endorsed.

作为一种可选的实施例,对所述第一签名信息和所述第二签名信息进行签名验证包括以下之一:As an optional embodiment, performing signature verification on the first signature information and the second signature information includes one of the following:

S51,使用所述客户端对应的客户端校验证书对所述第一签名信息进行签名验证;在所述第一签名信息验证通过的情况下,使用所述区块链节点对应的组织身份证书对所述第二签名信息进行签名验证,其中,所述组织身份证书是所述区块链节点所在的目标区块链组织的校验证书;S51, using the client verification certificate corresponding to the client to perform signature verification on the first signature information; in the case of passing the verification of the first signature information, using the organization identity certificate corresponding to the blockchain node Perform signature verification on the second signature information, wherein the organization identity certificate is the verification certificate of the target blockchain organization where the blockchain node is located;

S52,使用所述区块链节点对应的组织身份证书对所述第二签名信息进行签名验证,其中,所述组织身份证书是所述区块链节点所在的目标区块链组织的校验证书;在所述第二签名信息验证通过的情况下,使用所述客户端对应的客户端校验证书对所述第一签名信息进行签名验证。S52, perform signature verification on the second signature information by using the organization identity certificate corresponding to the blockchain node, wherein the organization identity certificate is the verification certificate of the target blockchain organization where the blockchain node is located ; in the case that the verification of the second signature information is passed, use the client verification certificate corresponding to the client terminal to perform signature verification on the first signature information.

可选地,在本实施例中,客户端校验证书和组织身份证书可以但不限于保存在BaaS的数据库中。背书节点从BaaS的数据库读取客户端校验证书和组织身份证书分别对第一签名信息和第二签名信息进行签名验证。Optionally, in this embodiment, the client verification certificate and the organization identity certificate may be, but not limited to, stored in the BaaS database. The endorsement node reads the client verification certificate and the organization identity certificate from the BaaS database to perform signature verification on the first signature information and the second signature information respectively.

可选地,在本实施例中,可以但不限于首先对客户端的身份进行验证,即对第一签名信息进行签名验证。如果客户端的身份验证通过了,再验证区块链组织身份,即对第二签名信息进行签名验证。Optionally, in this embodiment, the identity of the client may be verified first, but not limited to, that is, signature verification is performed on the first signature information. If the client's identity verification is passed, verify the identity of the blockchain organization, that is, perform signature verification on the second signature information.

可选地,在本实施例中,还可以但不限于首先对区块链组织身份进行验证,即对第二签名信息进行签名验证。如果区块链组织的身份验证通过了,再验证客户端的身份,即对第一签名信息进行签名验证。Optionally, in this embodiment, it is also possible, but not limited to, to firstly verify the identity of the blockchain organization, that is, to perform signature verification on the second signature information. If the identity verification of the blockchain organization is passed, then verify the identity of the client, that is, perform signature verification on the first signature information.

作为一种可选的实施例,对所述目标交易提案进行背书处理包括:As an optional embodiment, the endorsement process for the target transaction proposal includes:

S61,模拟所述目标交易信息所指示的交易过程,得到背书结果;S61, simulate the transaction process indicated by the target transaction information, and obtain an endorsement result;

S62,将所述背书结果发送至所述客户端,其中,所述背书结果用于指示所述客户端将所述目标交易信息发送至排序节点进行共识排序。S62: Send the endorsement result to the client, where the endorsement result is used to instruct the client to send the target transaction information to a sorting node for consensus sorting.

可选地,在本实施例中,背书节点验证签名成功后,会模拟执行交易过程,并将模拟执行的读写集和背书结果等信息发送给客户端,客户端收集一定数量的背书结果后,再将交易提案发送给排序节点(Orderers节点),进行共识排序。Optionally, in this embodiment, after the endorsement node verifies the signature successfully, it will simulate the execution of the transaction process, and send information such as the simulated execution read and write sets and endorsement results to the client, and the client collects a certain number of endorsement results. , and then send the transaction proposal to the ordering node (Orderers node) for consensus sorting.

可选地,在本实施例中,Orderers节点对收到的交易进行共识排序,然后按照区块生成策略,将一批交易打包到一起,生成新的区块,发送给提交(Committer)节点。提交(Committer)节点收到区块后,会对区块中的每笔交易进行校验,检查交易依赖的输入输出是否符合当前区块链的状态,完成后将区块追加到本地的区块链,并修改世界状态。Optionally, in this embodiment, the Orderers node performs consensus sorting on the received transactions, and then packages a batch of transactions together according to the block generation strategy to generate a new block and send it to the Committer node. After the committer node receives the block, it will verify each transaction in the block, check whether the input and output of the transaction depend on the state of the current blockchain, and append the block to the local block after completion. chain, and modify the world state.

作为一种可选的实施例,在对所述第一签名信息和所述第二签名信息进行签名验证之后,还包括:As an optional embodiment, after performing signature verification on the first signature information and the second signature information, the method further includes:

S71,在所述第一签名信息验证未通过,或者,所述第二签名信息验证未通过的情况下,确定所述目标交易提案失败。S71. In the case where the verification of the first signature information fails, or the verification of the second signature information fails, determine that the target transaction proposal fails.

可选地,在本实施例中,只要一个签名验证不通过则判定交易提案失败。Optionally, in this embodiment, as long as one signature verification fails, it is determined that the transaction proposal fails.

本申请还提供了一种可选实施例,为解决现有技术方案中身份证书、私钥泄露导致的伪造交易、盗取数字资产等问题,该可选实施例提出了一种基于BaaS的区块链交易二次验证方法。BaaS用户(相当于上述客户端)拥有一对属于自己的公私钥对,证书服务(CA)根据用户的公钥(即上述客户端公钥)颁发校验证书,该证书可由BaaS进行统一管理,而用户私钥(即上述客户端私钥)则由用户自己保管。This application also provides an optional embodiment, in order to solve the problems of forged transactions and theft of digital assets caused by the disclosure of identity certificates and private keys in the prior art solution, the optional embodiment proposes a BaaS-based area Secondary verification method for blockchain transactions. BaaS users (equivalent to the above-mentioned clients) have a pair of their own public and private key pairs, and the certificate service (CA) issues a verification certificate according to the user's public key (that is, the above-mentioned client public key), which can be managed by BaaS uniformly. The user's private key (that is, the above-mentioned client private key) is kept by the user himself.

当BaaS用户发起交易请求时,首先使用自己的私钥对交易信息进行第一次签名加密,当交易信息通过SDK发送到区块链网络中时,区块链节点使用组织私钥对交易信息进行第二次签名加密生成交易提案,交易提案发送到背书节点后,背书节点对两次签名进行验证,两次签名验证均通过,交易数据方可上链。When a BaaS user initiates a transaction request, it first signs and encrypts the transaction information with its own private key. When the transaction information is sent to the blockchain network through the SDK, the blockchain node uses the organization's private key to perform the transaction information. The second signature encryption generates a transaction proposal. After the transaction proposal is sent to the endorsement node, the endorsement node verifies the two signatures. Both signature verifications pass, and the transaction data can be uploaded to the chain.

为了实现上述所说的两次签名加密,BaaS平台提供了用户对交易信息签名、用户校验证书管理(包括校验证书的上传、下载、删除)等功能。在用户发起交易提案前,用户可以调用证书服务(CA)获取校验证书,用户通过应用程序客户端(BaaS)向SDK发起调用请求,调用证书服务(CA),获取自己的校验证书,该校验证书由BaaS进行管理。In order to realize the above-mentioned two-signature encryption, the BaaS platform provides users with functions such as signing transaction information and managing user verification certificates (including uploading, downloading, and deleting verification certificates). Before the user initiates a transaction proposal, the user can call the certificate service (CA) to obtain the verification certificate. The user initiates a call request to the SDK through the application client (BaaS), calls the certificate service (CA), and obtains his own verification certificate. Verification certificates are managed by BaaS.

随着区块链在各个领域的应用愈加广泛,保证交易安全成了迫切需要,因此本可选实施例可以很好地降低身份证书、私钥泄露带来的风险,提高交易的安全性,具有积极意义。As the application of blockchain in various fields becomes more and more extensive, ensuring transaction security has become an urgent need. Therefore, this optional embodiment can well reduce the risk caused by the disclosure of identity certificates and private keys, and improve the security of transactions. positive meaning.

图4是根据本申请可选实施例的一种区块链交易的二次验证方法的示意图,如图4所示,客户端发起交易调用请求是执行如下的签名过程:当用户发起一个交易提案(Proposal)时,用户先使用自己的私钥通过BaaS提供的签名方法对交易信息进行第一次签名加密,之后SDK利用区块链组织的组织私钥对交易信息进行第二次签名加密,两次加密完成后SDK将带有本次交易要调用的合约标识、合约方法和参数信息以及签名等信息的交易提案发送给背书(Endorser)节点。Fig. 4 is a schematic diagram of a secondary verification method for a blockchain transaction according to an optional embodiment of the present application. As shown in Fig. 4, when a client initiates a transaction invocation request, the following signature process is performed: when a user initiates a transaction proposal (Proposal), the user first uses his private key to sign and encrypt the transaction information for the first time through the signature method provided by BaaS, and then the SDK uses the organization private key of the blockchain organization to sign and encrypt the transaction information for the second time. After the secondary encryption is completed, the SDK will send the transaction proposal with the contract identifier, contract method and parameter information to be called in this transaction, as well as the signature and other information to the Endorser node.

背书节点验证签名信息时执行如下的验证过程:背书(Endorser)节点收到交易提案(Proposal)后,首先利用用户的校验证书对交易信息进行第一次验证,如果验证通过,则进行第二次验证,如果第一次验证不通过,则本次交易失败;第一次交易通过后,利用组织身份证书对交易信息进行第二次验证,如果验证同样通过,则进行交易信息上链操作,如果验证不通过,则交易失败。When the endorsement node verifies the signature information, the following verification process is performed: After the endorser node receives the transaction proposal (Proposal), it first uses the user's verification certificate to verify the transaction information for the first time. If the first verification fails, the transaction fails; after the first transaction is passed, the organization identity certificate is used to verify the transaction information for the second time. If the verification is also passed, the transaction information will be uploaded to the chain. If the verification fails, the transaction fails.

背书节点对两个签名进行验证均通过后,会模拟执行交易过程,并将模拟执行的读写集和背书结果发送给客户端,客户端收集一定数量的背书结果后,再将交易提案发送给Orderers节点,进行共识排序。Orderers节点对收到的交易进行共识排序,然后按照区块生成策略,将一批交易打包到一起,生成新的区块,发送给提交(Committer)节点。提交(Committer)节点收到区块后,会对区块中的每笔交易进行校验,检查交易依赖的输入输出是否符合当前区块链的状态,完成后将区块追加到本地的区块链,并修改世界状态。After the endorsement node verifies the two signatures, it will simulate the execution of the transaction process, and send the simulated read-write set and endorsement results to the client. After the client collects a certain number of endorsement results, it will send the transaction proposal to Orderers node for consensus sorting. The Orderers node performs consensus sorting on the received transactions, and then packages a batch of transactions together according to the block generation strategy to generate a new block and send it to the Committer node. After the committer node receives the block, it will verify each transaction in the block, check whether the input and output of the transaction depend on the state of the current blockchain, and append the block to the local block after completion. chain, and modify the world state.

相比于现有技术,本可选实施例在区块链组织身份证书、私钥泄露的情况下,如果出现伪造交易、盗取数字资产等现象,只要两次验证中的其中一次验证不通过,交易就无法进行下去。Compared with the prior art, in this optional embodiment, in the case of the disclosure of the identity certificate and private key of the blockchain organization, if there are phenomena such as forged transactions, theft of digital assets, etc., only one of the two verifications fails. , the transaction cannot proceed.

在以Hyperledger Fabric为例的联盟链中,本可选实施例的二次验证方法具有广泛的应用价值。例如,在福彩领域,为了防止暗箱操作等违法行为,本可选实施例可以对购彩者的身份进行验证,利用彩民的私钥对彩民的身份认证(可以理解为彩民的证书)和购买记录(也就是交易调用请求信息)进行一一验证,从而做到全面监督,克服传统彩票集中化、不透明等弊端;又例如,在供应链金融领域,为了防止上下游企业相互勾结做假账,本可选实施例可以对上下游企业的身份进行验证,利用上下游企业的私钥验证交易过程中交易双方的身份,以此避免伪造身份等现象。In a consortium chain taking Hyperledger Fabric as an example, the secondary verification method of this optional embodiment has extensive application value. For example, in the field of welfare lottery, in order to prevent illegal activities such as black box operations, this optional embodiment can verify the identity of the lottery buyer, and use the lottery's private key to authenticate the lottery's identity (which can be understood as the lottery's certificate) and purchase records. (that is, the transaction call request information) is verified one by one, so as to achieve comprehensive supervision and overcome the disadvantages of traditional lottery centralization and opacity; for example, in the field of supply chain finance, in order to prevent upstream and downstream enterprises from colluding and making false accounts In an optional embodiment, the identities of the upstream and downstream enterprises can be verified, and the private keys of the upstream and downstream enterprises can be used to verify the identities of both parties in the transaction process, thereby avoiding phenomena such as forgery of identities.

因此,随着区块链在各个领域的应用愈加广泛,保证交易安全成了迫切需要,本可选实施例可以很好地降低身份证书、私钥泄露带来的风险,提高交易的安全性,具有积极意义。Therefore, with the wider application of blockchain in various fields, ensuring transaction security has become an urgent need. This optional embodiment can well reduce the risk of identity certificate and private key leakage, and improve transaction security. have a positive meaning.

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。It should be noted that, for the sake of simple description, the foregoing method embodiments are all expressed as a series of action combinations, but those skilled in the art should know that the present application is not limited by the described action sequence. Because in accordance with the present application, certain steps may be performed in other orders or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。From the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is better implementation. Based on this understanding, the technical solution of the present application can be embodied in the form of a software product in essence or in a part that contributes to the prior art, and the computer software product is stored in a storage medium (such as ROM/RAM, magnetic disk, CD-ROM), including several instructions to make a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) execute the methods described in the various embodiments of this application.

根据本申请实施例的另一个方面,还提供了一种用于实施上述交易提案的处理方法的交易提案的处理装置。图5是根据本申请实施例的一种可选的交易提案的处理装置的示意图,如图5所示,该装置可以包括:According to another aspect of the embodiments of the present application, there is also provided a transaction proposal processing apparatus for implementing the above transaction proposal processing method. FIG. 5 is a schematic diagram of an optional transaction proposal processing apparatus according to an embodiment of the present application. As shown in FIG. 5 , the apparatus may include:

第一获取模块52,用于获取客户端的目标交易信息;The first obtaining module 52 is used to obtain the target transaction information of the client;

第一签名模块54,用于使用所述客户端的客户端私钥对所述目标交易信息进行签名,得到第一签名信息;a first signature module 54, configured to use the client private key of the client to sign the target transaction information to obtain first signature information;

第一发送模块56,用于将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至区块链节点,其中,所述初始交易提案用于指示所述区块链节点获取携带有所述目标交易信息、所述第一签名信息和第二签名信息的目标交易提案,所述第二签名信息是所述区块链节点对所述目标交易信息进行签名得到的。The first sending module 56 is configured to send an initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, wherein the initial transaction proposal is used to indicate the blockchain node Obtain a target transaction proposal carrying the target transaction information, the first signature information, and the second signature information, where the second signature information is obtained by signing the target transaction information by the blockchain node.

需要说明的是,该实施例中的第一获取模块52可以用于执行本申请实施例中的步骤S202,该实施例中的第一签名模块54可以用于执行本申请实施例中的步骤S204,该实施例中的第一发送模块56可以用于执行本申请实施例中的步骤S206。It should be noted that the first acquisition module 52 in this embodiment may be used to perform step S202 in this embodiment of the present application, and the first signature module 54 in this embodiment may be used to perform step S204 in this embodiment of the present application , the first sending module 56 in this embodiment may be configured to perform step S206 in this embodiment of the present application.

此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。It should be noted here that the examples and application scenarios implemented by the foregoing modules and corresponding steps are the same, but are not limited to the contents disclosed in the foregoing embodiments. It should be noted that, as a part of the device, the above modules may run in the hardware environment as shown in FIG. 1 , and may be implemented by software or hardware.

通过上述模块,客户端拥有一对属于自己的公私钥对,为客户端颁发的校验证书可由BaaS进行统一管理,而客户端私钥则由客户端自己保管,客户端发起交易请求时,首先使用自己的私钥对交易信息进行第一次签名加密,当交易信息发送到区块链网络中时,区块链节点对交易信息进行第二次签名加密,那么当后续交易提案发送到背书节点时,背书节点则需要对两次签名进行验证,两次签名验证均通过,交易数据方可上链,解决了身份证书、私钥泄露导致的伪造交易、盗取数字资产等问题,从而实现了提高交易提案的验证过程的安全性的技术效果,进而解决了相关技术中交易提案的验证过程安全性较低的技术问题。Through the above modules, the client has a pair of its own public and private key pairs. The verification certificate issued to the client can be managed by BaaS in a unified manner, while the client private key is kept by the client itself. When the client initiates a transaction request, the first Use your own private key to sign and encrypt the transaction information for the first time. When the transaction information is sent to the blockchain network, the blockchain node signs and encrypts the transaction information for the second time. Then, when the subsequent transaction proposal is sent to the endorsement node At the same time, the endorsement node needs to verify the two signatures, and the two signature verifications are passed, and the transaction data can be uploaded to the chain, which solves the problems of forged transactions and theft of digital assets caused by the disclosure of identity certificates and private keys. The technical effect of improving the security of the verification process of the transaction proposal, thereby solving the technical problem of the low security of the verification process of the transaction proposal in the related art.

作为一种可选的实施例,所述装置还包括:As an optional embodiment, the device further includes:

生成模块,用于在使用所述客户端的客户端私钥对所述初始交易提案进行签名,得到第一签名信息之前,为所述客户端生成所述客户端的公私钥对,其中,所述客户端的公私钥包括具有对应关系的所述客户端私钥和客户端公钥;A generating module, configured to generate a public-private key pair of the client for the client before signing the initial transaction proposal by using the client's private key of the client to obtain the first signature information, wherein the client The public and private keys of the terminal include the client private key and the client public key having a corresponding relationship;

第二获取模块,用于使用所述客户端公钥获取所述客户端对应的客户端校验证书,其中,所述客户端校验证书用于对使用所述客户端私钥进行签名得到的签名信息进行签名验证。The second obtaining module is configured to use the client public key to obtain the client verification certificate corresponding to the client, wherein the client verification certificate is used to sign the certificate obtained by using the client private key. Signature information for signature verification.

作为一种可选的实施例,所述第二获取模块用于:As an optional embodiment, the second obtaining module is used for:

向目标区块链组织对应的证书颁发机构发起携带有所述客户端公钥的调用请求,其中,所述调用请求用于请求所述证书颁发机构根据所述客户端公钥为所述客户端颁发所述客户端校验证书,所述目标区块链组织为所述区块链节点所在的区块链组织。Initiating a call request carrying the client public key to the certificate authority corresponding to the target blockchain organization, wherein the call request is used to request the certificate authority to assign the client to the client according to the client public key The client verification certificate is issued, and the target blockchain organization is the blockchain organization where the blockchain node is located.

作为一种可选的实施例,所述装置还包括:As an optional embodiment, the device further includes:

第二签名模块,用于在将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至所述区块链节点之后,通过所述区块链节点使用组织私钥对所述目标交易信息进行签名,得到所述第二签名信息,其中,所述组织私钥是所述区块链节点所在的目标区块链组织的私钥;The second signature module is configured to, after sending the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, use the organization's private key to pair all transactions with the blockchain node through the blockchain node. signing the target transaction information to obtain the second signature information, wherein the organization private key is the private key of the target blockchain organization where the blockchain node is located;

第二发送模块,用于通过所述区块链节点将携带有所述目标交易信息、所述第一签名信息和所述第二签名信息的所述目标交易提案发送至背书节点,其中,所述目标交易提案用于请求所述背书节点对所述目标交易提案进行背书处理。The second sending module is configured to send the target transaction proposal carrying the target transaction information, the first signature information and the second signature information to the endorsement node through the blockchain node, wherein the The target transaction proposal is used to request the endorsement node to endorse the target transaction proposal.

作为一种可选的实施例,所述装置还用于:As an optional embodiment, the device is also used for:

在将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至所述区块链节点之后,发送查询信息,其中,所述查询信息用于查询所述第一签名信息和所述第二签名信息的验证过程;After sending the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, send query information, where the query information is used to query the first signature information and the verification process of the second signature information;

接收响应所述查询信息返回的所述验证过程;receiving the verification process returned in response to the query information;

在所述客户端上展示所述验证过程。The verification process is exposed on the client.

根据本申请实施例的另一个方面,还提供了另一种用于实施上述交易提案的处理方法的交易提案的处理装置。图6是根据本申请实施例的另一种可选的交易提案的处理装置的示意图,如图6所示,该装置可以包括:According to another aspect of the embodiments of the present application, another apparatus for processing a transaction proposal for implementing the above-mentioned method for processing a transaction proposal is also provided. FIG. 6 is a schematic diagram of another optional transaction proposal processing apparatus according to an embodiment of the present application. As shown in FIG. 6 , the apparatus may include:

第三获取模块62,用于获取携带有目标交易信息、第一签名信息和第二签名信息的目标交易提案,其中,所述目标交易信息是由客户端发起的,所述第一签名信息是使用所述客户端的客户端私钥对所述目标交易信息进行签名得到的,所述第二签名信息是区块链节点对所述目标交易信息进行签名得到的;The third obtaining module 62 is configured to obtain a target transaction proposal carrying target transaction information, first signature information and second signature information, wherein the target transaction information is initiated by the client, and the first signature information is Obtained by signing the target transaction information with the client private key of the client, and the second signature information is obtained by signing the target transaction information by a blockchain node;

验证模块64,用于对所述第一签名信息和所述第二签名信息进行签名验证;a verification module 64, configured to perform signature verification on the first signature information and the second signature information;

处理模块66,用于在所述第一签名信息和所述第二签名信息均验证通过的情况下,对所述目标交易提案进行背书处理。The processing module 66 is configured to perform endorsement processing on the target transaction proposal under the condition that both the first signature information and the second signature information are verified.

需要说明的是,该实施例中的第三获取模块62可以用于执行本申请实施例中的步骤S302,该实施例中的验证模块64可以用于执行本申请实施例中的步骤S304,该实施例中的处理模块66可以用于执行本申请实施例中的步骤S306。It should be noted that, the third obtaining module 62 in this embodiment may be used to execute step S302 in this embodiment of the present application, and the verification module 64 in this embodiment may be used to execute step S304 in this embodiment of the present application, the The processing module 66 in the embodiment may be configured to execute step S306 in the embodiment of the present application.

此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。It should be noted here that the examples and application scenarios implemented by the foregoing modules and corresponding steps are the same, but are not limited to the contents disclosed in the foregoing embodiments. It should be noted that, as a part of the device, the above modules may run in the hardware environment as shown in FIG. 1 , and may be implemented by software or hardware.

通过上述模块,客户端拥有一对属于自己的公私钥对,为客户端颁发的校验证书可由BaaS进行统一管理,而客户端私钥则由客户端自己保管,客户端发起交易请求时,首先使用自己的私钥对交易信息进行第一次签名加密,当交易信息发送到区块链网络中时,区块链节点对交易信息进行第二次签名加密,那么当后续交易提案发送到背书节点时,背书节点则需要对两次签名进行验证,两次签名验证均通过,交易数据方可上链,解决了身份证书、私钥泄露导致的伪造交易、盗取数字资产等问题,从而实现了提高交易提案的验证过程的安全性的技术效果,进而解决了相关技术中交易提案的验证过程安全性较低的技术问题。Through the above modules, the client has a pair of its own public and private key pairs. The verification certificate issued to the client can be managed by BaaS in a unified manner, while the client private key is kept by the client itself. When the client initiates a transaction request, the first Use your own private key to sign and encrypt the transaction information for the first time. When the transaction information is sent to the blockchain network, the blockchain node signs and encrypts the transaction information for the second time. Then, when the subsequent transaction proposal is sent to the endorsement node At the same time, the endorsement node needs to verify the two signatures, and the two signature verifications are passed, and the transaction data can be uploaded to the chain, which solves the problems of forged transactions and theft of digital assets caused by the disclosure of identity certificates and private keys. The technical effect of improving the security of the verification process of the transaction proposal, thereby solving the technical problem of the low security of the verification process of the transaction proposal in the related art.

作为一种可选的实施例,所述验证模块包括:As an optional embodiment, the verification module includes:

第一验证单元,用于使用所述客户端对应的客户端校验证书对所述第一签名信息进行签名验证;在所述第一签名信息验证通过的情况下,使用所述区块链节点对应的组织身份证书对所述第二签名信息进行签名验证,其中,所述组织身份证书是所述区块链节点所在的目标区块链组织的校验证书;a first verification unit, configured to perform signature verification on the first signature information by using the client verification certificate corresponding to the client; in the case of passing the verification of the first signature information, use the blockchain node The corresponding organization identity certificate performs signature verification on the second signature information, wherein the organization identity certificate is the verification certificate of the target blockchain organization where the blockchain node is located;

第二验证单元,用于使用所述区块链节点对应的组织身份证书对所述第二签名信息进行签名验证,其中,所述组织身份证书是所述区块链节点所在的目标区块链组织的校验证书;在所述第二签名信息验证通过的情况下,使用所述客户端对应的客户端校验证书对所述第一签名信息进行签名验证。A second verification unit, configured to perform signature verification on the second signature information by using the organizational identity certificate corresponding to the blockchain node, wherein the organizational identity certificate is the target blockchain where the blockchain node is located The verification certificate of the organization; in the case that the verification of the second signature information is passed, use the client verification certificate corresponding to the client to perform signature verification on the first signature information.

作为一种可选的实施例,所述处理模块包括:As an optional embodiment, the processing module includes:

模拟单元,用于模拟所述目标交易信息所指示的交易过程,得到背书结果;a simulation unit for simulating the transaction process indicated by the target transaction information to obtain an endorsement result;

发送单元,用于将所述背书结果发送至所述客户端,其中,所述背书结果用于指示所述客户端将所述目标交易信息发送至排序节点进行共识排序。A sending unit, configured to send the endorsement result to the client, where the endorsement result is used to instruct the client to send the target transaction information to a sorting node for consensus sorting.

作为一种可选的实施例,所述装置还包括:As an optional embodiment, the device further includes:

确定模块,用于在对所述第一签名信息和所述第二签名信息进行签名验证之后,在所述第一签名信息验证未通过,或者,所述第二签名信息验证未通过的情况下,确定所述目标交易提案失败。A determination module, configured to perform signature verification on the first signature information and the second signature information, in the case that the verification of the first signature information fails, or in the case that the verification of the second signature information fails , determine that the target transaction proposal fails.

此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。It should be noted here that the examples and application scenarios implemented by the foregoing modules and corresponding steps are the same, but are not limited to the contents disclosed in the foregoing embodiments. It should be noted that, as a part of the device, the above modules may run in the hardware environment as shown in FIG. 1 , and may be implemented by software or hardware, wherein the hardware environment includes a network environment.

根据本发明实施例的又一个方面,还提供了一种用于实施上述交易提案的处理方法的电子装置,如图7所示,该电子装置包括存储器702和处理器704,该存储器702中存储有计算机程序,该处理器704被设置为通过计算机程序执行上述任一项方法实施例中的步骤。According to yet another aspect of the embodiments of the present invention, an electronic device for implementing the above-mentioned processing method for a transaction proposal is also provided. As shown in FIG. 7 , the electronic device includes a memory 702 and a processor 704, and the memory 702 stores a memory 702. There is a computer program, and the processor 704 is configured to perform the steps in any of the above method embodiments by the computer program.

可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。Optionally, in this embodiment, the above-mentioned electronic apparatus may be located in at least one network device among multiple network devices of a computer network.

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:Optionally, in this embodiment, the above-mentioned processor may be configured to execute the following steps through a computer program:

S1,获取客户端的目标交易信息;S1, obtain the target transaction information of the client;

S2,使用所述客户端的客户端私钥对所述目标交易信息进行签名,得到第一签名信息;S2, using the client private key of the client to sign the target transaction information to obtain first signature information;

S3,将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至区块链节点,其中,所述初始交易提案用于指示所述区块链节点获取携带有所述目标交易信息、所述第一签名信息和第二签名信息的目标交易提案,所述第二签名信息是所述区块链节点对所述目标交易信息进行签名得到的。S3: Send the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, where the initial transaction proposal is used to instruct the blockchain node to obtain the target transaction The transaction information, the target transaction proposal of the first signature information and the second signature information, where the second signature information is obtained by signing the target transaction information by the blockchain node.

可选地,在本实施例中,上述处理器还可以被设置为通过计算机程序执行以下步骤:Optionally, in this embodiment, the above-mentioned processor may also be configured to perform the following steps through a computer program:

S1,获取携带有目标交易信息、第一签名信息和第二签名信息的目标交易提案,其中,所述目标交易信息是由客户端发起的,所述第一签名信息是使用所述客户端的客户端私钥对所述目标交易信息进行签名得到的,所述第二签名信息是区块链节点对所述目标交易信息进行签名得到的;S1: Acquire a target transaction proposal carrying target transaction information, first signature information and second signature information, wherein the target transaction information is initiated by the client, and the first signature information is the client using the client The terminal private key is obtained by signing the target transaction information, and the second signature information is obtained by signing the target transaction information by the blockchain node;

S2,对所述第一签名信息和所述第二签名信息进行签名验证;S2, performing signature verification on the first signature information and the second signature information;

S3,在所述第一签名信息和所述第二签名信息均验证通过的情况下,对所述目标交易提案进行背书处理。S3, in the case that both the first signature information and the second signature information are verified and passed, perform an endorsement process on the target transaction proposal.

可选地,本领域普通技术人员可以理解,图7所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(MobileInternetDevices,MID)、PAD等终端设备。图7其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图7中所示更多或者更少的组件(如网络接口等),或者具有与图7所示不同的配置。Optionally, those of ordinary skill in the art can understand that the structure shown in FIG. 7 is only a schematic diagram, and the electronic device can also be a smart phone (such as an Android mobile phone, an iOS mobile phone, etc.), a tablet computer, a palmtop computer, and a mobile Internet device (Mobile Internet Devices). , MID), PAD and other terminal equipment. FIG. 7 does not limit the structure of the above electronic device. For example, the electronic device may also include more or less components than those shown in FIG. 7 (eg, network interfaces, etc.), or have a different configuration than that shown in FIG. 7 .

其中,存储器702可用于存储软件程序以及模块,如本发明实施例中的交易提案的处理方法和装置对应的程序指令/模块,处理器704通过运行存储在存储器702内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的交易提案的处理方法。存储器702可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器702可进一步包括相对于处理器704远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器702具体可以但不限于用于存储待处理的帐号的特征信息和概率结果等信息。作为一种示例,如图7所示,上述存储器702中可以但不限于包括上述交易提案的处理装置中的第一获取单元7022、处理单元7024及输出单元7026。此外,还可以包括但不限于上述交易提案的处理装置中的其他模块单元,本示例中不再赘述。The memory 702 may be used to store software programs and modules, such as program instructions/modules corresponding to the transaction proposal processing method and device in the embodiment of the present invention. The processor 704 runs the software programs and modules stored in the memory 702 to thereby Execute various functional applications and data processing, that is, realize the processing method of the above-mentioned transaction proposal. Memory 702 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, memory 702 may further include memory located remotely from processor 704, and these remote memories may be connected to the terminal through a network. Examples of such networks include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof. The memory 702 may specifically be, but not limited to, be used to store information such as characteristic information and probability results of the account to be processed. As an example, as shown in FIG. 7 , the above-mentioned memory 702 may include, but is not limited to, the first acquiring unit 7022 , the processing unit 7024 and the outputting unit 7026 in the above-mentioned transaction proposal processing apparatus. In addition, it may also include, but is not limited to, other module units in the above-mentioned transaction proposal processing apparatus, which will not be repeated in this example.

可选地,上述的传输装置706用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置706包括一个网络适配器(NetworkInterfaceController,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置706为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。Optionally, the above-mentioned transmission device 706 is configured to receive or send data via a network. Specific examples of the above-mentioned networks may include wired networks and wireless networks. In one example, the transmission device 706 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices and routers through a network cable so as to communicate with the Internet or a local area network. In one example, the transmission device 706 is a radio frequency (Radio Frequency, RF) module, which is used for wirelessly communicating with the Internet.

此外,上述电子装置还包括:显示器708,用于显示上述待处理的帐号的特征信息和概率结果;和连接总线710,用于连接上述电子装置中的各个模块部件。In addition, the above-mentioned electronic device further includes: a display 708 for displaying the characteristic information and probability results of the above-mentioned account to be processed; and a connection bus 710 for connecting various module components in the above-mentioned electronic device.

根据本发明的实施例的又一方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。According to yet another aspect of the embodiments of the present invention, a storage medium is also provided, where a computer program is stored in the storage medium, wherein the computer program is configured to execute the steps in any one of the above method embodiments when running.

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:Optionally, in this embodiment, the above-mentioned storage medium may be configured to store a computer program for executing the following steps:

S1,获取客户端的目标交易信息;S1, obtain the target transaction information of the client;

S2,使用所述客户端的客户端私钥对所述目标交易信息进行签名,得到第一签名信息;S2, using the client private key of the client to sign the target transaction information to obtain first signature information;

S3,将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至区块链节点,其中,所述初始交易提案用于指示所述区块链节点获取携带有所述目标交易信息、所述第一签名信息和第二签名信息的目标交易提案,所述第二签名信息是所述区块链节点对所述目标交易信息进行签名得到的。S3: Send the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, where the initial transaction proposal is used to instruct the blockchain node to obtain the target transaction The transaction information, the target transaction proposal of the first signature information and the second signature information, where the second signature information is obtained by signing the target transaction information by the blockchain node.

可选地,在本实施例中,上述存储介质还可以被设置为存储用于执行以下步骤的计算机程序:Optionally, in this embodiment, the above-mentioned storage medium may also be configured to store a computer program for executing the following steps:

S1,获取携带有目标交易信息、第一签名信息和第二签名信息的目标交易提案,其中,所述目标交易信息是由客户端发起的,所述第一签名信息是使用所述客户端的客户端私钥对所述目标交易信息进行签名得到的,所述第二签名信息是区块链节点对所述目标交易信息进行签名得到的;S1: Acquire a target transaction proposal carrying target transaction information, first signature information and second signature information, wherein the target transaction information is initiated by the client, and the first signature information is the client using the client The terminal private key is obtained by signing the target transaction information, and the second signature information is obtained by signing the target transaction information by the blockchain node;

S2,对所述第一签名信息和所述第二签名信息进行签名验证;S2, performing signature verification on the first signature information and the second signature information;

S3,在所述第一签名信息和所述第二签名信息均验证通过的情况下,对所述目标交易提案进行背书处理。S3, in the case that both the first signature information and the second signature information are verified and passed, perform an endorsement process on the target transaction proposal.

可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-OnlyMemory,ROM)、随机存取器(RandomAccessMemory,RAM)、磁盘或光盘等。Optionally, in this embodiment, those of ordinary skill in the art can understand that all or part of the steps in the various methods of the above-mentioned embodiments can be completed by instructing the hardware related to the terminal device through a program, and the program can be stored in a In the computer-readable storage medium, the storage medium may include: a flash disk, a read-only memory (Read-Only Memory, ROM), a random access device (Random Access Memory, RAM), a magnetic disk or an optical disk, and the like.

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。The above-mentioned serial numbers of the embodiments of the present invention are only for description, and do not represent the advantages or disadvantages of the embodiments.

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。If the integrated units in the above-mentioned embodiments are implemented in the form of software functional units and sold or used as independent products, they may be stored in the above-mentioned computer-readable storage medium. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, Several instructions are included to cause one or more computer devices (which may be personal computers, servers, or network devices, etc.) to perform all or part of the steps of the methods described in the various embodiments of the present invention.

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。In the above-mentioned embodiments of the present invention, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference may be made to related descriptions of other embodiments.

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed client may be implemented in other manners. The apparatus embodiments described above are only illustrative, for example, the division of the units is only a logical function division, and there may be other division methods in actual implementation, for example, multiple units or components may be combined or Integration into another system, or some features can be ignored, or not implemented. On the other hand, the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of units or modules, and may be in electrical or other forms.

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution in this embodiment.

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit. The above-mentioned integrated units may be implemented in the form of hardware, or may be implemented in the form of software functional units.

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。The above are only the preferred embodiments of the present invention. It should be pointed out that for those skilled in the art, without departing from the principles of the present invention, several improvements and modifications can be made. It should be regarded as the protection scope of the present invention.

Claims (17)

1.一种交易提案的处理方法,其特征在于,包括:1. A method for processing a transaction proposal, comprising: 获取客户端的目标交易信息;Get the target transaction information of the client; 使用所述客户端的客户端私钥对所述目标交易信息进行签名,得到第一签名信息;Using the client private key of the client to sign the target transaction information to obtain first signature information; 将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至区块链节点,其中,所述初始交易提案用于指示所述区块链节点获取携带有所述目标交易信息、所述第一签名信息和第二签名信息的目标交易提案,所述第二签名信息是所述区块链节点对所述目标交易信息进行签名得到的。Send the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, wherein the initial transaction proposal is used to instruct the blockchain node to obtain the target transaction information carrying the target transaction information. , the target transaction proposal of the first signature information and the second signature information, where the second signature information is obtained by signing the target transaction information by the blockchain node. 2.根据权利要求1所述的方法,其特征在于,在使用所述客户端的客户端私钥对所述初始交易提案进行签名,得到第一签名信息之前,所述方法还包括:2. The method according to claim 1, characterized in that, before using the client private key of the client to sign the initial transaction proposal to obtain first signature information, the method further comprises: 为所述客户端生成所述客户端的公私钥对,其中,所述客户端的公私钥包括具有对应关系的所述客户端私钥和客户端公钥;generating a public-private key pair of the client for the client, wherein the public-private key of the client includes the client private key and the client public key having a corresponding relationship; 使用所述客户端公钥获取所述客户端对应的客户端校验证书,其中,所述客户端校验证书用于对使用所述客户端私钥进行签名得到的签名信息进行签名验证。A client verification certificate corresponding to the client is obtained by using the client public key, wherein the client verification certificate is used to perform signature verification on the signature information obtained by signing with the client private key. 3.根据权利要求2所述的方法,其特征在于,使用所述客户端公钥获取所述客户端对应的客户端校验证书包括:3. The method according to claim 2, wherein obtaining the client verification certificate corresponding to the client by using the client public key comprises: 向目标区块链组织对应的证书颁发机构发起携带有所述客户端公钥的调用请求,其中,所述调用请求用于请求所述证书颁发机构根据所述客户端公钥为所述客户端颁发所述客户端校验证书,所述目标区块链组织为所述区块链节点所在的区块链组织。Initiating a call request carrying the client public key to the certificate authority corresponding to the target blockchain organization, wherein the call request is used to request the certificate authority to assign the client to the client according to the client public key The client verification certificate is issued, and the target blockchain organization is the blockchain organization where the blockchain node is located. 4.根据权利要求1所述的方法,其特征在于,在将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至所述区块链节点之后,所述方法还包括:4. The method according to claim 1, wherein after sending the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, the method further comprises: : 发送查询信息,其中,所述查询信息用于查询所述第一签名信息和所述第二签名信息的验证过程;sending query information, wherein the query information is used to query the verification process of the first signature information and the second signature information; 接收响应所述查询信息返回的所述验证过程;receiving the verification process returned in response to the query information; 在所述客户端上展示所述验证过程。The verification process is exposed on the client. 5.根据权利要求1所述的方法,其特征在于,在将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至所述区块链节点之后,所述方法还包括:5. The method according to claim 1, wherein after sending the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, the method further comprises: : 所述区块链节点使用组织私钥对所述目标交易信息进行签名,得到所述第二签名信息,其中,所述组织私钥是所述区块链节点所在的目标区块链组织的私钥;The blockchain node signs the target transaction information using an organization private key to obtain the second signature information, wherein the organization private key is the private key of the target blockchain organization where the blockchain node is located. key; 所述区块链节点将携带有所述目标交易信息、所述第一签名信息和所述第二签名信息的所述目标交易提案发送至背书节点,其中,所述目标交易提案用于请求所述背书节点对所述目标交易提案进行背书处理。The blockchain node sends the target transaction proposal carrying the target transaction information, the first signature information and the second signature information to the endorsement node, wherein the target transaction proposal is used to request the The endorsement node endorses the target transaction proposal. 6.一种交易提案的处理方法,其特征在于,包括:6. A method for processing a transaction proposal, comprising: 获取携带有目标交易信息、第一签名信息和第二签名信息的目标交易提案,其中,所述目标交易信息是由客户端发起的,所述第一签名信息是使用所述客户端的客户端私钥对所述目标交易信息进行签名得到的,所述第二签名信息是区块链节点对所述目标交易信息进行签名得到的;Obtain the target transaction proposal carrying the target transaction information, the first signature information and the second signature information, wherein the target transaction information is initiated by the client, and the first signature information is obtained using the client's client private The second signature information is obtained by signing the target transaction information by the blockchain node; 对所述第一签名信息和所述第二签名信息进行签名验证;performing signature verification on the first signature information and the second signature information; 在所述第一签名信息和所述第二签名信息均验证通过的情况下,对所述目标交易提案进行背书处理。In the case that both the first signature information and the second signature information are verified and passed, the target transaction proposal is endorsed. 7.根据权利要求6所述的方法,其特征在于,对所述第一签名信息和所述第二签名信息进行签名验证包括以下之一:7. The method according to claim 6, wherein performing signature verification on the first signature information and the second signature information comprises one of the following: 使用所述客户端对应的客户端校验证书对所述第一签名信息进行签名验证;在所述第一签名信息验证通过的情况下,使用所述区块链节点对应的组织身份证书对所述第二签名信息进行签名验证,其中,所述组织身份证书是所述区块链节点所在的目标区块链组织的校验证书;Use the client verification certificate corresponding to the client to perform signature verification on the first signature information; in the case of passing the verification of the first signature information, use the organization identity certificate corresponding to the blockchain node to verify the signature of the first signature information. performing signature verification on the second signature information, wherein the organization identity certificate is the verification certificate of the target blockchain organization where the blockchain node is located; 使用所述区块链节点对应的组织身份证书对所述第二签名信息进行签名验证,其中,所述组织身份证书是所述区块链节点所在的目标区块链组织的校验证书;在所述第二签名信息验证通过的情况下,使用所述客户端对应的客户端校验证书对所述第一签名信息进行签名验证。Use the organization identity certificate corresponding to the blockchain node to perform signature verification on the second signature information, wherein the organization identity certificate is the verification certificate of the target blockchain organization where the blockchain node is located; In the case that the verification of the second signature information is passed, the first signature information is subjected to signature verification by using the client verification certificate corresponding to the client terminal. 8.根据权利要求6所述的方法,其特征在于,对所述目标交易提案进行背书处理包括:8. The method according to claim 6, wherein the endorsement processing for the target transaction proposal comprises: 模拟所述目标交易信息所指示的交易过程,得到背书结果;Simulate the transaction process indicated by the target transaction information to obtain the endorsement result; 将所述背书结果发送至所述客户端,其中,所述背书结果用于指示所述客户端将所述目标交易信息发送至排序节点进行共识排序。Send the endorsement result to the client, where the endorsement result is used to instruct the client to send the target transaction information to a sorting node for consensus sorting. 9.根据权利要求6所述的方法,其特征在于,在对所述第一签名信息和所述第二签名信息进行签名验证之后,所述方法还包括:9. The method according to claim 6, wherein after performing signature verification on the first signature information and the second signature information, the method further comprises: 在所述第一签名信息验证未通过,或者,所述第二签名信息验证未通过的情况下,确定所述目标交易提案失败。If the verification of the first signature information fails, or the verification of the second signature information fails, it is determined that the target transaction proposal fails. 10.一种交易提案的处理系统,其特征在于,包括:客户端,区块链节点和背书节点,其中,10. A transaction proposal processing system, comprising: a client, a blockchain node and an endorsement node, wherein, 所述客户端,用于发起目标交易信息,使用所述客户端的客户端私钥对所述目标交易信息进行签名,得到第一签名信息,将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至所述区块链节点;The client is used for initiating target transaction information, and uses the client private key of the client to sign the target transaction information to obtain first signature information, which will carry the target transaction information and the first signature An initial transaction proposal for information is sent to the blockchain node; 所述区块链节点,用于使用组织私钥对所述目标交易信息进行签名得到第二签名信息,将携带有所述目标交易信息、所述第一签名信息和所述第二签名信息的目标交易提案发送至所述背书节点,其中,所述组织私钥是所述区块链节点所在的目标区块链组织的私钥;The blockchain node is used to sign the target transaction information using the organization's private key to obtain the second signature information, and will carry the target transaction information, the first signature information and the second signature information. The target transaction proposal is sent to the endorsement node, wherein the organization private key is the private key of the target blockchain organization where the blockchain node is located; 所述背书节点,用于获取所述目标交易提案,对所述第一签名信息和所述第二签名信息进行签名验证,在所述第一签名信息和所述第二签名信息均验证成功的情况下,对所述目标交易提案进行背书处理。The endorsement node is used to obtain the target transaction proposal, and perform signature verification on the first signature information and the second signature information. If both the first signature information and the second signature information are successfully verified, In this case, endorse the target transaction proposal. 11.根据权利要求10所述的系统,其特征在于,11. The system of claim 10, wherein 所述客户端用于:生成所述客户端的公私钥对,其中,所述客户端的公私钥包括具有对应关系的所述客户端私钥和客户端公钥;使用所述客户端公钥获取所述客户端对应的客户端校验证书,其中,所述客户端校验证书用于对使用所述客户端私钥进行签名得到的签名信息进行签名验证;The client is used to: generate a public-private key pair of the client, wherein the public and private keys of the client include the client private key and the client public key that have a corresponding relationship; use the client public key to obtain all The client verification certificate corresponding to the client, wherein the client verification certificate is used to perform signature verification on the signature information obtained by signing with the client private key; 所述背书节点用于:使用所述客户端校验证书对所述第一签名信息进行签名验证;在所述第一签名信息验证通过的情况下,使用所述区块链节点对应的组织身份证书对所述第二签名信息进行签名验证。The endorsement node is used for: using the client verification certificate to perform signature verification on the first signature information; in the case of passing the verification of the first signature information, using the organizational identity corresponding to the blockchain node The certificate performs signature verification on the second signature information. 12.根据权利要求10所述的系统,其特征在于,所述客户端还用于:12. The system according to claim 10, wherein the client is further configured to: 在将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至所述区块链节点之后,发送查询信息,其中,所述查询信息用于查询所述第一签名信息和所述第二签名信息的验证过程;After sending the initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, send query information, where the query information is used to query the first signature information and the verification process of the second signature information; 接收响应所述查询信息返回的所述验证过程;receiving the verification process returned in response to the query information; 在所述客户端上展示所述验证过程。The authentication process is exposed on the client. 13.根据权利要求10所述的系统,其特征在于,所述背书节点用于:13. The system of claim 10, wherein the endorsement node is used to: 在所述第一签名信息验证未通过,或者,所述第二签名信息验证未通过的情况下,确定所述目标交易提案失败。If the verification of the first signature information fails, or the verification of the second signature information fails, it is determined that the target transaction proposal fails. 14.一种交易提案的处理装置,其特征在于,包括:14. An apparatus for processing transaction proposals, comprising: 第一获取模块,用于获取客户端的目标交易信息;The first acquisition module is used to acquire the target transaction information of the client; 第一签名模块,用于使用所述客户端的客户端私钥对所述目标交易信息进行签名,得到第一签名信息;a first signature module, configured to use the client private key of the client to sign the target transaction information to obtain first signature information; 第一发送模块,用于将携带有所述目标交易信息和所述第一签名信息的初始交易提案发送至区块链节点,其中,所述初始交易提案用于指示所述区块链节点获取携带有所述目标交易信息、所述第一签名信息和第二签名信息的目标交易提案,所述第二签名信息是所述区块链节点对所述目标交易信息进行签名得到的。a first sending module, configured to send an initial transaction proposal carrying the target transaction information and the first signature information to the blockchain node, wherein the initial transaction proposal is used to instruct the blockchain node to obtain A target transaction proposal carrying the target transaction information, the first signature information and the second signature information, where the second signature information is obtained by the blockchain node signing the target transaction information. 15.一种交易提案的处理装置,其特征在于,包括:15. An apparatus for processing a transaction proposal, comprising: 第三获取模块,用于获取携带有目标交易信息、第一签名信息和第二签名信息的目标交易提案,其中,所述目标交易信息是由客户端发起的,所述第一签名信息是使用所述客户端的客户端私钥对所述目标交易信息进行签名得到的,所述第二签名信息是区块链节点对所述目标交易信息进行签名得到的;The third obtaining module is configured to obtain the target transaction proposal carrying the target transaction information, the first signature information and the second signature information, wherein the target transaction information is initiated by the client, and the first signature information is obtained by using The client private key of the client is obtained by signing the target transaction information, and the second signature information is obtained by signing the target transaction information by the blockchain node; 验证模块,用于对所述第一签名信息和所述第二签名信息进行签名验证;a verification module, configured to perform signature verification on the first signature information and the second signature information; 处理模块,用于在所述第一签名信息和所述第二签名信息均验证通过的情况下,对所述目标交易提案进行背书处理。A processing module, configured to perform endorsement processing on the target transaction proposal when both the first signature information and the second signature information are verified. 16.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至9任一项中所述的方法。16. A storage medium, characterized in that the storage medium comprises a stored program, wherein when the program is run, the method described in any one of the preceding claims 1 to 9 is executed. 17.一种电子装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器通过所述计算机程序执行上述权利要求1至9任一项中所述的方法。17. An electronic device comprising a memory, a processor and a computer program stored on the memory and running on the processor, wherein the processor executes the above claim 1 through the computer program A method as described in any one of to 9.
CN202010436876.6A 2020-05-21 2020-05-21 Transaction proposal processing method, device, system, storage medium and electronic device Pending CN111815321A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010436876.6A CN111815321A (en) 2020-05-21 2020-05-21 Transaction proposal processing method, device, system, storage medium and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010436876.6A CN111815321A (en) 2020-05-21 2020-05-21 Transaction proposal processing method, device, system, storage medium and electronic device

Publications (1)

Publication Number Publication Date
CN111815321A true CN111815321A (en) 2020-10-23

Family

ID=72848591

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010436876.6A Pending CN111815321A (en) 2020-05-21 2020-05-21 Transaction proposal processing method, device, system, storage medium and electronic device

Country Status (1)

Country Link
CN (1) CN111815321A (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112446771A (en) * 2020-12-17 2021-03-05 北京金山云网络技术有限公司 Online auction system, method, device and electronic equipment
CN113379421A (en) * 2021-07-13 2021-09-10 北京京东乾石科技有限公司 Block chain based information processing and block chain network composition method and device
CN113643032A (en) * 2021-09-01 2021-11-12 中国银行股份有限公司 Information processing method and device based on block chain and data management system
CN114092093A (en) * 2022-01-20 2022-02-25 腾讯科技(深圳)有限公司 Block chain transaction processing method and device, electronic equipment and readable medium
CN114338795A (en) * 2021-12-23 2022-04-12 杭州趣链科技有限公司 Data communication method and device for block chain client
CN114389819A (en) * 2021-12-31 2022-04-22 航天信息股份有限公司 Signature verification method and device
CN114629901A (en) * 2020-12-14 2022-06-14 北京金山云网络技术有限公司 BaaS-based block chain data sharing method, device and equipment
CN115271960A (en) * 2022-08-18 2022-11-01 中国工商银行股份有限公司 Block chain fund transaction method and device, storage medium and electronic equipment
CN116866092A (en) * 2023-09-05 2023-10-10 中国民航信息网络股份有限公司 Data processing method, device and system based on blockchain gateway
CN119071088A (en) * 2024-10-31 2024-12-03 广东省科技基础条件平台中心 Data transmission method, device, equipment, storage medium and product
CN119831740A (en) * 2024-12-17 2025-04-15 中国工商银行股份有限公司 User data processing method and device based on block chain and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108573016A (en) * 2017-12-25 2018-09-25 北京金山云网络技术有限公司 A data consistency check method, device, equipment and storage medium
WO2019011179A1 (en) * 2017-07-10 2019-01-17 腾讯科技(深圳)有限公司 Certificate management method, system, network device and computer readable storage medium
US20190229927A1 (en) * 2017-02-28 2019-07-25 Tencent Technology (Shenzhen) Company Ltd Method and apparatus for processing account information in block chain, storage medium, and electronic apparatus
CN110533429A (en) * 2019-08-30 2019-12-03 北京金山云网络技术有限公司 Transaction endorsement method, apparatus and block chain network in block chain
CN111010282A (en) * 2019-12-12 2020-04-14 腾讯科技(深圳)有限公司 Information processing method based on block chain and related device
CN111130795A (en) * 2019-12-13 2020-05-08 浙商银行股份有限公司 Multistage signature method based on block chain technology
CN111161056A (en) * 2018-11-07 2020-05-15 新明华区块链技术(深圳)有限公司 A method, system and device for improving the security of digital asset transactions

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190229927A1 (en) * 2017-02-28 2019-07-25 Tencent Technology (Shenzhen) Company Ltd Method and apparatus for processing account information in block chain, storage medium, and electronic apparatus
WO2019011179A1 (en) * 2017-07-10 2019-01-17 腾讯科技(深圳)有限公司 Certificate management method, system, network device and computer readable storage medium
CN108573016A (en) * 2017-12-25 2018-09-25 北京金山云网络技术有限公司 A data consistency check method, device, equipment and storage medium
CN111161056A (en) * 2018-11-07 2020-05-15 新明华区块链技术(深圳)有限公司 A method, system and device for improving the security of digital asset transactions
CN110533429A (en) * 2019-08-30 2019-12-03 北京金山云网络技术有限公司 Transaction endorsement method, apparatus and block chain network in block chain
CN111010282A (en) * 2019-12-12 2020-04-14 腾讯科技(深圳)有限公司 Information processing method based on block chain and related device
CN111130795A (en) * 2019-12-13 2020-05-08 浙商银行股份有限公司 Multistage signature method based on block chain technology

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
马小峰等: "区块链技术原理与实践", 29 February 2020, 北京:机械工业出版社, pages: 38 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114629901A (en) * 2020-12-14 2022-06-14 北京金山云网络技术有限公司 BaaS-based block chain data sharing method, device and equipment
CN112446771A (en) * 2020-12-17 2021-03-05 北京金山云网络技术有限公司 Online auction system, method, device and electronic equipment
CN112446771B (en) * 2020-12-17 2024-04-05 北京金山云网络技术有限公司 Online auction system, online auction method, online auction device and electronic equipment
CN113379421A (en) * 2021-07-13 2021-09-10 北京京东乾石科技有限公司 Block chain based information processing and block chain network composition method and device
CN113379421B (en) * 2021-07-13 2023-09-26 北京京东振世信息技术有限公司 Information processing and blockchain network composition methods and devices based on blockchain
CN113643032B (en) * 2021-09-01 2024-02-20 中国银行股份有限公司 Information processing method, device and data management system based on block chain
CN113643032A (en) * 2021-09-01 2021-11-12 中国银行股份有限公司 Information processing method and device based on block chain and data management system
CN114338795A (en) * 2021-12-23 2022-04-12 杭州趣链科技有限公司 Data communication method and device for block chain client
CN114389819A (en) * 2021-12-31 2022-04-22 航天信息股份有限公司 Signature verification method and device
CN114092093A (en) * 2022-01-20 2022-02-25 腾讯科技(深圳)有限公司 Block chain transaction processing method and device, electronic equipment and readable medium
CN115271960A (en) * 2022-08-18 2022-11-01 中国工商银行股份有限公司 Block chain fund transaction method and device, storage medium and electronic equipment
CN116866092B (en) * 2023-09-05 2024-01-05 中国民航信息网络股份有限公司 Data processing method, device and system based on blockchain gateway
CN116866092A (en) * 2023-09-05 2023-10-10 中国民航信息网络股份有限公司 Data processing method, device and system based on blockchain gateway
CN119071088A (en) * 2024-10-31 2024-12-03 广东省科技基础条件平台中心 Data transmission method, device, equipment, storage medium and product
CN119831740A (en) * 2024-12-17 2025-04-15 中国工商银行股份有限公司 User data processing method and device based on block chain and storage medium

Similar Documents

Publication Publication Date Title
CN111815321A (en) Transaction proposal processing method, device, system, storage medium and electronic device
CN109756485B (en) Electronic contract signing method, electronic contract signing device, computer equipment and storage medium
CN111737724B (en) Data processing method and device, intelligent equipment and storage medium
CN114710275B (en) Blockchain-based cross-domain authentication and key agreement method in the Internet of Things environment
CN113014392B (en) Block chain-based digital certificate management method, system, equipment and storage medium
CN113360943B (en) A method and device for protecting blockchain privacy data
CN110177124B (en) Identity authentication method based on block chain and related equipment
WO2020061923A1 (en) Blockchain-based account management system and management method, and storage medium
CN113743939A (en) Identity authentication method, device and system based on block chain
CN111506632B (en) A data processing method and device
CN114760071B (en) Zero-knowledge proof based cross-domain digital certificate management method, system and medium
CN112231769A (en) Blockchain-based numerical verification method, device, computer equipment and medium
CN113541970B (en) Method and system for using distributed identifier
CN110910110B (en) Data processing method and device and computer storage medium
CN110597836A (en) Information query request response method and device based on block chain network
CN112380584B (en) Block chain data updating method and device, electronic equipment and storage medium
CN114691669A (en) Electronic certificate storage method and device, electronic equipment and storage medium
CN111833062B (en) Credibility verification system for digital asset data packet
CN113641975A (en) Identification registration method, identification verification method, device and system
CN110690969B (en) Method and system for achieving bidirectional SSL/TLS authentication through multiparty cooperation
CN109245897B (en) A node authentication method and device based on non-interactive zero-knowledge proof
CN112801606A (en) Electronic contract system of cone block chain
CN109104410B (en) Information matching method and device
CN108768650B (en) Short message verification system based on biological characteristics
CN118249995A (en) A digital identity credential continuous authentication device and method based on ratchet paradigm

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20201023