Blockchain-based bank proxy sale of financial product transaction method, device and system

By using blockchain technology to encrypt and make searchable transaction data of bank-sold wealth management products, the problems of data transmission vulnerability to attacks and leakage of sensitive information are solved, achieving secure and efficient transaction processing.

CN115439124BActive Publication Date: 2025-12-16INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211169908.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-22
Publication Date
2025-12-16
Estimated Expiration
2042-09-22

AI Technical Summary

Technical Problem

The data transmission process for bank-sold wealth management products is vulnerable to malicious attacks and tampering, and encrypted files have low retrieval efficiency and a high risk of sensitive information leakage.

Method used

Using blockchain technology, the transaction application file is encrypted by bank nodes to generate a total data ciphertext, including a digest ciphertext and a file ciphertext. This data is then sent to the financial company's node on the blockchain for decryption and verification, ensuring the security and integrity of data transmission. It also supports retrieval after encryption.

Benefits of technology

It improves the security and retrieval efficiency of data transmission, prevents the leakage of sensitive information, ensures the immutability of data, and enhances the processing efficiency and security of bank-sold wealth management products transactions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115439124B_ABST
    Figure CN115439124B_ABST
Patent Text Reader

Abstract

The application discloses a bank-based financial product transaction method, device and system based on a blockchain, and relates to the financial field and the blockchain technology field. The method comprises the following steps: obtaining a transaction application file of a client and obtaining total data ciphertext based on the transaction application file and a preset encryption algorithm; the total data ciphertext comprises summary ciphertext and file ciphertext, wherein the summary ciphertext is obtained by digitally signing a file summary corresponding to the transaction application file by using a private key of the bank; the file ciphertext is obtained by encrypting the transaction application file by using a key agreed upon by the bank and a target financial company; the total data ciphertext and block header information are spliced to obtain a to-be-processed file; the to-be-processed file is sent to each financial company node, so that the target financial company node decrypts and verifies the to-be-processed file, and updates a transaction result corresponding to the to-be-processed file based on the decryption and verification result. The application avoids transaction information leakage and protects the privacy of the client.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of finance and the field of blockchain technology, in particular to a bank-based financial product transaction method, device and system based on blockchain. BACKGROUND

[0002] For bank-based financial products of external companies, after the customer submits a purchase application, the bank-side system first records the application information, transmits it to the financial company-side system by sending a file, and waits for the financial company to judge whether the application is completed according to the closing price of the product on the same day, and then returns the completed application information to the bank system through a file for subsequent processing. Due to the differentiation of each financial company system, the bank side needs to connect to many systems, and the application file is vulnerable to malicious attacks and tampering in the link between the bank and each financial company system, resulting in inconsistent data in the file content, which needs to be manually reviewed. Therefore, the existing financial product data processing method has the disadvantages of low processing efficiency and low data transmission security.

[0003] In addition, the application contains sensitive information related to the customer, and if the file content is not encrypted before transmission, there is a risk of leakage. However, if the file content is encrypted by an encryption algorithm before transmission, the encrypted file needs to be decrypted before it can be searched, which is not conducive to quickly searching for the required content. SUMMARY

[0004] In order to solve the problems existing in the prior art, in a first aspect, the present application provides a bank-based financial product transaction system based on blockchain, comprising a bank node and a plurality of financial company nodes;

[0005] The bank node is configured to:

[0006] obtain a transaction application file of a customer and obtain a total data ciphertext based on the transaction application file and a preset encryption algorithm; the total data ciphertext comprises an abstract ciphertext and a file ciphertext, wherein the abstract ciphertext is obtained by digitally signing a file abstract corresponding to the transaction application file using a private key of the bank; and the file ciphertext is obtained by encrypting the transaction application file using a key agreed upon by the bank and a target financial company;

[0007] splicing the total data ciphertext and the block header information to obtain a to-be-processed file;

[0008] sending the to-be-processed file to each financial company node;

[0009] The financial company node is configured to:

[0010] receive the to-be-processed file from the bank node and separate the file ciphertext;

[0011] determining whether the current node is a target wealth management company node according to the file ciphertext and a key agreed by the current node corresponding wealth management company and the bank;

[0012] If yes, the summary ciphertext is separated from the to-be-processed file, and the file is verified according to the summary ciphertext, a public key of the bank and a preset summary algorithm to obtain a verification result;

[0013] updating a transaction completion result corresponding to the to-be-processed file based on the verification result.

[0014] In a second aspect, the present application provides a bank-based sale of financial product transaction method based on a block chain. The execution subject of the method is a bank node, and the method comprises:

[0015] obtaining a transaction application file of a customer and obtaining total data ciphertext based on the transaction application file and a preset encryption algorithm; the total data ciphertext comprises a summary ciphertext and a file ciphertext, wherein the summary ciphertext is obtained by using a private key of the bank to digitally sign a file summary corresponding to the transaction application file; and the file ciphertext is obtained by using a key agreed by the bank and a target wealth management company to encrypt the transaction application file;

[0016] splicing the total data ciphertext and block header information to obtain a to-be-processed file;

[0017] sending the to-be-processed file to each wealth management company node, so that the target wealth management company node decrypts and verifies the to-be-processed file, and updates a transaction completion result corresponding to the to-be-processed file based on the decryption and verification result.

[0018] In an embodiment, the obtaining of the transaction application file of the customer and the total data ciphertext based on the transaction application file and the preset encryption algorithm comprises:

[0019] obtaining a file summary according to the transaction application file and a preset summary algorithm;

[0020] digitally signing the file summary by using a private key of the bank to obtain the summary ciphertext;

[0021] obtaining the file ciphertext according to the transaction application file and a key agreed by the bank and the target wealth management company;

[0022] splicing the summary ciphertext and the file ciphertext to obtain the total data ciphertext.

[0023] In an embodiment, the total data ciphertext further comprises a keyword ciphertext;

[0024] The method further includes: obtaining a transaction application file of the customer, and obtaining total data ciphertext based on the transaction application file and a preset encryption algorithm.

[0025] The method further includes: obtaining a transaction application file of the customer, and extracting a keyword corresponding to a transaction.

[0026] The method further includes: generating the keyword ciphertext based on the keyword and a preset searchable encryption algorithm.

[0027] The method further includes: splicing the keyword ciphertext, the summary ciphertext and the file ciphertext to obtain the total data ciphertext.

[0028] In an embodiment, the bank-based financial product transaction method further includes:

[0029] The method further includes: performing searchable encryption processing on the keyword corresponding to the to-be-searched file to obtain keyword query ciphertext.

[0030] The method further includes: sending the keyword query ciphertext to a consensus node, so that the consensus node queries and returns file ciphertext corresponding to the keyword query ciphertext and a transaction result.

