CN111080292B - Method and device for acquiring block chain transaction signature data - Google Patents
Method and device for acquiring block chain transaction signature data Download PDFInfo
- Publication number
- CN111080292B CN111080292B CN201911166990.5A CN201911166990A CN111080292B CN 111080292 B CN111080292 B CN 111080292B CN 201911166990 A CN201911166990 A CN 201911166990A CN 111080292 B CN111080292 B CN 111080292B
- Authority
- CN
- China
- Prior art keywords
- transaction
- blockchain
- signature data
- signature
- enterprise
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000012790 confirmation Methods 0.000 claims description 43
- 238000010200 validation analysis Methods 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 15
- 230000004044 response Effects 0.000 claims description 6
- 230000000977 initiatory effect Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 8
- 238000012546 transfer Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
The present disclosure provides a method and apparatus for obtaining blockchain transaction signature data. The method comprises the following steps: when transaction information of an enterprise user is acquired, generating a signature data request message based on the transaction information, wherein the transaction information comprises a bank account number of the enterprise user; sending the signature data request message to a corresponding bank server of the bank account through a block chain enterprise terminal application; receiving, by the blockchain enterprise-side application, transaction signature data from the corresponding bank server, the transaction signature data including at least a digital signature generated at the enterprise user's key device based on the enterprise user's private key and the transaction information; and generating blockchain transaction signature data based on the transaction signature data.
Description
Technical Field
The present disclosure relates to the field of blockchain technology, and in particular, to a method and apparatus for obtaining blockchain transaction signature data.
Background
The block chain technology utilizes a chain data structure to verify and store data, utilizes a distributed node consensus algorithm to generate and update data, and utilizes a cryptographic mode to ensure data transmission and access safety. When a transaction is processed by using the blockchain technology, for the transaction initiated by a client, the intelligent contract is usually called to execute the transaction when the transaction is verified, so that the transaction security can be ensured.
For convenience of the user, the bank can provide financial transaction services such as inquiry, account checking, in-line transfer, cross-line transfer, credit and the like to the user through the internet by using network technology. Meanwhile, in order to secure the transaction, a bank typically provides a bank identity certificate (digital certificate) to a user using an internet banking service. The bank identity certificate is used for marking the unique identity of the user and verifying the identity of the user when financial transactions are carried out.
The non-tamper-ability of blockchain technology can provide a higher level of security for banks and users. However, the banking systems and the mechanisms of the identity certificates of the banks are different, and the financial systems of the users (e.g. enterprises) are different, and the requirements of compliance and the like need to be satisfied. Thus, it is difficult for existing banking systems and users to implement transactions using blockchain techniques.
Disclosure of Invention
In view of the foregoing, the present disclosure provides a method and apparatus for obtaining blockchain transaction signature data. By using the method and the device, the public key and the private key in the key device issued by the bank for the user can be used as the public key and the private key of the user in the block chain, so that the bank and the enterprise user are accessed into the block chain system for charging.
According to an aspect of the present disclosure, there is provided a method for obtaining blockchain transaction signature data, comprising: when transaction information of an enterprise user is acquired, generating a signature data request message based on the transaction information, wherein the transaction information comprises a bank account number of the enterprise user; sending the signature data request message to a corresponding bank server of the bank account through a block chain enterprise terminal application; receiving, by the blockchain enterprise-side application, transaction signature data from the corresponding bank server, the transaction signature data including at least a digital signature generated at the enterprise user's key device based on the enterprise user's private key and the transaction information; and generating blockchain transaction signature data based on the transaction signature data.
Optionally, in an example, the transaction signature data may further include a digital signature original, a public key of the enterprise user, a signature digest algorithm, and a signature digest.
Optionally, in one example, the key device of the enterprise user may include a Ukey of the enterprise user.
Optionally, in one example, the transaction information of the enterprise user may be obtained from a user device of the enterprise user by the blockchain enterprise-side application.
Optionally, in an example, the method may further include: after generating the blockchain transaction signature data, acquiring an intelligent contract; and sending the blockchain transaction data and the acquired intelligent contract to a corresponding node server in a blockchain system so as to execute blockchain processing.
Optionally, in an example, before receiving transaction signature data from the corresponding bank server through the blockchain enterprise-side application, the method may further include: receiving, by the blockchain enterprise-side application, signature validation page address information from the corresponding bank server, the signature validation page address information generated by the bank server in response to the signature data request message; and providing the signature validation page address information to the user device of the enterprise user through the blockchain enterprise-side application, so that the enterprise user can access the signature validation page address to carry out signature validation and generate the digital signature by using the Ukey after the signature validation is successful.
Optionally, in one example, the signature confirmation page address information may be generated at the bank server based on a work order number of the signed data request message after being encrypted.
Optionally, in an example, the transaction corresponding to the transaction information may include an asset class transaction, and the transaction information of the asset class transaction further includes an asset class transaction type, an enterprise user account, a transaction amount, and transaction object information.
Optionally, in one example, the enterprise user account number may be generated when account type transaction information is first received from the enterprise user.
Optionally, in an example, generating a signature data request message based on the transaction information may include: generating a signature data request message based on the transaction information and message generation rules of a corresponding bank server, and/or generating blockchain transaction signature data based on the transaction signature data may include: generating blockchain transaction signature data based on the transaction signature data and blockchain data rules.
According to another aspect of the present disclosure, there is also provided an apparatus for obtaining blockchain transaction signature data, including: the system comprises a signature data request message generating unit, a data processing unit and a data processing unit, wherein the signature data request message generating unit generates a signature data request message based on transaction information when the transaction information of an enterprise user is acquired, and the transaction information comprises a bank account number of the enterprise user; the signature data request message sending unit is used for sending the signature data request message to a corresponding bank server of the bank account through the block chain enterprise terminal application; a transaction signature data receiving unit that receives transaction signature data from the corresponding bank server through the blockchain enterprise-side application, the transaction signature data including at least a digital signature generated at a key device of the enterprise user based on a private key of the enterprise user and the transaction information; and a blockchain transaction signature data generation unit which generates blockchain transaction signature data based on the transaction signature data.
Optionally, in an example, the transaction signature data may further include a digital signature original, a public key of the enterprise user, a signature digest algorithm, and a signature digest.
Optionally, in an example, the apparatus may further include: the intelligent contract acquisition unit acquires an intelligent contract after generating the block chain transaction signature data; and the transaction data uplink unit is used for sending the block chain transaction data and the acquired intelligent contract to a corresponding node server in a block chain system so as to execute block chain processing.
Optionally, in an example, the apparatus may further include: an address information receiving unit that receives signature confirmation page address information from the corresponding bank server through the blockchain enterprise-side application before receiving transaction signature data from the corresponding bank server through the blockchain enterprise-side application, the signature confirmation page address information being generated by the bank server in response to the signature data request message; and the address information providing unit is used for providing the signature confirmation page address information to the user equipment of the enterprise user through the block chain enterprise terminal application so that the enterprise user can access the signature confirmation page address to perform signature confirmation and generate the digital signature by using the Ukey after the signature confirmation is successful.
Optionally, in an example, the signature data request message generating unit may generate a signature data request message based on the transaction information and a message generation rule of a corresponding bank server, and/or the blockchain transaction signature data generating unit may generate blockchain transaction signature data based on the transaction signature data and a blockchain data rule.
According to another aspect of the present disclosure, there is also provided a computing device comprising: at least one processor; and a memory storing instructions that, when executed by the at least one processor, cause the at least one processor to perform the method as described above.
According to another aspect of the present disclosure, there is also provided a non-transitory machine-readable storage medium storing executable instructions that, when executed, cause the machine to perform the method as described above.
With the method and the device disclosed by the invention, the transaction information can be encrypted by using the key device issued by the bank for the enterprise user to generate the transaction signature data comprising the digital signature by generating the signature data request message based on the transaction information of the enterprise user and receiving the transaction signature data from the corresponding bank server after sending the signature data request message to the corresponding bank server, so that the private key and the public key in the key device of the enterprise user can be used as the key of the enterprise user in block chain transaction.
With the method and apparatus of the present disclosure, by providing signature confirmation page address information received from a corresponding bank server on a user device of an enterprise user, the enterprise user can access the signature confirmation page address to confirm the signature content.
By using the method and the device disclosed by the invention, the signature confirmation page address is generated based on the work order number of the encrypted signature data request message, so that the business information of enterprise users and banks can be prevented from being leaked, and the safety is improved.
By using the method and the device disclosed by the invention, the signature data request message is generated based on the transaction information and the message generation rule of the corresponding bank server, and/or the blockchain transaction signature data is generated based on the transaction signature data and the blockchain data rule, so that the enterprise user and the corresponding bank server can be accessed into the blockchain system without changing the existing software and hardware structures of the user equipment of the enterprise user and the corresponding bank server.
Drawings
A further understanding of the nature and advantages of the present disclosure may be realized by reference to the following drawings. In the drawings, similar components or features may have the same reference numerals. The accompanying drawings, which are included to provide a further understanding of the embodiments of the disclosure and are incorporated in and constitute a part of this specification, illustrate embodiments of the disclosure and together with the detailed description serve to explain the embodiments of the disclosure without limiting the embodiments of the disclosure. In the drawings:
fig. 1 illustrates a schematic diagram of an example of an environment that may be used to perform a method for obtaining blockchain transaction signature data in accordance with an embodiment of the present disclosure;
fig. 2 shows a schematic diagram of an example of a system architecture to perform a method for obtaining blockchain transaction signature data according to an embodiment of the present disclosure;
fig. 3 is a flow diagram of a method for obtaining blockchain transaction signature data according to one embodiment of the present disclosure;
FIG. 4 is a flow diagram of one example of a process for a bank server to obtain transaction signature data using Ukey;
fig. 5 is a flow diagram of one application scenario of a method for obtaining blockchain transaction signature data according to another embodiment of the present disclosure;
fig. 6 is a block diagram of an apparatus for obtaining blockchain transaction signature data according to one embodiment of the present disclosure;
fig. 7 is a block diagram of an apparatus for obtaining blockchain transaction signature data according to another embodiment of the present disclosure;
fig. 8 is a block diagram of a computing device for implementing a method for obtaining blockchain transaction signature data according to one embodiment of the present disclosure.
Detailed Description
The subject matter described herein will be discussed with reference to example embodiments. It should be understood that these embodiments are discussed only to enable those skilled in the art to better understand and thereby implement the subject matter described herein, and are not intended to limit the scope, applicability, or examples set forth in the claims. Changes may be made in the function and arrangement of elements discussed without departing from the scope of the disclosure. Various examples may omit, substitute, or add various procedures or components as needed. In addition, features described with respect to some examples may also be combined in other examples.
As used herein, the term "include" and its variants mean open-ended terms in the sense of "including, but not limited to. The term "based on" means "based at least in part on". The terms "one embodiment" and "an embodiment" mean "at least one embodiment". The term "another embodiment" means "at least one other embodiment". Other definitions, whether explicit or implicit, may be included below. The definition of a term is consistent throughout the specification unless the context clearly dictates otherwise.
The method and apparatus for obtaining blockchain transaction signature data of the present disclosure will now be described with reference to the accompanying drawings.
The block chain is a chain data structure formed by connecting and combining data blocks according to a time sequence, and the data blocks are guaranteed to be not falsifiable and not forged in a cryptographic mode. A block chain includes one or more blocks. Each chunk in the chain of chunks is linked to the immediately preceding chunk in the chain of chunks by including a cryptographic hash of the preceding chunk. Each chunk also includes a timestamp, a cryptographic hash of the chunk, and one or more transactions (transactions). Transactions that have been verified by nodes of the blockchain network are hashed and form a Merkle tree. In a Merkle tree, data at leaf nodes is hashed and, for each branch of the Merkle tree, all hash values of the branch are concatenated at the root of the branch. The above process is performed for the Merkle tree up to the root node of the entire Merkle tree. The root node of the Merkle tree stores a hash value representing all the data in the Merkle tree. When a hash value claims to be a transaction stored in the Merkle tree, a quick verification can be performed by determining whether the hash value is consistent with the structure of the Merkle tree.
A blockchain is a data structure used to store transactions. A blockchain network is a network of computing nodes used to manage, update and maintain one or more blockchain structures. As described above, the blockchain network may include a public blockchain network, a private blockchain network, or a federated blockchain network.
In a public blockchain network, the consensus process is controlled by nodes of the consensus network. For example, there may be thousands of entity co-processes in a public blockchain network, each entity operating at least one node in the public blockchain network. Thus, a public blockchain network may be considered a public network of participating entities. In some examples, most entities (nodes) must sign each chunk in sequence and add the signed chunk to the blockchain of the blockchain network. An example of a public blockchain network may include a particular peer-to-peer payment network. Furthermore, the term "blockchain" does not particularly refer to any particular blockchain.
Public blockchain networks support public transactions. Public transactions are shared among all nodes within a public blockchain network and are stored in a global blockchain. A global blockchain refers to a blockchain that is replicated across all nodes. To achieve consensus (e.g., agree to add blocks to a blockchain), a consensus protocol is implemented within a public blockchain network. Examples of consensus protocols include, but are not limited to: proof of work (POW), proof of rights (POS), and proof of authority (POA). In this disclosure, POW is taken as a non-limiting example.
A private blockchain network is provided for a particular entity. The read-write authority of each node in the private blockchain network is strictly controlled. Thus, private blockchain networks, also commonly referred to as licensed networks, limit who is allowed to participate in the network and the level of network participation (e.g., only in certain transaction scenarios). In private blockchain networks, various types of access control mechanisms may be used (e.g., existing participants voting for adding new entities, regulatory body controlled permissions, etc.).
A federation blockchain network is private between participating entities. In a federated blockchain network, the consensus process is controlled by an authorizing node. For example, a federation consisting of several (e.g., 10) entities (e.g., financial institutions, insurance companies) may operate a federated blockchain network, each entity operating at least one node in the federated blockchain network. Thus, a federated blockchain network can be considered a private network of participating entities. In some examples, each participating entity (node) must sign each chunk in sequence and add the chunk to the chain of chunks. In some examples, each tile may be signed by a subset of participating entities (nodes) (e.g., at least 7 entities) and added to the tile chain.
Embodiments of the present disclosure are described in detail in the present disclosure with reference to a federated blockchain network. However, it is contemplated that embodiments of the present disclosure may be implemented in any suitable blockchain network.
Blockchains are tamper-resistant shared digital ledgers that record transactions in public or private peer-to-peer networks. Ledgers are distributed to all member nodes in the network and asset transaction histories occurring in the network are permanently recorded in blocks.
The consensus mechanism ensures that all network nodes in the distributed blockchain network perform transactions in the same order and then write the same ledger. A consensus mechanism can be used to solve the byzantine problem.
Fig. 1 illustrates a schematic diagram of an example of an environment 100 that may be used to perform a method for obtaining blockchain transaction signature data in accordance with an embodiment of the present disclosure. In some examples, environment 100 enables entities to participate in blockchain network 102. As shown in FIG. 1, environment 100 includes a network 104, and computing devices/ systems 106, 108. In some examples, the network 104 may include a Local Area Network (LAN), a Wide Area Network (WAN), the internet, or a combination thereof, and connects websites, user devices (e.g., computing devices), and backend systems. In some examples, network 104 may be accessed through wired and/or wireless communication links. In some examples, computing devices/ systems 106, 108 communicate with each other over network 104, as well as with blockchain network 102 over network 104, and nodes (or node devices) in blockchain network 102 communicate over network 104. In general, the network 104 represents one or more communication networks. In some cases, the computing devices/ systems 106, 108 may be nodes of a cloud computing system (not shown), or each computing device/ system 106, 108 may be a separate cloud computing system that includes multiple computers interconnected by the network 104 and functions as a distributed processing system.
In the illustrated example, each of the computing devices/ systems 106, 108 may comprise any suitable computing system capable of participating as a node in the blockchain network 102. Examples of computing devices/systems include, but are not limited to, servers, desktop computers, laptops, tablet devices, smartphones, and the like. In some examples, one or more computer-implemented services may be installed on the computing devices/ systems 106, 108 for interacting with the blockchain network 102. For example, the computing device/system 106 may have installed thereon a service of a first entity (e.g., user a), such as a transaction management system used by the first entity to manage its transactions with one or more other entities (e.g., other users). The computing device/system 108 may have installed thereon a service of a second entity (e.g., user B), such as a transaction management system used by the second entity to manage its transactions with one or more other entities (e.g., other users). In the example of fig. 1, the blockchain network 102 is represented as a peer-to-peer network of nodes, and the computing devices/ systems 106, 108 act as nodes for first and second entities participating in the blockchain network 102, respectively.
Fig. 2 shows a schematic diagram of an example of a system architecture 200 that performs a method for obtaining blockchain transaction signature data according to an embodiment of the present disclosure. An example of system architecture 200 includes participant systems 202, 204, 206 corresponding to participant a, participant B, and participant C, respectively. Each participant (e.g., user, enterprise) participates in blockchain network 212, which is provided as a peer-to-peer network. The blockchain network 212 includes a plurality of nodes 214, wherein at least some of the nodes 214 record information in blockchain 216, and the recorded information is not alterable. Although a single blockchain 216 is schematically shown within blockchain network 212, multiple copies of blockchain 216 may be provided and maintained in blockchain network 212, as described in detail later.
In the illustrated example, each participant system 202, 204, 206 is provided by or as participant a, participant B, and participant C, respectively, and acts as a corresponding node 214 within the blockchain network 212. As used herein, a node generally refers to a single system (e.g., computer, server) that is connected to the blockchain network 212 and enables the respective participants to participate in the blockchain network. In the example shown in fig. 2, a participant corresponds to each node 214. However, one participant may operate multiple nodes 214 within blockchain network 212, and/or multiple participants may share a single node 214. In some examples, the participant systems 202, 204, 206 communicate with the blockchain network 212 using a protocol (e.g., hypertext transfer protocol secure (HTTPS)) and/or using Remote Procedure Calls (RPCs), or communicate over the blockchain network 212.
The node 214 may have different participation in the blockchain network 212. For example, some nodes 214 may participate in the consensus process (e.g., as miners' nodes that add tiles to the blockchain 216), while other nodes 214 do not participate in the consensus process. As another example, some nodes 214 store a full copy of blockchain 216, while other nodes 214 store only partial copies of blockchain 216. In the example of fig. 2, the participant systems 202, 204, 206 each store a complete copy 216', 216 "' of the chain of blocks 216.
A block chain (e.g., block chain 216 in fig. 2) consists of a series of blocks, each of which stores data. Examples of data may include transaction data representing transactions between two or more parties. In the present disclosure, transactions are used as non-limiting examples, and it is contemplated that any suitable data may be stored in the blockchain (e.g., documents, images, video, audio). Examples of transactions may include, but are not limited to, exchanging things of value (e.g., assets, products, services, and currency, etc.). Transaction data is unalterably stored in the blockchain.
The transaction data is hashed prior to storage in the block. The hash process is a process of converting transaction data (provided as character string data) into a hash value of a fixed length (also provided as character string data). After the transaction data is subjected to the hash processing, even if slight change occurs in the transaction data, completely different hash values can be obtained. The hash value is typically generated by hashing the transaction data using a hash function. Examples of hash functions include, but are not limited to, Secure Hash Algorithm (SHA) -256, which outputs a 256-bit hash value.
Transaction data for a plurality of transactions may be stored in the block after being hashed. For example, two transaction data are hashed to obtain two hash values, and then the two obtained hash values are hashed again to obtain another hash value. This process is repeated until a single hash value is obtained for all transactions to be stored in the block. This hash value is called a Merkle root hash and is stored at the head of the chunk. Any change to a transaction will cause its hash value to change, eventually causing the Merkle root hash value to change.
The blocks are added to the block chain by a consensus protocol. Multiple nodes in a blockchain network participate in a consensus protocol and add blocks to the blockchain after contention. Such nodes are referred to as miner nodes (or accounting nodes). The POW introduced above is used as a non-limiting example.
The miner node performs a consensus process to add the transaction (the corresponding tile) to the chain of tiles. Although multiple miner nodes participate in the consensus process, only one miner node may write a block into the blockchain. That is, the miners nodes compete in the consensus process to add their blocks to the blockchain. In more detail, the miner node periodically collects pending transactions from the transaction pool (e.g., until a predetermined limit, if any, on the number of transactions that may be included in the block is reached). The transaction pool includes transaction messages from participants in the blockchain network. The miner node creates a block and adds the transaction to the block. Before adding a transaction to a block, the miner node checks whether there is a transaction in the block of the blockchain in the transaction to be added. If the transaction has been added to another block, the transaction will be discarded.
The mineworker node generates a chunk header, hashes all transactions in the chunk, and combines the hash values in pairs to generate further hash values until a single hash value (Merkle root hash) is obtained for all transactions in the chunk. The Merkle root hash is then added to the chunk header. The miners also determine the hash value of the latest chunk in the blockchain (i.e., the last chunk added to the blockchain). The mineworker node may also add a random value (a noune value) and a timestamp in the block header. During the mining process, the miners' nodes attempt to find hash values that satisfy the required parameters. The mineworker node continually changes the nonce value until a hash value is found that meets the required parameters.
Each miner in the blockchain network attempts to find a hash value that satisfies the required parameters and competes with each other in this manner. Finally, one miner node finds a hash value that satisfies the required parameters and advertises the hash value to all other miner nodes in the blockchain network. Other miners nodes verify the hash value, and if determined to be correct, verify each transaction in the block, accept the block, and append the block to their blockchain copy. In this way, the global state of the blockchain is made consistent across all miner nodes within the blockchain network. The above process is a POW consensus protocol.
In the example provided in fig. 2, party a wants to send a certain amount of funds to party B. Party a generates a transaction message and sends the transaction message to the blockchain network, which is added to the transaction pool. Each mineworker node in the blockchain network creates a block and obtains transactions from the transaction pool and adds the transactions to the block. In this manner, the transaction issued by party a is added to the block of the miner node.
In some blockchain networks, cryptographic techniques are implemented to maintain privacy of transactions. For example, if two nodes want to maintain transaction privacy so that other nodes in the blockchain network cannot learn the transaction details, the nodes may encrypt the transaction data. Examples of encryption methods include, but are not limited to, symmetric encryption and asymmetric encryption. Symmetric encryption refers to an encryption process that uses a single key for both encryption (to generate ciphertext from plaintext) and decryption (to generate plaintext from ciphertext). In symmetric encryption, multiple nodes may use the same key, so each node may encrypt/decrypt transaction data.
Asymmetric encryption uses key pairs for encryption and decryption, and each key pair includes a different private key and a different public key. For a node, the private key in the asymmetric encryption key pair needs to be stored in a secret way; the public key can be published and obtained by other nodes. If the data is encrypted with the public key, it can only be decrypted with the corresponding private key. For example, refer again to fig. 1. Party a may encrypt the data using party B's public key and send the encrypted data to party B. Party B may use its private key to decrypt the encrypted data (ciphertext) sent from party a and decrypt the original data (plaintext). Messages encrypted using the public key of a node can only be decrypted using the corresponding private key in the pairwise key.
Asymmetric encryption may also be used to provide a digital signature that enables a party in a transaction to confirm the other parties in the transaction and the validity of the transaction. For example, party a may digitally sign a message, while another party B may confirm that the message was sent by party a based on party a's digital signature. Digital signatures can also be used to ensure that messages are not tampered with during transmission. For example, refer again to fig. 1. Party a will send a message to party B. Party a generates a hash value of the message and then encrypts the hash value using its private key to generate a digital signature. Party a attaches the digital signature to the message and sends the message with the digital signature to party B. Party B decrypts the digital signature using party a's public key, thereby decrypting the corresponding hash value. Party B hashes the received message to get another hash value and then compares the two hash values. If the hash values are the same, party B can confirm that the message is indeed from party A and has not been tampered with.
Fig. 3 is a flow diagram of a method for obtaining blockchain transaction signature data according to one embodiment of the present disclosure.
As shown in FIG. 3, at block 320, upon obtaining transaction information for the enterprise user, a signed data request message is generated based on the transaction information for the enterprise user. An enterprise user can register an account number in the blockchain transaction signature acquisition system and log in the system by virtue of the account number of the enterprise user so as to initiate a transaction. The enterprise user may populate the system with transaction information required for the corresponding transaction. In one example, an enterprise user may send transaction information on a user device into a blockchain transaction acquisition system. In one example, an enterprise user may send transaction information through a blockchain enterprise-side application disposed on a user device, such that the transaction information may be obtained through the blockchain enterprise-side application. The blockchain enterprise-side application may be disposed in a blockchain transaction signature data acquisition system.
Transactions initiated by enterprise users may include account-type transactions and asset-type transactions. The account type transaction can comprise a transaction related to an account but not related to asset transfer, such as an account opening or bank card binding, performed by an enterprise user on a blockchain platform. When the transaction corresponding to the transaction information is an account type transaction, when the enterprise user initiates a transaction request, information such as a bank account number, an account opening bank (a bank corresponding to the bank account number), a username of the enterprise user when the bank opens an account, a unified social credit code of the enterprise user and the like can be provided to generate the transaction information. In one example, the issuer may not be included, and the issuer of the bank account may be determined from the bank account. The bank account number provided by the enterprise user can be used for binding in the block chain transaction signature acquisition system to perform asset class transaction. When an enterprise user initiates an account type transaction, a blockchain platform account number can be pre-allocated to the enterprise user after transaction information is received. The blockchain platform account number is used for conducting blockchain transactions in a blockchain system. In one example, the blockchain platform account number may be used as a blockchain address when an enterprise user transacts in the blockchain system.
The enterprise user initiated transactions may also include asset class transactions. Asset class transactions may include transactions involving asset transfers. Asset class transactions may be differentiated into a plurality of asset class transaction types, such as issuing assets, transferring assets, financing, and the like. The issued assets may be, for example, issued stocks, bonds, etc., and the transferred assets may be, for example, assets that transfer accounts payables to a transaction object or transfer accounts receivables, etc. When the transaction corresponding to the transaction information is an asset type transaction, the transaction information may include a bank account number, an issuer (which may not be included), an asset type transaction type, a blockchain platform account number, a transaction amount, and the like of the enterprise user. When the asset class transaction type is transferring assets, the transaction information may further include a transaction object. The blockchain platform account number in the transaction information of the asset class transaction may be generated for the enterprise user when the enterprise user initiates an account class transaction for the first time.
After the transaction information of the enterprise user is acquired, a signature data request message can be assembled based on the transaction information for requesting a corresponding bank server to generate transaction signature data. In one example, the signature data request message may be generated based on transaction information and message generation rules of a corresponding bank server. The design mechanisms of the bank servers of the respective banks are different, and thus the message formats that can be applied may also be different. When a user needs to initiate a transaction via a different bank server or when different users initiate transactions via different bank servers, it is difficult to match the message format of each bank, which may cause a reduction in the efficiency of the bank server in identifying messages. Thus, after the transaction information of the enterprise user is acquired, the signature data request message can be generated based on the transaction information and the message generation rule of the corresponding bank server, so as to request the bank server to generate the transaction signature data aiming at the transaction information. The message generation rules of the bank server may include, for example, message statement structures, the content that the message must contain, etc.
The generated signature data request message may include the transaction information reassembled according to the message generation rule of the bank server. In one example, the signature data request message may be generated by extracting information necessary to generate transaction signature data from transaction information provided by the enterprise user.
After generating the signature data request message, the signature data request message is sent to the corresponding bank server through the blockchain enterprise-side application at block 340. In order to secure the transaction, a signature data request message may be transmitted to a corresponding bank server via a financial gateway of a corresponding platform.
After receiving the signature data request message, the corresponding bank server may perform related verification based on the transaction information carried in the signature data request message. When the transaction information corresponds to account type transaction, the authenticity verification can be carried out on the information of the enterprise user according to the account name and/or the unified social credit code of the enterprise user. When the transaction information corresponds to an asset transaction, the corresponding bank server may verify the correctness of the transaction information in the signature data request message according to the stored corresponding relationship between the bank account and the blockchain platform, for example, whether the bank account is a bank account of the enterprise user, whether the bank account and the blockchain platform account have a binding relationship, whether the blockchain platform account is correct, and the like.
After the enterprise information of the account-type transaction verifies that the transaction information of the real or asset-type transaction verifies correctly, the corresponding bank server may generate a work order and a work order identifier corresponding to the work order based on the transaction information in the signature data request message. The page corresponding to the work order (hereinafter referred to as a signature confirmation page) is used for confirming whether the transaction information is wrong or not before the enterprise user signs the signature by using the encryption device. The enterprise user can log in a bank system to determine the correctness of the information in the signature confirmation page, and when the confirmation is correct, the key device provided by the corresponding bank for the enterprise user can be accessed to the user equipment so as to sign the transaction information by using the private key in the key device, thereby generating the digital signature. The key device may be, for example, a Ukey (U-shield) provided by the corresponding bank for the enterprise user.
Hereinafter, the acquisition process of the transaction signature data will be described with reference to fig. 4 by taking Ukey as an example. In the following examples, although the Ukey is described as an example, the present disclosure is equally applicable to the case where other key devices are used. Fig. 4 is a flow diagram of one application scenario of a method for obtaining blockchain transaction signature data according to another embodiment of the present disclosure.
As shown in fig. 4, at 402, the Ukey initiates an authentication process to a corresponding bank server, and the bank server authenticates the Ukey to verify whether the Ukey is held by a legitimate user. Then, at 404, it is determined whether the Ukey verifies legitimacy. The Ukey can send or receive messages to or from the bank server through the bank client or through the internet bank page and the internet bank security control. The bank server and the Ukey may use a PKI (public key infrastructure) authentication mode or an authentication mode based on a shock/response, or other authentication methods to perform authentication. The specific verification process is known to those skilled in the art, and is not described in detail herein.
When the Ukey verifies that it is legitimate, the bank server sends the transaction information needed to generate the transaction signature data to the Ukey at 406.
After receiving the transaction information, the Ukey assembles 408 the transaction information based on its own signature rules to generate a digitally signed original. The Ukey then invokes a private key stored in the security module to encrypt the digitally signed plaintext using an encryption algorithm to generate a digital signature at 410. After generating the digital signature, the Ukey assembles the relevant data to generate transaction signature data at 412. The transaction signature data includes at least a digital signature.
After generating the transaction signature data, the Ukey sends the transaction signature data to the bank server at 414. After acquiring the transaction signature data from the Ukey, the bank server may send the transaction signature data to the blockchain enterprise end application.
When receiving the signature data request message, the bank server can also return an acceptance message to inform the transaction signature data acquisition system that the signature data request is accepted. The signature data acquisition system may re-perform the operations of blocks 320 and 340 when the acceptance message is not received within a predetermined time after the transaction information of the enterprise user is acquired. Alternatively, the reason for not receiving the acceptance message may be analyzed and the user notified to make corrections, for example, whether the transaction information is missing or incorrect. In addition, when receiving the signature data request message, the bank server may also return an acceptance failure message if the signature data request message does not meet the requirement, and the acceptance failure message may include an acceptance failure reason. For example, the transaction information may be in an incorrect format, missing, incorrect, etc. The transaction signature data acquisition system may regenerate the signature data request message based on the acceptance failure message, or may regenerate the signature data request message after notifying the user to correct the transaction message.
Next, at block 360, the transaction signature data acquisition system receives transaction signature data from the corresponding bank server through the blockchain enterprise-side application.
In one example, the transaction signature data received from the corresponding bank server may further include a digital signature original, a public key in a key device, a signature digest algorithm, and a signature digest. Due to the difference of the assembly rules of the digital signature texts of Ukeys issued by different banks, the block chain transaction signature data acquisition system is difficult to generate transaction information texts completely consistent with the format. Thus, the Ukey may assemble the digital signature text into transaction signature data to facilitate the visa of the digital signature. The signature abstract is obtained by using a signature abstract algorithm to abstract the digital signature original text by Ukey. The signature digest algorithm is included in the transaction signature data for use in verifying the digital signature in the transaction signature data.
After the transaction signature data is acquired, blockchain transaction signature data is generated based on the transaction signature data at block 380. Thus, the private key and the public key in the key device provided by the bank for the enterprise user can be used as the public key and the private key of the enterprise user when participating in the blockchain transaction.
Fig. 5 is a flow diagram of one application scenario of a method for obtaining blockchain transaction signature data according to another embodiment of the present disclosure.
As shown in fig. 5, at 502, an enterprise user may initiate a transaction by logging into a blockchain signature data acquisition system through a blockchain enterprise-side application on a user device and entering transaction information. The enterprise user may also send transaction information to the blockchain signature data acquisition system to initiate a transaction using the user device without logging into the blockchain signature data acquisition system. When the block chain transaction signature data acquisition system acquires the transaction information, at 504, a bank server corresponding to the transaction is determined based on the bank account number in the transaction information. In one example, the blockchain transaction signature acquisition system may determine the corresponding server based on the first four digits of a bank card number entered by an enterprise user.
After determining the corresponding bank server, at 506, the blockchain transaction signature data acquisition system may generate a signature data request message based on the transaction information and the message generation rules of the corresponding server. In one example, the signature data request message may be generated based on transaction information and message generation rules of a corresponding bank server. Thereby, the generated signature data request message can be easily recognized by the corresponding bank server.
Then, at 508, the blockchain transaction signature data acquisition system sends the generated signature data request message to the corresponding bank server to request the corresponding bank server to generate transaction signature data.
Upon receiving the signature data request message, the bank server generates a work order and a corresponding signature validation page address for the work order (i.e., a work order page address) corresponding to the received signature data request message at 510. The signature confirmation page address may be generated based on a bank server address (URL) and a work order identification for the work order. The bank server may assemble the bank server address and the work order identification into a signature confirmation page address. The work order identification can be encrypted, and a signature confirmation page address can be generated based on the encrypted work order identification and the bank server address. The work order identifier may reflect business information of the bank or the enterprise user, for example, when the work order identifier is a work order number, the business volume of the bank or the transaction volume of the enterprise user in a certain time period can be known through the work order number. Therefore, the work order identification is encrypted, so that a third party can be prevented from acquiring the business information of the bank or enterprise user through the work order identification. In one example, a key may be randomly generated for the work order identification and used to symmetrically encrypt the signed work order identification. In another example, the key used to encrypt the work order identification may also be pre-generated.
After generating the signature confirmation page address, the bank server sends the signature confirmation page address information to the blockchain transaction signature data acquisition system at 512. The bank server may send the assembled signature confirmation page address to the blockchain transaction signature data acquisition system, and may also send unassembled signature confirmation page address information (such as a bank website and a work order identifier (or an encrypted work order identifier)) to the blockchain transaction signature data acquisition system.
After the blockchain transaction signature data acquisition system receives the signature validation page address information, if unassembled signature validation page address information is received, the signature validation page address is parsed at 514. The block chain transaction signature acquisition system can analyze the signature confirmation page address information and assemble the signature confirmation page address according to the analysis result. For example, when the signature confirmation page address information includes a bank server address and a work order identification or an encrypted work order identification, the bank server address and the work order identification may be assembled to generate the signature confirmation page address. By analyzing and assembling the signature confirmation page address by the blockchain transaction signature data acquisition system, the cause of the problem can be analyzed when the problem occurs in the process of acquiring the signature confirmation page address. For example, it is possible to analyze whether the bank server address is wrong or the work order identification is wrong. If a grouped signature confirmation page address is received, then the process of 514 need not be performed.
After obtaining the signature confirmation page address, the blockchain transaction signature data acquisition system provides the signature confirmation page address to the enterprise user at 516. The enterprise user may access the signature confirmation page at 518 by signing the confirmation page address and confirming whether the transaction information presented by the signature confirmation page is accurate. The signature validation page address may be provided to the enterprise user by the blockchain enterprise-side application, and the enterprise user may click on the signature validation page address on the user device to access the signature validation page address. For example, the enterprise user may determine whether the information of the transaction object account number, the contract number, the transaction amount, the transaction date, and the like is consistent with the information input when the enterprise user initiates the transaction.
After confirming that the transaction information is error free, the enterprise user may access the Ukey to the user device at 520, so that the Ukey can perform messaging with the bank server through the user device. For example, after confirming that the transaction information is correct, the enterprise user may insert the Ukey into a USB interface of the user equipment to access the Ukey to the user equipment.
The bank server may then send the transaction information to the Ukey and receive the generated transaction signature data from the Ukey at 522. After the Ukey has access to the user device, the bank server may use the process shown in fig. 4 to obtain transaction signature data from the Ukey.
After acquiring the transaction signature data, the bank server sends the transaction signature data to the blockchain enterprise-side application in the blockchain transaction signature data acquisition system at 524. The blockchain transaction signature data acquisition system can acquire transaction signature data from a bank server through a blockchain enterprise-side application.
After receiving the transaction signature data from the bank server, at 526, the blockchain transaction signature data acquisition system may generate blockchain transaction signature data based on the acquired transaction signature data and the data generation rules of the corresponding blockchain. The format of the transaction signature data assembled by the Ukey usually does not meet the data requirement of the blockchain system, and when the blockchain transaction signature data is generated based on the data generation rule of the blockchain system and the transaction signature data, the bank server can be connected to the blockchain system under the condition that the software and hardware structures of the bank server and the Ukey are not changed.
After generating the blockchain transaction signature data, the blockchain transaction signature data acquisition system may acquire a smart contract to specify the smart contract for the transaction at 528.
The blockchain transaction signature data acquisition system may send the blockchain transaction signature data and the acquired smart contract to a node server in the corresponding blockchain system to initiate the blockchain transaction at 530. The node server in the blockchain system can perform operations and blockchain processing such as consensus processing, blockchain uplink processing and the like on the received blockchain transaction signature data.
By the above example, the enterprise user and the bank server can be accessed into the blockchain system without changing the software and hardware structures of the systems of the bank server and the enterprise user, so that the enterprise user and the bank server can participate in the blockchain transaction.
Fig. 6 is a block diagram of an apparatus for obtaining blockchain transaction signature data according to one embodiment of the present disclosure. As shown in fig. 6, the blockchain transaction signature data acquisition apparatus 600 includes a signature data request message generation unit 610, a signature data request message transmission unit 620, a transaction signature data reception unit 630, and a blockchain signature data generation unit 640.
The signed data request message generation unit 610 is configured to generate a signed data request message based on transaction information of the enterprise user. The signature data request message generation unit 610 may also generate a signature data request message based on transaction information of the enterprise user and a message generation rule of a corresponding bank server.
After generating the signature data request message, the signature data request message transmission unit 520 transmits the signature data request message to the corresponding bank server. The transaction signature data receiving unit 530 receives transaction signature data from a corresponding bank server. The transaction signature data includes at least a digital signature generated at the enterprise user's key device based on the enterprise user's private key and the transaction information.
After acquiring the transaction signature data, the blockchain signature data generation unit 540 generates blockchain transaction signature data based on the transaction signature data. The blockchain signature data generation unit 540 may also generate blockchain transaction signature data based on the transaction signature data and data rules of the blockchain system.
Fig. 7 is a block diagram of an apparatus for obtaining blockchain transaction signature data according to another embodiment of the present disclosure. As shown in fig. 7, the blockchain transaction signature data acquisition apparatus 700 includes a signature data request message generation unit 710, a signature data request message transmission unit 720, an address information reception unit 730, an address information provision unit 740, a transaction signature data reception unit 750, a blockchain signature data generation unit 760, an intelligent contract acquisition unit, and a blockchain transaction initiation unit 780.
The signature data request message generation unit 710 generates a signature data request message based on transaction information of the enterprise user and a message generation rule of a corresponding bank server. Then, the signature data request message transmission unit 720 transmits the signature data request message to the corresponding bank server.
The address information receiving unit 730 is configured to receive signature confirmation page address information from the corresponding bank server, which is generated by the bank server in response to the signature data request message, before receiving the transaction signature data from the corresponding bank server. Upon receiving the signature confirmation page address, the address information providing unit 740 provides the signature confirmation page address on the user device of the enterprise user for signature confirmation by the enterprise user.
The transaction signature data receiving unit 750 is configured to receive transaction signature data from a corresponding bank server. The blockchain signature data generation unit 760 is configured to generate blockchain transaction signature data corresponding to the blockchain system based on the transaction signature data and the data rules of the blockchain system.
After generating the blockchain transaction signature data, the smart contract acquisition unit 770 acquires a smart contract corresponding to the transaction information. The blockchain transaction initiation unit 780 sends the blockchain transaction signature data and the acquired intelligent contract to the blockchain system to perform blockchain processing operations.
The respective units in fig. 7 are not all essential constituent elements, and some units may not be included in some examples. For example, in other examples, the signature address receiving unit and the signature address providing unit may not be included. In another example, the blockchain transaction initiating unit or the corresponding bank server determining unit may not be included.
Embodiments of a method and apparatus for obtaining blockchain transaction signature data according to the present disclosure are described above with reference to fig. 1 through 7. The details mentioned in the above description of the method embodiments apply equally to the embodiments of the apparatus of the present disclosure.
The device for acquiring blockchain transaction signature data disclosed by the invention can be realized by hardware, software or a combination of hardware and software. The various embodiments in this specification are described in a progressive manner, with like reference to each other.
The device for acquiring blockchain transaction signature data disclosed by the invention can be realized by hardware, software or a combination of hardware and software. The software implementation is taken as an example, and is formed by reading corresponding computer program instructions in the storage into the memory for operation through the processor of the device where the software implementation is located as a logical means. In the present disclosure, the means for obtaining blockchain transaction signature data may be implemented, for example, using a computing device.
Fig. 8 is a block diagram of a computing device for implementing a method for obtaining blockchain transaction signature data according to one embodiment of the present disclosure. As shown in fig. 8, computing device 800 includes a processor 810, a storage 820, a memory 830, a communication interface 840, and an internal bus 850, and processor 810, storage (e.g., non-volatile storage) 820, memory 830, communication interface 840 are connected together via bus 850. According to one embodiment, computing device 800 may include at least one processor 810, the at least one processor 810 executing at least one computer-readable instruction (i.e., an element described above as being implemented in software) stored or encoded in a computer-readable storage medium (i.e., memory 820).
In one embodiment, computer-executable instructions are stored in the memory 820 that, when executed, cause the at least one processor 810 to: generating a signature data request message based on transaction information of an enterprise user and a message generation rule of a corresponding bank server; sending the signature data request message to the corresponding bank server; receiving transaction signature data from the corresponding bank server, the transaction signature data generated by the bank server based on the bank identity certificate of the enterprise user and the transaction information; and generating blockchain transaction signature data corresponding to the blockchain system based on the transaction signature data and data rules of the blockchain system.
It should be understood that the computer-executable instructions stored in the memory 820, when executed, cause the at least one processor 810 to perform the various operations and functions described above in connection with fig. 1-7 in the various embodiments of the present disclosure.
According to one embodiment, a program product, such as a non-transitory machine-readable medium, is provided. A non-transitory machine-readable medium may have instructions (i.e., elements described above as being implemented in software) that, when executed by a machine, cause the machine to perform various operations and functions described above in connection with fig. 1-7 in various embodiments of the present disclosure.
Specifically, a system or apparatus may be provided which is provided with a readable storage medium on which software program code implementing the functions of any of the above embodiments is stored, and causes a computer or processor of the system or apparatus to read out and execute instructions stored in the readable storage medium.
In this case, the program code itself read from the readable medium can realize the functions of any of the above-described embodiments, and thus the machine-readable code and the readable storage medium storing the machine-readable code form part of the present invention.
Examples of the readable storage medium include floppy disks, hard disks, magneto-optical disks, optical disks (e.g., CD-ROMs, CD-R, CD-RWs, DVD-ROMs, DVD-RAMs, DVD-RWs), magnetic tapes, nonvolatile memory cards, and ROMs. Alternatively, the program code may be downloaded from a server computer or from the cloud via a communications network.
The foregoing description has been directed to specific embodiments of this disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
Not all steps and elements in the above flows and system structure diagrams are necessary, and some steps or elements may be omitted according to actual needs. The execution order of the steps is not fixed, and can be determined as required. The apparatus structures described in the above embodiments may be physical structures or logical structures, that is, some units may be implemented by the same physical entity, or some units may be implemented by a plurality of physical entities, or some units may be implemented by some components in a plurality of independent devices.
The term "exemplary" used throughout this specification means "serving as an example, instance, or illustration," and does not mean "preferred" or "advantageous" over other embodiments. The detailed description includes specific details for the purpose of providing an understanding of the described technology. However, the techniques may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form in order to avoid obscuring the concepts of the described embodiments.
Alternative embodiments of the present disclosure are described in detail with reference to the drawings, however, the embodiments of the present disclosure are not limited to the specific details in the embodiments, and various simple modifications may be made to the technical solutions of the embodiments of the present disclosure within the technical concept of the embodiments of the present disclosure, and the simple modifications all belong to the protective scope of the embodiments of the present disclosure.
The previous description of the disclosure is provided to enable any person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the scope of the disclosure. Thus, the disclosure is not intended to be limited to the examples and designs described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims (15)
1. A method for acquiring blockchain transaction signature data, performed by a blockchain transaction signature data acquisition system, the method comprising:
when transaction information of an enterprise user is acquired, generating a signature data request message based on the transaction information and a message generation rule of a corresponding bank server, wherein the transaction information comprises a bank account number of the enterprise user;
sending the signature data request message to a corresponding bank server of the bank account through a block chain enterprise terminal application;
receiving, by the blockchain enterprise-side application, transaction signature data from the corresponding bank server, the transaction signature data including at least a digital signature generated by signing the transaction information at a user device to which a key device of the enterprise user is accessed using a private key in the key device of the enterprise user, the corresponding bank server receiving the transaction signature data from the key device, the key device being provided by a corresponding bank for the enterprise user; and
generating blockchain transaction signature data based on the transaction signature data and blockchain data rules.
2. The method of claim 1, wherein the transaction signature data further comprises a digital signature original, a public key of the enterprise user, a signature digest algorithm, and a signature digest.
3. The method of claim 1, wherein the enterprise user's key device comprises the enterprise user's Ukey.
4. The method of claim 1, wherein the transaction information of the enterprise user is obtained from a user device of the enterprise user by the blockchain enterprise-side application.
5. The method of claim 1, further comprising:
after generating the blockchain transaction signature data, acquiring an intelligent contract; and
and sending the blockchain transaction data and the acquired intelligent contract to a corresponding node server in a blockchain system so as to execute blockchain processing.
6. The method of claim 1, wherein prior to receiving transaction signature data from the corresponding bank server through the blockchain enterprise-side application, the method further comprises:
receiving, by the blockchain enterprise-side application, signature validation page address information from the corresponding bank server, the signature validation page address information generated by the bank server in response to the signature data request message; and
providing, by the blockchain enterprise-side application, the signature validation page address information to a user device of the enterprise user for access by the enterprise user to a signature validation page address for signature validation and to generate the digital signature using Ukey after signature validation is successful.
7. The method of claim 6, wherein the signature confirmation page address information is generated at the bank server based on a work order number of the signed data request message after being encrypted.
8. The method of claim 1, wherein the transaction corresponding to the transaction information comprises an asset class transaction, and the transaction information of the asset class transaction further comprises an asset class transaction type, an enterprise user account number, a transaction amount, and transaction object information.
9. The method of claim 8, wherein the enterprise user account number is generated when account-type transaction information is first received from the enterprise user.
10. An apparatus for acquiring blockchain transaction signature data, applied to a blockchain transaction signature data acquisition system, the apparatus comprising:
the system comprises a signature data request message generating unit, a data processing unit and a data processing unit, wherein the signature data request message generating unit generates a signature data request message based on transaction information and a message generating rule of a corresponding bank server when the transaction information of an enterprise user is acquired, and the transaction information comprises a bank account number of the enterprise user;
the signature data request message sending unit is used for sending the signature data request message to a corresponding bank server of the bank account through the block chain enterprise terminal application;
a transaction signature data receiving unit, configured to receive, by the blockchain enterprise-side application, transaction signature data from the corresponding bank server, where the transaction signature data at least includes a digital signature generated by signing the transaction information using a private key in a key device of the enterprise user at a user device to which the key device of the enterprise user is accessed, and the corresponding bank server receives the transaction signature data from the key device, and the key device is provided by a corresponding bank for the enterprise user; and
and the block chain transaction signature data generation unit generates block chain transaction signature data based on the transaction signature data and the block chain data rule.
11. The apparatus of claim 10, wherein the transaction signature data further comprises a digital signature original, a public key of the enterprise user, a signature digest algorithm, and a signature digest.
12. The apparatus of claim 10, further comprising:
the intelligent contract acquisition unit acquires an intelligent contract after generating the block chain transaction signature data; and
and the blockchain transaction initiating unit is used for sending the blockchain transaction data and the acquired intelligent contract to a corresponding node server in a blockchain system so as to execute blockchain processing.
13. The apparatus of claim 10, further comprising:
an address information receiving unit that receives signature confirmation page address information from the corresponding bank server through the blockchain enterprise-side application before receiving transaction signature data from the corresponding bank server through the blockchain enterprise-side application, the signature confirmation page address information being generated by the bank server in response to the signature data request message; and
and the address information providing unit is used for providing the signature confirmation page address information to the user equipment of the enterprise user through the block chain enterprise terminal application so that the enterprise user can access the signature confirmation page address to perform signature confirmation and generate the digital signature by using Ukey after the signature confirmation is successful.
14. A computing device, comprising:
at least one processor; and
a memory storing instructions that, when executed by the at least one processor, cause the at least one processor to perform the method of any of claims 1 to 9.
15. A machine-readable storage medium storing executable instructions that, when executed, cause the machine to perform the method of any of claims 1 to 9.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911166990.5A CN111080292B (en) | 2019-11-25 | 2019-11-25 | Method and device for acquiring block chain transaction signature data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911166990.5A CN111080292B (en) | 2019-11-25 | 2019-11-25 | Method and device for acquiring block chain transaction signature data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111080292A CN111080292A (en) | 2020-04-28 |
CN111080292B true CN111080292B (en) | 2021-09-10 |
Family
ID=70311495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911166990.5A Active CN111080292B (en) | 2019-11-25 | 2019-11-25 | Method and device for acquiring block chain transaction signature data |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111080292B (en) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111582888B (en) * | 2020-05-11 | 2023-08-08 | 中国银行股份有限公司 | Verification system for verifying authenticity of electronic deposit |
CN111639315A (en) * | 2020-05-16 | 2020-09-08 | 中信银行股份有限公司 | Online banking account management method and online banking account management system |
CN111628871B (en) * | 2020-05-28 | 2021-09-03 | 广东工业大学 | Block chain transaction processing method and device, electronic equipment and storage medium |
CN111985912A (en) * | 2020-08-14 | 2020-11-24 | 上海云从企业发展有限公司 | Payment method, device, system, equipment and machine readable medium |
CN112308700A (en) * | 2020-10-22 | 2021-02-02 | 北京通付盾人工智能技术有限公司 | Method and device for processing enterprise credit investigation data, computer equipment and storage medium |
CN112532395B (en) * | 2020-11-26 | 2024-02-27 | 中国船舶工业系统工程研究院 | Block chain-based data credit system, method and medium |
CN113407958B (en) * | 2021-06-03 | 2023-08-25 | 广东辰宜信息科技有限公司 | Signature data processing method, device, equipment and medium |
CN113570465B (en) * | 2021-09-18 | 2022-01-07 | 杭州远境互联科技有限公司 | Block chain signature processing method based on POS (Point of sale) consensus mechanism |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107566117A (en) * | 2017-07-14 | 2018-01-09 | 浙商银行股份有限公司 | A kind of block chain key management system and method |
CN108229958A (en) * | 2017-12-27 | 2018-06-29 | 浙商银行股份有限公司 | A kind of accounts receivable system and method based on block chain technology |
CN109003185A (en) * | 2018-06-29 | 2018-12-14 | 中国银联股份有限公司 | A kind of method for building up, device, calculating equipment and the storage medium of intelligence contract |
CN110290108A (en) * | 2019-05-17 | 2019-09-27 | 深圳市网心科技有限公司 | Data processing method, system and relevant device in a kind of block chain network |
CN110458560A (en) * | 2019-07-12 | 2019-11-15 | 阿里巴巴集团控股有限公司 | For carrying out the method and device of transaction verification |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107306183B (en) * | 2016-04-22 | 2021-12-21 | 索尼公司 | Client, server, method and identity verification system |
CN106301794B (en) * | 2016-10-17 | 2019-04-05 | 特斯联(北京)科技有限公司 | The method and system of authorization identifying are carried out using block chain |
GB2569278A (en) * | 2017-10-23 | 2019-06-19 | Cygnetise Ltd | Methods and apparatus for verifying a user transaction |
WO2019092508A2 (en) * | 2017-11-07 | 2019-05-16 | Khalil Ramy Abdelmageed Ebrahim | System and method for scaling blockchain networks with secure off-chain payment hubs |
CN109102404B (en) * | 2018-08-09 | 2021-07-30 | 全链通有限公司 | Privacy protection method and system for block chain real-name communication |
CN110210863A (en) * | 2019-06-11 | 2019-09-06 | 深圳市网心科技有限公司 | Block chain method for secure transactions, device, electronic equipment and storage medium |
-
2019
- 2019-11-25 CN CN201911166990.5A patent/CN111080292B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107566117A (en) * | 2017-07-14 | 2018-01-09 | 浙商银行股份有限公司 | A kind of block chain key management system and method |
CN108229958A (en) * | 2017-12-27 | 2018-06-29 | 浙商银行股份有限公司 | A kind of accounts receivable system and method based on block chain technology |
CN109003185A (en) * | 2018-06-29 | 2018-12-14 | 中国银联股份有限公司 | A kind of method for building up, device, calculating equipment and the storage medium of intelligence contract |
CN110290108A (en) * | 2019-05-17 | 2019-09-27 | 深圳市网心科技有限公司 | Data processing method, system and relevant device in a kind of block chain network |
CN110458560A (en) * | 2019-07-12 | 2019-11-15 | 阿里巴巴集团控股有限公司 | For carrying out the method and device of transaction verification |
Also Published As
Publication number | Publication date |
---|---|
CN111080292A (en) | 2020-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111062716B (en) | Method and device for generating block chain signature data and block chain transaction initiating system | |
CN111080292B (en) | Method and device for acquiring block chain transaction signature data | |
CN110458560B (en) | Method and apparatus for transaction verification | |
EP3721578B1 (en) | Methods and systems for recovering data using dynamic passwords | |
Lin et al. | A survey of blockchain security issues and challenges. | |
CN111242617B (en) | Method and apparatus for performing transaction correctness verification | |
CN111047324B (en) | Method and apparatus for updating a set of public keys at a blockchain node | |
CN110892434B (en) | Transferring digital ticket based on blockchain network | |
US20200127826A1 (en) | Methods and systems for creating and recovering accounts using dynamic passwords | |
US10951417B2 (en) | Blockchain-based transaction verification | |
CN111212139A (en) | Method and device for updating trust node information | |
EP3808030B1 (en) | Managing blockchain-based centralized ledger systems | |
US10756896B2 (en) | Trustless account recovery | |
CN110888933B (en) | Information providing method, device and system and information acquisition method and device | |
CN111406398B (en) | Managing trust points in an account book system | |
WO2018088475A1 (en) | Electronic authentication method and program | |
CN114266069B (en) | House transaction electronic data sharing system and method based on blockchain technology | |
CN111211876B (en) | Method and device for sending response message aiming at data request and block chain system | |
CN110852887B (en) | Method and device for acquiring transaction processing state in decentralized application cluster | |
CN110827034B (en) | Method and apparatus for initiating a blockchain transaction | |
CN111144894B (en) | UTXO processing method and device | |
CN110839067B (en) | Information providing method and device | |
CN115880088A (en) | Accounting processing method, access server, node server and accounting processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240920 Address after: Room 804, 8th Floor, No. 618 Waima Road, Huangpu District, Shanghai 200001 Patentee after: Ant double chain technology (Shanghai) Co.,Ltd. Country or region after: China Address before: 310000 801-11 section B, 8th floor, 556 Xixi Road, Xihu District, Hangzhou City, Zhejiang Province Patentee before: Alipay (Hangzhou) Information Technology Co.,Ltd. Country or region before: China |