WO2023078158A1 - Blockchain-based remittance path management - Google Patents
Blockchain-based remittance path management Download PDFInfo
- Publication number
- WO2023078158A1 WO2023078158A1 PCT/CN2022/128000 CN2022128000W WO2023078158A1 WO 2023078158 A1 WO2023078158 A1 WO 2023078158A1 CN 2022128000 W CN2022128000 W CN 2022128000W WO 2023078158 A1 WO2023078158 A1 WO 2023078158A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- remittance
- participant
- available
- smart contract
- routes
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 78
- 238000012545 processing Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 4
- 238000007726 management method Methods 0.000 abstract description 18
- 239000003999 initiator Substances 0.000 description 24
- 238000012795 verification Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 4
- 230000000977 initiatory effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000593 degrading effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect 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
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Definitions
- the present disclosure relates to the technical field of blockchain, and in particular to a method and device for managing remittance routes based on blockchain.
- blockchain can serve remittance transactions by executing remittance transaction contracts.
- the remittance initiator needs to first query the available remittance routes of the participants in the target remittance transaction through the centralized system of the financial platform. If the available remittance route queried by the remittance initiator matches the remittance route required by the target remittance transaction, the user can initiate the target remittance transaction on the blockchain by calling the remittance transaction contract.
- the blockchain The transaction result of the target remittance transaction can be recorded by executing the remittance transaction contract.
- the available remittance routes of the participants in the target remittance transaction are all maintained through the centralized system.
- the centralized system may maintain incorrect remittance routes due to system errors, thus returning wrong results to the remittance initiator and reducing user experience .
- the available remittance route of the original participant matches the remittance route required by the target remittance transaction, but due to an error in the centralized system, the maintenance of the available remittance route of the participant is wrong, and the available remittance route of the participant is recorded It is an unavailable remittance route, and an error result such as "does not match, or there is no available remittance route" is returned to the remittance initiator, resulting in the remittance initiator being unable to initiate the target remittance transaction and degrading user experience.
- the embodiments of the present disclosure are dedicated to providing a blockchain-based method for managing remittance routes, so as to reduce the possibility of errors occurring when the centralized system maintains available remittance routes and improve user experience.
- a blockchain-based method for managing remittance routes where a first smart contract is stored on the blockchain, and the first smart contract is used to manage the number of participants in the target remittance transaction.
- the available remittance route of at least one participant, the available remittance route of the at least one participant is used to indicate the available remittance route that the at least one participant can provide for the target remittance transaction, the at least one participant Including the first participant, the method includes: receiving a first call request of the first smart contract from the first participant, and the first call request is used to set the available remittance of the first participant according to the first call request, setting available remittance routes of the first participant in the first smart contract.
- a blockchain-based method for managing remittance routes where a first smart contract is stored on the blockchain, and the first smart contract is used to manage the number of participants in the target remittance transaction.
- the available remittance route of at least one participant, the available remittance route of the at least one participant is used to indicate the available remittance route that the at least one participant can provide for the target remittance transaction, the at least one participant Including the first participant, the method is applied to the first participant, and the method includes: obtaining the available remittance route of the first participant; sending the first smart contract to the block chain A first call request, where the first call request is used to set the available remittance routes of the first participant.
- a block chain-based remittance route management device where a first smart contract is stored on the block chain, and the first smart contract is used to manage the number of participants in the target remittance transaction.
- the available remittance route of at least one participant, the available remittance route of the at least one participant is used to indicate the available remittance route that the at least one participant can provide for the target remittance transaction, the at least one participant Including the first participant, the device includes: a receiving module, configured to receive a first call request of the first smart contract from the first participant, and the first call request is used to set the first participant available remittance routes of the party; a processing module configured to set the available remittance routes of the first participant in the first smart contract according to the first call request.
- a block chain-based remittance channel management device where a first smart contract is stored on the block chain, and the first smart contract is used to manage the number of participants in the target remittance transaction.
- the available remittance route of at least one participant, the available remittance route of the at least one participant is used to indicate the available remittance route that the at least one participant can provide for the target remittance transaction, the at least one participant Including the first participant, the device is applied to the first participant, and the device includes: an acquisition module, used to obtain the available remittance route of the first participant; a sending module, used to send to the district
- the block chain sends a first call request of the first smart contract, and the first call request is used to set an available remittance route of the first participant.
- a block chain-based remittance route management device including a memory and a processor, wherein executable code is stored in the memory, and the processor is configured to execute the executable code to realize The method as described in the first aspect or the second aspect.
- a computer-readable storage medium on which executable code is stored, and when the executable code is executed, the method as described in the first aspect or the second aspect can be implemented.
- a computer program product including executable codes, and when the executable codes are executed, the method as described in the first aspect or the second aspect can be implemented.
- the solution of the embodiment of the present disclosure is to maintain the available remittance routes of the participants in the target remittance transaction through the first smart contract on the blockchain, so that the participants as blockchain users can autonomously call the first smart contract Maintain available remittance routes in a timely manner. It avoids the traditional solution of using a centralized system to maintain the available remittance routes of the participants. Due to errors in the centralized system, the participants’ available remittance routes are wrong, which helps to reduce the time spent on maintaining the available remittance routes in the centralized system. Possibility of error occurs, improving user experience.
- FIG. 1 is a schematic diagram of a block chain architecture applicable to an embodiment of the present disclosure.
- FIG. 2 is a schematic flow chart of an employer A initiating a target remittance transaction.
- FIG. 3 is a schematic flowchart of a blockchain-based remittance route management method according to an embodiment of the present disclosure.
- Fig. 4 is a schematic flow chart of the update process of the first smart contract according to the embodiment of the present disclosure.
- Fig. 5 is a schematic flowchart of the process of using the first smart contract according to the embodiment of the present disclosure.
- Fig. 6 is a schematic flowchart of the query process of the first smart contract according to the embodiment of the present disclosure.
- Fig. 7 is a schematic structural diagram of a block chain-based remittance route management device according to an embodiment of the present disclosure.
- Fig. 8 is a schematic structural diagram of a blockchain-based remittance route management device according to another embodiment of the present disclosure.
- Fig. 9 is a schematic structural diagram of a blockchain-based remittance route management device provided by another embodiment of the present disclosure.
- Fig. 10 is a schematic structural diagram of a blockchain-based remittance route management device provided by another embodiment of the present disclosure.
- FIG. 1 is a schematic diagram of a block chain architecture applicable to an embodiment of the present disclosure.
- the architecture 100 shown in FIG. 1 includes blockchain nodes 110 and user nodes 120 .
- Blockchain is a typical distributed collaborative system. Multiple parties jointly maintain a growing distributed data record. The content and timing of these recorded data are protected by cryptography technology, making it difficult for any party to tamper, deny, or falsify.
- data for example, packaged transaction data, transaction execution results, etc.
- Blocks can be linked to each other through forward applications to form a "chain", that is, a blockchain.
- each block records basic data such as the hash value of the previous block, the transaction set in this block, and the hash of this block.
- the user node 120 of the blockchain can communicate with the blockchain node 110 through a client.
- the user node 120 may send the data to be stored to one or more associated blockchain nodes 110 in a manner of submitting a transaction.
- a transaction can be understood as a transaction request on the blockchain, which is used to carry the structure of specific business operation data. All changes to the state of the world on the blockchain can be done based on transactions.
- each blockchain node 110 can broadcast the data to each blockchain node 110 in a network-wide broadcast manner. In this way, each blockchain node 110 records a full amount of consistent data.
- the aforementioned blockchain node 110 may be a node that performs remittance-related functions, for example, recording the transaction status of remittance transactions.
- the above-mentioned user node 120 may include a user node located at the remittance initiator, for example, the user node 122 of the employer A.
- the above-mentioned user node 120 may also include a user node of a remittance institution performing remittance, for example, a user node 121 of a remittance bank.
- the above-mentioned user node 120 may also be a user node of a money collection institution that receives remittances, for example, a user node 123 of a beneficiary bank.
- the aforementioned blockchain node 110 may be a server, or other devices with computing capabilities.
- the aforementioned user node 120 may be a server, a mobile terminal, or other devices with computing capabilities.
- a smart contract is a set of promises defined in digital form, including an agreement on which the parties to the contract can enforce those promises.
- a smart contract can be understood as a program deployed on a computer system. When the trigger conditions of the smart contract are met, the smart contract can be automatically executed.
- the emergence of blockchain provides technical support for the realization of smart contracts.
- the smart contract is written into the blockchain in a digital form, and the characteristics of the blockchain technology ensure that the entire process of storage, reading, and execution of the smart contract is transparent, traceable, and unchangeable.
- a state machine system can be constructed by the consensus algorithm that comes with the blockchain, so that smart contracts can run efficiently.
- the user can call the smart contract by submitting a transaction to the blockchain system, set the data recorded in the smart contract, and store the set smart contract in the blockchain.
- the blockchain node can execute the smart contract, and record the execution result of the smart contract and the execution status of the smart contract.
- blockchain can serve remittance transactions by executing remittance transaction contracts.
- the remittance initiator needs to first query the available remittance routes of the participants in the target remittance transaction through the centralized system of the financial platform.
- the available remittance routes can be understood as the remittance transactions can be carried out The path between the payer and the payee. If the available remittance route queried by the remittance initiator matches the remittance route required by the target remittance transaction, the user can initiate the target remittance transaction on the blockchain by calling the remittance transaction contract. At this time, the blockchain The transaction result of the target remittance transaction can be recorded by executing the remittance transaction contract.
- the following describes the process of initiating a target remittance transaction by taking the remittance initiator as an example of a target remittance transaction initiated by employer A in combination with Figure 2 .
- investor A needs to conduct a target remittance transaction to investor B, and the remittance channel required for the target remittance transaction is remittance institution A to remittance institution B.
- the available remittance routes of remittance institution A will be recorded in the centralized system.
- step S210 employer A needs to send an inquiry request to the centralized system to inquire about the available remittance routes of remittance institution A.
- step S220 if the remittance route from remittance institution A to remittance institution B is not recorded in the available remittance route of remittance institution A, that is, the available remittance route of remittance institution A does not match the remittance route required by the target remittance transaction , employer A does not initiate a target remittance transaction to the blockchain.
- step S230 if the remittance route from remittance institution A to remittance institution B is recorded in the available remittance route of remittance institution A, that is, when the available remittance route of remittance institution A matches the remittance route required by the target remittance transaction , employer A can record the transaction status of the target remittance transaction executed off-chain by calling the remittance transaction contract in the blockchain.
- the above-mentioned transaction status includes: waiting for confirmation by the counterparty, transaction success, transaction failure, etc.
- step S240 the blockchain executes the remittance transaction contract to record the transaction status of the target remittance transaction executed off-chain.
- the remittance routes available to the parties involved in the target remittance transaction are all maintained through a centralized system.
- the centralized system may maintain incorrect remittance routes due to system errors, thus returning wrong results to the remittance initiator.
- the available remittance route of the original participant matches the remittance route required by the target remittance transaction, but due to an error in the centralized system, the maintenance of the available remittance route of the participant is wrong, and the available remittance route of the participant is recorded It is an unavailable remittance route, and an error result such as "does not match, or there is no available remittance route" is returned to the remittance initiator, resulting in the remittance initiator being unable to initiate the target remittance transaction and degrading user experience.
- maintaining the available remittance routes of the participants through the centralized system may reduce the security of the available remittance routes.
- this disclosure provides a blockchain-based remittance route management method, that is, the first smart contract is used to maintain the available remittance routes of the above-mentioned participants on the blockchain, so that as a block
- the participants of the chain users can maintain the available remittance routes autonomously by calling the first smart contract, which is beneficial to reduce the possibility of errors when the centralized system maintains the available remittance routes and improve user experience.
- the following describes the blockchain-based remittance route management method of the embodiment of the present disclosure with reference to FIG. 3 .
- the first smart contract in the embodiment of the present disclosure is introduced first.
- the first smart contract is used to manage the available remittance routes of at least one of the multiple participants in the target remittance transaction.
- the available remittance route of at least one participant is used to indicate the available remittance route that at least one participant can provide for the target remittance transaction. Therefore, the first smart contract can also be called "Huilu Management Contract”.
- the remittance route required by the target remittance transaction is a remittance transaction from bank A to bank B, that is to say, multiple participants in the target remittance transaction include bank A and bank B.
- Table 1 shows a possible implementation of the first smart contract recording available remittance routes in the embodiment of the present disclosure.
- the available remittance routes of Bank A and Bank B are recorded in the first smart contract.
- the available remittance routes of bank A include: the remittance route between bank A and bank B; the remittance route between bank A branch 1 and bank A branch 2.
- the available remittance routes of Bank B include: the remittance route between Bank B and Bank A; the remittance route between Bank B Branch 2 and Bank B Branch 3; and the remittance route between Bank B and Bank C.
- the above available remittance routes are used to indicate the paths available for remittance transactions, and are not used to limit the direction of remittance when executing remittance transactions.
- the available remittance route "Bank A-Bank B" can be used to indicate a remittance transaction between Bank A and Bank B, that is, remittances can be made from Bank A to Bank B, or from Bank B to Bank B A makes a remittance.
- the first smart contract can also record the available remittance routes of other institutions, for example, the available remittance routes of Bank D can be recorded.
- the embodiment of the present disclosure does not limit this.
- the available remittance routes may have restrictions on the type of currency used for remittances.
- the available remittance route “Bank A-Bank B”
- the available remittance route only supports the remittance method of currency type 1 (for example, RMB).
- the types of currencies supported by each available remittance route can also be recorded in the above-mentioned first smart contract.
- it can be recorded in the first smart contract according to the format of "bank A-bank B-currency type”.
- the currency types supported by the available remittance route may not be recorded. The embodiment of the present disclosure does not limit this.
- a query interface can be set for the above-mentioned first smart contract, so that other users of the blockchain can query the available remittance routes recorded in the first smart contract through the query interface.
- an update interface can also be set for the above-mentioned first smart contract, so that the participants can call the first smart contract through the update interface to update the available remittance routes recorded in the first smart contract to update.
- this disclosure does not limit the creation process of the above-mentioned first smart contract.
- the above-mentioned first smart contract can be created and deployed in the blockchain by the supplier of the blockchain, so that users of the blockchain (for example, the above-mentioned target The participant of the remittance transaction) is called by updating the interface, and the available remittance route of the participant is recorded in the first smart contract.
- the above-mentioned first smart contract can also be created and deployed in the blockchain by users of the blockchain. For example, it can be created by the participants of the target remittance transaction, so that the participants of the target During the contract process, the available remittance routes can be directly deployed on the blockchain together with the first smart contract.
- Fig. 3 is a schematic flow chart of a blockchain remittance channel management method according to an embodiment of the present disclosure.
- the method shown in FIG. 3 includes steps S310 to S330.
- the method shown in Figure 3 can be applied to the block chain architecture shown in Figure 1, so that the first participant in step S310 can be the user 120 of the block chain, for example, the user node 121 of the remittance bank or the receiving party User node 123 of the bank.
- the blockchain nodes performing step S320 and step S330 may be one or more blockchain nodes 110 in the architecture 100 that can communicate with the user 120 .
- step S310 the first participant acquires available remittance routes of the first participant.
- the above-mentioned available remittance routes of the first participant can be understood as the available remittance routes of the first participant to be linked.
- the first party needs to update the available remittance routes.
- it may be an available remittance route newly created by the first participant.
- step S320 the blockchain node receives a first invocation request of the first smart contract from the first participant.
- the above-mentioned first participant is one of the multiple participants participating in the target remittance transaction.
- the first participant may be the remittance bank that executes the target remittance transaction, and the first participant may also be the receiving bank that executes the target remittance transaction.
- the above-mentioned first call request is used to set the available remittance routes of the first participant.
- the above setting can be understood as creation, and at this time, the first call request can be understood as being used to create an available remittance route for the first participant.
- the above setting can be understood as an update, at this time, the first call request can be understood as being used to update the available remittance routes of the first participant.
- step S330 the blockchain node sets the available remittance routes of the first participant in the first smart contract according to the first call request.
- the blockchain node may perform user authentication on the first participant to determine that the first participant has the right to set the available remittance routes. For example, if the user on the chain of the first participation method is confirmed, and the role of the first participant is a bank, at this time, the first participant has the right to set the available remittance routes.
- the above user authentication can be implemented based on public keys and data signatures.
- the blockchain node can store the public key of the first participant, and the first participant can use the private key of the first participant to digitally sign the available remittance route when setting up the available remittance route, In this way, when the blockchain node receives the available remittance route uploaded by the first participant, the blockchain node can use the public key of the first participant to verify the digital signature on the available remittance route. If the verification is passed, then The first participant has the right to set available remittance routes. On the contrary, if the verification fails, the first participant has no right to set available remittance routes.
- the blockchain node may also verify the validity of the available remittance routes uploaded by the first participant.
- the block chain can determine the remitter and payee involved in the available remittance route according to the format of the available remittance route specified by the remittance route (for example, it may be the format shown in Table 1) Whether the party is a legal user on the chain, if both the remitter and the payee are legal users on the chain, the block chain node can determine that the available remittance route set by the first participant is legal, then the block chain Nodes can maintain available remittance routes in the first smart contract.
- the blockchain node can determine that the available remittance route set by the first participant is illegal, then the blockchain node will not check the available remittance route road maintenance.
- the above-mentioned blockchain nodes determine whether the remitter and payee involved in the available remittance route are legal on-chain users, which can be judged by whether the remitter and the payee have corresponding on-chain users .
- the blockchain node can store the corresponding relationship between the user name on the chain of all users on the chain and the user name off the chain of the user, and the remitter and receiver of the above-mentioned available remittance routes use the remitter, The off-chain user name of the payee (for example, the name of the bank).
- the blockchain can determine whether the remitter and the payee are Have a corresponding user name on the chain, so as to determine whether the remitter and the payee are legal users on the chain.
- Fig. 4 is a schematic flowchart of the updating process of the first smart contract according to the embodiment of the present disclosure.
- the method shown in FIG. 4 includes steps S410 to S460.
- step S410 the first participant sets an updated list of available remittance routes.
- the first participant may input the first list of available remittance routes by calling the update interface of the first smart contract.
- step S420 the blockchain node performs user authentication on the first participant.
- the above updated remittance route is digitally signed by the private key of the first participant.
- the blockchain node may verify the digital signature based on the public key of the first participant to determine that the first participant performs user authentication, and if the user authentication passes, step S430 may be executed. If the user authentication fails, the update fails, and step S440 is executed to end the update process.
- step S430 the blockchain node verifies the legitimacy of the available remittance routes in the list of available remittance routes.
- step S450 is executed. If the validity verification fails, the update fails, and step S440 is performed.
- step S450 the blockchain node updates the available remittance routes in the first smart contract to the first available remittance route list.
- step S460 the first smart contract is updated successfully.
- the block chain node can use the above-mentioned first available remittance route list as the data of the first smart contract, and persistently store it in the block chain.
- step S420 can also be executed before step S420.
- step S420 can be executed, and only when the user authentication result of step S420 is also passed, step S450 can be continued .
- step S420 and step S430 can also be executed at the same time, that is, step S450 can be executed only when the user authentication result of step S420 and the legality verification of step S430 both pass.
- the remittance initiator needs to first query the available remittance routes of the participants in the decentralized system.
- the remittance initiator may not first query the available remittance routes according to the process, but directly initiates the first transaction execution request on the chain to request the first participant to execute the target remittance transaction.
- the first participant needs to confirm that the available remittance route does not match the remittance route required by the target remittance transaction, Then the first transaction initiated on the chain can be closed. However, if the first participant fails to confirm in time, the transaction status of the first transaction will remain stagnant and will be in the state of "waiting for the confirmation of the first participant". In this way, the remittance initiator cannot timely know the final execution result of the first transaction , reducing the user experience.
- the present disclosure also provides a block chain remittance route management method, which matches the available remittance route recorded in the first smart contract with the remittance route required by the target remittance transaction, and obtains the matching result. And based on the matching results, the transaction status of the first transaction is automatically promoted, avoiding the stagnation of the transaction status of the first transaction due to the failure of the first participant to confirm in time under the traditional remittance transaction submission method, and the inability to know the first transaction in time for the convenience of remittance initiation The final execution result is conducive to improving user experience.
- the above method may further include step S340 to step S360 .
- step S340 a first transaction execution request is received from the second participant, and the first transaction execution request is used to request the first participant to execute the target remittance transaction.
- the above-mentioned second participant may be the initiator of the target remittance transaction, for example, it may be the investor A introduced above.
- step S350 in response to the first transaction execution request, the first smart contract is invoked to query whether the remittance route required by the target remittance transaction matches the available remittance route of the first participant.
- the remittance route required by the target remittance transaction matches the available remittance route of the first participant, it can be understood that the remittance route required by the target remittance transaction is included in the available remittance route of the first participant.
- the remittance route required for the target remittance transaction is remittance from bank A to bank B.
- bank A is the first participant, and referring to Table 1, it can be seen that the available remittance route of bank A includes "bank A -Bank B", then the available remittance route of Bank A matches the remittance route required by the target remittance transaction.
- the remittance route required by the target remittance transaction does not match the remittance route available to the first participant, it can be understood that the remittance route required by the target remittance transaction is not included in the available remittance routes of the first participant.
- the remittance route required for the target remittance transaction is remittance from bank A to bank C.
- bank A is the first participant, and referring to Table 1, it can be seen that the available remittance route of the bank does not include "bank A-Bank C"'s remittance route, then the available remittance route of Bank A does not match the remittance route required by the target remittance transaction.
- step S360 if the remittance route required by the target remittance transaction does not match the available remittance route of the first participant, the target remittance transaction is terminated.
- the above termination of the target remittance transaction can be understood as setting the transaction status of the first transaction as terminated.
- a target remittance transaction can be initiated to the blockchain by calling a contract. That is to say, the above-mentioned second participant can request the first participant to execute the target remittance transaction by calling the contract.
- the above-mentioned first transaction execution request is an invocation request of the second smart contract
- the second smart contract is used to execute the target remittance transaction
- the state of the second smart contract is used to represent the transaction status of the target remittance transaction. Therefore, the second smart contract is also called "remittance transaction contract”.
- the second smart contract may include transaction information of the target remittance transaction.
- information on the originator of the target remittance transaction For example, information on the originator of the target remittance transaction, information on the payee of the target remittance transaction, the remittance route required by the target remittance transaction, and transaction details of the target remittance transaction.
- the address of the first smart contract can be set in the second smart contract, so that in the process of executing the second smart contract, the address of the first smart contract can be called based on the address.
- all participants on the blockchain can act as users of the blockchain and set their own available remittance routes by calling the first smart contract. That is to say, the first smart contract will record the available remittance routes of multiple participants. At this time, in some cases, there may be remittance route 1 that is an available remittance route for participant 1, but the remittance Remittance route 1 is not an available remittance route for participant 2. At this time, if only the available remittance route of participant 1 is matched during the matching process, the matching result becomes a match, but in fact, remittance route 1 is not an available remittance route, which will result in the target remittance transaction fail.
- remittance route 1 was originally an available remittance route between Bank A and Bank B, but due to some reasons, Bank B and Bank A need to update the available remittance route, and update remittance route 1 to an unavailable remittance route sink road. However, only bank B is updated successfully, and bank A is not updated successfully. At this time, although remittance route 1 is no longer an available remittance route between bank A and bank B, it is still recorded in the available remittance route in bank A .
- the matching result will be a match, which will lead to Target money transfer transaction failed.
- the remittance route required by the target remittance transaction can be used in the matching process to match with the available remittance routes of multiple participants in the target remittance transaction. If the matching result is a match, the remittance route is the real available remittance route. Continue to refer to the scene of remittance route 1 above.
- Figure 5 mainly introduces the method flow of using the first smart contract.
- the first smart contract available remittance routes, user authentication, and legality verification, please refer to the above , for the sake of brevity, will not be repeated here.
- Fig. 5 is a schematic flowchart of the process of using the first smart contract according to the embodiment of the present disclosure.
- the method shown in FIG. 5 includes steps S510 to S590.
- step S510 the remittance initiator sends a call request of the second smart contract to the block chain node.
- the call request is used to request the first participant to execute the target remittance transaction.
- the remittance route required for the target remittance transaction is the remittance route between the first participant and the second participant.
- step S520 the blockchain node performs user authentication on the remittance initiator.
- step S530 is executed. If the user authentication result is not passed, step S540 is executed to close the target remittance transaction.
- step S530 the blockchain node checks the validity of the second smart contract.
- the above legality check is used to check whether the transaction parameters of the target remittance transaction are complete. For example, it is necessary to specify in the second smart contract the remittance institution of the target remittance transaction, the on-chain account of the remittance institution, the remittance currency involved in the target remittance transaction, and other information.
- step S550 is executed. If the legitimacy verification result is passed, step S540 is executed to close the target remittance transaction.
- step S550 the remittance route required by the target remittance transaction is extracted from the second smart contract.
- step S560 the block chain node invokes the first smart contract to query whether the remittance route required by the target remittance transaction matches the available remittance routes of the remittance institution and the remittance institution respectively.
- the query interface of the first smart contract can be automatically called twice to respectively query whether the available remittance channels of the remittance institution and the available remittance channels of the receiving institution are the same as those required by the target remittance transaction.
- Remittance route matching If both the available remittance channels of the remittance institution and the available remittance channels of the payee institution match the remittance channels required by the target remittance transaction, step S570 is performed.
- step S540 is executed to close the target remittance transaction.
- step S570 the blockchain node advances the state of the second smart contract to "waiting for the participant to confirm the current transaction".
- step S580 the participants in the target remittance transaction confirm the target remittance transaction corresponding to the second smart contract.
- the participants in the target remittance transaction can obtain the transaction information of the target remittance transaction recorded in the second smart contract from the block chain node by means of pulling block analysis.
- the participants in the target remittance transaction confirm that the off-chain remittance transaction is executed correctly based on the transaction information of the target remittance transaction, they can call the confirmation interface of the second smart contract to confirm the target remittance transaction.
- step S590 it is confirmed whether all participants in the target remittance transaction confirm.
- the second smart contract After receiving confirmation from the participants in the target remittance transaction, the second smart contract automatically triggers the processing logic to inquire whether all the participants in the target remittance transaction have confirmed the target remittance transaction. If all the participants in the target remittance transaction confirm, the second smart contract automatically advances to the final state, indicating that the target remittance transaction is successful, ie step S600.
- step S520 can also be executed before step S520.
- step S520 can be executed, and only when the user authentication result of step S520 is also passed, step S550 can be continued .
- step S520 and step S530 can also be executed at the same time, that is, only when the user authentication result of step S520 and the legality verification of step S530 both pass, step S550 can be executed.
- the process of using the first smart contract in the embodiment of the present disclosure is introduced with reference to FIG. 5 .
- the available remittance routes can also be queried only through the query interface of the first smart contract.
- the query process of the first smart contract in the embodiment of the present disclosure is introduced below with reference to FIG. 6 .
- Figure 6 mainly introduces the method flow of using the first smart contract.
- the first participant, the first smart contract, and available remittance channels please refer to the above. repeat.
- Fig. 6 is a schematic flowchart of the query process of the first smart contract according to the embodiment of the present disclosure. The method shown in FIG. 6 includes steps S610 to S620.
- step S610 the block chain node receives the second call request of the first smart contract from the third participant, and the second call request is used to query the available remittance routes of the first participant.
- step S620 the blockchain node returns the available remittance routes of the first participant to the third participant.
- Fig. 7 is a schematic structural diagram of a block chain-based remittance route management device according to an embodiment of the present disclosure.
- the device shown in Figure 7 may be a blockchain node on a blockchain, on which a first smart contract is stored, and the first smart contract is used to manage the participation of at least one of the multiple participants in the target remittance transaction
- the available remittance route of the party, the available remittance route of at least one participant is used to indicate the available remittance route that at least one participant can provide for the target remittance transaction, and the at least one participant includes the first participant.
- the foregoing apparatus 700 includes: a receiving module 710 and a processing module 720 .
- the receiving module 710 may be configured to receive a first call request of the first smart contract from the first participant, and the first call request is used to set an available remittance route of the first participant.
- the processing module 720 may be configured to set the available remittance routes of the first participant in the first smart contract according to the first call request.
- the multiple participants include the second participant, and the receiving module 710 may also be configured to receive a first transaction execution request from the second participant, the first transaction execution request is used to request the first The participant executes the target remittance transaction; the processing module 720 may be configured to, in response to the first transaction execution request, invoke the first smart contract to query whether the remittance route required for the target remittance transaction and the available remittance route of the first participant matching; and, if the remittance route required by the target remittance transaction does not match the remittance route available to the first party, terminating the target remittance transaction.
- the multiple participants include a third participant
- the receiving module 710 may be configured to receive a second invocation request of the first smart contract from the third participant, and the second invocation request is used to query Available remittance routes of the first participant;
- the processing module 720 may be configured to return the available remittance routes of the first participant to the third participant.
- the receiving module 710 may be configured to receive a third call request of the first smart contract from the first participant, and the third call request is used to update the available remittance routes of the first participant;
- the processing module 720 may be configured to update the available remittance routes of the first participant in the first smart contract based on the third call request.
- the first smart contract is also used to manage the types of currencies supported by the available remittance routes of the first participant.
- Fig. 8 is a schematic structural diagram of a blockchain-based remittance route management device according to another embodiment of the present disclosure.
- a first smart contract is stored on the block chain, and the first smart contract is used to manage the available remittance route of at least one of the multiple participants in the target remittance transaction, and the available remittance route of at least one participant is used for An available remittance route that at least one participant can provide for the target remittance transaction is indicated, the at least one participant includes the first participant, and the device is applied to the first participant.
- the device 800 includes: an acquiring module 810 and a sending module 820 .
- the obtaining module 810 is configured to obtain the available remittance channels of the first participant; the sending module 820 is configured to send the first call request of the first smart contract to the blockchain, and the first call request is used to set the first participant The available remittance routes of the party.
- the sending module 820 may be configured to send a third call request of the first smart contract to the blockchain, where the third call request is used to update the available remittance routes of the first participant.
- the first smart contract is also used to manage the types of currencies supported by the available remittance routes of the first participant.
- Fig. 9 is a schematic structural diagram of a blockchain-based remittance route management device provided by another embodiment of the present disclosure.
- the device 900 shown in FIG. 9 may be any blockchain node in the blockchain.
- the apparatus 900 may be, for example, a computing device with a computing function.
- device 900 may be a server.
- the apparatus 900 may include a memory 910 and a processor 920 .
- Memory 910 may be used to store executable code.
- the processor 920 can be used to execute the executable code stored in the memory 910, so as to realize the steps in the various methods described above.
- the apparatus 900 may further include a network interface 930 through which data exchange between the processor 920 and external devices may be implemented.
- Fig. 10 is a schematic structural diagram of a blockchain-based remittance route management device provided by another embodiment of the present disclosure.
- the apparatus 1000 shown in FIG. 10 may be a node where a client in the blockchain resides.
- the apparatus 1000 may be, for example, a computing device with computing functions.
- the device 1000 may be a server or a mobile terminal.
- the apparatus 1000 may include a memory 1010 and a processor 1020 .
- Memory 1010 may be used to store executable code.
- the processor 1020 can be used to execute the executable code stored in the memory 1010, so as to realize the steps in the various methods described above.
- the apparatus 900 may further include a network interface 1030 through which data exchange between the processor 1020 and external devices may be implemented.
- the processor may adopt a general-purpose central processing unit (central processing unit, CPU), and the processor may also be other general-purpose processors, digital signal processors (digital signal processor, DSP) , application specific integrated circuit (ASIC), off-the-shelf programmable gate array (field programmable gate array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
- the general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc., for executing related programs, so as to realize the technical solutions provided by the embodiments of the present disclosure.
- the memory which can include read only memory and random access memory, provides instructions and data to the processor.
- a portion of the processor may also include non-volatile random access memory.
- the processor may also store device type information.
- each step of the above method can be completed by an integrated logic circuit of hardware in a processor or an instruction in the form of software.
- the method for requesting uplink transmission resources disclosed in the embodiments of the present disclosure may be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules in the processor.
- the software module can be located in a mature storage medium in the field such as random access memory, flash memory, read-only memory, programmable read-only memory or electrically erasable programmable memory, register.
- the storage medium is located in the memory, and the processor reads the information in the memory, and completes the steps of the above method in combination with its hardware. To avoid repetition, no detailed description is given here.
- sequence numbers of the above-mentioned processes do not mean the order of execution, and the execution order of the processes should be determined by their functions and internal logic, rather than by the embodiments of the present disclosure.
- the implementation process constitutes any limitation.
- the disclosed systems, devices and methods may be implemented in other ways.
- the device embodiments described above are only illustrative.
- the division of the units is only a logical function division. In actual implementation, there may be other division methods.
- multiple units or components can be combined or May be integrated into another system, or some features may be ignored, or not implemented.
- the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
- the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
- each functional module in each embodiment of the present disclosure may be integrated into one module, each module may exist independently, or two or more modules may be integrated into one module.
- all or part of them may be implemented by software, hardware, firmware or any combination thereof.
- software When implemented using software, it may be implemented in whole or in part in the form of a computer program product.
- the computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, all or part of the processes or functions according to the embodiments of the present disclosure will be generated.
- the computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable devices.
- the computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website, computer, server or data center Transmission to another website site, computer, server or data center by wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.).
- the computer-readable storage medium may be any available medium that can be read by a computer, or a data storage device such as a server or a data center integrated with one or more available media.
- the available medium may be a magnetic medium, (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a digital versatile disc (digital video disc, DVD)) or a semiconductor medium (for example, a solid state disk (solid state disk, SSD) )wait.
- a magnetic medium for example, a floppy disk, a hard disk, a magnetic tape
- an optical medium for example, a digital versatile disc (digital video disc, DVD)
- a semiconductor medium for example, a solid state disk (solid state disk, SSD)
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
The present disclosure provides a blockchain-based remittance path management method and apparatus. A first smart contract is stored on a blockchain, the first smart contract being used to manage an available remittance path of at least one participant of multiple participants in a target remittance transaction; the available remittance path of the at least one participant is used to indicate an available remittance path that can be provided by the at least one participant for the target remittance transaction, and the at least one participant comprises a first participant. The method comprises: receiving a first call request of the first smart contract from the first participant, the first call request being used to set the available remittance path of the first participant; maintaining the available remittance path of the first participant in the first smart contract according to the first call request.
Description
本公开涉及区块链技术领域,具体涉及一种基于区块链的汇款汇路管理方法和装置。The present disclosure relates to the technical field of blockchain, and in particular to a method and device for managing remittance routes based on blockchain.
目前,区块链可以通过执行汇款交易合约为汇款交易提供服务。当汇款发起方需要发起目标汇款交易时,汇款发起方需要先通过金融平台的中心化系统,查询目标汇款交易的参与方的可用汇款汇路。如果汇款发起方查询到的可用汇款汇路与目标汇款交易所需的汇款汇路匹配,那么用户可以通过调用汇款交易合约的方式,在区块链上发起目标汇款交易,此时,区块链可以通过执行汇款交易合约来记录目标汇款交易的交易结果。Currently, blockchain can serve remittance transactions by executing remittance transaction contracts. When the remittance initiator needs to initiate a target remittance transaction, the remittance initiator needs to first query the available remittance routes of the participants in the target remittance transaction through the centralized system of the financial platform. If the available remittance route queried by the remittance initiator matches the remittance route required by the target remittance transaction, the user can initiate the target remittance transaction on the blockchain by calling the remittance transaction contract. At this time, the blockchain The transaction result of the target remittance transaction can be recorded by executing the remittance transaction contract.
也就是说,目标汇款交易的参与方的可用汇款汇路都是通过中心化系统维护的。在一些情况下,当汇款发起方通过中心化系统查询可用汇款汇路时,中心化系统会由于系统错误,导致维护的可用汇款汇路错误,从而向汇款发起方返回错误的结果,降低用户体验。例如,原本参与方的可用汇款汇路与目标汇款交易所需的汇款汇路匹配,但是由于中心化系统错误,导致维护的参与方的可用汇款汇路错误,将参与方的可用汇款汇路记录为不可用的汇款汇路,并向汇款发起方返回了“不匹配,或不存在可用汇款汇路”等错误的结果,导致汇款发起方无法发起目标汇款交易,降低用户体验。That is to say, the available remittance routes of the participants in the target remittance transaction are all maintained through the centralized system. In some cases, when the remittance initiator queries the available remittance routes through the centralized system, the centralized system may maintain incorrect remittance routes due to system errors, thus returning wrong results to the remittance initiator and reducing user experience . For example, the available remittance route of the original participant matches the remittance route required by the target remittance transaction, but due to an error in the centralized system, the maintenance of the available remittance route of the participant is wrong, and the available remittance route of the participant is recorded It is an unavailable remittance route, and an error result such as "does not match, or there is no available remittance route" is returned to the remittance initiator, resulting in the remittance initiator being unable to initiate the target remittance transaction and degrading user experience.
发明内容Contents of the invention
有鉴于此,本公开实施例致力于提供一种基于区块链的汇款汇路管理方法,以降低中心化系统维护可用汇款汇路时发生错误的可能性,提高用户体验。In view of this, the embodiments of the present disclosure are dedicated to providing a blockchain-based method for managing remittance routes, so as to reduce the possibility of errors occurring when the centralized system maintains available remittance routes and improve user experience.
第一方面,提供一种基于区块链的汇款汇路管理方法,所述区块链上存储有第一智能合约,所述第一智能合约用于管理目标汇款交易的多个参与方中的至少一个参与方的可用汇款汇路,所述至少一个参与方的可用汇款汇路用于指示所述至少一个参与方能够为所述目标汇款交易提供的可用汇款汇路,所述至少一个参与方包括第一参与方,所述方法包括:从所述第一参与方接收所述第一智能合约的第一调用请求,所述第一调用请求用于设置所述第一参与方的可用汇款汇路;根据所述第一调用请求,在所述第一智能合约中设置所述第一参与方的可用汇款汇路。In the first aspect, a blockchain-based method for managing remittance routes is provided, where a first smart contract is stored on the blockchain, and the first smart contract is used to manage the number of participants in the target remittance transaction. The available remittance route of at least one participant, the available remittance route of the at least one participant is used to indicate the available remittance route that the at least one participant can provide for the target remittance transaction, the at least one participant Including the first participant, the method includes: receiving a first call request of the first smart contract from the first participant, and the first call request is used to set the available remittance of the first participant according to the first call request, setting available remittance routes of the first participant in the first smart contract.
第二方面,提供一种基于区块链的汇款汇路管理方法,所述区块链上存储有第一智能合约,所述第一智能合约用于管理目标汇款交易的多个参与方中的至少一个参与方的可用汇款汇路,所述至少一个参与方的可用汇款汇路用于指示所述至少一个参与方能够 为所述目标汇款交易提供的可用汇款汇路,所述至少一个参与方包括第一参与方,所述方法应用于所述第一参与方,所述方法包括:获取所述第一参与方的可用汇款汇路;向所述区块链发送所述第一智能合约的第一调用请求,所述第一调用请求用于设置所述第一参与方的可用汇款汇路。In the second aspect, a blockchain-based method for managing remittance routes is provided, where a first smart contract is stored on the blockchain, and the first smart contract is used to manage the number of participants in the target remittance transaction. The available remittance route of at least one participant, the available remittance route of the at least one participant is used to indicate the available remittance route that the at least one participant can provide for the target remittance transaction, the at least one participant Including the first participant, the method is applied to the first participant, and the method includes: obtaining the available remittance route of the first participant; sending the first smart contract to the block chain A first call request, where the first call request is used to set the available remittance routes of the first participant.
第三方面,提供一种基于区块链的汇款汇路管理装置,所述区块链上存储有第一智能合约,所述第一智能合约用于管理目标汇款交易的多个参与方中的至少一个参与方的可用汇款汇路,所述至少一个参与方的可用汇款汇路用于指示所述至少一个参与方能够为所述目标汇款交易提供的可用汇款汇路,所述至少一个参与方包括第一参与方,所述装置包括:接收模块,用于从所述第一参与方接收所述第一智能合约的第一调用请求,所述第一调用请求用于设置所述第一参与方的可用汇款汇路;处理模块,用于根据所述第一调用请求,在所述第一智能合约中设置所述第一参与方的可用汇款汇路。In the third aspect, a block chain-based remittance route management device is provided, where a first smart contract is stored on the block chain, and the first smart contract is used to manage the number of participants in the target remittance transaction. The available remittance route of at least one participant, the available remittance route of the at least one participant is used to indicate the available remittance route that the at least one participant can provide for the target remittance transaction, the at least one participant Including the first participant, the device includes: a receiving module, configured to receive a first call request of the first smart contract from the first participant, and the first call request is used to set the first participant available remittance routes of the party; a processing module configured to set the available remittance routes of the first participant in the first smart contract according to the first call request.
第四方面,提供一种基于区块链的汇款汇路管理装置,所述区块链上存储有第一智能合约,所述第一智能合约用于管理目标汇款交易的多个参与方中的至少一个参与方的可用汇款汇路,所述至少一个参与方的可用汇款汇路用于指示所述至少一个参与方能够为所述目标汇款交易提供的可用汇款汇路,所述至少一个参与方包括第一参与方,所述装置应用于所述第一参与方,所述装置包括:获取模块,用于获取所述第一参与方的可用汇款汇路;发送模块,用于向所述区块链发送所述第一智能合约的第一调用请求,所述第一调用请求用于设置所述第一参与方的可用汇款汇路。In the fourth aspect, a block chain-based remittance channel management device is provided, where a first smart contract is stored on the block chain, and the first smart contract is used to manage the number of participants in the target remittance transaction. The available remittance route of at least one participant, the available remittance route of the at least one participant is used to indicate the available remittance route that the at least one participant can provide for the target remittance transaction, the at least one participant Including the first participant, the device is applied to the first participant, and the device includes: an acquisition module, used to obtain the available remittance route of the first participant; a sending module, used to send to the district The block chain sends a first call request of the first smart contract, and the first call request is used to set an available remittance route of the first participant.
第五方面,提供一种基于区块链的汇款汇路管理装置,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器被配置为执行所述可执行代码,以实现如第一方面或第二方面所述的方法。In the fifth aspect, there is provided a block chain-based remittance route management device, including a memory and a processor, wherein executable code is stored in the memory, and the processor is configured to execute the executable code to realize The method as described in the first aspect or the second aspect.
第六方面,提供一种计算机可读存储介质,其上存储有可执行代码,当所述可执行代码被执行时,能够实现如第一方面或第二方面所述的方法。In a sixth aspect, a computer-readable storage medium is provided, on which executable code is stored, and when the executable code is executed, the method as described in the first aspect or the second aspect can be implemented.
第七方面,提供一种计算机程序产品,包括可执行代码,当所述可执行代码被执行时,能够实现如第一方面或第二方面所述的方法。In a seventh aspect, a computer program product is provided, including executable codes, and when the executable codes are executed, the method as described in the first aspect or the second aspect can be implemented.
本公开实施例的方案是在区块链上通过第一智能合约来维护目标汇款交易的参与方的可用汇款汇路,使得作为区块链用户的参与方,可以通过调用第一智能合约来自主地维护可用汇款汇路。避免了传统的通过中心化系统来维护参与方的可用汇款汇路的方案中,由于中心化系统错误,而导致参与方的可用汇款汇路错误,有利于降低中心化系统 维护可用汇款汇路时发生错误的可能性,提高用户体验。The solution of the embodiment of the present disclosure is to maintain the available remittance routes of the participants in the target remittance transaction through the first smart contract on the blockchain, so that the participants as blockchain users can autonomously call the first smart contract Maintain available remittance routes in a timely manner. It avoids the traditional solution of using a centralized system to maintain the available remittance routes of the participants. Due to errors in the centralized system, the participants’ available remittance routes are wrong, which helps to reduce the time spent on maintaining the available remittance routes in the centralized system. Possibility of error occurs, improving user experience.
图1为本公开实施例适用的区块链的架构的示意图。FIG. 1 is a schematic diagram of a block chain architecture applicable to an embodiment of the present disclosure.
图2为资方A发起目标汇款交易的示意性流程图。FIG. 2 is a schematic flow chart of an employer A initiating a target remittance transaction.
图3为本公开实施例的基于区块链的汇款汇路管理方法的示意性流程图。FIG. 3 is a schematic flowchart of a blockchain-based remittance route management method according to an embodiment of the present disclosure.
图4为本公开实施例的第一智能合约的更新过程的示意性流程图。Fig. 4 is a schematic flow chart of the update process of the first smart contract according to the embodiment of the present disclosure.
图5是本公开实施例的第一智能合约的使用过程的示意性流程图。Fig. 5 is a schematic flowchart of the process of using the first smart contract according to the embodiment of the present disclosure.
图6是本公开实施例的第一智能合约的查询过程的示意性流程图。Fig. 6 is a schematic flowchart of the query process of the first smart contract according to the embodiment of the present disclosure.
图7是本公开实施例的基于区块链的汇款汇路管理装置的示意性结构图。Fig. 7 is a schematic structural diagram of a block chain-based remittance route management device according to an embodiment of the present disclosure.
图8是本公开另一实施例的基于区块链的汇款汇路管理装置的示意性结构图。Fig. 8 is a schematic structural diagram of a blockchain-based remittance route management device according to another embodiment of the present disclosure.
图9是本公开又一实施例提供的基于区块链的汇款汇路管理装置的示意性结构图。Fig. 9 is a schematic structural diagram of a blockchain-based remittance route management device provided by another embodiment of the present disclosure.
图10是本公开又一实施例提供的基于区块链的汇款汇路管理装置的示意性结构图。Fig. 10 is a schematic structural diagram of a blockchain-based remittance route management device provided by another embodiment of the present disclosure.
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本公开一部分实施例,而不是全部的实施例。The following will clearly and completely describe the technical solutions in the embodiments of the present disclosure with reference to the accompanying drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only some of the embodiments of the present disclosure, not all of them.
为了便于理解本公开的方案,下文先结合图1介绍本公开适用的区块链架构,以及涉及的一些概念。In order to facilitate the understanding of the solution of the present disclosure, the blockchain architecture applicable to the present disclosure and some concepts involved are introduced below in conjunction with FIG. 1 .
区块链架构。Blockchain architecture.
图1为本公开实施例适用的区块链的架构的示意图。图1所示的架构100包括区块链节点110和用户节点120。FIG. 1 is a schematic diagram of a block chain architecture applicable to an embodiment of the present disclosure. The architecture 100 shown in FIG. 1 includes blockchain nodes 110 and user nodes 120 .
区块链(Blockchain)是一个典型的分布式协同系统,多方共同维护一个不断增长的分布式数据记录,这些记录的数据通过密码学技术保护内容和时序,使得任何一方难以篡改、抵赖、造假。Blockchain (Blockchain) is a typical distributed collaborative system. Multiple parties jointly maintain a growing distributed data record. The content and timing of these recorded data are protected by cryptography technology, making it difficult for any party to tamper, deny, or falsify.
在区块链中,数据(例如,打包交易数据、交易执行结果等)可以以区块(Block)的形式被封装。区块彼此之间可以通过前向的应用彼此链接形成“链”,即区块链。在一些实现方式中,每个区块记录着上一个区块的哈希值、本区块中的交易集合、本区块 的哈希等基础数据。In the blockchain, data (for example, packaged transaction data, transaction execution results, etc.) can be encapsulated in the form of blocks. Blocks can be linked to each other through forward applications to form a "chain", that is, a blockchain. In some implementations, each block records basic data such as the hash value of the previous block, the transaction set in this block, and the hash of this block.
通常,区块链的用户节点120可以通过客户端与区块链节点110进行通信。在一些情况下,用户节点120可以将需要存储的数据,以提交交易(Transaction)的方式发送给关联的一个或多个区块链节点110。其中,交易可以理解为区块链上的一个事务请求,用来承载具体业务操作数据的结构。区块链上所有针对世界状态的变化操作均可以是基于交易来完成的。Generally, the user node 120 of the blockchain can communicate with the blockchain node 110 through a client. In some cases, the user node 120 may send the data to be stored to one or more associated blockchain nodes 110 in a manner of submitting a transaction. Among them, a transaction can be understood as a transaction request on the blockchain, which is used to carry the structure of specific business operation data. All changes to the state of the world on the blockchain can be done based on transactions.
相应地,区块链节点110在验证数据的有效性之后,可以通过全网广播的方式将数据广播至每个区块链节点110。这样,每个区块链节点110都记录有全量的、一致的数据。Correspondingly, after the blockchain node 110 verifies the validity of the data, it can broadcast the data to each blockchain node 110 in a network-wide broadcast manner. In this way, each blockchain node 110 records a full amount of consistent data.
例如,在本公开实施例的进行汇款交易的场景中,上述区块链节点110可以是具有执行汇款相关功能的节点,例如,记录汇款交易的交易状态等。相应地,上述用户节点120可以包括位于汇款发起方的用户节点,例如,资方A的用户节点122。上述用户节点120还可以包括执行汇款的汇款机构的用户节点,例如,汇款银行的用户节点121。上述用户节点120还可以接收汇款的收款机构的用户节点,例如,收款银行的用户节点123。For example, in the scenario of performing remittance transactions in the embodiments of the present disclosure, the aforementioned blockchain node 110 may be a node that performs remittance-related functions, for example, recording the transaction status of remittance transactions. Correspondingly, the above-mentioned user node 120 may include a user node located at the remittance initiator, for example, the user node 122 of the employer A. The above-mentioned user node 120 may also include a user node of a remittance institution performing remittance, for example, a user node 121 of a remittance bank. The above-mentioned user node 120 may also be a user node of a money collection institution that receives remittances, for example, a user node 123 of a beneficiary bank.
在一些实现方式中,上述区块链节点110可以是服务器,或者其他具有计算能力的设备。上述用户节点120可以是服务器、移动终端,或者其他具有计算能力的设备。In some implementations, the aforementioned blockchain node 110 may be a server, or other devices with computing capabilities. The aforementioned user node 120 may be a server, a mobile terminal, or other devices with computing capabilities.
智能合约(Smart Contracts)。Smart Contracts.
智能合约是一套以数字形式定义的承诺,包括合约参与方可以在上面执行这些承诺的协议。或者说,智能合约可以理解为部署在计算机系统上的一段程序,当智能合约的触发条件被满足时,智能合约可以被自动地执行。A smart contract is a set of promises defined in digital form, including an agreement on which the parties to the contract can enforce those promises. In other words, a smart contract can be understood as a program deployed on a computer system. When the trigger conditions of the smart contract are met, the smart contract can be automatically executed.
区块链的出现为智能合约的实现提供了技术支撑。将智能合约以数字化的形式写入区块链中,由区块链技术的特性保障智能合约的存储、读取、执行整个过程透明可跟踪、不可攥改。另一方面,可以由区块链自带的共识算法构建出一套状态机系统,使得智能合约能够高效地运行。The emergence of blockchain provides technical support for the realization of smart contracts. The smart contract is written into the blockchain in a digital form, and the characteristics of the blockchain technology ensure that the entire process of storage, reading, and execution of the smart contract is transparent, traceable, and unchangeable. On the other hand, a state machine system can be constructed by the consensus algorithm that comes with the blockchain, so that smart contracts can run efficiently.
在一些实现方式中,用户可以通过向区块链系统提交交易的方式,调用智能合约,并对智能合约中记录的数据进行设置,并将设置后的智能合约存储在区块链中。相应地,当智能合约的特定条件被触发后,区块链节点可以执行智能合约,并记录智能合约的执行结果,智能合约的执行状态。In some implementations, the user can call the smart contract by submitting a transaction to the blockchain system, set the data recorded in the smart contract, and store the set smart contract in the blockchain. Correspondingly, when the specific conditions of the smart contract are triggered, the blockchain node can execute the smart contract, and record the execution result of the smart contract and the execution status of the smart contract.
目前,区块链可以通过执行汇款交易合约为汇款交易提供服务。当汇款发起方需要发起目标汇款交易时,汇款发起方需要先通过金融平台的中心化系统,查询目标汇款交易的参与方的可用汇款汇路,其中,可用汇款汇路可以理解为可以进行汇款交易的付款方和收款方之间的路径。如果汇款发起方查询到的可用汇款汇路与目标汇款交易所需的汇款汇路匹配,那么用户可以通过调用汇款交易合约的方式,在区块链上发起目标汇款交易,此时,区块链可以通过执行汇款交易合约来记录目标汇款交易的交易结果。Currently, blockchain can serve remittance transactions by executing remittance transaction contracts. When the remittance initiator needs to initiate a target remittance transaction, the remittance initiator needs to first query the available remittance routes of the participants in the target remittance transaction through the centralized system of the financial platform. Among them, the available remittance routes can be understood as the remittance transactions can be carried out The path between the payer and the payee. If the available remittance route queried by the remittance initiator matches the remittance route required by the target remittance transaction, the user can initiate the target remittance transaction on the blockchain by calling the remittance transaction contract. At this time, the blockchain The transaction result of the target remittance transaction can be recorded by executing the remittance transaction contract.
下文结合图2以汇款发起方为资方A发起目标汇款交易为例,介绍目标汇款交易的发起过程。假设资方A需要向资方B进行目标汇款交易,且该目标汇款交易所需的汇款汇路为汇款机构A向汇款机构B进行汇款。另外,中心化系统中会记录汇款机构A的可用汇款汇路。The following describes the process of initiating a target remittance transaction by taking the remittance initiator as an example of a target remittance transaction initiated by employer A in combination with Figure 2 . Assume that investor A needs to conduct a target remittance transaction to investor B, and the remittance channel required for the target remittance transaction is remittance institution A to remittance institution B. In addition, the available remittance routes of remittance institution A will be recorded in the centralized system.
在步骤S210中,资方A需要向中心化系统发送查询请求,以查询汇款机构A的可用汇款汇路。In step S210, employer A needs to send an inquiry request to the centralized system to inquire about the available remittance routes of remittance institution A.
在步骤S220中,如果汇款机构A的可用汇款汇路中未记录汇款机构A向汇款机构B的汇款汇路,即汇款机构A的可用汇款汇路与目标汇款交易所需的汇款汇路不匹配,资方A不向区块链发起目标汇款交易。In step S220, if the remittance route from remittance institution A to remittance institution B is not recorded in the available remittance route of remittance institution A, that is, the available remittance route of remittance institution A does not match the remittance route required by the target remittance transaction , employer A does not initiate a target remittance transaction to the blockchain.
在步骤S230中,如果汇款机构A的可用汇款汇路中记录有汇款机构A向汇款机构B的汇款汇路,即汇款机构A的可用汇款汇路与目标汇款交易所需的汇款汇路匹配时,资方A可以通过调用区块链中的汇款交易合约的方式,来记录链下执行的目标汇款交易的交易状态。其中,上述交易状态包括:等待对方确认、交易成功、交易失败等。In step S230, if the remittance route from remittance institution A to remittance institution B is recorded in the available remittance route of remittance institution A, that is, when the available remittance route of remittance institution A matches the remittance route required by the target remittance transaction , employer A can record the transaction status of the target remittance transaction executed off-chain by calling the remittance transaction contract in the blockchain. Wherein, the above-mentioned transaction status includes: waiting for confirmation by the counterparty, transaction success, transaction failure, etc.
在步骤S240中,区块链执行汇款交易合约,以记录链下执行的目标汇款交易的交易状态。In step S240, the blockchain executes the remittance transaction contract to record the transaction status of the target remittance transaction executed off-chain.
然而,如上文所述,目标汇款交易的参与方的可用汇款汇路都是通过中心化系统维护的。在一些情况下,当汇款发起方通过中心化系统查询可用汇款汇路时,中心化系统会由于系统错误,导致维护的可用汇款汇路错误,从而向汇款发起方返回错误的结果。例如,原本参与方的可用汇款汇路与目标汇款交易所需的汇款汇路匹配,但是由于中心化系统错误,导致维护的参与方的可用汇款汇路错误,将参与方的可用汇款汇路记录为不可用的汇款汇路,并向汇款发起方返回了“不匹配,或不存在可用汇款汇路”等的错误结果,导致汇款发起方无法发起目标汇款交易,降低用户体验。However, as mentioned above, the remittance routes available to the parties involved in the target remittance transaction are all maintained through a centralized system. In some cases, when the remittance initiator queries the available remittance routes through the centralized system, the centralized system may maintain incorrect remittance routes due to system errors, thus returning wrong results to the remittance initiator. For example, the available remittance route of the original participant matches the remittance route required by the target remittance transaction, but due to an error in the centralized system, the maintenance of the available remittance route of the participant is wrong, and the available remittance route of the participant is recorded It is an unavailable remittance route, and an error result such as "does not match, or there is no available remittance route" is returned to the remittance initiator, resulting in the remittance initiator being unable to initiate the target remittance transaction and degrading user experience.
另一方面,由于中心化系统存在作恶的可能性,通过中心化系统来维护参与方的可 用汇款汇路,可能导致可用汇款汇路的安全性降低。On the other hand, due to the possibility of evil in the centralized system, maintaining the available remittance routes of the participants through the centralized system may reduce the security of the available remittance routes.
因此,为了避免上述问题,本公开提供了一种基于区块链的汇款汇路管理方法,即在区块链上通过第一智能合约来维护上述参与方的可用汇款汇路,使得作为区块链用户的参与方,可以通过调用第一智能合约来自主地维护可用汇款汇路,有利于降低中心化系统维护可用汇款汇路时发生错误的可能性,提高用户体验。Therefore, in order to avoid the above problems, this disclosure provides a blockchain-based remittance route management method, that is, the first smart contract is used to maintain the available remittance routes of the above-mentioned participants on the blockchain, so that as a block The participants of the chain users can maintain the available remittance routes autonomously by calling the first smart contract, which is beneficial to reduce the possibility of errors when the centralized system maintains the available remittance routes and improve user experience.
另一方面,在区块链上通过第一智能合约来维护上述参与方的可用汇款汇路,有利于提高可用汇款汇路的安全性。On the other hand, maintaining the available remittance routes of the above-mentioned participants through the first smart contract on the block chain is conducive to improving the security of the available remittance routes.
下文结合图3介绍本公开实施例的基于区块链的汇款汇路管理方法。为了便于理解,先介绍本公开实施例的第一智能合约。The following describes the blockchain-based remittance route management method of the embodiment of the present disclosure with reference to FIG. 3 . For ease of understanding, the first smart contract in the embodiment of the present disclosure is introduced first.
第一智能合约用于管理目标汇款交易的多个参与方中的至少一个参与方的可用汇款汇路。其中至少一个参与方的可用汇款汇路用于指示至少一个参与方能够为目标汇款交易提供的可用汇款汇路。因此,第一智能合约也可以称为“汇路管理合约”。The first smart contract is used to manage the available remittance routes of at least one of the multiple participants in the target remittance transaction. The available remittance route of at least one participant is used to indicate the available remittance route that at least one participant can provide for the target remittance transaction. Therefore, the first smart contract can also be called "Huilu Management Contract".
假设目标汇款交易所需的汇款汇路为从银行A向银行B进行汇款交易,也就是说,目标汇款交易的多个参与方包括银行A和银行B。表1示出了本公开实施例中第一智能合约记录可用汇款汇路的一种可能的实现方式。Assume that the remittance route required by the target remittance transaction is a remittance transaction from bank A to bank B, that is to say, multiple participants in the target remittance transaction include bank A and bank B. Table 1 shows a possible implementation of the first smart contract recording available remittance routes in the embodiment of the present disclosure.
表1Table 1
参见表1,第一智能合约中记录有银行A和银行B的可用汇款汇路。其中,银行A的可用汇款汇路包括:银行A与银行B之间的汇款汇路;银行A分行1与银行A分行2之间的汇款汇路。银行B的可用汇款汇路包括:银行B与银行A之间的汇款汇路;银行B分行2与银行B分行3之间的汇款汇路;以及银行B与银行C之间的汇款汇路。Referring to Table 1, the available remittance routes of Bank A and Bank B are recorded in the first smart contract. Among them, the available remittance routes of bank A include: the remittance route between bank A and bank B; the remittance route between bank A branch 1 and bank A branch 2. The available remittance routes of Bank B include: the remittance route between Bank B and Bank A; the remittance route between Bank B Branch 2 and Bank B Branch 3; and the remittance route between Bank B and Bank C.
需要说明的是,上述可用汇款汇路用于指示汇款交易可以使用的路径,并不用于限定执行汇款交易时的汇款方向。例如,可用汇款汇路“银行A-银行B”可以用于指示在银行A和银行B之间进行汇款交易,也就是说,可以从银行A向银行B进行汇款,也可以从银行B向银行A进行汇款。It should be noted that the above available remittance routes are used to indicate the paths available for remittance transactions, and are not used to limit the direction of remittance when executing remittance transactions. For example, the available remittance route "Bank A-Bank B" can be used to indicate a remittance transaction between Bank A and Bank B, that is, remittances can be made from Bank A to Bank B, or from Bank B to Bank B A makes a remittance.
另外,第一智能合约还可以记录其他机构的可用汇款汇路,例如,可以记录银行D的可用汇款汇路。本公开实施例对此不作限定。In addition, the first smart contract can also record the available remittance routes of other institutions, for example, the available remittance routes of Bank D can be recorded. The embodiment of the present disclosure does not limit this.
在一些情况下,可用汇款汇路可能对汇款使用的货币种类有限制。例如,对于可用汇款汇路“银行A-银行B”而言,该可用汇款汇路仅支持货币种类1(例如,人民币)的汇款方式。这样,在上述第一智能合约中还可以记录每条可用汇款汇路支持的货币种类。例如,可以按照“银行A-银行B-货币种类”这一格式,在第一智能合约中记录。当然,对于对货币种类没有限制的可用汇款汇路而言,也可以不记录可用汇款汇路支持的货币种类。本公开实施例对此不作限定。In some cases, the available remittance routes may have restrictions on the type of currency used for remittances. For example, for the available remittance route "Bank A-Bank B", the available remittance route only supports the remittance method of currency type 1 (for example, RMB). In this way, the types of currencies supported by each available remittance route can also be recorded in the above-mentioned first smart contract. For example, it can be recorded in the first smart contract according to the format of "bank A-bank B-currency type". Certainly, for an available remittance route with no restriction on currency types, the currency types supported by the available remittance route may not be recorded. The embodiment of the present disclosure does not limit this.
为了便于查询第一智能合约,可以为上述第一智能合约设置查询接口,以便区块链的其他用户可以通过查询接口来查询第一智能合约中记录的可用汇款汇路。另外,为了便于更新第一智能合约,还可以为上述第一智能合约设置更新接口,这样,参与方可以通过更新接口来调用第一智能合约,以对第一智能合约中记录的可用汇款汇路进行更新。上述第一智能合约的查询、更新的过程将在下文结合图4至图6介绍,为了简洁,在此不再赘述。In order to facilitate the query of the first smart contract, a query interface can be set for the above-mentioned first smart contract, so that other users of the blockchain can query the available remittance routes recorded in the first smart contract through the query interface. In addition, in order to facilitate the update of the first smart contract, an update interface can also be set for the above-mentioned first smart contract, so that the participants can call the first smart contract through the update interface to update the available remittance routes recorded in the first smart contract to update. The query and update process of the above-mentioned first smart contract will be introduced below in conjunction with FIG. 4 to FIG. 6 , and will not be repeated here for the sake of brevity.
另外,本公开对上述第一智能合约的创建过程不作限定,上述第一智能合约可以是区块链的供应商创建并部署在区块链中的,以便区块链的用户(例如,上述目标汇款交易的参与方)通过更新接口来调用,并在第一智能合约中记录参与方的可用汇款汇路。当然,上述第一智能合约还可以是区块链的用户创建并部署在区块链中的,例如,可以是目标汇款交易的参与方创建的,这样目标汇款交易的参与方在创建第一智能合约的过程中,可以直接将可用的汇款汇路连同第一智能合约一起部署在区块链上。In addition, this disclosure does not limit the creation process of the above-mentioned first smart contract. The above-mentioned first smart contract can be created and deployed in the blockchain by the supplier of the blockchain, so that users of the blockchain (for example, the above-mentioned target The participant of the remittance transaction) is called by updating the interface, and the available remittance route of the participant is recorded in the first smart contract. Of course, the above-mentioned first smart contract can also be created and deployed in the blockchain by users of the blockchain. For example, it can be created by the participants of the target remittance transaction, so that the participants of the target During the contract process, the available remittance routes can be directly deployed on the blockchain together with the first smart contract.
图3是本公开实施例的区块链的汇款汇路管理方法的示意性流程图。图3所示的方法包括步骤S310至步骤S330。图3所示的方法可以应用于图1所示的区块链架构中,这样,执行步骤S310的第一参与方可以是区块链的用户120,例如,汇款银行的用户节点121或者收款银行的用户节点123。相应地,执行步骤S320和步骤S330的区块链节点可以是架构100中可以与用户120通信的一个或多个区块链节点110。Fig. 3 is a schematic flow chart of a blockchain remittance channel management method according to an embodiment of the present disclosure. The method shown in FIG. 3 includes steps S310 to S330. The method shown in Figure 3 can be applied to the block chain architecture shown in Figure 1, so that the first participant in step S310 can be the user 120 of the block chain, for example, the user node 121 of the remittance bank or the receiving party User node 123 of the bank. Correspondingly, the blockchain nodes performing step S320 and step S330 may be one or more blockchain nodes 110 in the architecture 100 that can communicate with the user 120 .
在步骤S310中,第一参与方获取第一参与方的可用汇款汇路。In step S310, the first participant acquires available remittance routes of the first participant.
上述第一参与方的可用汇款汇路可以理解为第一参与方的待上链的可用汇款汇路。例如,可以是第一参与方需要更新的可用汇款汇路。又例如,可以是第一参与方新创建的可用汇款汇路。The above-mentioned available remittance routes of the first participant can be understood as the available remittance routes of the first participant to be linked. For example, it may be that the first party needs to update the available remittance routes. For another example, it may be an available remittance route newly created by the first participant.
在步骤S320中,区块链节点从第一参与方接收第一智能合约的第一调用请求。In step S320, the blockchain node receives a first invocation request of the first smart contract from the first participant.
上述第一参与方为参与目标汇款交易的多个参与方中的一个。上述第一参与方可以是执行目标汇款交易的汇款银行,上述第一参与方还可以是执行目标汇款交易的收款银行。The above-mentioned first participant is one of the multiple participants participating in the target remittance transaction. The first participant may be the remittance bank that executes the target remittance transaction, and the first participant may also be the receiving bank that executes the target remittance transaction.
上述第一调用请求用于设置第一参与方的可用汇款汇路。在一些实现方式中,上述设置可以理解为创建,此时,第一调用请求可以理解为用于创建第一参与方的可用汇款汇路。在另一些实现方式中,上述设置可以理解为更新,此时,第一调用请求可以理解为用于更新第一参与方的可用汇款汇路。The above-mentioned first call request is used to set the available remittance routes of the first participant. In some implementations, the above setting can be understood as creation, and at this time, the first call request can be understood as being used to create an available remittance route for the first participant. In some other implementation manners, the above setting can be understood as an update, at this time, the first call request can be understood as being used to update the available remittance routes of the first participant.
在步骤S330中,区块链节点根据第一调用请求,在第一智能合约中设置第一参与方的可用汇款汇路。In step S330, the blockchain node sets the available remittance routes of the first participant in the first smart contract according to the first call request.
通常,为了提高可用汇款汇路的安全性,在步骤S330之前,区块链节点可以对第一参与方进行用户鉴权,以确定第一参与方有权利对可用汇款汇路进行设置。例如,确认第一参与方式链上用户,并且第一参与方的角色为银行,此时,第一参与方有权利对可用汇款汇路进行设置。在一些实现方式中,上述用户鉴权可以基于公钥和数据签名来实现。具体地,区块链节点可以存有第一参与方的公钥,并且,第一参与方在设置可用汇款汇路时,可以使用第一参与方的私钥对可用汇款汇路进行数字签名,这样,当区块链节点收到第一参与方上传的可用汇款汇路时,区块链节点可以使用第一参与方的公钥对可用汇款汇路上的数字签名进行验证,如果验证通过,那么第一参与方有权利设置可用汇款汇路。相反,如果验证不通过,那么第一参与方没有权利设置可用汇款汇路。Usually, in order to improve the security of the available remittance routes, before step S330, the blockchain node may perform user authentication on the first participant to determine that the first participant has the right to set the available remittance routes. For example, if the user on the chain of the first participation method is confirmed, and the role of the first participant is a bank, at this time, the first participant has the right to set the available remittance routes. In some implementations, the above user authentication can be implemented based on public keys and data signatures. Specifically, the blockchain node can store the public key of the first participant, and the first participant can use the private key of the first participant to digitally sign the available remittance route when setting up the available remittance route, In this way, when the blockchain node receives the available remittance route uploaded by the first participant, the blockchain node can use the public key of the first participant to verify the digital signature on the available remittance route. If the verification is passed, then The first participant has the right to set available remittance routes. On the contrary, if the verification fails, the first participant has no right to set available remittance routes.
另外,为了确认第一参与方设置的可用汇款汇路的合法性,在步骤S330之前,区块链节点还可以对第一参与方上传的可用汇款汇路进行合法性验证。在一些实现方式中,区块链可以按照汇款汇路指定的可用汇款汇路的格式(例如,可以是表1中所示出的格式),来确定可用汇款汇路涉及的汇款方和收款方是不是都是合法的链上用户,如果汇款方和收款方都是合法的链上用户,区块链节点可以确定第一参与方设置的可用汇款汇路是合法的,那么区块链节点可以在第一智能合约维护可用汇款汇路。相反,如果汇款方和/或收款方不是合法的链上用户,区块链节点可以确定第一参与方设置的可用汇款汇路是不合法的,那么区块链节点不会对可用汇款汇路进行维护。In addition, in order to confirm the legitimacy of the available remittance routes set by the first participant, before step S330, the blockchain node may also verify the validity of the available remittance routes uploaded by the first participant. In some implementations, the block chain can determine the remitter and payee involved in the available remittance route according to the format of the available remittance route specified by the remittance route (for example, it may be the format shown in Table 1) Whether the party is a legal user on the chain, if both the remitter and the payee are legal users on the chain, the block chain node can determine that the available remittance route set by the first participant is legal, then the block chain Nodes can maintain available remittance routes in the first smart contract. On the contrary, if the remitter and/or the payee are not legal users on the chain, the blockchain node can determine that the available remittance route set by the first participant is illegal, then the blockchain node will not check the available remittance route road maintenance.
在一些实现方式中,上述区块链节点确定可用汇款汇路涉及的汇款方和收款方是不是合法的链上用户,可以通过汇款方、收款方是不是具有对应的链上用户来判断。例如, 区块链节点可以存有全部链上用户的链上用户名和该用户的链下用户名之间的对应关系,并且上述可用汇款汇路的汇款方、收款方使用的是汇款方、收款方的链下用户名(例如,银行的名称),此时,区块链可以基于上述映射关系,以及汇款方、收款方的链下用户名,来判断汇款方、收款方是否具有对应的链上用户名,以便确定汇款方、收款方是不是合法的链上用户。In some implementations, the above-mentioned blockchain nodes determine whether the remitter and payee involved in the available remittance route are legal on-chain users, which can be judged by whether the remitter and the payee have corresponding on-chain users . For example, the blockchain node can store the corresponding relationship between the user name on the chain of all users on the chain and the user name off the chain of the user, and the remitter and receiver of the above-mentioned available remittance routes use the remitter, The off-chain user name of the payee (for example, the name of the bank). At this time, the blockchain can determine whether the remitter and the payee are Have a corresponding user name on the chain, so as to determine whether the remitter and the payee are legal users on the chain.
为了便于理解本公开,下文以对第一智能合约更新为例,结合图4介绍本公开实施例的第一智能合约的更新过程。需要说明的是,图4主要介绍对第一智能合约进行更新的方法流程,关于第一参与方、第一智能合约、可用汇款汇路、用户鉴权、合法性验证等内容的相关介绍可以参见上文,为了简洁,在此不再赘述。In order to facilitate the understanding of the present disclosure, the update process of the first smart contract in the embodiment of the present disclosure will be introduced below by taking the update of the first smart contract as an example with reference to FIG. 4 . It should be noted that Figure 4 mainly introduces the method flow for updating the first smart contract. For related introductions about the first participant, the first smart contract, available remittance routes, user authentication, legality verification, etc., please refer to The above, for the sake of brevity, will not be repeated here.
图4是本公开实施例的第一智能合约的更新过程的示意性流程图。图4所示的方法包括步骤S410至步骤S460。Fig. 4 is a schematic flowchart of the updating process of the first smart contract according to the embodiment of the present disclosure. The method shown in FIG. 4 includes steps S410 to S460.
在步骤S410中,第一参与方设置更新后的可用汇款汇路列表。In step S410, the first participant sets an updated list of available remittance routes.
第一参与方可以通过调用第一智能合约的更新接口,来输入第一可用汇款汇路列表。The first participant may input the first list of available remittance routes by calling the update interface of the first smart contract.
在步骤S420中,区块链节点对第一参与方进行用户鉴权。In step S420, the blockchain node performs user authentication on the first participant.
上述更新后的汇款汇路是通过第一参与方的私钥进行数字签名的。区块链节点可以基于第一参与方的公钥对数字签名进行验证,以确定第一参与方进行用户鉴权,如果用户鉴权通过,可以执行步骤S430。如果用户鉴权不通过,则更新失败,执行步骤S440结束更新流程。The above updated remittance route is digitally signed by the private key of the first participant. The blockchain node may verify the digital signature based on the public key of the first participant to determine that the first participant performs user authentication, and if the user authentication passes, step S430 may be executed. If the user authentication fails, the update fails, and step S440 is executed to end the update process.
在步骤S430中,区块链节点对可用汇款汇路列表中的可用汇款汇路进行合法性验证。In step S430, the blockchain node verifies the legitimacy of the available remittance routes in the list of available remittance routes.
如果合法性验证通过,则执行步骤S450。如果合法性验证不通过,则更新失败,执行步骤S440。If the legality verification is passed, step S450 is executed. If the validity verification fails, the update fails, and step S440 is performed.
在步骤S450中,区块链节点将第一智能合约中的可用汇款汇路更新为上述第一可用汇款汇路列表。In step S450, the blockchain node updates the available remittance routes in the first smart contract to the first available remittance route list.
在步骤S460中,第一智能合约更新成功。In step S460, the first smart contract is updated successfully.
区块链节点可以将上述第一可用汇款汇路列表作为第一智能合约的数据,持久化存储在区块链中。The block chain node can use the above-mentioned first available remittance route list as the data of the first smart contract, and persistently store it in the block chain.
需要说明的是,本公开对上述步骤S420和步骤S430之间的执行顺序不作限定。上述步骤S430也可以在步骤S420之前执行,此时,当步骤S430的合法性验证为通过时, 可以执行步骤S420,并且只有当步骤S420的用户鉴权结果也为通过时,才能继续执行步骤S450。当然,步骤S420和步骤S430也可以同时执行,即只有当步骤S420的用户鉴权结果以及步骤S430的合法性验证同时为通过时,才能执行步骤S450。It should be noted that, the present disclosure does not limit the execution sequence between the above step S420 and step S430. The above step S430 can also be executed before step S420. At this time, when the legality verification of step S430 is passed, step S420 can be executed, and only when the user authentication result of step S420 is also passed, step S450 can be continued . Of course, step S420 and step S430 can also be executed at the same time, that is, step S450 can be executed only when the user authentication result of step S420 and the legality verification of step S430 both pass.
如上文所述,在传统的汇款交易发起过程中,汇款发起方需要先去中心化系统查询参与方的可用汇款汇路。但是,在一些情况下,汇款发起方可能并没按照流程先查询可用汇款汇路,而是直接在链上发起了第一交易执行请求,以请求第一参与方执行目标汇款交易。此时,如果目标汇款交易所需的汇款汇路与第一参与方的可用汇款汇路不匹配,便需要第一参与方确认可用汇款汇路与目标汇款交易所需的汇款汇路不匹配,之后链上发起的第一交易才能关闭。然而,第一参与方如果不能及时确认,第一交易的交易状态便会一直停滞,并处于“等待第一参与方确认”的状态,这样,汇款发起方便无法及时获知第一交易最终的执行结果,降低了用户体验。As mentioned above, in the process of initiating a traditional remittance transaction, the remittance initiator needs to first query the available remittance routes of the participants in the decentralized system. However, in some cases, the remittance initiator may not first query the available remittance routes according to the process, but directly initiates the first transaction execution request on the chain to request the first participant to execute the target remittance transaction. At this time, if the remittance route required by the target remittance transaction does not match the available remittance route of the first participant, the first participant needs to confirm that the available remittance route does not match the remittance route required by the target remittance transaction, Then the first transaction initiated on the chain can be closed. However, if the first participant fails to confirm in time, the transaction status of the first transaction will remain stagnant and will be in the state of "waiting for the confirmation of the first participant". In this way, the remittance initiator cannot timely know the final execution result of the first transaction , reducing the user experience.
为了避免上述问题,本公开还提供一种区块链的汇款汇路管理方法,将第一智能合约中记录的可用汇款汇路与目标汇款交易所需的汇款汇路进行匹配,得到匹配结果,并基于匹配结果自动推进第一交易的交易状态,避免了传统的汇款交易提交方式下,由于第一参与方无法及时确认,导致第一交易的交易状态停滞,汇款发起方便无法及时获知第一交易最终的执行结果,有利于提高用户体验。In order to avoid the above problems, the present disclosure also provides a block chain remittance route management method, which matches the available remittance route recorded in the first smart contract with the remittance route required by the target remittance transaction, and obtains the matching result. And based on the matching results, the transaction status of the first transaction is automatically promoted, avoiding the stagnation of the transaction status of the first transaction due to the failure of the first participant to confirm in time under the traditional remittance transaction submission method, and the inability to know the first transaction in time for the convenience of remittance initiation The final execution result is conducive to improving user experience.
继续参见图3,上述方法还可以包括步骤S340至步骤S360。Continuing to refer to FIG. 3 , the above method may further include step S340 to step S360 .
在步骤S340中,从第二参与方接收第一交易执行请求,第一交易执行请求用于请求第一参与方执行目标汇款交易。In step S340, a first transaction execution request is received from the second participant, and the first transaction execution request is used to request the first participant to execute the target remittance transaction.
上述第二参与方可以是目标汇款交易的发起方,例如,可以是上文介绍的资方A。The above-mentioned second participant may be the initiator of the target remittance transaction, for example, it may be the investor A introduced above.
在步骤S350中,响应于第一交易执行请求,调用第一智能合约,以查询目标汇款交易所需的汇款汇路与第一参与方的可用汇款汇路是否匹配。In step S350, in response to the first transaction execution request, the first smart contract is invoked to query whether the remittance route required by the target remittance transaction matches the available remittance route of the first participant.
若目标汇款交易所需的汇款汇路与第一参与方的可用汇款汇路匹配,可以理解为,第一参与方的可用汇款汇路中包含目标汇款交易所需的汇款汇路。例如,目标汇款交易所需的汇款汇路为从银行A向银行B汇款,此时,如果银行A作为第一参与方,并参见表1可知,银行A的可用汇款汇路中包含“银行A-银行B”,那么银行A的可用汇款汇路与目标汇款交易所需的汇款汇路匹配。If the remittance route required by the target remittance transaction matches the available remittance route of the first participant, it can be understood that the remittance route required by the target remittance transaction is included in the available remittance route of the first participant. For example, the remittance route required for the target remittance transaction is remittance from bank A to bank B. At this time, if bank A is the first participant, and referring to Table 1, it can be seen that the available remittance route of bank A includes "bank A -Bank B", then the available remittance route of Bank A matches the remittance route required by the target remittance transaction.
若目标汇款交易所需的汇款汇路与第一参与方的可用汇款汇路不匹配,可以理解为,第一参与方的可用汇款汇路中不包含目标汇款交易所需的汇款汇路。例如,目标汇款交 易所需的汇款汇路为从银行A向银行C汇款,此时,如果银行A作为第一参与方,并参见表1可知,银行的可用汇款汇路中并不包含“银行A-银行C”的汇款汇路,那么银行A的可用汇款汇路与目标汇款交易所需的汇款汇路不匹配。If the remittance route required by the target remittance transaction does not match the remittance route available to the first participant, it can be understood that the remittance route required by the target remittance transaction is not included in the available remittance routes of the first participant. For example, the remittance route required for the target remittance transaction is remittance from bank A to bank C. At this time, if bank A is the first participant, and referring to Table 1, it can be seen that the available remittance route of the bank does not include "bank A-Bank C"'s remittance route, then the available remittance route of Bank A does not match the remittance route required by the target remittance transaction.
在步骤S360中,如果目标汇款交易所需的汇款汇路与第一参与方的可用汇款汇路不匹配,终止目标汇款交易。In step S360, if the remittance route required by the target remittance transaction does not match the available remittance route of the first participant, the target remittance transaction is terminated.
上述终止目标汇款交易可以理解为,将第一交易的交易状态设置为终止。The above termination of the target remittance transaction can be understood as setting the transaction status of the first transaction as terminated.
在一些实现方式中,上述结合步骤S340至步骤S360介绍的方案,可以通过调用合约的方式,来向区块链发起目标汇款交易。也就是说,上述第二参与方可以通过调用合约的方式,请求第一参与方执行目标汇款交易。或者说,上述第一交易执行请求为第二智能合约的调用请求,第二智能合约用于执行目标汇款交易,并且,第二智能合约的状态用于表示目标汇款交易的交易状态。因此,第二智能合约又称为“汇款交易合约”。其中,第二智能合约可以包含目标汇款交易的交易信息。例如,目标汇款交易的发起方信息,目标汇款交易的收款方信息,目标汇款交易所需的汇款汇路以及目标汇款交易的交易详情等。In some implementation manners, in the solution described above in conjunction with steps S340 to S360, a target remittance transaction can be initiated to the blockchain by calling a contract. That is to say, the above-mentioned second participant can request the first participant to execute the target remittance transaction by calling the contract. In other words, the above-mentioned first transaction execution request is an invocation request of the second smart contract, the second smart contract is used to execute the target remittance transaction, and the state of the second smart contract is used to represent the transaction status of the target remittance transaction. Therefore, the second smart contract is also called "remittance transaction contract". Wherein, the second smart contract may include transaction information of the target remittance transaction. For example, information on the originator of the target remittance transaction, information on the payee of the target remittance transaction, the remittance route required by the target remittance transaction, and transaction details of the target remittance transaction.
为了将上述匹配结果,与第二智能合约的状态关联起来,可以在第二智能合约中设置第一智能合约的地址,这样,在执行第二智能合约的过程中,便可以基于地址来调用第一智能合约,以查询目标汇款交易所需的汇款汇路与第一参与方的可用汇款汇路是否匹配。如果目标汇款交易所需的汇款汇路与第一参与方的可用汇款汇路不匹配,那么可以终止目标汇款交易,并将第二智能合约的状态设置为关闭。如果目标汇款交易所需的汇款汇路与第一参与方的可用汇款汇路匹配,那么可以将第二智能合约的状态推进到下一个状态(例如,等待参与方确认当前交易)。In order to associate the above matching result with the state of the second smart contract, the address of the first smart contract can be set in the second smart contract, so that in the process of executing the second smart contract, the address of the first smart contract can be called based on the address. A smart contract to check whether the remittance route required for the target remittance transaction matches the available remittance route of the first participant. If the remittance route required by the target remittance transaction does not match the available remittance routes of the first party, the target remittance transaction may be terminated and the state of the second smart contract may be set to closed. If the remittance route required by the target remittance transaction matches the remittance route available to the first party, then the state of the second smart contract can be advanced to the next state (eg, waiting for the party to confirm the current transaction).
如上文介绍,区块链上的参与方都可以作为区块链的用户,通过调用第一智能合约的方式来设置各自的可用汇款汇路。也就是说,第一智能合约中会记录多个参与方的可用汇款汇路,此时,在一些情况下,就可能存在汇款汇路1对于参与方1而言是可用汇款汇路,但是汇款汇路1对于参与方2而言却不是可用汇款汇路。此时,如果在进行匹配的过程中,仅匹配了参与方1的可用汇款汇路,那么匹配结果变为匹配,但其实汇款汇路1并不是可用汇款汇路,那么就会导致目标汇款交易失败。As mentioned above, all participants on the blockchain can act as users of the blockchain and set their own available remittance routes by calling the first smart contract. That is to say, the first smart contract will record the available remittance routes of multiple participants. At this time, in some cases, there may be remittance route 1 that is an available remittance route for participant 1, but the remittance Remittance route 1 is not an available remittance route for participant 2. At this time, if only the available remittance route of participant 1 is matched during the matching process, the matching result becomes a match, but in fact, remittance route 1 is not an available remittance route, which will result in the target remittance transaction fail.
假如汇款汇路1原本为银行A和银行B之间的可用汇款汇路,但是处于一些原因,银行B和银行A需要对可用汇款汇路进行更新,将汇款汇路1更新为不可用的汇款汇 路。但是只有银行B更新成功,银行A未更新成功,此时汇款汇路1虽然不再是银行A和银行B之间的可用汇款汇路,但是它依然记录在银行A中的可用汇款汇路中。此时,如果发起的目标汇款交易所需的汇款汇路刚好是可用汇款汇路1,并且在仅使用银行A的可用汇款汇路进行匹配的情况下,匹配结果就会是匹配,从而会导致目标汇款交易失败。Suppose remittance route 1 was originally an available remittance route between Bank A and Bank B, but due to some reasons, Bank B and Bank A need to update the available remittance route, and update remittance route 1 to an unavailable remittance route sink road. However, only bank B is updated successfully, and bank A is not updated successfully. At this time, although remittance route 1 is no longer an available remittance route between bank A and bank B, it is still recorded in the available remittance route in bank A . At this time, if the remittance route required for the initiated target remittance transaction happens to be available remittance route 1, and only the available remittance route of Bank A is used for matching, the matching result will be a match, which will lead to Target money transfer transaction failed.
因此,为了提高上述匹配结果的准确率,在匹配的过程中可以使用目标汇款交易所需的汇款汇路,与目标汇款交易的多个参与方的可用汇款汇路分别进行匹配,只有在所有的匹配结果为匹配的情况下,汇款汇路才是真正的可用汇款汇路。继续参见上文汇款汇路1的场景,此时,将汇款汇路1分别与银行A的可用汇款汇路以及银行B的可用汇款汇路分别进行匹配,那么汇款汇路1与银行A的可用汇款汇路的匹配结果为匹配,汇款汇路1与银行A的可用汇款汇路的匹配结果为不匹配,最终,汇款汇路1对应的匹配结果变为不匹配,那么便可以直接终止目标汇款交易。Therefore, in order to improve the accuracy of the above matching results, the remittance route required by the target remittance transaction can be used in the matching process to match with the available remittance routes of multiple participants in the target remittance transaction. If the matching result is a match, the remittance route is the real available remittance route. Continue to refer to the scene of remittance route 1 above. At this time, match remittance route 1 with the available remittance routes of bank A and bank B respectively, then remittance route 1 and the available remittance route of bank A The matching result of the remittance route is a match, and the matching result of the remittance route 1 and the available remittance routes of Bank A is a mismatch. Finally, the matching result corresponding to the remittance route 1 becomes a mismatch, then the target remittance can be directly terminated trade.
为了便于理解本公开,下文以在执行第二智能合约的过程中,调用第一智能合约为例,结合图5介绍本公开实施例的第一智能合约的使用过程。需要说明的是,图5主要介绍使用第一智能合约的方法流程,关于第一参与方、第一智能合约、可用汇款汇路、用户鉴权、合法性校验等内容的相关介绍可以参见上文,为了简洁,在此不再赘述。In order to facilitate understanding of the present disclosure, the following uses the example of invoking the first smart contract during the execution of the second smart contract, and introduces the process of using the first smart contract in the embodiment of the present disclosure with reference to FIG. 5 . It should be noted that Figure 5 mainly introduces the method flow of using the first smart contract. For related introductions about the first participant, the first smart contract, available remittance routes, user authentication, and legality verification, please refer to the above , for the sake of brevity, will not be repeated here.
图5是本公开实施例的第一智能合约的使用过程的示意性流程图。图5所示的方法包括步骤S510至步骤S590。Fig. 5 is a schematic flowchart of the process of using the first smart contract according to the embodiment of the present disclosure. The method shown in FIG. 5 includes steps S510 to S590.
在步骤S510中,汇款发起方向区块链节点发送第二智能合约的调用请求。In step S510, the remittance initiator sends a call request of the second smart contract to the block chain node.
该调用请求用于请求第一参与方执行目标汇款交易。其中,目标汇款交易所需的汇款汇路为第一参与方与第二参与方之间的汇款汇路。The call request is used to request the first participant to execute the target remittance transaction. Wherein, the remittance route required for the target remittance transaction is the remittance route between the first participant and the second participant.
在步骤S520中,区块链节点对汇款发起方进行用户鉴权。In step S520, the blockchain node performs user authentication on the remittance initiator.
上述汇款发起方会使用私钥对第二智能合约的调用请求进行签名,相应地,区块链节点在接收到上述第二智能合约的调用请求之后,可以使用汇款发起方的公钥对数字签名进行验证。如果用户鉴权结果为通过,执行步骤S530。如果用户鉴权结果为不通过,执行步骤S540,关闭目标汇款交易。The above-mentioned remittance initiator will use the private key to sign the invocation request of the second smart contract. Correspondingly, after receiving the invocation request of the above-mentioned second smart contract, the blockchain node can use the public key of the remittance initiator to digitally sign authenticating. If the user authentication result is passed, step S530 is executed. If the user authentication result is not passed, step S540 is executed to close the target remittance transaction.
在步骤S530中,区块链节点对第二智能合约进行合法性校验。In step S530, the blockchain node checks the validity of the second smart contract.
上述合法性校验用于校验目标汇款交易的交易参数是否完备。例如,需要在第二智能合约中指定目标汇款交易的汇款机构以及收款机构的链上账户,目标汇款交易涉及的 汇款币种等信息。The above legality check is used to check whether the transaction parameters of the target remittance transaction are complete. For example, it is necessary to specify in the second smart contract the remittance institution of the target remittance transaction, the on-chain account of the remittance institution, the remittance currency involved in the target remittance transaction, and other information.
如果合法性校验结果为通过,执行步骤S550。如果合法性校验结果为通过,执行步骤S540,关闭目标汇款交易。If the result of the legality check is passed, step S550 is executed. If the legitimacy verification result is passed, step S540 is executed to close the target remittance transaction.
在步骤S550中,从第二智能合约中提取目标汇款交易所需的汇款汇路。In step S550, the remittance route required by the target remittance transaction is extracted from the second smart contract.
在步骤S560中,区块链节点调用第一智能合约,以查询目标汇款交易所需的汇款汇路分别与汇款机构以及收款机构的可用汇款汇路是否匹配。In step S560, the block chain node invokes the first smart contract to query whether the remittance route required by the target remittance transaction matches the available remittance routes of the remittance institution and the remittance institution respectively.
在执行第二智能合约的过程中,可以自动调用2次第一智能合约的查询接口,分别查询汇款机构的可用汇款汇路以及收款机构的可用汇款汇路是否都与目标汇款交易所需的汇款汇路匹配。如果汇款机构的可用汇款汇路以及收款机构的可用汇款汇路,都与目标汇款交易所需的汇款汇路匹配,执行步骤S570。如果汇款机构的可用汇款汇路和/或收款机构的可用汇款汇路,都与目标汇款交易所需的汇款汇路不匹配,执行步骤S540,关闭目标汇款交易。In the process of executing the second smart contract, the query interface of the first smart contract can be automatically called twice to respectively query whether the available remittance channels of the remittance institution and the available remittance channels of the receiving institution are the same as those required by the target remittance transaction. Remittance route matching. If both the available remittance channels of the remittance institution and the available remittance channels of the payee institution match the remittance channels required by the target remittance transaction, step S570 is performed. If the available remittance routes of the remittance institution and/or the available remittance routes of the payee institution do not match the remittance routes required by the target remittance transaction, step S540 is executed to close the target remittance transaction.
在步骤S570中,区块链节点将第二智能合约的状态推进为“等待参与方确认当前交易”。In step S570, the blockchain node advances the state of the second smart contract to "waiting for the participant to confirm the current transaction".
在步骤S580中,目标汇款交易的参与方确认第二智能合约对应的目标汇款交易。In step S580, the participants in the target remittance transaction confirm the target remittance transaction corresponding to the second smart contract.
目标汇款交易的参与方可以通过拉块解析等方式,从区块链节点中获取第二智能合约中记录的目标汇款交易的交易信息。当目标汇款交易的参与方基于目标汇款交易的交易信息,确认链下的汇款交易执行无误后,可以调用第二智能合约的确认接口,来确认目标汇款交易。The participants in the target remittance transaction can obtain the transaction information of the target remittance transaction recorded in the second smart contract from the block chain node by means of pulling block analysis. When the participants in the target remittance transaction confirm that the off-chain remittance transaction is executed correctly based on the transaction information of the target remittance transaction, they can call the confirmation interface of the second smart contract to confirm the target remittance transaction.
在步骤S590中,确认目标汇款交易的所有参与方是否均确认。In step S590, it is confirmed whether all participants in the target remittance transaction confirm.
在收到目标汇款交易的参与方的确认后,第二智能合约自动触发处理逻辑,来查询目标汇款交易所有的参与方是否均已确认目标汇款交易。如果目标汇款交易所有的参与方均确认,第二智能合约自动推进状态为终态,指示目标汇款交易成功,即步骤S600。After receiving confirmation from the participants in the target remittance transaction, the second smart contract automatically triggers the processing logic to inquire whether all the participants in the target remittance transaction have confirmed the target remittance transaction. If all the participants in the target remittance transaction confirm, the second smart contract automatically advances to the final state, indicating that the target remittance transaction is successful, ie step S600.
需要说明的是,本公开对上述步骤S520和步骤S530之间的执行顺序不作限定。上述步骤S530也可以在步骤S520之前执行,此时,当步骤S530的合法性验证为通过时,可以执行步骤S520,并且只有当步骤S520的用户鉴权结果也为通过时,才能继续执行步骤S550。当然,步骤S520和步骤S530也可以同时执行,即只有当步骤S520的用户鉴权结果以及步骤S530的合法性验证同时为通过时,才能执行步骤S550。It should be noted that the present disclosure does not limit the execution sequence between the above step S520 and step S530. The above step S530 can also be executed before step S520. At this time, when the legality verification of step S530 is passed, step S520 can be executed, and only when the user authentication result of step S520 is also passed, step S550 can be continued . Of course, step S520 and step S530 can also be executed at the same time, that is, only when the user authentication result of step S520 and the legality verification of step S530 both pass, step S550 can be executed.
上文以第二智能合约调用第一智能合约的方式为例,结合图5介绍了本公开实施例的第一智能合约的使用过程。在本公开实施例中,还可以仅通过第一智能合约的查询接口来查询可用汇款汇路。下文结合图6介绍本公开实施例的第一智能合约的查询过程。需要说明的是,图6主要介绍使用第一智能合约的方法流程,关于第一参与方、第一智能合约、可用汇款汇路等内容的相关介绍可以参见上文,为了简洁,在此不再赘述。Taking the method of calling the first smart contract by the second smart contract as an example, the process of using the first smart contract in the embodiment of the present disclosure is introduced with reference to FIG. 5 . In the embodiment of the present disclosure, the available remittance routes can also be queried only through the query interface of the first smart contract. The query process of the first smart contract in the embodiment of the present disclosure is introduced below with reference to FIG. 6 . It should be noted that Figure 6 mainly introduces the method flow of using the first smart contract. For the introduction of the first participant, the first smart contract, and available remittance channels, please refer to the above. repeat.
图6是本公开实施例的第一智能合约的查询过程的示意性流程图。图6所示的方法包括步骤S610至步骤S620。Fig. 6 is a schematic flowchart of the query process of the first smart contract according to the embodiment of the present disclosure. The method shown in FIG. 6 includes steps S610 to S620.
在步骤S610中,区块链节点从第三参与方接收第一智能合约的第二调用请求,第二调用请求用于查询第一参与方的可用汇款汇路。In step S610, the block chain node receives the second call request of the first smart contract from the third participant, and the second call request is used to query the available remittance routes of the first participant.
在步骤S620中,区块链节点向第三参与方返回第一参与方的可用汇款汇路。In step S620, the blockchain node returns the available remittance routes of the first participant to the third participant.
上文结合图1至图6,详细描述了本公开的方法实施例,下面结合图7至图10,详细描述本公开的装置实施例。应理解,方法实施例的描述与装置实施例的描述相互对应,因此,未详细描述的部分可以参见前面方法实施例。The method embodiment of the present disclosure is described in detail above with reference to FIG. 1 to FIG. 6 , and the device embodiment of the present disclosure is described in detail below in conjunction with FIG. 7 to FIG. 10 . It should be understood that the descriptions of the method embodiments correspond to the descriptions of the device embodiments, therefore, for parts not described in detail, reference may be made to the foregoing method embodiments.
图7是本公开实施例的基于区块链的汇款汇路管理装置的示意性结构图。图7所示的装置可以为区块链上的区块链节点,该区块链上存储有第一智能合约,第一智能合约用于管理目标汇款交易的多个参与方中的至少一个参与方的可用汇款汇路,至少一个参与方的可用汇款汇路用于指示至少一个参与方能够为目标汇款交易提供的可用汇款汇路,至少一个参与方包括第一参与方。上述装置700包括:接收模块710和处理模块720。Fig. 7 is a schematic structural diagram of a block chain-based remittance route management device according to an embodiment of the present disclosure. The device shown in Figure 7 may be a blockchain node on a blockchain, on which a first smart contract is stored, and the first smart contract is used to manage the participation of at least one of the multiple participants in the target remittance transaction The available remittance route of the party, the available remittance route of at least one participant is used to indicate the available remittance route that at least one participant can provide for the target remittance transaction, and the at least one participant includes the first participant. The foregoing apparatus 700 includes: a receiving module 710 and a processing module 720 .
接收模块710可以被配置为从第一参与方接收第一智能合约的第一调用请求,第一调用请求用于设置第一参与方的可用汇款汇路。The receiving module 710 may be configured to receive a first call request of the first smart contract from the first participant, and the first call request is used to set an available remittance route of the first participant.
处理模块720可以被配置为根据第一调用请求,在第一智能合约中设置第一参与方的可用汇款汇路。The processing module 720 may be configured to set the available remittance routes of the first participant in the first smart contract according to the first call request.
可选地,在一些实施例中,多个参与方包括第二参与方,接收模块710还可以被配置为从第二参与方接收第一交易执行请求,第一交易执行请求用于请求第一参与方执行目标汇款交易;处理模块720可以被配置为响应于第一交易执行请求,调用第一智能合约,以查询目标汇款交易所需的汇款汇路与第一参与方的可用汇款汇路是否匹配;以及,如果目标汇款交易所需的汇款汇路与第一参与方的可用汇款汇路不匹配,终止目标汇款交易。Optionally, in some embodiments, the multiple participants include the second participant, and the receiving module 710 may also be configured to receive a first transaction execution request from the second participant, the first transaction execution request is used to request the first The participant executes the target remittance transaction; the processing module 720 may be configured to, in response to the first transaction execution request, invoke the first smart contract to query whether the remittance route required for the target remittance transaction and the available remittance route of the first participant matching; and, if the remittance route required by the target remittance transaction does not match the remittance route available to the first party, terminating the target remittance transaction.
可选地,在一些实施例中,多个参与方包括第三参与方,接收模块710可以被配置 为从第三参与方接收第一智能合约的第二调用请求,第二调用请求用于查询第一参与方的可用汇款汇路;处理模块720可以被配置为向第三参与方返回第一参与方的可用汇款汇路。Optionally, in some embodiments, the multiple participants include a third participant, and the receiving module 710 may be configured to receive a second invocation request of the first smart contract from the third participant, and the second invocation request is used to query Available remittance routes of the first participant; the processing module 720 may be configured to return the available remittance routes of the first participant to the third participant.
可选地,在一些实施例中,接收模块710可以被配置为从第一参与方接收第一智能合约的第三调用请求,第三调用请求用于更新第一参与方的可用汇款汇路;处理模块720可以被配置为基于第三调用请求,在第一智能合约中更新第一参与方的可用汇款汇路。Optionally, in some embodiments, the receiving module 710 may be configured to receive a third call request of the first smart contract from the first participant, and the third call request is used to update the available remittance routes of the first participant; The processing module 720 may be configured to update the available remittance routes of the first participant in the first smart contract based on the third call request.
可选地,在一些实施例中,第一智能合约还用于管理第一参与方的可用汇款汇路支持的货币种类。Optionally, in some embodiments, the first smart contract is also used to manage the types of currencies supported by the available remittance routes of the first participant.
图8是本公开另一实施例的基于区块链的汇款汇路管理装置的示意性结构图。该区块链上存储有第一智能合约,第一智能合约用于管理目标汇款交易的多个参与方中的至少一个参与方的可用汇款汇路,至少一个参与方的可用汇款汇路用于指示至少一个参与方能够为目标汇款交易提供的可用汇款汇路,至少一个参与方包括第一参与方,装置应用于第一参与方。装置800包括:获取模块810和发送模块820。Fig. 8 is a schematic structural diagram of a blockchain-based remittance route management device according to another embodiment of the present disclosure. A first smart contract is stored on the block chain, and the first smart contract is used to manage the available remittance route of at least one of the multiple participants in the target remittance transaction, and the available remittance route of at least one participant is used for An available remittance route that at least one participant can provide for the target remittance transaction is indicated, the at least one participant includes the first participant, and the device is applied to the first participant. The device 800 includes: an acquiring module 810 and a sending module 820 .
获取模块810,被配置为获取第一参与方的可用汇款汇路;发送模块820,被配置为向区块链发送第一智能合约的第一调用请求,第一调用请求用于设置第一参与方的可用汇款汇路。The obtaining module 810 is configured to obtain the available remittance channels of the first participant; the sending module 820 is configured to send the first call request of the first smart contract to the blockchain, and the first call request is used to set the first participant The available remittance routes of the party.
可选地,在一些实施例中,发送模块820可以被配置为向区块链发送第一智能合约的第三调用请求,第三调用请求用于更新第一参与方的可用汇款汇路。Optionally, in some embodiments, the sending module 820 may be configured to send a third call request of the first smart contract to the blockchain, where the third call request is used to update the available remittance routes of the first participant.
可选地,在一些实施例中,第一智能合约还用于管理第一参与方的可用汇款汇路支持的货币种类。Optionally, in some embodiments, the first smart contract is also used to manage the types of currencies supported by the available remittance routes of the first participant.
图9是本公开又一实施例提供的基于区块链的汇款汇路管理装置的示意性结构图。图9所示的装置900可以是区块链中的任意区块链节点。该装置900例如可以是具有计算功能的计算设备。比如,装置900可以是服务器。装置900可以包括存储器910和处理器920。存储器910可用于存储可执行代码。处理器920可用于执行所述存储器910中存储的可执行代码,以实现前文描述的各个方法中的步骤。在一些实施例中,该装置900还可以包括网络接口930,处理器920与外部设备的数据交换可以通过该网络接口930实现。Fig. 9 is a schematic structural diagram of a blockchain-based remittance route management device provided by another embodiment of the present disclosure. The device 900 shown in FIG. 9 may be any blockchain node in the blockchain. The apparatus 900 may be, for example, a computing device with a computing function. For example, device 900 may be a server. The apparatus 900 may include a memory 910 and a processor 920 . Memory 910 may be used to store executable code. The processor 920 can be used to execute the executable code stored in the memory 910, so as to realize the steps in the various methods described above. In some embodiments, the apparatus 900 may further include a network interface 930 through which data exchange between the processor 920 and external devices may be implemented.
图10是本公开又一实施例提供的基于区块链的汇款汇路管理装置的示意性结构图。图10所示的装置1000可以是区块链中的客户端所在的节点。该装置1000例如可以是 具有计算功能的计算设备。比如,装置1000可以是服务器或者移动终端。装置1000可以包括存储器1010和处理器1020。存储器1010可用于存储可执行代码。处理器1020可用于执行所述存储器1010中存储的可执行代码,以实现前文描述的各个方法中的步骤。在一些实施例中,该装置900还可以包括网络接口1030,处理器1020与外部设备的数据交换可以通过该网络接口1030实现。Fig. 10 is a schematic structural diagram of a blockchain-based remittance route management device provided by another embodiment of the present disclosure. The apparatus 1000 shown in FIG. 10 may be a node where a client in the blockchain resides. The apparatus 1000 may be, for example, a computing device with computing functions. For example, the device 1000 may be a server or a mobile terminal. The apparatus 1000 may include a memory 1010 and a processor 1020 . Memory 1010 may be used to store executable code. The processor 1020 can be used to execute the executable code stored in the memory 1010, so as to realize the steps in the various methods described above. In some embodiments, the apparatus 900 may further include a network interface 1030 through which data exchange between the processor 1020 and external devices may be implemented.
应理解,在本公开实施例中,该处理器可以采用通用的中央处理器(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,用于执行相关程序,以实现本公开实施例所提供的技术方案。It should be understood that, in the embodiment of the present disclosure, the processor may adopt a general-purpose central processing unit (central processing unit, CPU), and the processor may also be other general-purpose processors, digital signal processors (digital signal processor, DSP) , application specific integrated circuit (ASIC), off-the-shelf programmable gate array (field programmable gate array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc., for executing related programs, so as to realize the technical solutions provided by the embodiments of the present disclosure.
该存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。处理器的一部分还可以包括非易失性随机存取存储器。例如,处理器还可以存储设备类型的信息。The memory, which can include read only memory and random access memory, provides instructions and data to the processor. A portion of the processor may also include non-volatile random access memory. For example, the processor may also store device type information.
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本公开实施例所公开的用于请求上行传输资源的方法可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。In the implementation process, each step of the above method can be completed by an integrated logic circuit of hardware in a processor or an instruction in the form of software. The method for requesting uplink transmission resources disclosed in the embodiments of the present disclosure may be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules in the processor. The software module can be located in a mature storage medium in the field such as random access memory, flash memory, read-only memory, programmable read-only memory or electrically erasable programmable memory, register. The storage medium is located in the memory, and the processor reads the information in the memory, and completes the steps of the above method in combination with its hardware. To avoid repetition, no detailed description is given here.
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。It should be understood that the term "and/or" in this article is only an association relationship describing associated objects, which means that there may be three relationships, for example, A and/or B may mean: A exists alone, and A and B exist at the same time , there are three cases of B alone. In addition, the character "/" in this article generally indicates that the contextual objects are an "or" relationship.
应理解,在本公开的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。It should be understood that in various embodiments of the present disclosure, the sequence numbers of the above-mentioned processes do not mean the order of execution, and the execution order of the processes should be determined by their functions and internal logic, rather than by the embodiments of the present disclosure. The implementation process constitutes any limitation.
在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单 元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in the present disclosure, it should be understood that the disclosed systems, devices and methods may be implemented in other ways. For example, the device embodiments described above are only illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or May be integrated into another system, or some features may be ignored, or not implemented. In another point, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
另外,在本公开各个实施例中的各功能模块可以集成在一个模块中,也可以是各个模块单独存在,也可以两个或两个以上模块集成在一个模块中。In addition, each functional module in each embodiment of the present disclosure may be integrated into one module, each module may exist independently, or two or more modules may be integrated into one module.
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本公开实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber Line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够读取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,数字通用光盘(digital video disc,DVD))或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。In the above embodiments, all or part of them may be implemented by software, hardware, firmware or any combination thereof. When implemented using software, it may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, all or part of the processes or functions according to the embodiments of the present disclosure will be generated. The computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website, computer, server or data center Transmission to another website site, computer, server or data center by wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.). The computer-readable storage medium may be any available medium that can be read by a computer, or a data storage device such as a server or a data center integrated with one or more available media. The available medium may be a magnetic medium, (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a digital versatile disc (digital video disc, DVD)) or a semiconductor medium (for example, a solid state disk (solid state disk, SSD) )wait.
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以所述权利要求的保护范围为准。The above is only a specific implementation of the present disclosure, but the scope of protection of the present disclosure is not limited thereto. Anyone skilled in the art can easily think of changes or substitutions within the technical scope of the present disclosure. should fall within the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be determined by the protection scope of the claims.
Claims (18)
- 一种基于区块链的汇款汇路管理方法,所述区块链上存储有第一智能合约,所述第一智能合约用于管理目标汇款交易的多个参与方中的至少一个参与方的可用汇款汇路,所述至少一个参与方的可用汇款汇路用于指示所述至少一个参与方能够为所述目标汇款交易提供的可用汇款汇路,所述至少一个参与方包括第一参与方,A method for managing remittance routes based on a block chain, where a first smart contract is stored on the block chain, and the first smart contract is used to manage at least one of a plurality of participants in a target remittance transaction Available remittance routes, the available remittance routes of the at least one participant are used to indicate the available remittance routes that the at least one participant can provide for the target remittance transaction, the at least one participant includes the first participant ,所述方法包括:The methods include:从所述第一参与方接收所述第一智能合约的第一调用请求,所述第一调用请求用于设置所述第一参与方的可用汇款汇路;receiving a first call request of the first smart contract from the first participant, where the first call request is used to set an available remittance route of the first participant;根据所述第一调用请求,在所述第一智能合约中设置所述第一参与方的可用汇款汇路。According to the first call request, the available remittance routes of the first participant are set in the first smart contract.
- 如权利要求1所述的方法,所述多个参与方包括第二参与方,所述方法还包括:The method of claim 1, the plurality of participants comprising a second participant, the method further comprising:从所述第二参与方接收第一交易执行请求,所述第一交易执行请求用于请求所述第一参与方执行所述目标汇款交易;receiving a first transaction execution request from the second participant, the first transaction execution request for requesting the first participant to execute the target remittance transaction;响应于所述第一交易执行请求,调用所述第一智能合约,以查询所述目标汇款交易所需的汇款汇路与所述第一参与方的可用汇款汇路是否匹配;In response to the first transaction execution request, calling the first smart contract to query whether the remittance route required for the target remittance transaction matches the available remittance route of the first participant;如果所述目标汇款交易所需的汇款汇路与所述第一参与方的可用汇款汇路不匹配,终止所述目标汇款交易。If the remittance route required by the target remittance transaction does not match the available remittance route of the first participant, the target remittance transaction is terminated.
- 根据权利要求1所述的方法,所述多个参与方包括第三参与方,所述方法还包括:The method of claim 1, the plurality of participants comprising a third participant, the method further comprising:从所述第三参与方接收所述第一智能合约的第二调用请求,所述第二调用请求用于查询所述第一参与方的可用汇款汇路;receiving a second call request of the first smart contract from the third participant, where the second call request is used to inquire about available remittance routes of the first participant;向所述第三参与方返回所述第一参与方的可用汇款汇路。The available remittance routes of the first participant are returned to the third participant.
- 根据权利要求1所述的方法,所述方法还包括:The method according to claim 1, said method further comprising:从所述第一参与方接收所述第一智能合约的第三调用请求,所述第三调用请求用于更新所述第一参与方的可用汇款汇路;receiving a third call request of the first smart contract from the first participant, where the third call request is used to update the available remittance routes of the first participant;基于所述第三调用请求,在所述第一智能合约中更新所述第一参与方的可用汇款汇路。Based on the third call request, the available remittance routes of the first participant are updated in the first smart contract.
- 如权利要求1-4中任一项所述的方法,所述第一智能合约还用于管理所述第一参与方的可用汇款汇路支持的货币种类。The method according to any one of claims 1-4, wherein the first smart contract is further used to manage the types of currencies supported by the available remittance routes of the first participant.
- 一种基于区块链的汇款汇路管理方法,所述区块链上存储有第一智能合约,所述第一智能合约用于管理目标汇款交易的多个参与方中的至少一个参与方的可用汇款 汇路,所述至少一个参与方的可用汇款汇路用于指示所述至少一个参与方能够为所述目标汇款交易提供的可用汇款汇路,所述至少一个参与方包括第一参与方,所述方法应用于所述第一参与方,A method for managing remittance routes based on a block chain, where a first smart contract is stored on the block chain, and the first smart contract is used to manage at least one of a plurality of participants in a target remittance transaction Available remittance routes, the available remittance routes of the at least one participant are used to indicate the available remittance routes that the at least one participant can provide for the target remittance transaction, the at least one participant includes the first participant , the method is applied to the first party,所述方法包括:The methods include:获取所述第一参与方的可用汇款汇路;Obtain the available remittance routes of the first participant;向所述区块链发送所述第一智能合约的第一调用请求,所述第一调用请求用于设置所述第一参与方的可用汇款汇路。Sending a first call request of the first smart contract to the block chain, where the first call request is used to set an available remittance route of the first participant.
- 根据权利要求6所述的方法,所述方法还包括:The method of claim 6, further comprising:向所述区块链发送所述第一智能合约的第三调用请求,所述第三调用请求用于更新所述第一参与方的可用汇款汇路。Sending a third call request of the first smart contract to the block chain, where the third call request is used to update available remittance routes of the first participant.
- 如权利要求6或7所述的方法,所述第一智能合约还用于管理所述第一参与方的可用汇款汇路支持的货币种类。The method according to claim 6 or 7, wherein the first smart contract is further used to manage the types of currencies supported by the available remittance routes of the first participant.
- 一种基于区块链的汇款汇路管理装置,所述区块链上存储有第一智能合约,所述第一智能合约用于管理目标汇款交易的多个参与方中的至少一个参与方的可用汇款汇路,所述至少一个参与方的可用汇款汇路用于指示所述至少一个参与方能够为所述目标汇款交易提供的可用汇款汇路,所述至少一个参与方包括第一参与方,A block chain-based remittance management device, the first smart contract is stored on the block chain, and the first smart contract is used to manage at least one of the multiple participants in the target remittance transaction Available remittance routes, the available remittance routes of the at least one participant are used to indicate the available remittance routes that the at least one participant can provide for the target remittance transaction, the at least one participant includes the first participant ,所述装置包括:The devices include:接收模块,被配置为从所述第一参与方接收所述第一智能合约的第一调用请求,所述第一调用请求用于设置所述第一参与方的可用汇款汇路;The receiving module is configured to receive a first call request of the first smart contract from the first participant, and the first call request is used to set an available remittance route of the first participant;处理模块,被配置为根据所述第一调用请求,在所述第一智能合约中设置所述第一参与方的可用汇款汇路。The processing module is configured to set the available remittance routes of the first participant in the first smart contract according to the first call request.
- 如权利要求9所述的装置,所述多个参与方包括第二参与方,The apparatus of claim 9, said plurality of participants comprising a second participant,所述接收模块,被配置为从所述第二参与方接收第一交易执行请求,所述第一交易执行请求用于请求所述第一参与方执行所述目标汇款交易;The receiving module is configured to receive a first transaction execution request from the second participant, and the first transaction execution request is used to request the first participant to execute the target remittance transaction;所述处理模块,被配置为响应于所述第一交易执行请求,调用所述第一智能合约,以查询所述目标汇款交易所需的汇款汇路与所述第一参与方的可用汇款汇路是否匹配;The processing module is configured to call the first smart contract in response to the first transaction execution request to query the remittance route required for the target remittance transaction and the available remittance of the first participant. Whether the road matches;所述处理模块,被配置为如果所述目标汇款交易所需的汇款汇路与所述第一参与方的可用汇款汇路不匹配,终止所述目标汇款交易。The processing module is configured to terminate the target remittance transaction if the remittance route required by the target remittance transaction does not match the available remittance route of the first participant.
- 根据权利要求9所述的装置,所述多个参与方包括第三参与方,The apparatus of claim 9, said plurality of participants comprising a third participant,所述接收模块,被配置为从所述第三参与方接收所述第一智能合约的第二调用请求,所述第二调用请求用于查询所述第一参与方的可用汇款汇路;The receiving module is configured to receive a second call request of the first smart contract from the third participant, and the second call request is used to inquire about available remittance routes of the first participant;所述处理模块,被配置为向所述第三参与方返回所述第一参与方的可用汇款汇路。The processing module is configured to return the available remittance routes of the first participant to the third participant.
- 根据权利要求9所述的装置,The device according to claim 9,所述接收模块,被配置为从所述第一参与方接收所述第一智能合约的第三调用请求,所述第三调用请求用于更新所述第一参与方的可用汇款汇路;The receiving module is configured to receive a third call request of the first smart contract from the first participant, and the third call request is used to update the available remittance routes of the first participant;所述处理模块,被配置为基于所述第三调用请求,在所述第一智能合约中更新所述第一参与方的可用汇款汇路。The processing module is configured to update the available remittance routes of the first participant in the first smart contract based on the third call request.
- 如权利要求9-12中任一项所述的装置,所述第一智能合约还用于管理所述第一参与方的可用汇款汇路支持的货币种类。The device according to any one of claims 9-12, wherein the first smart contract is further used to manage the types of currencies supported by the available remittance routes of the first participant.
- 一种基于区块链的汇款汇路管理装置,所述区块链上存储有第一智能合约,所述第一智能合约用于管理目标汇款交易的多个参与方中的至少一个参与方的可用汇款汇路,所述至少一个参与方的可用汇款汇路用于指示所述至少一个参与方能够为所述目标汇款交易提供的可用汇款汇路,所述至少一个参与方包括第一参与方,所述装置应用于所述第一参与方,A block chain-based remittance management device, the first smart contract is stored on the block chain, and the first smart contract is used to manage at least one of the multiple participants in the target remittance transaction Available remittance routes, the available remittance routes of the at least one participant are used to indicate the available remittance routes that the at least one participant can provide for the target remittance transaction, the at least one participant includes the first participant , the device is applied to the first participant,所述装置包括:The devices include:获取模块,被配置为获取所述第一参与方的可用汇款汇路;An acquisition module configured to acquire the available remittance routes of the first participant;发送模块,被配置为向所述区块链发送所述第一智能合约的第一调用请求,所述第一调用请求用于设置所述第一参与方的可用汇款汇路。The sending module is configured to send the first call request of the first smart contract to the block chain, and the first call request is used to set the available remittance routes of the first participant.
- 根据权利要求14所述的装置,The device according to claim 14,所述发送模块,被配置为向所述区块链发送所述第一智能合约的第三调用请求,所述第三调用请求用于更新所述第一参与方的可用汇款汇路。The sending module is configured to send a third call request of the first smart contract to the blockchain, where the third call request is used to update the available remittance routes of the first participant.
- 如权利要求14或15所述的装置,所述第一智能合约还用于管理所述第一参与方的可用汇款汇路支持的货币种类。The device according to claim 14 or 15, wherein the first smart contract is further used to manage the types of currencies supported by the available remittance routes of the first participant.
- 一种基于区块链的汇款汇路管理装置,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器被配置为执行所述可执行代码,以实现权利要求1-5中任一项所述的方法。A blockchain-based remittance route management device, comprising a memory and a processor, wherein executable code is stored in the memory, and the processor is configured to execute the executable code, so as to realize claims 1-5 any one of the methods described.
- 一种基于区块链的汇款汇路管理装置,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器被配置为执行所述可执行代码,以实现权利要求6-8中任一项所述的方法。A block chain-based remittance route management device, comprising a memory and a processor, wherein executable code is stored in the memory, and the processor is configured to execute the executable code, so as to realize claims 6-8 any one of the methods described.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111290133.3 | 2021-11-02 | ||
CN202111290133.3A CN113989045A (en) | 2021-11-02 | 2021-11-02 | Block chain-based remittance routing management method and device |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023078158A1 true WO2023078158A1 (en) | 2023-05-11 |
Family
ID=79745872
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/128000 WO2023078158A1 (en) | 2021-11-02 | 2022-10-27 | Blockchain-based remittance path management |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113989045A (en) |
WO (1) | WO2023078158A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113989045A (en) * | 2021-11-02 | 2022-01-28 | 支付宝(杭州)信息技术有限公司 | Block chain-based remittance routing management method and device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110852485A (en) * | 2019-10-15 | 2020-02-28 | 中山大学 | Transaction path short-circuiting method of block chain payment channel network |
CN111126988A (en) * | 2019-12-24 | 2020-05-08 | 深圳前海微众银行股份有限公司 | Block chain-based transfer method, device, equipment and computer medium |
US20210073796A1 (en) * | 2019-09-09 | 2021-03-11 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Method of selective authentication of a blockchain user with a smart contract |
CN113989045A (en) * | 2021-11-02 | 2022-01-28 | 支付宝(杭州)信息技术有限公司 | Block chain-based remittance routing management method and device |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109242485B (en) * | 2018-08-13 | 2020-07-10 | 阿里巴巴集团控股有限公司 | Block chain transaction method and device and electronic equipment |
CN110378682A (en) * | 2019-07-02 | 2019-10-25 | 银清科技(北京)有限公司 | The cross-border method of payment of RMB and device based on block chain framework |
CN112884470B (en) * | 2021-03-31 | 2024-06-21 | 中国工商银行股份有限公司 | Cross-border remittance information processing method and device based on block chain alliance chain |
-
2021
- 2021-11-02 CN CN202111290133.3A patent/CN113989045A/en active Pending
-
2022
- 2022-10-27 WO PCT/CN2022/128000 patent/WO2023078158A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210073796A1 (en) * | 2019-09-09 | 2021-03-11 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Method of selective authentication of a blockchain user with a smart contract |
CN110852485A (en) * | 2019-10-15 | 2020-02-28 | 中山大学 | Transaction path short-circuiting method of block chain payment channel network |
CN111126988A (en) * | 2019-12-24 | 2020-05-08 | 深圳前海微众银行股份有限公司 | Block chain-based transfer method, device, equipment and computer medium |
CN113989045A (en) * | 2021-11-02 | 2022-01-28 | 支付宝(杭州)信息技术有限公司 | Block chain-based remittance routing management method and device |
Also Published As
Publication number | Publication date |
---|---|
CN113989045A (en) | 2022-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10977632B2 (en) | Electronic bill management method, apparatus, and storage medium | |
TWI828857B (en) | Computer-implemented systems and methods for implementing transfers over a blockchain network | |
WO2021023200A1 (en) | Cross-chain transaction method and apparatus, multi-blockchain system, and computing device | |
EP3559891B1 (en) | Executing multi-party transactions using smart contracts | |
US11182851B2 (en) | Inter-ledger messaging in a blockchain | |
US11823178B2 (en) | Optimization of high volume transaction performance on a blockchain | |
KR101795695B1 (en) | Method for providing archiving service and verification service of data transceived via messenger service and server using the same | |
US20190327080A1 (en) | Document transfer processing for blockchains | |
US12118556B2 (en) | Database configuration for asset transfers | |
KR101795696B1 (en) | Method for providing archiving and verification services of data transceived via messenger service and server using the same | |
US20220382746A1 (en) | Blockchain notification board storing blockchain resources | |
TWI772654B (en) | Escrowing system for cross-blockchain third-party settlement and method thereof | |
TW202016817A (en) | Block chain based transaction processing method and device and electronic equipment | |
WO2020103557A1 (en) | Transaction processing method and device | |
US11038685B1 (en) | Correcting blockchain transactions with cryptocurrency type mistakes | |
TW202135504A (en) | Platform services verification | |
CN109936620B (en) | Block chain-based storage method, device, system and storage medium | |
WO2023078158A1 (en) | Blockchain-based remittance path management | |
WO2024103854A1 (en) | Cross-chain transaction method and system, electronic device, and storage medium | |
KR20240022462A (en) | Method and system for brokered cross-ledger stablecoin atomic swap using hashlock | |
WO2023045532A1 (en) | Blockchain-based transaction processing | |
JP2022539283A (en) | A method and system for validating blockchain data stored in a storage format different from the blockchain | |
CN112202564A (en) | Transaction transfer method and device, electronic equipment and readable storage medium | |
CN114066456A (en) | ERC 1155-based cross-chain NFT transfer and settlement system | |
WO2023078200A1 (en) | Block migration |
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: 22889183 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 11202310038U Country of ref document: SG |
|
NENP | Non-entry into the national phase |
Ref country code: DE |