[0031] The application also provides another bank-based financial product transaction method based on a blockchain. The execution subject of the method is a financial company node, and the method includes:

[0032] The method further includes: receiving a to-be-processed file from a bank node and separating the to-be-processed file to obtain file ciphertext.

[0033] The method further includes: determining whether the current node is a target financial company node based on the file ciphertext and a key agreed upon by a financial company corresponding to the current node and the bank.

[0034] If the current node is the target financial company node, the method further includes: separating summary ciphertext from the to-be-processed file, and verifying the file based on the summary ciphertext, a public key of the bank and a preset summary algorithm to obtain a verification result.

[0035] The method further includes: updating a transaction result corresponding to the to-be-processed file based on the verification result.

[0036] The to-be-processed file is obtained by splicing total data ciphertext and block header information by the bank node, the total data ciphertext is obtained by the bank node based on a transaction application file of the customer and a preset encryption algorithm, the total data ciphertext includes summary ciphertext and file ciphertext, the summary ciphertext is obtained by digitally signing a file summary corresponding to the transaction application file using a private key of the bank, and the file ciphertext is obtained by encrypting the transaction application file using a key agreed upon by the bank and the target financial company.

[0037] In an embodiment, the determining whether the current node is the target wealth management company node according to the file ciphertext and a key agreed between the current node and the bank includes:

[0038] decrypting the file ciphertext using the key agreed between the current node and the bank;

[0039] determining whether the file plaintext is obtained successfully by decryption; if yes, determining that the current node is the target wealth management company node; if no, determining that the current node is not the target wealth management company node.

[0040] In an embodiment, the verifying the file according to the digest ciphertext, the public key of the bank and a preset digest algorithm to obtain a verification result includes:

[0041] decrypting the digest ciphertext using the public key of the bank to obtain a first file digest;

[0042] obtaining a second file digest according to the file plaintext and the preset digest algorithm;

[0043] determining whether the first file digest is consistent with the second file digest;

[0044] if yes, determining that the verification result is a verification pass;

[0045] if no, determining that the verification result is a verification fail.

[0046] In an embodiment, the updating the transaction completion result corresponding to the file to be processed based on the verification result includes:

[0047] determining whether the verification result is a verification pass;

[0048] if yes, reading transaction information in the file plaintext, and determining whether the transaction is established through a smart contract;

[0049] if yes, updating the transaction completion result to yes; if no, updating the transaction completion result to no.

[0050] In a third aspect, the application provides a bank-substituted financial product transaction device based on a blockchain, which corresponds to the bank-substituted financial product transaction method based on a blockchain with a bank node as an execution subject, and the device includes:

[0051] The total data ciphertext generation module is configured to obtain a transaction application file of a customer and obtain total data ciphertext based on the transaction application file and a preset encryption algorithm; the total data ciphertext comprises an abstract ciphertext and a file ciphertext, wherein the abstract ciphertext is obtained by digitally signing a file abstract corresponding to the transaction application file using a private key of a bank; and the file ciphertext is obtained by encrypting the transaction application file using a key agreed upon by the bank and a target wealth management company.

[0052] The to-be-processed file generation module is configured to splice the total data ciphertext and the block header information to obtain a to-be-processed file.

[0053] The to-be-processed file sending module is configured to send the to-be-processed file to each wealth management company node, so that the target wealth management company node decrypts and verifies the to-be-processed file, and updates a transaction transaction result corresponding to the to-be-processed file based on a decryption and verification result.

[0054] In an embodiment, the total data ciphertext generation module comprises:

[0055] The file abstract generation unit is configured to obtain a file abstract based on the transaction application file and a preset abstract algorithm.

[0056] The abstract ciphertext generation unit is configured to digitally sign the file abstract using a private key of a bank to obtain the abstract ciphertext.

[0057] The file ciphertext generation unit is configured to obtain the file ciphertext based on the transaction application file and a key agreed upon by the bank and a target wealth management company.

[0058] The total data ciphertext generation unit is configured to splice the abstract ciphertext and the file ciphertext to obtain the total data ciphertext.

[0059] In an embodiment, the total data ciphertext further comprises a keyword ciphertext.

[0060] The total data ciphertext generation module further comprises a keyword ciphertext generation unit configured to:

[0061] obtain a transaction application file of a customer and extract a keyword, the keyword corresponding to only one transaction; and generate the keyword ciphertext based on the keyword and a preset searchable encryption algorithm.

[0062] The total data ciphertext generation unit is further configured to:

[0063] splice the keyword ciphertext, the abstract ciphertext and the file ciphertext to obtain the total data ciphertext.

[0064] In an embodiment, the blockchain-based bank-acting financial product transaction device further comprises a query module configured to:

[0065] perform searchable encryption processing on the keyword corresponding to the file to be searched to obtain keyword query ciphertext;

[0066] send the keyword query ciphertext to the consensus node, so that the consensus node queries and returns the file ciphertext corresponding to the keyword query ciphertext and the transaction result.

[0067] The application also provides a blockchain-based bank-acting financial product transaction device corresponding to the blockchain-based bank-acting financial product transaction method in which the execution subject is a financial company node. The device comprises:

[0068] a file separation module configured to receive a file to be processed from a bank node and separate the file to obtain file ciphertext, and separate a digest ciphertext from the file to be processed when the current node is a target financial company node;

[0069] an identity judgment module configured to judge whether the current node is a target financial company node according to the file ciphertext and a key agreed upon by a financial company corresponding to the current node and a bank;

[0070] a verification module configured to, when the current node is a target financial company node, verify a file according to the digest ciphertext, a public key of the bank, and a preset digest algorithm to obtain a verification result;

[0071] a transaction result updating module configured to update a transaction result corresponding to the file to be processed based on the verification result;

[0072] The file to be processed is obtained by splicing total data ciphertext and block header information by the bank node, the total data ciphertext is obtained by the bank node based on a transaction application file of a customer and a preset encryption algorithm, the total data ciphertext comprises a digest ciphertext and file ciphertext, the digest ciphertext is obtained by digitally signing a file digest corresponding to the transaction application file using a private key of the bank, and the file ciphertext is obtained by encrypting the transaction application file using a key agreed upon by the bank and a target financial company.

[0073] In an embodiment, the identity judgment module is specifically configured to:

[0074] decrypt the file ciphertext using a key agreed upon by the current node and the bank;

[0075] judge whether the file plaintext is successfully decrypted; if yes, it is determined that the current node is a target financial company node; if no, it is determined that the current node is not a target financial company node.

[0076] In an embodiment, the verification module comprises:

