WO2020010700A1 - 票据交易方法、***、计算机设备和存储介质 - Google Patents
票据交易方法、***、计算机设备和存储介质 Download PDFInfo
- Publication number
- WO2020010700A1 WO2020010700A1 PCT/CN2018/106679 CN2018106679W WO2020010700A1 WO 2020010700 A1 WO2020010700 A1 WO 2020010700A1 CN 2018106679 W CN2018106679 W CN 2018106679W WO 2020010700 A1 WO2020010700 A1 WO 2020010700A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- bill
- redemption
- request
- transaction
- Prior art date
Links
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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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
Definitions
- the present application relates to the technical field of bill transactions, and in particular, to a bill transaction method, system, computer equipment, and storage medium.
- a bill is a credit instrument used to reflect the occurrence of claims, debts, transfers and repayments in the flow of money or commodities. It can be used as payment settlement in trade and short-term financing of enterprises.
- the bill acceptance link can facilitate the payment and settlement of the entity's enterprises and meet the needs of short-term capital payments between enterprises.
- Transaction methods represented by endorsement transfers and discounted bills between enterprises can provide convenient financing channels and low-cost funds for the real economy, especially small and medium-sized enterprises.
- the volume of bill business is closely related to macroeconomic development. Through an empirical analysis of bill business and GDP from 2001 to present, it is found that there is a significant positive correlation between bill acceptance balance, acceptance volume, discount volume and real economy indicators.
- the ticket always needs a hidden "third party" role to ensure the safety and reliability of both parties in the transaction.
- the two parties to the transaction actually passed the information interaction and authentication of the PBOC's ECDS system; in paper bill transactions, a third party trusted by the parties to the transaction guarantees the authenticity of the bills. Since most of the bill systems on the market are centralized systems, the data interaction efficiency is low, the authenticity and reliability of the data cannot be guaranteed, and it is easy to cause human tampering with the bill data, which is difficult to find.
- a bill transaction method includes: a client participating in co-maintaining bill data is set as a node on a blockchain system, and the data processing method in the blockchain system is a UTXO model-based blockchain, the block Each said node in the chain system is preset with a private key;
- the node After any of the nodes receives a user-initiated bill transaction request, the node is set as a requester node, the requester node obtains the transaction information input by the user, and signs the transaction information with the private key
- the transaction data set as the UTXO model is sent to the blockchain system, and the blockchain system collects the transaction data into a block of the blockchain;
- any of the requester nodes After any of the requester nodes receives the bill redemption request initiated by the user, it obtains the redemption information input by the user, sends the redemption information to the blockchain system, and the blockchain system receives the redemption information. After the redemption information, a preset smart contract script is called to determine whether the bill content in the redemption information has expired, and a node that issues the bill content is found through the bill content that has expired, and the issuing the The node of the ticket content is set as the issuer node, and the blockchain system feeds back the information of the issuer node to the requester node, and the requester node sends the ticket that has expired through the ticket circulation request Content streaming to issuer nodes;
- the requester node initiates a redemption fund request to the issuer node. After the issuer node receives the redemption fund request, the redemption of the bill is performed, and the redemption completion information is fed back to the requester node to complete the redemption request. Redemption of bills.
- a bill trading system includes:
- a node unit is set up, and clients set up to participate in the joint maintenance of bill data are set up as nodes on the blockchain system, and the data processing method in the blockchain system is a UTXO-based blockchain based on the blockchain system.
- Each said node is preset with a private key;
- the bill transaction unit is configured such that, after any of the nodes receives a user-initiated bill transaction request, the node is set as a requester node, and the requester node obtains the transaction information input by the user, and adopts the transaction information.
- the transaction data set as the UTXO model after the private key is signed is sent to the blockchain system, and the blockchain system records the transaction data into a block of the blockchain;
- the judgment content unit is set such that, after any of the requester nodes receives a bill redemption request initiated by a user, it obtains the redemption information input by the user, and sends the redemption information to the blockchain system. After the blockchain system receives the redemption information, it calls a preset smart contract script to determine whether the bill content in the redemption information has expired, and finds the content of the issued bill content through the expired bill content. Node, the node that issues the content of the ticket is set as the issuer node, the blockchain system feeds back the information of the issuer node to the requester node, and the requester node sends The expired contents of the note are transferred to the issuer node;
- the redemption fund unit is configured such that the requester node initiates a redemption fund request to the issuer node, and after the issuer node receives the redemption fund request, redemption of the bill is performed, and the redemption completion information is fed back to Refer to the requester node to complete the payment of the bill.
- a computer device includes a memory and a processor.
- the memory stores computer-readable instructions.
- the processor causes the processor to perform the following steps:
- Clients participating in the joint maintenance of bill data are set up as nodes on the blockchain system.
- the data processing method in the blockchain system is a blockchain based on the UTXO model.
- Each of the blockchain systems Nodes are preset with private keys;
- the node After any of the nodes receives a user-initiated bill transaction request, the node is set as a requester node, the requester node obtains the transaction information input by the user, and signs the transaction information with the private key
- the transaction data set as the UTXO model is sent to the blockchain system, and the blockchain system collects the transaction data into a block of the blockchain;
- any of the requester nodes After any of the requester nodes receives the bill redemption request initiated by the user, it obtains the redemption information input by the user, sends the redemption information to the blockchain system, and the blockchain system receives the redemption information. After the redemption information, a preset smart contract script is called to determine whether the bill content in the redemption information has expired, and a node that issues the bill content is found through the bill content that has expired, and the issuing the The node of the ticket content is set as the issuer node, and the blockchain system feeds back the information of the issuer node to the requester node, and the requester node sends the ticket that has expired through the ticket circulation request Content streaming to issuer nodes;
- the requester node initiates a redemption fund request to the issuer node. After the issuer node receives the redemption fund request, the redemption of the bill is performed, and the redemption completion information is fed back to the requester node to complete the redemption request. Redemption of bills.
- a storage medium storing computer-readable instructions.
- the one or more processors execute the following steps:
- Clients participating in the joint maintenance of bill data are set up as nodes on the blockchain system.
- the data processing method in the blockchain system is a blockchain based on the UTXO model.
- Each of the blockchain systems Nodes are preset with private keys;
- the node After any of the nodes receives a user-initiated bill transaction request, the node is set as a requester node, the requester node obtains the transaction information input by the user, and signs the transaction information with the private key
- the transaction data set as the UTXO model is sent to the blockchain system, and the blockchain system collects the transaction data into a block of the blockchain;
- any of the requester nodes After any of the requester nodes receives the bill redemption request initiated by the user, it obtains the redemption information input by the user, sends the redemption information to the blockchain system, and the blockchain system receives the redemption information. After the redemption information, a preset smart contract script is called to determine whether the bill content in the redemption information has expired, and a node that issues the bill content is found through the bill content that has expired, and the issuing the The node of the ticket content is set as the issuer node, and the blockchain system feeds back the information of the issuer node to the requester node, and the requester node sends the ticket that has expired through the ticket circulation request Content streaming to issuer nodes;
- the requester node initiates a redemption fund request to the issuer node. After the issuer node receives the redemption fund request, the redemption of the bill is performed, and the redemption completion information is fed back to the requester node to complete the redemption request. Redemption of bills.
- the above-mentioned bill transaction method, device, computer equipment and storage medium, including clients participating in the joint maintenance of bill data, are set up as nodes on the blockchain system.
- the data processing method in the blockchain system is a blockchain based on the UTXO model.
- Each node in the blockchain system is preset with a private key; after any node receives a user-initiated bill transaction request, the node is set as a requester node, and the requester node obtains the transaction information entered by the user, and adopts the transaction information.
- the transaction data set as the UTXO model is sent to the blockchain system, and the blockchain system collects the transaction data into the block of the blockchain; after any requester node receives the bill payment request initiated by the user, Obtain the redemption information entered by the user, and send the redemption information to the blockchain system. After the blockchain system receives the redemption information, it calls a preset smart contract script to determine whether the bill content in the redemption information has expired.
- the node that issued the ticket content is set to the issuer node, and the blockchain
- the information of the issuer node is fed back to the requester node, and the requester node transmits the expired note content to the issuer node through the ticket circulation request; the requester node initiates a payment request to the issuer node, and the issuer node receives After the request for redemption funds, the redemption of the bill is performed, and the information of the redemption completion is fed back to the requester node to complete the redemption of the bill.
- This application makes use of the decentralized characteristics of the blockchain to realize that during the transaction of the bill, neither a third party needs to supervise and verify the information passed by the parties to the transaction, nor does it need a specific physical object to serve as a proof of trust between the two parties.
- the "invisible" transfer of notes between points is realized.
- FIG. 1 is a flowchart of a bill transaction method according to an embodiment of the present application
- FIG. 2 is a flowchart of step S2 in FIG. 1;
- step S3 in FIG. 1 is a flowchart of step S3 in FIG. 1;
- FIG. 4 is a structural diagram of a bill transaction system in an embodiment of the present application.
- FIG. 1 is a flowchart of a bill transaction method according to an embodiment of the application, including the following steps:
- Step S1 setting nodes: Clients participating in the joint maintenance of bill data are set as nodes on the blockchain system.
- the data processing method in the blockchain system is a UTXO-based blockchain.
- Each of the blockchain systems Each node is preset with a private key.
- Blockchain system is a system based on blockchain technology, also known as distributed ledger technology, which is an Internet database technology. Its characteristics are decentralized, open and transparent, allowing every user to participate in maintaining database records.
- Blockchain system mainly includes network layer, contract layer and data layer.
- the blockchain system is a new application model of computer technology such as distributed data storage, point-to-point transmission, consensus mechanism, and encryption algorithms.
- the data layer encapsulates the basic data and basic algorithms such as the underlying data block and related data encryption and timestamps, and the underlying data block is presented in a chain structure, that is, the blockchain is a data block in chronological order A type of chained data structure combined in a sequential way, and a cryptographically guaranteed tamper-proof and unforgeable distributed ledger.
- the contract layer mainly encapsulates various scripts, algorithms and smart contracts, which is the basis of the programmable characteristics of the blockchain. In this step, all the clients participating in the joint maintenance of the bill data are set as a node in the blockchain system to participate in the transaction process of the bill.
- the data processing method of the data layer of the blockchain system is based on the UTXO model.
- the UTXO (Unspent Transaction Outputs) model is the unspent transaction output. It specifies that the input of each new bill transaction must be a certain one. For the unspent output of a transaction, each input also needs to be signed by the private key corresponding to the previous output. Only a "unused" transaction signature can be a valid signature. And for each ticket data, the node will store the current UTXO on the entire blockchain, and the nodes on the entire network will use UTXO and certificates to verify the legitimacy of the new transaction. In this way, nodes do not need to trace the history to verify the legitimacy of new transactions. Therefore, the UTXO model is a core concept of bill transaction generation and verification. The transaction process of a certain bill constitutes a set of chain structure. All legal bill transactions can be traced back to the output of one or more transactions. The source is the ticket issuer, and the end is the current unspent transaction output. All unspent output is the UTXO of the entire blockchain system.
- Step S2 ticket transaction: After any node receives a user-initiated ticket transaction request, the node is set as a requester node, the requester node obtains the transaction information entered by the user, and signs the transaction information with a private key and sets it as a UTXO model transaction
- the data is sent to the blockchain system, which collects the transaction data into the blockchain's blocks. Any node in the blockchain system can receive user-initiated bill transaction requests, and the transaction data can be collected through interaction with the blockchain system.
- the collection process is to generate transaction blocks after the transaction data is generated and store them in a chain structure. A process in the data layer of a blockchain system.
- the ticket transaction request initiated by the user may be any one of a ticket issuing request, a ticket transfer request, or a ticket split request.
- the requester node Prior to inclusion, the requester node also signed the transaction information with a private key to ensure the security and immutability of the data. Because the data layer of the blockchain system uses the UTXO model-based blockchain, after signing the transaction information, the requester node sets the signed transaction information as the UTXO model transaction data according to the data structure of the UTXO model. So that the blockchain system can collect transaction data.
- Step S3 determine the content of the bill: After any requester node receives the bill redemption request initiated by the user, it obtains the redemption information entered by the user, and sends the redemption information to the blockchain system. After the blockchain system receives the redemption information, it calls The preset smart contract script determines whether the bill content in the redemption information has expired. The node that issues the bill content is found by the expired bill content. The node that issues the bill content is set to the issuer node. The blockchain system will The information of the issuer node is fed back to the requester node, and the requester node transmits the expired note content to the issuer node through the ticket transfer request.
- this step also judges the redemption information entered by the user to determine whether the bill content corresponding to the redemption information has expired. Since the bill content usually includes the redemption period, the Compare with the current time of the blockchain system and compare whether the payment period is exceeded. If it is not exceeded, it is judged as the content of the bill that has not expired. If it is exceeded, it is judged as the content of the bill that has expired. The next step is not given to the contents of unexpired bills, and the blockchain system can also feed back to the requesting node the prompts of unexpired and not redeemed bills.
- the contents of the expired notes can be traced back to the source of the blockchain, that is, the issuer node, and the information of the issuer node is fed back to the requester node, and the requester node passes the bill transaction in step S2
- the ticket circulation request in China will transfer the expired ticket content to the issuer node.
- Step S4 Redeeming funds: The requester node initiates a redemption fund request to the issuer node. After the issuer node receives the redemption fund request, it performs the redemption of the bill, and feeds back the redemption completion information to the requester node to complete the redemption of the bill. In the case that the ticket has expired, after the requester node receives the information of the issuer node fed back by the blockchain system, it not only transfers the expired note content to the issuer node, but also initiates a payment request to the issuer node , That is, the payment of the bill. The issuer node completes the specific redemption process of the bill.
- the transaction and redemption of the bill are completed through a decentralized blockchain system.
- multiple parties participate and independently maintain the bill data, which has high credibility. Based on the blockchain system, it can prevent data tampering.
- High security; UTXO model's data record form can trace the entire note source and circulation history.
- step S2 after the node receives a user-initiated bill transaction request, the node is set as a requester node, the requester node obtains the transaction information entered by the user, and the transaction information is signed with the private key and set as the UTXO model.
- the transaction data is sent to the blockchain system, and the blockchain system collects the transaction data into the block of the blockchain, as shown in Figure 2, including:
- Step S201 verify the authority of the bill transaction: the node is set as the requester node, the requester node sends the bill transaction request to the blockchain system, and the blockchain system verifies whether the requester node has the authority of bill transaction. At that time, the blockchain system returns a request to the requesting node to allow the request.
- the blockchain system returns a request to the requesting node to allow the request.
- not every node has the authority to trade bills. Before requesting nodes send transaction information to the blockchain system, they must first verify the authority. Whether any node has a certain permission is determined when the blockchain system sets a client participating in the joint maintenance of bill data as a node in step S1.
- the blockchain system When the client registers on the blockchain system, the blockchain system stores the registration information when the client registers as a certain node, and the registration information includes the node's ticket transaction authority. Permissions include the right to issue notes with the right to issue notes, the right to transfer notes with the right to transfer notes, the right to redeem notes with the right to redeem notes, and the right to view data for the right to view ticket data. Nodes in a blockchain system can have multiple permissions at the same time.
- Step S202 Send transaction data: After the requester node receives the request to allow the request, it sends the acquired transaction information to the blockchain system with the transaction data set as the UTXO model after signing it. After the requester node has the authority to trade the bill and receives the request to allow the request from the blockchain system, it obtains the transaction information entered by the user, and sets the transaction information signature as transaction data and sends it to the blockchain system. Among them, the transaction data is based on the data structure of the UTXO model, as shown in Table 1 below:
- step S203 the transaction data is collected: After receiving the transaction data, the blockchain system collects the transaction data into a block of the blockchain, and broadcasts a verification signal to the entire network, and the verification signal includes the transaction data of the block. After the blockchain system has collected the transaction data, it also broadcasts the entire network to verify the validity of the collected blocks.
- the entire network here refers to all other nodes on the network layer of the entire blockchain system.
- Step S204 verifying the validity of the block: after other nodes in the blockchain system receive the verification signal, the other nodes verify the legitimacy of the source of the transaction data in the block, if it is valid, accept the transaction and feed it back to the blockchain The system accepts the signal, otherwise it will feed back the invalid signal of the blockchain system.
- a signature verification method is used, that is, other nodes use digital certificates to verify whether the signature is from the requester node.
- user A initiates a ticket transfer request.
- the corresponding requester node signs the transaction information of the request with the corresponding private key.
- the requester is used.
- the node's digital certificate to verify the validity of the signature When the blockchain system records the transaction, the requester is used.
- Other nodes also use the digital certificate of the requester node to verify the validity of the signature.
- Step S205 the generation of the recognized block: when the block chain system receives any invalid signal, the block is removed from the block chain, otherwise it is determined that the generation of the block is recognized throughout the network. As long as any of the other nodes in the blockchain system feedback an invalid signal, the blockchain system removes the block from the blockchain. Only when all other nodes feedback and accept the signal, the blockchain system determines that the entire network recognizes the generation of the block, and completes the collection and verification of the block.
- the bill transaction request in step S2 includes any one of a bill issuing request, a bill transfer request, or a bill split request.
- the requester node receives a user-initiated ticket transaction request as a ticket issuance request
- the transaction information obtained by the requester node includes the ticket content, the issue amount, and the ticket target node.
- the ticket target node is the requester node, and the requester node uses the transaction information.
- the transaction data set as the UTXO model is sent to the blockchain system, and the blockchain system collects the transaction data into the block of the blockchain.
- the issue of a ticket is a special permission in the ticket transaction.
- the node with this permission has a node capable of redeeming the ticket.
- the issue process is also a transaction process of the ticket, but it is not necessary to provide the source node of the ticket, that is, the From field is not required.
- the transaction process of the ticket is generated "in a vacuum", so the requester node of the ticket issuing request must have the authority to issue the ticket. For example, when user A issues a ticket with a value of 2,000 yuan as ticket 1, the transaction information is shown in Table 2 below:
- the transaction information obtained by the requester node includes the bill source node, the bill content, the turnover amount, and the bill target node.
- the bill source node is the requester node and the requester node.
- the transaction information is signed with the private key and the transaction data set as the UTXO model is sent to the blockchain system, and the blockchain system records the transaction data in the block of the blockchain.
- the circulation of the bill is the easiest to initiate in the transaction of the bill, and the requester node of the bill circulation request must have the authority of the circulation of the bill. For example, when user A circulates a 2,000-yuan note whose contents are notes 1 to user B, the transaction information is shown in Table 3 below:
- the transaction information obtained by the requester node includes the source node of the bill, the content of the bill, each amount after the split, and the target node for each bill after the split.
- the source node of the note is the requester node, and the requester node sends the transaction information to the blockchain system with the UTXO model after the transaction information is signed by the private key.
- the blockchain system records the transaction data in the blockchain block. . Because the amount of the bill is sometimes large, and the amount to be transferred is very small, a large amount of bills can be split into several small bills by initiating a bill split request.
- the requester node of the ticket split request must have permission to split the ticket.
- the nodes that have the right to transfer the ticket all have the right to split the ticket at the same time.
- user A splits a 2,000-yuan note into ticket 1 and splits it into 1,500 yuan and 500 yuan, of which the 1,500 yuan bill is transferred to user B, and the other 500 yuan bill is still Keep it yourself.
- the transaction information at this time is shown in Table 4 below:
- This embodiment lists several specific requests and corresponding transaction information in the bill transaction request.
- the bill transaction process is combined with the data structure of the UTXO model of the blockchain system. Based on the data structure record form of the UTXO model, the entire traceability can be traced. Note source and turnover history.
- step S3 after the requester node receives the bill redemption request initiated by the user, as shown in FIG. 3, it includes: Step S301, verifying the right of bill redemption: the requester node sends the bill redemption request to the district Blockchain system.
- the blockchain system verifies whether the requester node has the right to redeem the bill.
- the blockchain system returns an instruction to the requester node to allow the request.
- not every node has the authority to redeem the bill. Before the requester node sends the redemption information to the blockchain system, it must first verify the authority.
- Step S302 Sending redemption data: After the requester node receives the request to allow the request, the redemption information is signed with the private key and the redemption data set as the UTXO model is sent to the blockchain system.
- the redemption information includes the bill content and the redemption amount. .
- the requester node After the requester node has the right to redeem the bill and receives the request to allow the request from the blockchain system, it obtains the redemption information entered by the user, and sets the redemption information signature to the redemption data and sends it to the blockchain system.
- step S303 the smart contract script is invoked to determine: After the blockchain system receives the redemption data, it calls a preset smart contract script to read the bill content to determine whether the bill content has expired. If the bill content has not expired, the bill is not The information that cannot be paid due is fed back to the requester node. If it is due, the issuer node that issues the ticket content is found through the content of the expired ticket, and the information of the issuer node is fed back to the requester node.
- the smart contract script encapsulates the read script that reads the contents of the ticket and the judgment script that determines whether the contents of the ticket have expired. By calling the smart contract script, it is easy to read and judge whether the contents of the ticket have expired and will expire. The information of the issuer node corresponding to the content of the ticket is fed back to the requester node.
- Step S304 ticket circulation: the requester node transmits the expired ticket content to the issuer node through the ticket circulation request, and the transaction information in the ticket circulation request includes the note source node, the note content, the turnover amount, the note target node, and the note
- the source node is the requester node
- the note destination node is the issuer node
- the note content is the note content to be redeemed
- the turnover amount is the redemption amount.
- the blockchain system sets permissions, it can be set to a node that has the authority to pay bills, and has the right to transfer notes.
- a requester node having the right to redeem a bill can transfer the expired bill content to the issuer node through a bill transfer request. For example, user B transfers a 2,000 yuan note with the contents of note 1 to user A.
- the transaction information is shown in Table 5 below:
- this embodiment implements the verification of the bill due on the blockchain system by verifying the redemption authority of the bill, judging whether the content of the bill has expired and the circulation of the bill. The transaction process.
- the redemption fund request includes the fund account information of the requester node; when the issuer node receives the redemption fund request and performs the redemption of the bill, the method includes: The system interacts with the interactive interface. The issuer node connects to the financial system through the interactive interface, and initiates a redemption request to the financial system. The redemption request contains the fund account information. The issuer node receives the transfer information feedback from the financial system, and the issuer node will pay. The completed information is fed back to the requester node to complete the payment of the bill.
- the blockchain system is preset with an interactive interface connected to a third-party system.
- the third-party system includes external financial systems, such as Alipay system, WeChat system, and banking system, which have actual currency or asset payment systems.
- the issuer node jumps into the financial system through the interactive interface, and completes the payment of the bill through the financial system. This embodiment can complete the function of direct redemption online, and the redemption process is simple and convenient.
- the redemption fund request includes the fund account information of the requester node; when the issuer node receives the redemption fund request and performs the redemption of the bill, the method includes: the issuer node passes the preset man-machine The interactive interface displays the fund account information on the human-machine interactive interface; the issuer node receives the redemption completion information input by the user through the human-machine interactive interface, and feeds back the completed redemption information to the requester node to complete the payment of the bill.
- the issuer node can preset a human-computer interaction interface, and display the fund account information of the requester node through the human-machine interaction interface.
- the issuer node can complete the payment of the bill by offline transfer. This embodiment In the case where online payment cannot be performed directly, it is provided as an alternative to the issuer node to complete the payment of the bill.
- the issuer node after the redemption of the bill is completed, the issuer node also identifies the redeemed bill content as a redeemed state, including: after the issuer node receives the bill modification status request initiated by the user, it obtains the modification information entered by the user Send the ticket modification status request to the blockchain system.
- the blockchain system verifies whether the issuer node has the authority to issue the ticket. When the ticket issuer has the authority, the blockchain system returns an instruction to the issuer node to allow the request.
- the issuer node sends the modification information with the private key signature and the modification data set as the UTXO model to the blockchain system.
- the modification information includes the note source node, the note content, and the amount of the modification.
- the note source node is the requester node.
- the blockchain system After the blockchain system receives the modified data, it is included in the block of the blockchain.
- the content of the bill has expired and the issuer node has completed the redemption of the bill
- the blockchain of the blockchain system the corresponding blockchain of the bill content has completed the record of the entire process from issue to redemption. Therefore, in this embodiment, a process of identifying the status of the bills that have been redeemed is added to inform other nodes in the blockchain system that the bills have been redeemed. For example, when user A identifies the content of a 2,000 yuan bill as bill 1 as the redeemed state, the modified data is shown in Table 6 below:
- a bill transaction system includes the following units: a node unit is set up, and a client set up to participate in the joint maintenance of bill data is set up as a node and a block on the blockchain system.
- the data processing method in the chain system is a blockchain based on the UTXO model.
- Each node in the blockchain system is preset with a private key.
- the bill transaction unit is set to any node that receives a bill transaction request initiated by the user.
- the node is set as the requester node, the requester node obtains the transaction information entered by the user, sends the transaction information to the blockchain system with the UTXO model transaction data signed by the private key, and the blockchain system collects the transaction data into the district In the block of the blockchain, determine the content unit of the bill, and set it to any requester node that receives the bill redemption request initiated by the user, obtains the redemption information entered by the user, and sends the redemption information to the blockchain system, the blockchain system After receiving the redemption information, call the preset smart contract script to determine whether the bill content in the redemption information has expired.
- the blockchain system feeds back the information of the issuer node to the requester node, and the requester node passes the ticket circulation request and will expire
- the contents of the bill are transferred to the issuer node; the redemption fund unit is set as the requester node initiates a redemption fund request to the issuer node. After the redeem node receives the redemption fund request, the redemption of the bill is performed and the redemption completion information is fed back to The requester node completes the payment of the bill.
- a computer device which includes a memory and a processor.
- the memory stores computer-readable instructions.
- the processor causes the processor to execute the bill transaction method in the foregoing embodiments. Steps.
- a storage medium storing computer-readable instructions.
- the one or more processors are caused to execute the bill transaction method in the foregoing embodiments. Steps.
- the storage medium may be a non-volatile storage medium.
- the program may be stored in a computer-readable storage medium.
- the storage medium may include: Read-only memory (ROM, Read Only Memory), random access memory (RAM, Random Access Memory), magnetic disks or optical disks, etc.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种票据交易方法、***、计算机设备和存储介质。其中票据交易方法包括:客户端在区块链***上设置成为节点,请求节点接收到票据交易请求后,采用私钥签名交易信息后设置为交易数据发送给区块链***,区块链***将交易数据收录到区块链的区块中;请求方节点接收到票据兑付请求后,将兑付信息发送给区块链***,区块链***收到兑付信息后,将已到期的票据内容对应的颁发方节点的信息反馈给请求方节点,请求方节点将已到期的票据内容流转给颁发方节点,颁发方节点进行票据的兑付。所述方法借助区块链的去中心化特点,实现票据的安全交易。
Description
本申请要求于2018年07月11日提交中国专利局、申请号为201810757387.3、发明名称为“票据交易方法、***、计算机设备和存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及票据交易技术领域,尤其涉及一种票据交易方法、***、计算机设备和存储介质。
票据是在货币或商品流动中为体现债权、债务的发生、转移和偿付而使用的一种信用工具,可用作贸易中的支付结算和企业短期融资使用。票据承兑环节能为实体的企业支付结算提供便利,满足企业间短期资金支付的需要。以企业间的背书转让和票据贴现为代表的交易方式,能为实体经济特别是中小企业提供便捷的融资渠道和低成本资金。票据业务体量与宏观经济发展关系密切,通过对2001年至今票据业务与GDP的实证分析发现,票据承兑余额、承兑量、贴现量与实体经济指标的存在显著的正相关关系。
但是票据在传递中一直需要隐藏的“第三方”角色来确保交易双方的安全可靠。比如在电子票据交易中,交易双方其实是通过了人行ECDS***的信息交互和认证;纸质票据交易中,交易双方信任的第三方保证票据实物的真伪性。由于市面上的票据***多为中心化***,数据交互效率低,数据真实性和可靠性得不到保证,容易造成人为篡改票据数据,而难以发现的问题。
发明内容
有鉴于此,有必要针对票据在传递过程中需要借助第三方保证交易的安全可靠的问题,提供一种票据交易方法、***、计算机设备和存储介质。
一种票据交易方法,包括:参与共同维护票据数据的客户端在区块链***上设置成为节点,所述区块链***中的数据处理方式为基于UTXO模型的区块链,所述区块链***中的每个所述节点均预设有私钥;
任一所述节点接收到用户发起的票据交易请求后,所述节点设置为请求方节点,所述请求方节点获取所述用户输入的交易信息,将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;
任一所述请求方节点接收到用户发起的票据兑付请求后,获取所述用户输入的兑付信息,将所述兑付信息发送给所述区块链***,所述区块链***收到 所述兑付信息后,调用预设的智能合约脚本,判断所述兑付信息中的票据内容是否已到期,通过已到期的所述票据内容查找到颁发所述票据内容的节点,所述颁发所述票据内容的节点设置为颁发方节点,所述区块链***将所述颁发方节点的信息反馈给所述请求方节点,所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点;
所述请求方节点向所述颁发方节点发起兑付资金请求,所述颁发方节点接收到所述兑付资金请求后,进行票据的兑付,并将兑付完成的信息反馈给所述请求方节点,完成票据的兑付。
一种票据交易***,包括:
设置节点单元,设置为参与共同维护票据数据的客户端在区块链***上设置成为节点,所述区块链***中的数据处理方式为基于UTXO模型的区块链,所述区块链***中的每个所述节点均预设有私钥;
票据交易单元,设置为任一所述节点接收到用户发起的票据交易请求后,所述节点设置为请求方节点,所述请求方节点获取所述用户输入的交易信息,将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;
判断票据内容单元,设置为任一所述请求方节点接收到用户发起的票据兑付请求后,获取所述用户输入的兑付信息,将所述兑付信息发送给所述区块链***,所述区块链***收到所述兑付信息后,调用预设的智能合约脚本,判断所述兑付信息中的票据内容是否已到期,通过已到期的所述票据内容查找到颁发所述票据内容的节点,所述颁发所述票据内容的节点设置为颁发方节点,所述区块链***将所述颁发方节点的信息反馈给所述请求方节点,所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点;
兑付资金单元,设置为所述请求方节点向所述颁发方节点发起兑付资金请求,所述颁发方节点接收到所述兑付资金请求后,进行票据的兑付,并将兑付完成的信息反馈给所述请求方节点,完成票据的兑付。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行以下步骤:
参与共同维护票据数据的客户端在区块链***上设置成为节点,所述区块链***中的数据处理方式为基于UTXO模型的区块链,所述区块链***中的每个所述节点均预设有私钥;
任一所述节点接收到用户发起的票据交易请求后,所述节点设置为请求方节点,所述请求方节点获取所述用户输入的交易信息,将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;
任一所述请求方节点接收到用户发起的票据兑付请求后,获取所述用户输入的兑付信息,将所述兑付信息发送给所述区块链***,所述区块链***收到所述兑付信息后,调用预设的智能合约脚本,判断所述兑付信息中的票据内容是否已到期,通过已到期的所述票据内容查找到颁发所述票据内容的节点,所述颁发所述票据内容的节点设置为颁发方节点,所述区块链***将所述颁发方节点的信息反馈给所述请求方节点,所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点;
所述请求方节点向所述颁发方节点发起兑付资金请求,所述颁发方节点接收到所述兑付资金请求后,进行票据的兑付,并将兑付完成的信息反馈给所述请求方节点,完成票据的兑付。
一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:
参与共同维护票据数据的客户端在区块链***上设置成为节点,所述区块链***中的数据处理方式为基于UTXO模型的区块链,所述区块链***中的每个所述节点均预设有私钥;
任一所述节点接收到用户发起的票据交易请求后,所述节点设置为请求方节点,所述请求方节点获取所述用户输入的交易信息,将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;
任一所述请求方节点接收到用户发起的票据兑付请求后,获取所述用户输入的兑付信息,将所述兑付信息发送给所述区块链***,所述区块链***收到所述兑付信息后,调用预设的智能合约脚本,判断所述兑付信息中的票据内容是否已到期,通过已到期的所述票据内容查找到颁发所述票据内容的节点,所述颁发所述票据内容的节点设置为颁发方节点,所述区块链***将所述颁发方节点的信息反馈给所述请求方节点,所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点;
所述请求方节点向所述颁发方节点发起兑付资金请求,所述颁发方节点接收到所述兑付资金请求后,进行票据的兑付,并将兑付完成的信息反馈给所述请求方节点,完成票据的兑付。
上述票据交易方法、装置、计算机设备和存储介质,包括参与共同维护票据数据的客户端在区块链***上设置成为节点,区块链***中的数据处理方式为基于UTXO模型的区块链,区块链***中的每个节点均预设有私钥;任一节点接收到用户发起的票据交易请求后,节点设置为请求方节点,请求方节点获取用户输入的交易信息,将交易信息采用私钥签名后设置为UTXO模型的交易数据发送给区块链***,区块链***将交易数据收录到区块链的区块中;任一请求方节点接收到用户发起的票据兑付请求后,获取用户输入的兑付信息,将兑付 信息发送给区块链***,区块链***收到兑付信息后,调用预设的智能合约脚本,判断兑付信息中的票据内容是否已到期,通过已到期的票据内容查找到颁***据内容的节点,颁***据内容的节点设置为颁发方节点,区块链***将颁发方节点的信息反馈给请求方节点,请求方节点通过票据流转请求,将已到期的票据内容流转给颁发方节点;请求方节点向颁发方节点发起兑付资金请求,颁发方节点接收到兑付资金请求后,进行票据的兑付,并将兑付完成的信息反馈给请求方节点,完成票据的兑付。本申请借助区块链的去中心化特点,实现票据在交易过程中,既不需要第三方对交易双方价值传递的信息做监督和验证,也不需要特定的实物作为连接双方取得信任的证明,实现了票据在点对点之间的“无形”传递。
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。
图1为本申请一个实施例中的票据交易方法的流程图;
图2为图1中步骤S2的流程图;
图3为图1中步骤S3的流程图;
图4为本申请一个实施例中的票据交易***的结构图。
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
图1为本申请一个实施例中的票据交易方法的流程图,包括如下步骤:
步骤S1,设置节点:参与共同维护票据数据的客户端在区块链***上设置成为节点,区块链***中的数据处理方式为基于UTXO模型的区块链,区块链***中的每个节点均预设有私钥。区块链***是一种基于区块链技术的***,也被称为分布式账本技术,是一种互联网数据库技术。其特点是去中心化、公开透明,让每个用户均可参与维护数据库记录。区块链***主要包括网络层、合约层和数据层等。区块链***是分布式数据存储、点对点传输、共识机制、加 密算法等计算机技术的新型应用模式。其中,数据层封装了底层数据区块以及相关的数据加密和时间戳等基础数据和基本算法,而底层数据区块以链式结构呈现,即区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。合约层主要封装各类脚本、算法和智能合约,是区块链可编程特性的基础。本步骤将参与共同维护票据数据的客户端均设为区块链***中的某一节点,参与票据的交易过程。区块链***的数据层的数据处理方式是采用基于UTXO模型的区块链,UTXO(Unspent Transaction Outputs)模型是未花费的交易输出,规定了每一笔新的票据交易的输入必须是某笔交易未花费的输出,每一笔输入同时也需要上一笔输出所对应的私钥进行签名,只有对“尚未使用过”的交易签名才能是有效签名。并且对于每个票据数据,节点都会存储当前整个区块链上的UTXO,整个网络上的节点通过UTXO及证书来验证新交易的合法性。这样,节点不需要追溯历史就可以验证新交易的合法性。因此UTXO模型是票据交易生成及验证的一个核心概念,某一票据的交易过程构成了一组链式结构,所有合法的票据交易都可以追溯到前向一个或多个交易的输出,这些链条的源头都是票据颁发方,末尾则是当前未花费的交易输出,所有的未花费的输出即整个区块链***的UTXO。
步骤S2,票据交易:任一节点接收到用户发起的票据交易请求后,节点设置为请求方节点,请求方节点获取用户输入的交易信息,将交易信息采用私钥签名后设置为UTXO模型的交易数据发送给区块链***,区块链***将交易数据收录到区块链的区块中。区块链***中的任一节点均可以接收用户发起的票据交易请求,通过与区块链***的交互实现交易数据的收录,收录过程即是将交易数据生成区块后根据链式结构存储在区块链***的数据层中的过程。其中,用户发起的票据交易请求可以是票据颁发请求、票据流转请求或票据拆分请求中的任意一项。在收录前,请求方节点还对交易信息采用私钥签名,以保证数据的安全和不可篡改。由于区块链***的数据层采用的是基于UTXO模型的区块链,因此在对交易信息签名后,请求方节点根据UTXO模型的数据结构,将签名后的交易信息设置为UTXO模型的交易数据,以便于区块链***将交易数据收录。
步骤S3,判断票据内容:任一请求方节点接收到用户发起的票据兑付请求后,获取用户输入的兑付信息,将兑付信息发送给区块链***,区块链***收到兑付信息后,调用预设的智能合约脚本,判断兑付信息中的票据内容是否已到期,通过已到期的票据内容查找到颁***据内容的节点,颁***据内容的节点设置为颁发方节点,区块链***将颁发方节点的信息反馈给请求方节点,请求方节点通过票据流转请求,将已到期的票据内容流转给颁发方节点。由于票据在未到期之前无法兑付的特点,本步骤还对用户输入的兑付信息进行判断,判断兑付信息对应的票据内容是否已到期,由于票据内容通常都包含有兑付期 限,因此根据兑付期限与区块链***的当前时间进行比较,比较是否超过兑付期限,如未超过,则判断为未到期的票据内容,如超过,则判断为已到期的票据内容。对未到期的票据内容不予下一步动作,区块链***也可以对未到期的票据内容,反馈给请求方节点票据未到期、不予兑付的提示。对已到期的票据内容,根据UTXO模型的数据结构,可以追溯到区块链的源头,即颁发方节点,并将颁发方节点的信息反馈给请求方节点,请求方节点通过步骤S2票据交易中的票据流转请求将已到期的票据内容流转给颁发方节点。
步骤S4,兑付资金:请求方节点向颁发方节点发起兑付资金请求,颁发方节点接收到兑付资金请求后,进行票据的兑付,并将兑付完成的信息反馈给请求方节点,完成票据的兑付。在票据已到期的情况下,请求方节点接收到区块链***反馈的颁发方节点的信息后,不仅将已到期的票据内容流转给颁发方节点,还向颁发方节点发起兑付资金请求,即票据的兑付。颁发方节点完成具体的票据的兑付过程,本申请对于票据的兑付可以有两种方式,通过外部财务***直接进行转账来实现,和通过颁发方直接线下转账实现。无论是那种兑付方式,颁发方节点完成兑付后,均将兑付完成的信息反馈给请求方节点,至此完成票据的兑付。
本实施例将票据的交易和兑付均通过去中心化的区块链***完成,票据在交易过程中,多方参与,独立维护票据数据,可信度高;基于区块链***,能防止数据篡改,安全性高;UTXO模型的数据记录形式,可追溯整个票据来源和流转历史记录。
在一个实施例中,步骤S2,节点接收到用户发起的票据交易请求后,节点设置为请求方节点,请求方节点获取用户输入的交易信息,将交易信息采用私钥签名后设置为UTXO模型的交易数据发送给区块链***,区块链***将交易数据收录到区块链的区块中,如图2所示,包括:
步骤S201,验证票据交易的权限:节点设置为请求方节点,请求方节点将票据交易请求发送给区块链***,区块链***验证请求方节点是否拥有票据交易的权限,当拥有票据交易权限时,区块链***向请求方节点返回允许请求的指令。在区块链***中的众多节点中,并不是每个节点均具有票据交易的权限,在请求方节点对交易信息发送给区块链***前,首先要进行权限的验证。任一节点是否具有某一权限是在步骤S1中区块链***将参与共同维护票据数据的客户端设置为节点时确定的。客户端在区块链***上进行注册时,区块链***存储客户端注册成为某一节点时的注册信息,注册信息中包含有节点的票据交易的权限。权限包括拥有颁***据权利的票据颁发权限、拥有流转票据权利的票据流转权限、拥有兑付票据权利的票据兑付权限和用于查看票据数据权利的查看数据权限。区块链***中的节点可以同时具有多种权限。
步骤S202,发送交易数据:请求方节点接收到允许请求的指令后,将获取 的交易信息采用私钥签名后设置为UTXO模型的交易数据发送给区块链***。请求方节点具有票据交易的权限且接收到区块链***反馈的允许请求的指令后,获取用户输入的交易信息,并将交易信息签名设置为交易数据后发送给区块链***。其中,交易数据是基于UTXO模型的数据结构,如下表1所示:
表1
步骤S203,交易数据收录:区块链***接收到交易数据后,收录到区块链的区块中,并向全网广播验证信号,验证信号中包含有区块的交易数据。区块链***在对交易数据完成收录后,还进行全网广播,验证收录的区块的有效性。此处的全网是指整个区块链***的网络层上的所有其他节点。
步骤S204,验证区块的有效性:区块链***中的其他节点接收到验证信号后,其他节点验证该区块中交易数据来源的合法性,如果合法则接受交易,并反馈给区块链***接受信号,否则反馈给区块链***无效信号。验证一笔交易数据来源的合法性时采用验证签名的方式,即其他节点采用数字证书验证该签名是否是请求方节点的。例如,用户A发起一笔票据流转请求,对应的请求方节点在生成请求的过程中,对这笔请求的交易信息用对应私钥进行签名,当区块链***收录这笔交易时用请求方节点的数字证书来验证该签名的有效性。其他节点也用请求方节点的数字证书来验证该签名的有效性。
步骤S205,认可区块的产生:当区块链***接收到任一无效信号时,将区块从区块链中去除,否则认定为全网都认可区块的产生。只要区块链***中的其他节点中的任一一个节点反馈无效信号,则区块链***将区块从区块链中去除。只有全部的其他节点均反馈接受信号,区块链***才认定为全网都认可区块的产生,完成区块的收录和验证。
本实施例通过对票据交易的权限验证、区块的收录、区块的验证,实现全网其他节点共同参与票据的交易过程,防止数据篡改,实现安全可靠的票据交易目的。
在一个实施例中,步骤S2中票据交易请求包括票据颁发请求、票据流转请求或票据拆分请求中的任意一项。请求方节点接收到用户发起的票据交易请求为票据颁发请求时,请求方节点获取的交易信息包括票据内容、颁发金额和票据目标节点,票据目标节点是请求方节点,请求方节点将交易信息采用私钥签名后设置为UTXO模型的交易数据发送给区块链***,区块链***将交易数据收录到区块链的区块中。票据的颁发是票据交易中的一种特殊权限,此权限的节点具有能够对票据进行兑付的节点,颁发过程也是一种票据的交易过程,但是不需要提供票据来源节点,即不需要提供From字段,票据的交易过程是“凭空” 产生的,因而票据颁发请求的请求方节点必须是拥有票据颁发的权限。例如,用户A颁发一张2000元的票据内容为票据1的票据时,交易信息如下表2所示:
表2
请求方节点接收到用户发起的票据交易请求为票据流转请求时,请求方节点获取的交易信息包括票据来源节点、票据内容、流转金额、票据目标节点,票据来源节点是请求方节点,请求方节点将交易信息采用私钥签名后设置为UTXO模型的交易数据发送给区块链***,区块链***将交易数据收录到区块链的区块中。票据的流转是票据交易中的最容易发起的,票据流转请求的请求方节点必须是拥有票据流转的权限。例如,用户A向用户B流转一张2000元的票据内容为票据1的票据时,交易信息如下表3所示:
表3
请求方节点接收到用户发起的票据交易请求为票据拆分请求时,请求方节点获取的交易信息包括票据来源节点、票据内容、拆分后的每笔金额、拆分后的每笔票据目标节点,票据来源节点是请求方节点,请求方节点将交易信息采用私钥签名后设置为UTXO模型的交易数据发送给区块链***,区块链***将交易数据收录到区块链的区块中。由于票据中的金额有时会较大,而需要流转的金额又很小时,可以通过发起票据拆分请求,将大额的票据拆分成若干小额票据。票据拆分请求的请求方节点必须是拥有票据拆分的权限。由于票据拆分请求是票据流转请求的一种特殊情况,因此通过具有票据流转的权限的节点均同时具有票据拆分的权限。例如,用户A将一张2000元的票据内容为票据1的票据进行拆分,拆分为1500元和500元的金额,其中1500元金额的票据流转给用户B,另外500元金额的票据仍然自己保留,此时的交易信息如下表4所示:
表4
本实施例列举了票据交易请求中的几种具体请求及对应的交易信息,将票据交易过程与区块链***的UTXO模型的数据结构进行结合,基于UTXO模型的数据结构记录形式,可追溯整个票据来源和流转历史记录。
在一个实施例中,步骤S3中,请求方节点接收到用户发起的票据兑付请求后,如图3所示,包括:步骤S301,验证票据兑付的权限:请求方节点将票据兑付请求发送给区块链***,区块链***验证请求方节点是否拥有票据兑付的权限,当拥有票据兑付权限时,区块链***向请求方节点返回允许请求的指令。在区块链***中的众多节点中,并不是每个节点均具有票据兑付的权限,在请求方节点对兑付信息发送给区块链***前,首先要进行权限的验证。
步骤S302,发送兑付数据:请求方节点接收到允许请求的指令后,将兑付信息采用私钥签名后设置为UTXO模型的兑付数据发送给区块链***,兑付信息中包含有票据内容和兑付金额。请求方节点具有票据兑付的权限且接收到区块链***反馈的允许请求的指令后,获取用户输入的兑付信息,并将兑付信息签名设置为兑付数据后发送给区块链***。
步骤S303,调用智能合约脚本进行判断:区块链***接收到兑付数据后,调用预设的智能合约脚本,读取票据内容,判断票据内容是否已到期,若没有到期,则将票据未到期无法兑付的信息反馈给请求方节点,若到期,则通过已到期的票据内容查找到颁***据内容的颁发方节点,并将颁发方节点的信息反馈给请求方节点。智能合约脚本中封装了读取票据内容的读取脚本和判断票据内容是否已到期的判断脚本,通过调用智能合约脚本,可以容易读取并判断票据内容是否已到期,并将已到期的票据内容对应的颁发方节点的信息反馈给请求方节点。
步骤S304,票据流转:请求方节点通过票据流转请求,将已到期的票据内容流转给颁发方节点,票据流转请求中的交易信息包括票据来源节点、票据内容、流转金额、票据目标节点,票据来源节点是请求方节点,票据目标节点是颁发方节点,票据内容是将要兑付的票据内容,流转金额是兑付金额。区块链***在对权限设置时,可以设置为具有票据兑付的权限的节点,同时具有票据流转的权限。具有票据兑付的权限的请求方节点可以通过票据流转请求将已到期的票据内容流转给颁发方节点。例如,用户B将一张2000元的票据内容为票据1的票据流转给用户A,交易信息如下表5所示:
表5
由于票据在未到期之前无法兑付的特点,本实施例通过对票据兑付权限的验证、票据内容是否已到期的判断和票据的流转,实现了对已到期票据在区块链***上的交易过程。
在一个实施例中,步骤S4中,兑付资金请求中包含请求方节点的资金账号信息;颁发方节点接收到兑付资金请求后,进行票据的兑付时,包括:区块链 ***预设有与财务***进行交互的交互接口,颁发方节点通过交互接口连接财务***,向财务***发起兑付请求,兑付请求中包含有资金账号信息;颁发方节点接收财务***反馈的完成转账信息,颁发方节点将兑付完成的信息反馈给请求方节点,完成票据的兑付。区块链***预设有与第三方***连接的交互接口,第三方***包括外部的财务***,比如支付宝***、微信***、银行***等具有实际货币或资产兑付的***。颁发方节点通过交互接口跳转到财务***中,通过财务***完成票据的兑付。本实施例可以完成线上直接兑付的功能,兑付过程简单方便。
在一个实施例中,步骤S4中,兑付资金请求中包含请求方节点的资金账号信息;颁发方节点接收到兑付资金请求后,进行票据的兑付时,包括:颁发方节点通过预设的人机交互界面,将资金账号信息在人机交互界面进行展示;颁发方节点通过人机交互界面接收用户输入的兑付完成的信息,并将兑付完成的信息反馈给请求方节点,完成票据的兑付。在区块链***中,颁发方节点可预设有人机交互界面,通过人机交互界面展示请求方节点的资金账号信息,颁发方节点可以通过线下转账的方式完成票据的兑付,本实施例可以在线上无法直接兑付的情况下,作为备选方案提供给颁发方节点完成票据的兑付。
在一个实施例中,完成票据的兑付后,颁发方节点还将已兑付的票据内容标识为已兑付状态,包括:颁发方节点接收到用户发起的票据修改状态请求后,获取用户输入的修改信息,将票据修改状态请求发送给区块链***,区块链***验证颁发方节点是否拥有票据颁发的权限,当拥有该票据颁发权限时,区块链***向颁发方节点返回允许请求的指令。颁发方节点将修改信息采用私钥签名后设置为UTXO模型的修改数据发送给区块链***,修改信息中包含票据来源节点、票据内容、修改金额,票据来源节点是请求方节点。区块链***接收到修改数据后,收录到区块链的区块中。当票据内容为已到期状态,且颁发方节点完成票据的兑付后,在区块链***的区块链中,此票据内容对应的区块链已完成从颁发到兑付的整个过程的记录,因此本实施例增加了对已完成兑付的票据内容进行标识状态的过程,告知区块链***中的其他节点,此票据内容已完成兑付。例如,用户A将一张2000元的票据内容为票据1的标识为已兑付状态时,修改数据如下表6所示:
表6
在一个实施例中,提出了一种票据交易***,如图4所示,包括如下单元:设置节点单元,设置为参与共同维护票据数据的客户端在区块链***上设置成为节点,区块链***中的数据处理方式为基于UTXO模型的区块链,区块链*** 中的每个节点均预设有私钥;票据交易单元,设置为任一节点接收到用户发起的票据交易请求后,节点设置为请求方节点,请求方节点获取用户输入的交易信息,将交易信息采用私钥签名后设置为UTXO模型的交易数据发送给区块链***,区块链***将交易数据收录到区块链的区块中;判断票据内容单元,设置为任一请求方节点接收到用户发起的票据兑付请求后,获取用户输入的兑付信息,将兑付信息发送给区块链***,区块链***收到兑付信息后,调用预设的智能合约脚本,判断兑付信息中的票据内容是否已到期,通过已到期的票据内容查找到颁***据内容的节点,颁***据内容的节点设置为颁发方节点,区块链***将颁发方节点的信息反馈给请求方节点,请求方节点通过票据流转请求,将已到期的票据内容流转给颁发方节点;兑付资金单元,设置为请求方节点向颁发方节点发起兑付资金请求,颁发方节点接收到兑付资金请求后,进行票据的兑付,并将兑付完成的信息反馈给请求方节点,完成票据的兑付。
在一个实施例中,提出了一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行上述各实施例里票据交易方法中的步骤。
在一个实施例中,提出了一种存储有计算机可读指令的存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述各实施例里票据交易方法中的步骤。其中,存储介质可以为非易失性存储介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请一些示例性实施例,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (20)
- 一种票据交易方法,包括:参与共同维护票据数据的客户端在区块链***上设置成为节点,所述区块链***中的数据处理方式为基于UTXO模型的区块链,所述区块链***中的每个所述节点均预设有私钥;任一所述节点接收到用户发起的票据交易请求后,所述节点设置为请求方节点,所述请求方节点获取所述用户输入的交易信息,将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;任一所述请求方节点接收到用户发起的票据兑付请求后,获取所述用户输入的兑付信息,将所述兑付信息发送给所述区块链***,所述区块链***收到所述兑付信息后,调用预设的智能合约脚本,判断所述兑付信息中的票据内容是否已到期,通过已到期的所述票据内容查找到颁发所述票据内容的节点,所述颁发所述票据内容的节点设置为颁发方节点,所述区块链***将所述颁发方节点的信息反馈给所述请求方节点,所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点;所述请求方节点向所述颁发方节点发起兑付资金请求,所述颁发方节点接收到所述兑付资金请求后,进行票据的兑付,并将兑付完成的信息反馈给所述请求方节点,完成票据的兑付。
- 根据权利要求1所述的票据交易方法,其中,所述节点接收到所述用户发起的票据交易请求后,所述节点设置为请求方节点,所述请求方节点获取所述用户输入的交易信息,将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中,包括:所述节点设置为请求方节点,所述请求方节点将所述票据交易请求发送给所述区块链***,所述区块链***验证所述请求方节点是否拥有票据交易的权限,当拥有票据交易权限时,所述区块链***向所述请求方节点返回允许请求的指令;所述请求方节点接收到所述允许请求的指令后,将获取的所述交易信息采用私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***;所述区块链***接收到所述交易数据后,收录到所述区块链的区块中,并向全网广播验证信号,所述验证信号中包含有所述区块的交易数据;所述区块链***中的其他节点接收到所述验证信号后,所述其他节点验证该区块中交易数据来源的合法性,如果合法则接受交易,并反馈给所述区块链***接受信号,否则反馈给所述区块链***无效信号;当所述区块链***接收到任一无效信号时,将所述区块从所述区块链中去除,否则认定为全网都认可所述区块的产生。
- 根据权利要求1所述的票据交易方法,其中,所述票据交易请求包括票据颁发请求、票据流转请求或票据拆分请求中的任意一项;所述请求方节点接收到用户发起的所述票据交易请求为票据颁发请求时,所述请求方节点获取的所述交易信息包括票据内容、颁发金额和票据目标节点,所述票据目标节点是请求方节点,所述请求方节点将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;所述请求方节点接收到用户发起的所述票据交易请求为票据流转请求时,所述请求方节点获取的所述交易信息包括票据来源节点、票据内容、流转金额、票据目标节点,所述票据来源节点是请求方节点,所述请求方节点将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;所述请求方节点接收到用户发起的所述票据交易请求为票据拆分请求时,所述请求方节点获取的所述交易信息包括票据来源节点、票据内容、拆分后的每笔金额、拆分后的每笔票据目标节点,所述票据来源节点是请求方节点,所述请求方节点将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中。
- 根据权利要求1所述的票据交易方法,其中,所述请求方节点接收到所述用户发起的票据兑付请求后,包括:所述请求方节点将票据兑付请求发送给区块链***,所述区块链***验证所述请求方节点是否拥有票据兑付的权限,当拥有票据兑付权限时,所述区块链***向所述请求方节点返回允许请求的指令;所述请求方节点接收到所述允许请求的指令后,将所述兑付信息采用私钥签名后设置为所述UTXO模型的兑付数据发送给所述区块链***,所述兑付信息中包含有票据内容和兑付金额;所述区块链***接收到所述兑付数据后,调用预设的智能合约脚本,读取所述票据内容,判断所述票据内容是否已到期,若没有到期,则将票据未到期无法兑付的信息反馈给所述请求方节点,若到期,则通过已到期的票据内容查找到颁发所述票据内容的颁发方节点,并将所述颁发方节点的信息反馈给所述请求方节点;所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点,所述票据流转请求中的交易信息包括票据来源节点、票据内容、流转金额、票据目标节点,所述票据来源节点是所述请求方节点,所述票据目标节点是所述颁发方节点,所述票据内容是将要兑付的所述票据内容,所述流转金额是所述兑付金额。
- 根据权利要求1所述的票据交易方法,其中,所述兑付资金请求中包含所述请求方节点的资金账号信息;所述颁发方节点接收到所述兑付资金请求后,进行票据的兑付时,包括:所述区块链***预设有与财务***进行交互的交互接口,所述颁发方节点通过所述交互接口连接所述财务***,向所述财务***发起兑付请求,所述兑付请求中包含有所述资金账号信息;所述颁发方节点接收所述财务***反馈的完成转账信息,所述颁发方节点将兑付完成的信息反馈给所述请求方节点,完成票据的兑付。
- 根据权利要求1所述的票据交易方法,其中,所述兑付资金请求中包含所述请求方节点的资金账号信息;所述颁发方节点接收到所述兑付资金请求后,进行票据的兑付时,包括:所述颁发方节点通过预设的人机交互界面,将所述资金账号信息在所述人机交互界面进行展示;所述颁发方节点通过所述人机交互界面接收用户输入的兑付完成的信息,并将所述兑付完成的信息反馈给所述请求方节点,完成票据的兑付。
- 根据权利要求1所述的票据交易方法,其中,所述完成票据的兑付后,所述颁发方节点还将已兑付的所述票据内容标识为已兑付状态,包括:所述颁发方节点接收到用户发起的票据修改状态请求后,获取所述用户输入的修改信息,将所述票据修改状态请求发送给所述区块链***,所述区块链***验证所述颁发方节点是否拥有票据颁发的权限,当拥有该票据颁发权限时,所述区块链***向所述颁发方节点返回允许请求的指令;所述颁发方节点将所述修改信息采用私钥签名后设置为所述UTXO模型的修改数据发送给所述区块链***,所述修改信息中包含票据来源节点、票据内容、修改金额,所述票据来源节点是所述请求方节点;所述区块链***接收到所述修改数据后,收录到所述区块链的区块中。
- 一种票据交易***,包括:设置节点单元,设置为参与共同维护票据数据的客户端在区块链***上设置成为节点,所述区块链***中的数据处理方式为基于UTXO模型的区块链,所述区块链***中的每个所述节点均预设有私钥;票据交易单元,设置为任一所述节点接收到用户发起的票据交易请求后,所述节点设置为请求方节点,所述请求方节点获取所述用户输入的交易信息,将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;判断票据内容单元,设置为任一所述请求方节点接收到用户发起的票据兑付请求后,获取所述用户输入的兑付信息,将所述兑付信息发送给所述区块链***,所述区块链***收到所述兑付信息后,调用预设的智能合约脚本,判断 所述兑付信息中的票据内容是否已到期,通过已到期的所述票据内容查找到颁发所述票据内容的节点,所述颁发所述票据内容的节点设置为颁发方节点,所述区块链***将所述颁发方节点的信息反馈给所述请求方节点,所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点;兑付资金单元,设置为所述请求方节点向所述颁发方节点发起兑付资金请求,所述颁发方节点接收到所述兑付资金请求后,进行票据的兑付,并将兑付完成的信息反馈给所述请求方节点,完成票据的兑付。
- 根据权利要求8所述的票据交易***,其中,所述票据交易单元,包括:交易权限验证模块,设置为所述节点设置为请求方节点,所述请求方节点将所述票据交易请求发送给所述区块链***,所述区块链***验证所述请求方节点是否拥有票据交易的权限,当拥有票据交易权限时,所述区块链***向所述请求方节点返回允许请求的指令;发送交易数据模块,设置为所述请求方节点接收到所述允许请求的指令后,将获取的所述交易信息采用私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***;广播验证信号模块,设置为所述区块链***接收到所述交易数据后,收录到所述区块链的区块中,并向全网广播验证信号,所述验证信号中包含有所述区块的交易数据;合法性验证模块,设置为所述区块链***中的其他节点接收到所述验证信号后,所述其他节点验证该区块中交易数据来源的合法性,如果合法则接受交易,并反馈给所述区块链***接受信号,否则反馈给所述区块链***无效信号;认定模块,设置为当所述区块链***接收到任一无效信号时,将所述区块从所述区块链中去除,否则认定为全网都认可所述区块的产生。
- 根据权利要求8所述的票据交易***,其中,所述票据交易请求包括票据颁发请求、票据流转请求或票据拆分请求中的任意一项;所述票据交易单元,还设置为所述请求方节点接收到用户发起的所述票据交易请求为票据颁发请求时,所述请求方节点获取的所述交易信息包括票据内容、颁发金额和票据目标节点,所述票据目标节点是请求方节点,所述请求方节点将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;所述票据交易单元,还设置为所述请求方节点接收到用户发起的所述票据交易请求为票据流转请求时,所述请求方节点获取的所述交易信息包括票据来源节点、票据内容、流转金额、票据目标节点,所述票据来源节点是请求方节点,所述请求方节点将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;所述票据交易单元,还设置为所述请求方节点接收到用户发起的所述票据交易请求为票据拆分请求时,所述请求方节点获取的所述交易信息包括票据来源节点、票据内容、拆分后的每笔金额、拆分后的每笔票据目标节点,所述票据来源节点是请求方节点,所述请求方节点将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中。
- 根据权利要求8所述的票据交易***,其中,所述判断票据内容单元,包括:兑付权限验证模块,设置为所述请求方节点将票据兑付请求发送给区块链***,所述区块链***验证所述请求方节点是否拥有票据兑付的权限,当拥有票据兑付权限时,所述区块链***向所述请求方节点返回允许请求的指令;发送兑付数据模块,设置为所述请求方节点接收到所述允许请求的指令后,将所述兑付信息采用私钥签名后设置为所述UTXO模型的兑付数据发送给所述区块链***,所述兑付信息中包含有票据内容和兑付金额;票据到期判断模块,设置为所述区块链***接收到所述兑付数据后,调用预设的智能合约脚本,读取所述票据内容,判断所述票据内容是否已到期,若没有到期,则将票据未到期无法兑付的信息反馈给所述请求方节点,若到期,则通过已到期的票据内容查找到颁发所述票据内容的颁发方节点,并将所述颁发方节点的信息反馈给所述请求方节点;票据流转模块,设置为所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点,所述票据流转请求中的交易信息包括票据来源节点、票据内容、流转金额、票据目标节点,所述票据来源节点是所述请求方节点,所述票据目标节点是所述颁发方节点,所述票据内容是将要兑付的所述票据内容,所述流转金额是所述兑付金额。
- 根据权利要求8所述的票据交易***,其中,所述兑付资金请求中包含所述请求方节点的资金账号信息;所述兑付资金单元,包括:发起兑付请求模块,设置为所述区块链***预设有与财务***进行交互的交互接口,所述颁发方节点通过所述交互接口连接所述财务***,向所述财务***发起兑付请求,所述兑付请求中包含有所述资金账号信息;反馈模块,设置为所述颁发方节点接收所述财务***反馈的完成转账信息,所述颁发方节点将兑付完成的信息反馈给所述请求方节点,完成票据的兑付。
- 根据权利要求8所述的票据交易***,其中,所述兑付资金请求中包含所述请求方节点的资金账号信息;所述兑付资金单元,包括:人机交互模块,设置为所述颁发方节点通过预设的人机交互界面,将所述 资金账号信息在所述人机交互界面进行展示;反馈模块,设置为所述颁发方节点通过所述人机交互界面接收用户输入的兑付完成的信息,并将所述兑付完成的信息反馈给所述请求方节点,完成票据的兑付。
- 根据权利要求8所述的票据交易***,其中,还包括标识状态单元,设置为所述完成票据的兑付后,所述颁发方节点还将已兑付的所述票据内容标识为已兑付状态,包括:票据颁发权限验证模块,设置为所述颁发方节点接收到用户发起的票据修改状态请求后,获取所述用户输入的修改信息,将所述票据修改状态请求发送给所述区块链***,所述区块链***验证所述颁发方节点是否拥有票据颁发的权限,当拥有该票据颁发权限时,所述区块链***向所述颁发方节点返回允许请求的指令;发送修改数据模块,设置为所述颁发方节点将所述修改信息采用私钥签名后设置为所述UTXO模型的修改数据发送给所述区块链***,所述修改信息中包含票据来源节点、票据内容、修改金额,所述票据来源节点是所述请求方节点;收录模块,设置为所述区块链***接收到所述修改数据后,收录到所述区块链的区块中。
- 一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行以下步骤:参与共同维护票据数据的客户端在区块链***上设置成为节点,所述区块链***中的数据处理方式为基于UTXO模型的区块链,所述区块链***中的每个所述节点均预设有私钥;任一所述节点接收到用户发起的票据交易请求后,所述节点设置为请求方节点,所述请求方节点获取所述用户输入的交易信息,将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;任一所述请求方节点接收到用户发起的票据兑付请求后,获取所述用户输入的兑付信息,将所述兑付信息发送给所述区块链***,所述区块链***收到所述兑付信息后,调用预设的智能合约脚本,判断所述兑付信息中的票据内容是否已到期,通过已到期的所述票据内容查找到颁发所述票据内容的节点,所述颁发所述票据内容的节点设置为颁发方节点,所述区块链***将所述颁发方节点的信息反馈给所述请求方节点,所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点;所述请求方节点向所述颁发方节点发起兑付资金请求,所述颁发方节点接收到所述兑付资金请求后,进行票据的兑付,并将兑付完成的信息反馈给所述 请求方节点,完成票据的兑付。
- 根据权利要求15所述的计算机设备,其中,所述请求方节点接收到所述用户发起的票据兑付请求后,使得所述处理器执行以下步骤:所述请求方节点将票据兑付请求发送给区块链***,所述区块链***验证所述请求方节点是否拥有票据兑付的权限,当拥有票据兑付权限时,所述区块链***向所述请求方节点返回允许请求的指令;所述请求方节点接收到所述允许请求的指令后,将所述兑付信息采用私钥签名后设置为所述UTXO模型的兑付数据发送给所述区块链***,所述兑付信息中包含有票据内容和兑付金额;所述区块链***接收到所述兑付数据后,调用预设的智能合约脚本,读取所述票据内容,判断所述票据内容是否已到期,若没有到期,则将票据未到期无法兑付的信息反馈给所述请求方节点,若到期,则通过已到期的票据内容查找到颁发所述票据内容的颁发方节点,并将所述颁发方节点的信息反馈给所述请求方节点;所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点,所述票据流转请求中的交易信息包括票据来源节点、票据内容、流转金额、票据目标节点,所述票据来源节点是所述请求方节点,所述票据目标节点是所述颁发方节点,所述票据内容是将要兑付的所述票据内容,所述流转金额是所述兑付金额。
- 根据权利要求15所述的计算机设备,其中,所述完成票据的兑付后,使得所述处理器执行以下步骤:所述颁发方节点还将已兑付的所述票据内容标识为已兑付状态;所述颁发方节点接收到用户发起的票据修改状态请求后,获取所述用户输入的修改信息,将所述票据修改状态请求发送给所述区块链***,所述区块链***验证所述颁发方节点是否拥有票据颁发的权限,当拥有该票据颁发权限时,所述区块链***向所述颁发方节点返回允许请求的指令;所述颁发方节点将所述修改信息采用私钥签名后设置为所述UTXO模型的修改数据发送给所述区块链***,所述修改信息中包含票据来源节点、票据内容、修改金额,所述票据来源节点是所述请求方节点;所述区块链***接收到所述修改数据后,收录到所述区块链的区块中。
- 一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:参与共同维护票据数据的客户端在区块链***上设置成为节点,所述区块链***中的数据处理方式为基于UTXO模型的区块链,所述区块链***中的每个所述节点均预设有私钥;任一所述节点接收到用户发起的票据交易请求后,所述节点设置为请求方 节点,所述请求方节点获取所述用户输入的交易信息,将所述交易信息采用所述私钥签名后设置为所述UTXO模型的交易数据发送给所述区块链***,所述区块链***将所述交易数据收录到区块链的区块中;任一所述请求方节点接收到用户发起的票据兑付请求后,获取所述用户输入的兑付信息,将所述兑付信息发送给所述区块链***,所述区块链***收到所述兑付信息后,调用预设的智能合约脚本,判断所述兑付信息中的票据内容是否已到期,通过已到期的所述票据内容查找到颁发所述票据内容的节点,所述颁发所述票据内容的节点设置为颁发方节点,所述区块链***将所述颁发方节点的信息反馈给所述请求方节点,所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点;所述请求方节点向所述颁发方节点发起兑付资金请求,所述颁发方节点接收到所述兑付资金请求后,进行票据的兑付,并将兑付完成的信息反馈给所述请求方节点,完成票据的兑付。
- 根据权利要求18所述的存储介质,其中,所述请求方节点接收到所述用户发起的票据兑付请求后,使得一个或多个所述处理器执行以下步骤:所述请求方节点将票据兑付请求发送给区块链***,所述区块链***验证所述请求方节点是否拥有票据兑付的权限,当拥有票据兑付权限时,所述区块链***向所述请求方节点返回允许请求的指令;所述请求方节点接收到所述允许请求的指令后,将所述兑付信息采用私钥签名后设置为所述UTXO模型的兑付数据发送给所述区块链***,所述兑付信息中包含有票据内容和兑付金额;所述区块链***接收到所述兑付数据后,调用预设的智能合约脚本,读取所述票据内容,判断所述票据内容是否已到期,若没有到期,则将票据未到期无法兑付的信息反馈给所述请求方节点,若到期,则通过已到期的票据内容查找到颁发所述票据内容的颁发方节点,并将所述颁发方节点的信息反馈给所述请求方节点;所述请求方节点通过票据流转请求,将已到期的所述票据内容流转给颁发方节点,所述票据流转请求中的交易信息包括票据来源节点、票据内容、流转金额、票据目标节点,所述票据来源节点是所述请求方节点,所述票据目标节点是所述颁发方节点,所述票据内容是将要兑付的所述票据内容,所述流转金额是所述兑付金额。
- 根据权利要求18所述的存储介质,其中,所述完成票据的兑付后,使得一个或多个所述处理器执行以下步骤:所述颁发方节点还将已兑付的所述票据内容标识为已兑付状态;所述颁发方节点接收到用户发起的票据修改状态请求后,获取所述用户输入的修改信息,将所述票据修改状态请求发送给所述区块链***,所述区块链 ***验证所述颁发方节点是否拥有票据颁发的权限,当拥有该票据颁发权限时,所述区块链***向所述颁发方节点返回允许请求的指令;所述颁发方节点将所述修改信息采用私钥签名后设置为所述UTXO模型的修改数据发送给所述区块链***,所述修改信息中包含票据来源节点、票据内容、修改金额,所述票据来源节点是所述请求方节点;所述区块链***接收到所述修改数据后,收录到所述区块链的区块中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810757387.3A CN109035019B (zh) | 2018-07-11 | 2018-07-11 | 票据交易方法、***、计算机设备和存储介质 |
CN201810757387.3 | 2018-07-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020010700A1 true WO2020010700A1 (zh) | 2020-01-16 |
Family
ID=64641174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2018/106679 WO2020010700A1 (zh) | 2018-07-11 | 2018-09-20 | 票据交易方法、***、计算机设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109035019B (zh) |
WO (1) | WO2020010700A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112749967A (zh) * | 2021-01-19 | 2021-05-04 | 矩阵元技术(深圳)有限公司 | 交易数据的处理方法、装置、用户终端和服务器 |
CN113283886A (zh) * | 2021-06-29 | 2021-08-20 | 中国银行股份有限公司 | 基于区块链的银行票据管理方法及装置 |
CN112749967B (zh) * | 2021-01-19 | 2024-07-30 | 矩阵元技术(深圳)有限公司 | 交易数据的处理方法、装置、用户终端和服务器 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109670955A (zh) * | 2018-12-21 | 2019-04-23 | 众安信息技术服务有限公司 | 基于区块链通证实现银行承兑票据的方法与装置 |
CN110070443B (zh) * | 2019-04-23 | 2023-07-11 | 深圳前海微众银行股份有限公司 | 一种基于区块链的票据处理方法及装置 |
CN110135190B (zh) * | 2019-04-29 | 2023-05-05 | 深圳市元征科技股份有限公司 | 数据管理方法、服务器及计算机存储介质 |
CN110276687A (zh) * | 2019-06-05 | 2019-09-24 | 上海票据交易所股份有限公司 | 一种票据线上追索方法及*** |
CN110276686A (zh) * | 2019-06-05 | 2019-09-24 | 上海票据交易所股份有限公司 | 一种票据线上托收方法及*** |
CN110458538B (zh) * | 2019-07-31 | 2021-09-24 | 创新先进技术有限公司 | 基于区块链的状态机维护方法及装置、电子设备、存储介质 |
US11250438B2 (en) | 2019-07-31 | 2022-02-15 | Advanced New Technologies Co., Ltd. | Blockchain-based reimbursement splitting |
CN110443612B (zh) * | 2019-07-31 | 2020-12-22 | 创新先进技术有限公司 | 一种基于区块链的报销费用分割方法、装置及电子设备 |
CN110428334A (zh) * | 2019-08-09 | 2019-11-08 | 中国工商银行股份有限公司 | 基于区块链网络的票据处理方法及装置 |
CN110599269A (zh) * | 2019-09-16 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 票据生成方法、装置、计算机可读存储介质和计算机设备 |
CN110659906B (zh) * | 2019-09-20 | 2022-06-24 | 腾讯科技(深圳)有限公司 | 票据信息处理方法、相关设备及介质 |
CN110598457B (zh) * | 2019-09-24 | 2023-11-24 | 腾讯科技(深圳)有限公司 | 一种票据处理方法、装置、处理设备及计算机存储介质 |
CN110853216B (zh) * | 2019-10-18 | 2022-06-17 | 深圳壹账通智能科技有限公司 | 信息存储方法、装置、存储介质和计算机设备 |
CN111861714A (zh) * | 2020-07-23 | 2020-10-30 | 浙江永旗区块链科技有限公司 | 企业票据拆分方法及*** |
CN113269646A (zh) * | 2021-06-07 | 2021-08-17 | 中国电子科技网络信息安全有限公司 | 一种基于区块链实现票据资产流通的智能合约设计方法 |
CN113298528A (zh) * | 2021-06-22 | 2021-08-24 | 史云凌 | 一种基于utxo实现的染色票据方法 |
CN113992333B (zh) * | 2021-12-27 | 2022-03-25 | 广州敏行区块链科技有限公司 | 一种基于区块链的数据授权方法及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105976232A (zh) * | 2016-06-24 | 2016-09-28 | 深圳前海微众银行股份有限公司 | 资产交易方法和装置 |
CN106504091A (zh) * | 2016-10-27 | 2017-03-15 | 上海亿账通区块链科技有限公司 | 区块链上交易的方法及装置 |
CN106952094A (zh) * | 2017-03-10 | 2017-07-14 | 腾讯科技(深圳)有限公司 | 电子票据管理方法及装置 |
US20180097635A1 (en) * | 2016-09-30 | 2018-04-05 | Entrust, Inc. | Methods and apparatus for providing blockchain participant identity binding |
CN108154366A (zh) * | 2017-12-25 | 2018-06-12 | 丁江 | 跨链数字资产转移方法和终端设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2317790B (en) * | 1996-09-26 | 1998-08-26 | Richard Billingsley | Improvements relating to electronic transactions |
WO2017145004A1 (en) * | 2016-02-23 | 2017-08-31 | nChain Holdings Limited | Universal tokenisation system for blockchain-based cryptocurrencies |
CN106920169A (zh) * | 2017-03-07 | 2017-07-04 | 中钞***产业发展有限公司北京智能卡技术研究院 | 一种基于区块链和数字货币的数字票据交易方法及*** |
CN107133872A (zh) * | 2017-05-06 | 2017-09-05 | 杭州复杂美科技有限公司 | 区块链信息撮合平台 |
CN107392608B (zh) * | 2017-07-11 | 2020-07-07 | 北京博晨技术有限公司 | 基于区块链***的数字资产交易方法及区块链*** |
CN108229958A (zh) * | 2017-12-27 | 2018-06-29 | 浙商银行股份有限公司 | 一种基于区块链技术的应收账款***及方法 |
-
2018
- 2018-07-11 CN CN201810757387.3A patent/CN109035019B/zh active Active
- 2018-09-20 WO PCT/CN2018/106679 patent/WO2020010700A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105976232A (zh) * | 2016-06-24 | 2016-09-28 | 深圳前海微众银行股份有限公司 | 资产交易方法和装置 |
US20180097635A1 (en) * | 2016-09-30 | 2018-04-05 | Entrust, Inc. | Methods and apparatus for providing blockchain participant identity binding |
CN106504091A (zh) * | 2016-10-27 | 2017-03-15 | 上海亿账通区块链科技有限公司 | 区块链上交易的方法及装置 |
CN106952094A (zh) * | 2017-03-10 | 2017-07-14 | 腾讯科技(深圳)有限公司 | 电子票据管理方法及装置 |
CN108154366A (zh) * | 2017-12-25 | 2018-06-12 | 丁江 | 跨链数字资产转移方法和终端设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112749967A (zh) * | 2021-01-19 | 2021-05-04 | 矩阵元技术(深圳)有限公司 | 交易数据的处理方法、装置、用户终端和服务器 |
CN112749967B (zh) * | 2021-01-19 | 2024-07-30 | 矩阵元技术(深圳)有限公司 | 交易数据的处理方法、装置、用户终端和服务器 |
CN113283886A (zh) * | 2021-06-29 | 2021-08-20 | 中国银行股份有限公司 | 基于区块链的银行票据管理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109035019A (zh) | 2018-12-18 |
CN109035019B (zh) | 2023-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020010700A1 (zh) | 票据交易方法、***、计算机设备和存储介质 | |
US11930100B2 (en) | Fund conversion between blockchains | |
JP7450339B2 (ja) | ブロックチェーンのためのリソースの公平性のためのシステム、方法、およびコンピュータ・プログラム | |
US11637709B2 (en) | Split-key wallet access between blockchains | |
CN108805564B (zh) | 一种基于区块链进行支付结算的方法及*** | |
TWI723658B (zh) | 基於區塊鏈中智慧合約保護交易活動敏感資料的方法和設備 | |
US20200193432A1 (en) | Method and system for settling a blockchain transaction | |
US20200074552A1 (en) | Systems and methods for short and long tokens | |
US20200127813A1 (en) | Method and system for creating a user identity | |
WO2019095959A1 (zh) | 业务数据处理方法、身份管理方法及业务审计方法 | |
WO2021184826A1 (zh) | 基于区块链的资源转移方法、装置、节点设备及存储介质 | |
JP2022547130A (ja) | ブロックチェーンベースの記録プロセスを提供するシステムおよび方法 | |
TWI712974B (zh) | 用於在區塊鏈系統中處理憑證的方法及裝置 | |
US20190356473A1 (en) | Bespoke programmable crypto token | |
WO2019127532A1 (zh) | 基于区块链的众筹信息处理方法、装置、存储介质及电子设备 | |
CN117151853A (zh) | 用于区块链上的安全点对点通信的方法 | |
US20190114707A1 (en) | Distribution of Blockchain Tokens | |
CN110275925B (zh) | 基于区块链的虚拟资源分配方法和装置 | |
CN111369730B (zh) | 基于区块链的投票表决处理方法和装置 | |
CN112767185B (zh) | 一种基于区块链的反向保理融资方法、设备及存储介质 | |
KR20200046260A (ko) | 블록체인 기반의 디지털 콜렉터블 카드 관리 장치 및 방법 | |
CN112991045B (zh) | 基于区块链的医疗健康消费融资方法、装置、设备及介质 | |
CN113570350A (zh) | 一种基于区块链的票据数字化交互***及其方法 | |
CN112418851A (zh) | 数字版权登记、交易、保护方法与*** | |
CN111433798A (zh) | 基于区块链的可信保函 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18926307 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18926307 Country of ref document: EP Kind code of ref document: A1 |