[0077] an abstract decryption unit configured to decrypt the abstract ciphertext using a public key of the bank to obtain a first file abstract;

[0078] an abstract regeneration unit configured to obtain a second file abstract according to the file plaintext and a preset abstract algorithm;

[0079] a consistency judgment unit configured to judge whether the first file abstract is consistent with the second file abstract;

[0080] a verification result determination unit configured to determine that the verification result is passed if the first file abstract is consistent with the second file abstract, and determine that the verification result is failed if the first file abstract is not consistent with the second file abstract.

[0081] In an embodiment, the transaction completion result updating module is specifically configured to:

[0082] judge whether the verification result is passed;

[0083] if yes, read transaction information in the file plaintext, and determine whether the transaction is established through a smart contract;

[0084] if yes, update the transaction completion result to yes; if no, update the transaction result to no.

[0085] In a fourth aspect, the present application provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements any of the bank-substituted financial product transaction methods based on a block chain provided by the present application when executing the computer program.

[0086] In a fifth aspect, the present application provides a computer readable storage medium, which stores a computer program, wherein the computer program is executed by a processor to implement any of the bank-substituted financial product transaction methods based on a block chain provided by the present application.

[0087] The bank-substituted financial product transaction method, device and system based on a block chain provided by the present application solve the problem that the file transmission link between the bank-substituted financial company product and the external financial company system is vulnerable to malicious attacks and tampering by applying the block chain technology, which not only protects privacy and avoids sensitive information leakage, but also guarantees data tamper-proofing by the distributed ledger of the block chain. BRIEF DESCRIPTION OF DRAWINGS

[0088] In order to make the technical solutions in the embodiments of the present application or the prior art clearer, the accompanying drawings needed in the embodiments or prior art description will be briefly introduced below. Obviously, the accompanying drawings in the following description only constitute some embodiments of the present application, and other accompanying drawings can be obtained by those skilled in the art without any creative effort based on these accompanying drawings. In the drawings:

[0089] Figure 1 A schematic diagram of a bank-substituted financial product transaction system based on a blockchain provided by the present application.

[0090] Figure 2 A schematic diagram of a bank-substituted financial product transaction method based on a blockchain provided by the present application.

[0091] Figure 3 A schematic diagram of a step of uploading a to-be-processed file to a chain provided by the present application.

[0092] Figure 4 Another schematic diagram of a bank-substituted financial product transaction method based on a blockchain provided by the present application.

[0093] Figure 5 Another schematic diagram of a bank-substituted financial product transaction method based on a blockchain provided by the present application.

[0094] Figure 6 Another schematic diagram of a bank-substituted financial product transaction method based on a blockchain provided by the present application.

[0095] Figure 7 Another schematic diagram of a bank-substituted financial product transaction method based on a blockchain provided by the present application.

[0096] Figure 8 Another schematic diagram of a bank-substituted financial product transaction method based on a blockchain provided by the present application.

[0097] Figure 9 Another schematic diagram of a bank-substituted financial product transaction method based on a blockchain provided by the present application.

[0098] Figure 10 Another schematic diagram of a bank-substituted financial product transaction method based on a blockchain provided by the present application.

[0099] Figure 11 A schematic diagram of a bank-substituted financial product transaction device based on a blockchain provided by the present application.

[0100] Figure 12 Another schematic diagram of a bank-substituted financial product transaction device based on a blockchain provided by the present application.

[0101] Figure 13 Another schematic diagram of the bank-substituted financial product transaction device based on the blockchain provided in the present application.

[0102] Figure 14 Another schematic diagram of the bank-substituted financial product transaction device based on the blockchain provided in the present application.

[0103] Figure 15 Another schematic diagram of the bank-substituted financial product transaction device based on the blockchain provided in the present application.

[0104] Figure 16 Another schematic diagram of the bank-substituted financial product transaction device based on the blockchain provided in the present application.

[0105] Figure 17 A schematic diagram of a computer device provided in the present application. DETAILED DESCRIPTION

[0106] To make the objectives, technical solutions, and advantages of the embodiments of the present application clearer, further detailed descriptions of the embodiments of the present application will be given below with reference to the drawings. Herein, the schematic embodiments of the present application and the descriptions thereof are used to explain the present application but not to limit the present application.

[0107] It should be noted that the bank-substituted financial product transaction method, device, and system based on the blockchain provided in the present application can be used in the fields of finance and blockchain technology, and can also be used in any field other than the fields of finance and blockchain technology. The application of the bank-substituted financial product transaction method, device, and system based on the blockchain is not limited in the present application.

[0108] In the technical solutions in the present application, the acquisition, storage, use, processing, etc. of data all comply with the relevant provisions of national laws and regulations.

[0109] The user information in the embodiments of the present application is obtained through legal and compliant channels, and the acquisition, storage, use, processing, etc. of the user information is authorized and agreed by the client.

[0110] In a first aspect, the present application provides a bank-substituted financial product transaction system based on the blockchain, comprising a plurality of bank nodes and a plurality of financial company nodes. Figure 1 A schematic diagram of the system is provided for ease of description. Figure 1 Only one bank node and a plurality of financial company nodes are shown. The bank node is a blockchain node corresponding to a certain bank, and the financial company node 1, the financial company node 2, …, and the financial company node N are nodes corresponding to each financial company that entrusts the bank to sell financial products. When data interaction is performed, the bank node and each financial company need to perform corresponding data processing, which is specifically as follows:

[0111] The bank node is mainly used to perform the following data processing steps:

[0112] 1) Obtain a transaction application file of a customer and obtain total data ciphertext based on the transaction application file and a preset encryption algorithm; the total data ciphertext includes summary ciphertext and file ciphertext, wherein the summary ciphertext is obtained by digitally signing a file summary corresponding to the transaction application file using a private key of the bank; and the file ciphertext is obtained by encrypting the transaction application file using a key agreed upon by the bank and a target wealth management company;

[0113] 2) splice the total data ciphertext and block header information to obtain a to-be-processed file;

[0114] 3) send the to-be-processed file to each wealth management company node;

[0115] The wealth management company node is mainly used to perform the following data processing steps:

[0116] 1) receive the to-be-processed file from the bank node and separate the file ciphertext;

[0117] 2) determine whether the current node is a target wealth management company node according to the file ciphertext and a key agreed upon by the wealth management company corresponding to the current node and the bank;

[0118] 3) if yes, separate the summary ciphertext from the to-be-processed file, and verify the file according to the summary ciphertext, a public key of the bank, and a preset summary algorithm to obtain a verification result;

[0119] 4) update a transaction transaction result corresponding to the to-be-processed file based on the verification result.

[0120] In order to facilitate the public to understand the present application, the following will be explained from the perspective of the bank node and the perspective of the wealth management company node. In the following content, the bank node as the execution subject of the blockchain-based bank resale of financial product transaction method is executed by the bank node in the blockchain-based bank resale of financial product transaction system; the wealth management company node as the execution subject of the blockchain-based bank resale of financial product transaction method is executed by the wealth management company node in the blockchain-based bank resale of financial product transaction system.

[0121] In a second aspect, the present application provides a blockchain-based bank resale of financial product transaction method, and the execution subject of the method is a bank node. As shown in Figure 2 the method includes the following steps S101 to S103:

[0122] In step S101, a transaction application file of a client is obtained, and total data ciphertext is obtained based on the transaction application file and a preset encryption algorithm.

[0123] Specifically, the transaction application file is generated based on a purchase application of a financial product submitted by the client on a bank side system, and at least includes an application number that can uniquely distinguish a transaction, client information, and financial product information, wherein the financial product information includes purchase price and information of a corresponding financial company.

[0124] The bank side system uploads the transaction application file to a bank node, and the bank node obtains total data ciphertext based on the transaction application file and a preset encryption algorithm. The total data ciphertext includes digest ciphertext and file ciphertext. The digest ciphertext is obtained by digitally signing a file digest corresponding to the transaction application file using a private key of the bank. The file ciphertext is obtained by encrypting the transaction application file using a key agreed upon by the bank and a target financial company. The bank node stores the keys of all financial companies that entrust the bank to sell financial products. The keys are individually agreed upon by the bank and the financial companies. The financial company node only has the key agreed upon by the corresponding financial company and the bank, and does not have the keys agreed upon by other financial companies and the bank. The specific generation steps of the total data ciphertext will be described in subsequent embodiments.

[0125] In step S102, the total data ciphertext and block header information are spliced to obtain a to-be-processed file.

[0126] Specifically, the to-be-processed file includes a block header and a block body. The block body contains the total data ciphertext formed in step S101, and the block header contains block header information, such as a “transaction completion” field and a corresponding value. The value corresponding to the “transaction completion” field in the to-be-processed file formed by the bank node is empty, which needs to be updated by the target financial company node. This will be described in subsequent embodiments.

[0127] In step S103, the to-be-processed file is sent to each financial company node, so that the target financial company node decrypts and verifies the to-be-processed file, and updates the transaction completion result corresponding to the to-be-processed file based on the decryption and verification result.

[0128] After the to-be-processed file is generated, the bank node sends the to-be-processed file to each wealth management company node, but only the target wealth management company can decrypt and process the to-be-processed file. The target wealth management company here refers to the wealth management company to which the financial product corresponding to the transaction application form file belongs, that is, the wealth management company to which the financial product purchased by the customer belongs. The bank node encrypts the application form file by using the key corresponding to the target wealth management company, so that only the target wealth management company can decrypt the file plaintext, and other non-target wealth management companies cannot decrypt. In this way, the file transmission link between the bank and the wealth management company is avoided from being vulnerable to malicious attacks and tampering, and the privacy of the customer's sensitive information is avoided from being leaked, greatly improving the security.

[0129] Since the blockchain nodes are involved, the process in which the bank node sends the to-be-processed file to each wealth management company node is actually the data chaining process of the blockchain. The process of chaining the to-be-processed file is described in detail with reference to Figure 3

[0130] Step 201: A to-be-processed file is submitted to a blockchain master node for a verification request. The blockchain master node is generated by various blockchain nodes through election and the like. The master node can be one of the nodes performing a consensus algorithm, and the nodes other than the master node participating in the consensus algorithm are slave nodes.

[0131] Step 202: All nodes on the blockchain execute a consensus algorithm, and a PBFT practical Byzantine fault tolerance algorithm is adopted, which mainly includes four stages.

[0132] (1) Pre-Prepare stage: The master node generates a message with a Pre-Prepare state and broadcasts it to the slave nodes.

[0133] (2) Prepare stage: When the slave nodes receive the message from the master node, the file is verified, and after the verification is passed, the message state is modified to Prepare and broadcasted to other nodes.

[0134] (3) Commit stage: When the slave nodes receive the broadcasted message from other nodes, the message is verified, and after the verification is passed, the message state is modified to Commit and broadcasted to other nodes.

[0135] (4) Reply stage: The master node confirms whether the chaining request is successful. If the number of nodes with a verification result of Commit is greater than the minimum number of confirmation nodes set by the algorithm, it indicates that the chaining request is successful, otherwise the verification request needs to be resubmitted.

[0136] Step 203: After the consensus is successfully executed, the block header information such as transaction ID and timestamp is added, and the master node and the slave nodes add the block.

[0137] ​Step 204: after the file is chained, the file sending node, i.e. the bank node, is notified.

[0138] In an embodiment, as shown in FIG. 1, step S101, the transaction application file of the customer is acquired, and total data ciphertext is obtained based on the transaction application file and a preset encryption algorithm, including: Figure 4

[0139] Step S1011, a file digest is obtained according to the transaction application file and a preset digest algorithm.

[0140] Step S1012, the file digest is digitally signed using a private key of the bank to obtain the digest ciphertext.

[0141] Specifically, the preset digest algorithm of step S1011 is, for example, MD5, SHA1, etc. After the transaction application file is operated by the digest algorithm to obtain the file digest, the file digest is digitally signed using the private key of the bank, i.e. the private key of the bank identity, to obtain the digest ciphertext.

[0142] Step S1013, the file ciphertext is obtained according to the transaction application file and a key agreed between the bank and the target wealth management company.

[0143] Specifically, the transaction application file can be encrypted using a symmetric encryption algorithm such as AES. The key used for encryption is the key agreed between the bank and the target wealth management company, which is shared only between the bank and the target wealth management company. The meaning of the target wealth management company is described above, i.e. the wealth management company to which the financial product corresponding to the transaction application file belongs. Different keys should be agreed between the bank and different wealth management companies, and the keys are shared only between the agreed parties.

[0144] Step S1014, the digest ciphertext and the file ciphertext are spliced to obtain the total data ciphertext.

[0145] The digest ciphertext and the file ciphertext are spliced to obtain the total data ciphertext.

[0146] In an embodiment, as shown in FIG. 1, the total data ciphertext further includes keyword ciphertext. Figure 5

[0147] Step S101, the transaction application file of the customer is acquired, and total data ciphertext is obtained based on the transaction application file and a preset encryption algorithm, further including:

[0148] Step S1015, the transaction application file of the customer is acquired and a keyword is extracted, the keyword corresponding to only one transaction; the keyword ciphertext is generated according to the keyword and a preset searchable encryption algorithm.

[0149] ​​Wherein the keyword can be selected from the transaction serial number, application number and other fields that can uniquely distinguish a transaction. The searchable encryption algorithm here is, for example, a public-key searchable encryption algorithm. The algorithm generates a private key SKey and a public key PKey through a security parameter s. The public key PKey is used to encrypt the keyword w, and the keyword ciphertext is obtained.

[0150] At this time, step S1014 is changed to step S1016: the keyword ciphertext, the digest ciphertext and the file ciphertext are spliced to obtain the total data ciphertext.

[0151] In an embodiment, as shown in Figure 6 The bank-based bank-acting financial product transaction method further comprises:

[0152] Step S301: searchable encryption processing is performed on the keyword corresponding to the file to be searched, to obtain keyword query ciphertext.

[0153] Wherein, the keyword is initiated by the query end, such as a transaction customer, and should be the same field as the keyword used in step S1015. The searchable encryption processing should be encrypted using an algorithm consistent with the searchable encryption algorithm used to encrypt the keyword in step S1015. In this way, the corresponding keyword ciphertext can be matched through the keyword query ciphertext.

[0154] Step S302: the keyword query ciphertext is sent to the consensus node, so that the consensus node queries and returns the file ciphertext corresponding to the keyword query ciphertext and the transaction completion result.

[0155] The consensus node can be any node that executes a consensus algorithm, which can be a bank node or a financial company node. When the consensus node receives a query request carrying the keyword query ciphertext, it matches the keyword query ciphertext with the keyword ciphertext stored in the node. If the matching is successful, the keyword ciphertext is obtained, that is, the file ciphertext corresponding to the keyword query ciphertext, the transaction completion result and other queryable information are returned to the query end. The specific information returned depends on the query request. The query end can be any user with query authority. In fact Figure 6 As shown in the figure, the steps are performed by the consensus node after the query end initiates a query request to the consensus node.

[0156] The present application realizes the functions of encrypted transmission and searchable encryption of the bank-acting financial product transaction data. The searchable encryption keyword greatly improves the efficiency of file retrieval. The transaction is realized through a blockchain smart contract, which has timeliness, security and accuracy, improves the data privacy protection capability and provides convenience for use.

[0157] The above is a description of the bank node-based method for selling financial products by a bank based on a blockchain. Next, the application also provides another bank-based method for selling financial products based on a blockchain, the execution subject of which is a financial company node. As shown in Figure 7 The method includes the following steps:

[0158] In step S401, a to-be-processed file is received from a bank node, and a file ciphertext is separated.

[0159] In step S402, it is determined whether the current node is a target financial company node according to the file ciphertext and a key agreed upon by the financial company corresponding to the current node and the bank. If yes, step S403 is performed, and if no, no processing is performed.

[0160] In step S403, an abstract ciphertext is separated from the to-be-processed file.

[0161] In step S404, the file is verified according to the abstract ciphertext, the public key of the bank, and a preset abstract algorithm, and a verification result is obtained. This step is to verify whether the file has encountered a man-in-the-middle attack in the sending process and whether the file is authentic and complete.

[0162] In step S405, the transaction completion result corresponding to the to-be-processed file is updated based on the verification result.

[0163] The to-be-processed file is obtained by splicing a total data ciphertext and a block header information by the bank node, the total data ciphertext is obtained by the bank node based on a transaction application file of a customer and a preset encryption algorithm, the total data ciphertext includes an abstract ciphertext and a file ciphertext, the abstract ciphertext is obtained by digitally signing a file abstract corresponding to the transaction application file using a private key of the bank, and the file ciphertext is obtained by encrypting the transaction application file using a key agreed upon by the bank and the target financial company.

[0164] In an embodiment, as shown in Figure 8 In step S402, it is determined whether the current node is a target financial company node according to the file ciphertext and a key agreed upon by the financial company corresponding to the current node and the bank, including:

[0165] In step S4021, the file ciphertext is decrypted using the key agreed upon by the current node and the bank.

[0166] In step S4022, it is determined whether the file plaintext is successfully decrypted. If yes, step S4023 is performed, and if no, step S4024 is performed.

[0167] In step S4023, it is determined that the current node is the target financial company node.

[0168] Step S4024, determining that the current node is not the target wealth management company node.

[0169] The confirmation here is based on the fact that the file plaintext is encrypted by the bank node using the bank's private key agreed with the target wealth management company, so only the target wealth management company's corresponding key can successfully decrypt. If the current node can successfully decrypt, it means that it is the correct recipient, i.e. the target wealth management company node, and if it cannot successfully decrypt, it means that the recipient (target wealth management company) is another wealth management company.

[0170] In an embodiment, as shown in Figure 9 Step S404, verifying the file according to the digest ciphertext, the bank's public key and a preset digest algorithm to obtain a verification result, including:

[0171] Step S4041, decrypting the digest ciphertext using the bank's public key, and if a first file digest is obtained after successful decryption, performing step S4042, and if decryption fails, it means that a man-in-the-middle attack is encountered in the file sending process, the digital signature verification fails, and the data can be discarded. Here, the bank's public key and the bank's private key used for digital signature are a pair of keys.

[0172] Step S4042, obtaining a second file digest according to the file plaintext and a preset digest algorithm; here, the preset digest algorithm should be consistent with the digest algorithm used by the bank node to generate the file digest.

[0173] Step S4043, determining whether the first file digest and the second file digest are consistent; if yes, performing step S4044; if no, performing step S4045;

[0174] Step S4044, determining that the verification result is a verification pass.

[0175] Step S4045, determining that the verification result is a verification fail.

[0176] In an embodiment, as shown in Figure 10 Step S405, updating the transaction completion result corresponding to the to-be-processed file based on the verification result, including:

[0177] Step S4051, determining whether the verification result is a verification pass; if yes, performing step S4052; if no, performing step S4055;

[0178] Step S4052, read the transaction information in the file plaintext (i.e. the transaction application file), and determine whether the transaction is established through the smart contract; if yes, execute step S4053; if no, execute step S4054. Here, when determining whether the transaction is established through the smart contract, it is determined according to the closing price of the financial product purchased by the customer on the day, based on the smart contract.

[0179] Step S4053, update the transaction result to yes;

[0180] Step S4054, update the transaction result to no;

[0181] Step S4055, discard the data.

[0182] The steps S4053 and S4054 are actually the target financial company node updating the transaction result to the block where the encrypted file is located.

[0183] In addition to the steps shown in the above embodiments, the financial company node can also provide Figure 6 the keyword query function shown. As long as the query end initiates a query request to the financial company node.

[0184] The bank-acting financial product transaction method based on the blockchain of the present application solves the problem that the file transmission link between the bank-acting financial company product and the external financial company system is vulnerable to malicious attacks and tampering by applying the blockchain technology, not only can protect privacy and avoid sensitive information leakage, but also the distributed ledger of the blockchain can guarantee data tamper resistance.

[0185] Based on the same inventive concept, the embodiments of the present application also provide a bank-acting financial product transaction device based on the blockchain, which can be used to implement the method described in the above embodiments, as described in the following embodiments. Since the bank-acting financial product transaction device based on the blockchain solves the problem by the same principle as the bank-acting financial product transaction method based on the blockchain, the implementation of the bank-acting financial product transaction device based on the blockchain can be referred to the implementation of the corresponding bank-acting financial product transaction method based on the blockchain, and the repeated parts will not be described. The term "unit" or "module" used below can be a combination of software and / or hardware that implements a predetermined function. Although the system described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware is also possible and is conceived.

[0186] In a third aspect, the present application provides a bank-acting financial product transaction device based on the blockchain, which corresponds to the bank-acting financial product transaction method based on the blockchain with the execution subject being a bank node. As Figure 11 shown, the device comprises:

[0187] The total data ciphertext generation module 501 is used to obtain the customer's transaction application form file and obtain the total data ciphertext based on the transaction application form file and a preset encryption algorithm. The total data ciphertext includes a digest ciphertext and a file ciphertext. The digest ciphertext is obtained by digitally signing the file digest corresponding to the transaction application form file using the bank's private key. The file ciphertext is obtained by encrypting the transaction application form file using a key agreed upon by the bank and the target wealth management company.

[0188] The file to be processed generation module 502 is used to concatenate the total data ciphertext and block header information to obtain the file to be processed;

[0189] The pending file sending module 503 is used to send the pending file to each wealth management company node, so that the target wealth management company node can decrypt and verify the pending file, and update the transaction result corresponding to the pending file based on the decryption and verification results.

[0190] In one embodiment, such as Figure 12 As shown, the total data ciphertext generation module 501 includes:

[0191] The document digest generation unit 5011 is used to obtain a document digest based on the transaction application file and a preset digest algorithm.

[0192] The digest ciphertext generation unit 5012 is used to digitally sign the document digest using the bank's private key to obtain the digest ciphertext;

[0193] The document ciphertext generation unit 5013 is used to obtain the document ciphertext based on the transaction application form and the key agreed upon by the bank and the target wealth management company.

[0194] The total data ciphertext generation unit 5014 is used to concatenate the digest ciphertext and the file ciphertext to obtain the total data ciphertext.

[0195] In one embodiment, such as Figure 13 As shown, the total data ciphertext also includes keyword ciphertext;

[0196] The total data ciphertext generation module 501 further includes a keyword ciphertext generation unit 5015, used for:

[0197] Obtain the customer's transaction application file and extract keywords, each keyword corresponding to only one transaction; and generate the keyword ciphertext based on the keywords and a preset searchable encryption algorithm;

[0198] The total data ciphertext generation unit 5014 is also used for:

[0199] The keyword ciphertext, the summary ciphertext and the file ciphertext are spliced to obtain the total data ciphertext.

[0200] In an embodiment, as shown in Figure 14 The blockchain-based bank agent sale of financial products transaction device further includes a query module 504 configured to:

[0201] The keyword corresponding to the file to be searched is subjected to searchable encryption processing to obtain keyword query ciphertext.

[0202] The keyword query ciphertext is sent to a consensus node, so that the consensus node queries and returns file ciphertext corresponding to the keyword query ciphertext and a transaction settlement result.

[0203] The application further provides a blockchain-based bank agent sale of financial products transaction device corresponding to the blockchain-based bank agent sale of financial products transaction method in which the execution subject is a financial company node. As shown in Figure 15 The device includes:

[0204] A file separation module 601 configured to receive a file to be processed from a bank node and separate the file to obtain file ciphertext, and separate summary ciphertext from the file to be processed when the current node is a target financial company node.

[0205] An identity judgment module 602 configured to judge whether the current node is a target financial company node according to the file ciphertext and a key agreed upon by a financial company corresponding to the current node and a bank.

[0206] A verification module 603 configured to, when the current node is a target financial company node, verify a file according to the summary ciphertext, a public key of the bank and a preset summary algorithm to obtain a verification result.

[0207] A transaction settlement result update module 604 configured to update a transaction settlement result corresponding to the file to be processed based on the verification result.

[0208] The file to be processed is obtained by splicing a total data ciphertext and block header information by the bank node, the total data ciphertext is obtained by the bank node based on a transaction application file of a customer and a preset encryption algorithm, the total data ciphertext includes summary ciphertext and file ciphertext, the summary ciphertext is obtained by digitally signing a file summary corresponding to the transaction application file using a private key of the bank, and the file ciphertext is obtained by encrypting the transaction application file using a key agreed upon by the bank and the target financial company.

[0209] In an embodiment, the identity judgment module 602 is specifically configured to:

[0210] decrypt the file ciphertext using a key agreed upon by the current node and the bank;

[0211] determine whether the file plaintext is successfully decrypted; if yes, determine that the current node is the target wealth management company node; if no, determine that the current node is not the target wealth management company node.

[0212] In an embodiment, as shown in Figure 16 the verification module 603 includes:

[0213] an abstract decryption unit 6031 configured to decrypt the abstract ciphertext using a public key of the bank to obtain a first file abstract;

[0214] an abstract regeneration unit 6032 configured to obtain a second file abstract according to the file plaintext and a preset abstract algorithm;

[0215] a consistency determination unit 6033 configured to determine whether the first file abstract and the second file abstract are consistent;

[0216] a verification result determination unit 6034 configured to determine that the verification result is passed if the first file abstract and the second file abstract are consistent; and determine that the verification result is not passed if the first file abstract and the second file abstract are inconsistent.

[0217] In an embodiment, the transaction completion result updating module 604 is specifically configured to:

[0218] determine whether the verification result is passed;

[0219] if yes, read the transaction information in the file plaintext, and determine whether the transaction is established through the smart contract;

[0220] if yes, update the transaction completion result to yes; and if no, update the transaction result to no.

[0221] The bank-substituted wealth management product transaction device based on the blockchain provided in the present application solves the problem that the file transmission link between the bank-substituted wealth management company product and the external wealth management company system is vulnerable to malicious attacks and tampering by applying the blockchain technology, not only can protect privacy and avoid sensitive information leakage, but also can guarantee data tamper-proofing by the distributed ledger of the blockchain.

[0222] In a fourth aspect, the present application also provides a computer device, referring to Figure 17 the electronic device 100 specifically includes:

[0223] The central processor 110, the memory 120, the communications module 130, the input unit 140, the output unit 150, and the power supply 160.

[0224] The memory 120, the communications module 130, the input unit 140, the output unit 150, and the power supply 160 are connected to the central processor 110 respectively. The memory 120 stores a computer program, the central processor 110 can call the computer program, and the central processor 110 implements all steps in the bank-based financial product transaction method based on the blockchain in the above embodiment when executing the computer program.

[0225] In a fifth aspect, the embodiments of the present application further provide a computer readable storage medium for storing a computer program, the computer program being executable by a processor. The computer program is executable by the processor to implement any of the bank-based financial product transaction methods based on the blockchain provided by the present application.

[0226] In an embodiment, the embodiments of the present application further provide a computer program product, which includes a computer program. The computer program is executable by a processor to implement any of the bank-based financial product transaction methods based on the blockchain provided by the above embodiments.

[0227] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage media, etc.) containing computer-usable program code.

[0228] The present application is described with reference to flowcharts and / or block diagrams of the method, device (system), and computer program product according to the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of the flows and / or blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing apparatus to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing apparatus generate a means for implementing the functions specified in the flowcharts and / or block diagrams. Figure 1 one flow or multiple flows and / or blocks Figure 1means for performing the function specified by the block or blocks.

[0229] These computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instructions which implement the flow Figure 1 flow or flows and / or blocks Figure 1 means for performing the function specified by the block or blocks.

[0230] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the flow Figure 1 flow or flows and / or blocks Figure 1 means for performing the function specified by the block or blocks.

[0231] The above specific embodiments are described to further explain the purpose, technical solutions and beneficial effects of the present application. It should be understood that the above description is only a specific embodiment of the present application and is not used to limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims

1. A blockchain-based method for trading bank-sold wealth management products, characterized in that, include: The system obtains the customer's transaction application form file and, based on the transaction application form file and a preset encryption algorithm, obtains the total data ciphertext. The total data ciphertext includes a digest ciphertext and a file ciphertext. The digest ciphertext is obtained by digitally signing the file digest corresponding to the transaction application form file using the bank's private key. The file ciphertext is obtained by encrypting the transaction application form file using a key agreed upon by the bank and the target wealth management company, and the key is shared only between the agreed parties. The total encrypted data and block header information are concatenated to obtain the file to be processed; The file to be processed is sent to each wealth management company node so that the target wealth management company node can decrypt and verify the file to be processed, and update the transaction result corresponding to the file to be processed based on the decryption and verification results; The total data ciphertext also includes keyword ciphertext; The process of obtaining the customer's transaction application file and obtaining the total encrypted data based on the transaction application file and a preset encryption algorithm includes: A file digest is obtained based on the transaction application form and a preset digest algorithm; The file digest is digitally signed using the bank's private key to obtain the ciphertext digest. The encrypted text of the document is obtained based on the transaction application form and the key agreed upon between the bank and the target wealth management company; Obtain the customer's transaction application file and extract keywords. Each keyword corresponds to only one transaction, and the keyword is a field that uniquely identifies a transaction. Generate the keyword ciphertext based on the keyword and a preset searchable encryption algorithm; The total data ciphertext is obtained by concatenating the keyword ciphertext, the digest ciphertext, and the file ciphertext. The method further includes: The keywords corresponding to the file to be searched are subjected to searchable encryption to obtain the keyword query ciphertext; The keyword query ciphertext is sent to the consensus node, so that the consensus node queries and returns the ciphertext of the file corresponding to the keyword query ciphertext and the transaction result.

2. A blockchain-based method for trading bank-sold wealth management products, characterized in that, include: Receive files to be processed from bank nodes and extract the encrypted files; Determine whether the current node is the target wealth management company's node based on the encrypted text of the file and the key agreed upon between the wealth management company and the bank corresponding to the current node; If so, the digest ciphertext is extracted from the file to be processed, and the file is verified based on the digest ciphertext, the bank's public key, and a preset digest algorithm to obtain the verification result; Update the transaction completion result corresponding to the file to be processed based on the verification result; The file to be processed is obtained by concatenating the total encrypted data and block header information by the bank node. The total encrypted data is obtained by the bank node based on the customer's transaction application file and a preset encryption algorithm. The total encrypted data includes a digest ciphertext and a file ciphertext. The digest ciphertext is obtained by digitally signing the file digest corresponding to the transaction application file using the bank's private key. The file ciphertext is obtained by encrypting the transaction application file using a key agreed upon by the bank and the target wealth management company, and the key is only shared between the agreed parties. The total encrypted data also includes a keyword ciphertext. The total encrypted data is generated by the bank node in the following way: A file digest is obtained based on the transaction application form and a preset digest algorithm; The file digest is digitally signed using the bank's private key to obtain the ciphertext digest. The encrypted text of the document is obtained based on the transaction application form and the key agreed upon between the bank and the target wealth management company; Obtain the customer's transaction application file and extract keywords. Each keyword corresponds to only one transaction, and the keyword is a field that uniquely identifies a transaction. Generate the keyword ciphertext based on the keyword and a preset searchable encryption algorithm; The total data ciphertext is obtained by concatenating the keyword ciphertext, the digest ciphertext, and the file ciphertext. The bank node is also used to: perform searchable encryption processing on the keywords corresponding to the file to be searched to obtain keyword query ciphertext; and send the keyword query ciphertext to the consensus node so that the consensus node can query and return the file ciphertext and transaction results corresponding to the keyword query ciphertext.

3. The method for trading bank-sold wealth management products based on blockchain according to claim 2, characterized in that, The step of determining whether the current node is the target wealth management company's node based on the encrypted file and the key agreed upon between the wealth management company and the bank corresponding to the current node includes: The encrypted file is decrypted using the key agreed upon between the current node and the bank. Determine if decryption was successful and the plaintext of the file was obtained; if yes, then determine that the current node is the target financial company's node; if no, then determine that the current node is not the target financial company's node.

4. The method for trading bank-sold wealth management products based on blockchain according to claim 3, characterized in that, The step of verifying the file based on the digest ciphertext, the bank's public key, and a preset digest algorithm to obtain a verification result includes: The first file digest is obtained by decrypting the ciphertext using the bank's public key. A second file digest is obtained based on the plaintext of the file and a preset digest algorithm; Determine whether the first file digest and the second file digest are consistent; If so, then the verification result is determined to be successful. If not, the verification result is determined to be verification failed.

5. The blockchain-based bank-sold wealth management product transaction method according to claim 4, characterized in that, The step of updating the transaction completion result corresponding to the file to be processed based on the verification result includes: Determine whether the verification result is a successful verification; If so, the transaction information in the plaintext of the file is read, and the smart contract is used to determine whether the transaction is successful. If the transaction is successful, update the transaction result to "yes"; if it is unsuccessful, update the transaction result to "no".

6. A blockchain-based bank-sold wealth management product transaction system, characterized in that, This includes bank nodes and multiple wealth management company nodes; The bank node is used for: The system obtains the customer's transaction application form file and, based on the transaction application form file and a preset encryption algorithm, obtains the total data ciphertext. The total data ciphertext includes a digest ciphertext and a file ciphertext. The digest ciphertext is obtained by digitally signing the file digest corresponding to the transaction application form file using the bank's private key. The file ciphertext is obtained by encrypting the transaction application form file using a key agreed upon by the bank and the target wealth management company, and the key is shared only between the agreed parties. The total encrypted data and block header information are concatenated to obtain the file to be processed; Send the files to be processed to the respective financial management company nodes; The total data ciphertext also includes keyword ciphertext; The process of obtaining the customer's transaction application file and obtaining the total encrypted data based on the transaction application file and a preset encryption algorithm includes: A file digest is obtained based on the transaction application form and a preset digest algorithm; The file digest is digitally signed using the bank's private key to obtain the ciphertext digest. The encrypted text of the document is obtained based on the transaction application form and the key agreed upon between the bank and the target wealth management company; Obtain the customer's transaction application file and extract keywords. Each keyword corresponds to only one transaction, and the keyword is a field that uniquely identifies a transaction. Generate the keyword ciphertext based on the keyword and a preset searchable encryption algorithm; The total data ciphertext is obtained by concatenating the keyword ciphertext, the digest ciphertext, and the file ciphertext. The bank node is also used for: The keywords corresponding to the file to be searched are subjected to searchable encryption to obtain the keyword query ciphertext; The keyword query ciphertext is sent to the consensus node, so that the consensus node queries and returns the file ciphertext corresponding to the keyword query ciphertext and the transaction result. The wealth management company node is used for: Receive files to be processed from bank nodes and extract the encrypted files; Determine whether the current node is the target wealth management company's node based on the encrypted text of the file and the key agreed upon between the wealth management company and the bank corresponding to the current node; If so, the digest ciphertext is extracted from the file to be processed, and the file is verified based on the digest ciphertext, the bank's public key, and a preset digest algorithm to obtain the verification result; The transaction completion result corresponding to the file to be processed is updated based on the verification result.

7. A blockchain-based trading device for bank-sold wealth management products, characterized in that, include: The total data ciphertext generation module is used to obtain the customer's transaction application form file and obtain the total data ciphertext based on the transaction application form file and a preset encryption algorithm; The total data ciphertext includes a digest ciphertext and a file ciphertext. The digest ciphertext is obtained by digitally signing the file digest corresponding to the transaction application file using the bank's private key. The file ciphertext is obtained by encrypting the transaction application file using a key agreed upon by the bank and the target wealth management company, and the key is shared only between the agreed parties. The file to be processed generation module is used to concatenate the total data ciphertext and block header information to obtain the file to be processed; The pending file sending module is used to send the pending file to each wealth management company node, so that the target wealth management company node can decrypt and verify the pending file, and update the transaction result corresponding to the pending file based on the decryption and verification results; The total data ciphertext also includes keyword ciphertext; The total data ciphertext generation module includes: The document digest generation unit is used to obtain a document digest based on the transaction application file and a preset digest algorithm. The digest ciphertext generation unit is used to digitally sign the document digest using the bank's private key to obtain the digest ciphertext; The document ciphertext generation unit is used to obtain the document ciphertext based on the transaction application form and the key agreed upon by the bank and the target wealth management company. The keyword ciphertext generation unit is used to obtain the customer's transaction application form file and extract keywords, wherein each keyword corresponds to only one transaction; and to generate the keyword ciphertext based on the keywords and a preset searchable encryption algorithm, wherein the keywords are fields that uniquely identify a transaction; The total data ciphertext generation unit is used to concatenate the keyword ciphertext, the digest ciphertext, and the file ciphertext to obtain the total data ciphertext; The blockchain-based bank-sold wealth management product transaction device also includes a query module, used for: The keywords corresponding to the file to be searched are subjected to searchable encryption to obtain the keyword query ciphertext; The keyword query ciphertext is sent to the consensus node, so that the consensus node queries and returns the ciphertext of the file corresponding to the keyword query ciphertext and the transaction result.

8. A blockchain-based trading device for bank-sold wealth management products, characterized in that, include: The file separation module is used to receive files to be processed from bank nodes and separate them into encrypted files. And when the current node is the target financial company node, the digest ciphertext is extracted from the file to be processed; The identity verification module is used to determine whether the current node is the target wealth management company node based on the encrypted file and the key agreed upon between the wealth management company and the bank corresponding to the current node; The verification module is used to verify the file based on the digest ciphertext, the bank's public key, and a preset digest algorithm when the current node is the target financial company node, and to obtain the verification result. The transaction result update module is used to update the transaction result corresponding to the file to be processed based on the verification result. The file to be processed is obtained by concatenating the total encrypted data and block header information by the bank node. The total encrypted data is obtained by the bank node based on the customer's transaction application file and a preset encryption algorithm. The total encrypted data includes a digest ciphertext and a file ciphertext. The digest ciphertext is obtained by digitally signing the file digest corresponding to the transaction application file using the bank's private key. The file ciphertext is obtained by encrypting the transaction application file using a key agreed upon by the bank and the target wealth management company, and the key is only shared between the agreed parties. The total encrypted data also includes a keyword ciphertext. The total encrypted data is generated by the bank node in the following way: A file digest is obtained based on the transaction application form and a preset digest algorithm; The file digest is digitally signed using the bank's private key to obtain the ciphertext digest. The encrypted text of the document is obtained based on the transaction application form and the key agreed upon between the bank and the target wealth management company; Obtain the customer's transaction application file and extract keywords. Each keyword corresponds to only one transaction, and the keyword is a field that uniquely identifies a transaction. Generate the keyword ciphertext based on the keyword and a preset searchable encryption algorithm; The total data ciphertext is obtained by concatenating the keyword ciphertext, the digest ciphertext, and the file ciphertext. The bank node is also used to: perform searchable encryption processing on the keywords corresponding to the file to be searched to obtain keyword query ciphertext; and send the keyword query ciphertext to the consensus node so that the consensus node can query and return the file ciphertext and transaction results corresponding to the keyword query ciphertext.

9. A computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the blockchain-based bank-sold wealth management product transaction method as described in any one of claims 1 to 5.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, which, when executed by a processor, implements the blockchain-based bank-sold wealth management product transaction method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Data security interaction method and system based on blockchain

    CN112564906A