Transaction risk identification method and device based on blockchain and secure multi-party computing
By combining blockchain and secure multi-party computing technology in blockchain transactions, the risk identification problem in blockchain transactions is solved, and the legality and compliance of transactions and risk control are achieved, and data privacy and security are ensured.
Patent Information
- Application Number
- CN202110445636.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-04-23
- Publication Date
- 2024-12-13
- Estimated Expiration
- 2041-04-23
AI Technical Summary
The existing technology is difficult to effectively identify and manage transaction risks in blockchain transactions, making it difficult to achieve legal compliance and risk control.
Using transaction risk identification method based on blockchain and secure multi-party calculations, by receiving blockchain transaction requests, obtaining data on and off-chain data, performing secure multi-party calculations, combining results to obtain risk prediction models, and determining transaction risk levels , ensure the legality, compliance and controllable risks of transactions.
An efficient, accurate and comprehensive transaction risk identification system has been built to ensure the legality and compliance of transactions on the blockchain chain, the risks are controllable, and the coordinated calculation of data privacy and security is realized.
Smart Images

Figure CN113129149B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of blockchain technology, specifically to blockchain technology applied in the financial field, and more specifically to a transaction risk identification method, device, electronic device, computer-readable storage medium and program product based on blockchain and secure multi-party computing. Background Art
[0002] Blockchain technology is a new distributed infrastructure and computing method that uses block chain data structures to verify and store data, uses distributed node consensus algorithms to generate and update data, uses cryptography to ensure the security of data transmission and access, and uses smart contracts composed of automated script codes to program and operate data. As a new distributed system for data sharing, blockchain technology relies on its peer-to-peer decentralized communication, encryption technology to verify that it cannot be tampered with, data transparency and traceability, and distributed consensus collective maintenance. It solves the problems of data collaboration and data islands, and can be applied to various business fields, such as supply chain finance, trade financing, digital asset data exchange, business collaboration, traceability and evidence storage, and other fields.
[0003] Secure multi-party computing technology is a hot topic in cryptography today. It is a complex cryptographic protocol that can be used to solve the problem of secure collaborative computing in scenarios without trusted third parties. It mainly reflects the privacy and correctness of data computing. The main core technologies of secure multi-party computing include homomorphic encryption, obfuscated circuits, secret collaboration and inadvertent transmission. Relying on secure multi-party computing combined with traditional machine learning algorithms for joint modeling, it can ensure user privacy and security, prevent data from leaving the local private domain, and avoid the characteristics of joint modeling of a single data source. Summary of the invention
[0004] In response to the problems in the prior art, the embodiments of the present disclosure provide a transaction risk identification method and device based on blockchain and secure multi-party computing, which can at least partially solve the problems in the prior art.
[0005] According to one aspect of an embodiment of the present disclosure, a transaction risk identification method based on blockchain and secure multi-party computing is provided, and the transaction risk identification method includes:
[0006] Receiving a blockchain transaction request, wherein the blockchain transaction request includes transaction-related data;
[0007] Obtaining, from a blockchain network node, on-blockchain data of a blockchain transaction corresponding to the blockchain transaction request;
[0008] Obtain off-chain data corresponding to the data on the blockchain from multiple off-chain storage nodes respectively;
[0009] Synchronize the off-chain data obtained from multiple off-chain storage nodes to secure multi-party computing nodes respectively;
[0010] performing secure multi-party computation and combining the results of the secure multi-party computation to obtain a risk prediction model; and
[0011] Based on the risk prediction model, a risk level of the blockchain transaction is determined.
[0012] According to some embodiments of the present disclosure, obtaining off-chain data corresponding to the data on the blockchain from multiple off-chain storage nodes includes: obtaining off-chain data anchored to the data on the blockchain by hash anchoring from multiple off-chain storage nodes.
[0013] According to some embodiments of the present disclosure, the data on the blockchain includes blockchain basic data and / or contract-related data; and / or, the off-chain data includes large-volume data, block history data and confidential data.
[0014] According to some embodiments of the present disclosure, the transaction risk identification method also includes: sending contract-related data in the data on the blockchain to a secure multi-party computing node; and the secure multi-party computing node implementing secure multi-party computing based on the contract-related data.
[0015] According to some embodiments of the present disclosure, the contract-related data sent to the secure multi-party computing node is related to at least one of permission control, token service, computing power sharing and model parameters.
[0016] According to some embodiments of the present disclosure, the multiple off-chain storage nodes include a distributed file system.
[0017] According to some embodiments of the present disclosure, the multiple off-chain storage nodes form a directed acyclic graph.
[0018] According to some embodiments of the present disclosure, the blockchain network nodes are multiple blockchain network nodes in a consortium chain.
[0019] According to some embodiments of the present disclosure, executing secure multi-party computing and merging the results of secure multi-party computing to obtain a risk prediction model includes: executing secure multi-party computing to obtain multiple sets of parameters of the risk prediction model; based on the multiple sets of parameters, determining actual parameters of the risk prediction model; sending the actual parameters to a decision service node; and the decision service node determining the risk prediction model.
[0020] According to another aspect of an embodiment of the present disclosure, a transaction risk identification device based on blockchain and secure multi-party computing is provided, including: a receiving module, used to receive a blockchain transaction request, the blockchain transaction request including transaction-related data; an on-chain data acquisition module, used to acquire on-chain data of a blockchain transaction corresponding to the blockchain transaction request from a blockchain network node; an off-chain data acquisition module, used to acquire off-chain data corresponding to the on-blockchain data from multiple off-chain storage nodes, respectively; a data synchronization module, used to synchronize the off-chain data acquired from multiple off-chain storage nodes to secure multi-party computing nodes, respectively; a secure multi-party computing module, used to perform secure multi-party computing and merge the results of secure multi-party computing to obtain a risk prediction model; and a determination module, used to determine the risk level of the blockchain transaction based on the risk prediction model.
[0021] According to another aspect of an embodiment of the present disclosure, there is provided an electronic device, comprising: one or more processors; a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors execute the above-mentioned transaction risk identification method based on blockchain and secure multi-party computing.
[0022] According to another aspect of an embodiment of the present disclosure, there is provided a computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, causes the processor to execute the above-mentioned transaction risk identification method based on blockchain and secure multi-party computing.
[0023] According to another aspect of an embodiment of the present disclosure, a computer program product is provided, including a computer program, which, when executed by a processor, implements the above-mentioned transaction risk identification method based on blockchain and secure multi-party computing.
[0024] The embodiments of the present disclosure propose a method and manufacturing method for transaction risk identification based on blockchain and secure multi-party computing, and combine secure multi-party computing and blockchain technology to establish a systematic and secure data collaboration solution, so that an efficient, accurate and comprehensive transaction risk identification system can be built on the blockchain platform using secure multi-party computing related technologies to ensure the legality and compliance of transactions on the blockchain, and that risks are controllable. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] The above contents and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:
[0026] Figure 1 It is a structural diagram of a transaction risk identification system based on blockchain and secure multi-party computing provided by some embodiments of the present disclosure;
[0027] Figure 2 It is a flowchart of a transaction risk identification method based on blockchain and secure multi-party computing provided by some embodiments of the present disclosure;
[0028] Figure 3 is a schematic diagram of a structure for implementing data sharing between a blockchain network node and an off-chain storage node according to some exemplary embodiments of the present disclosure;
[0029] Figure 4 is a schematic diagram of a structure for implementing data sharing between a blockchain network node and a secure multi-party computing node according to some exemplary embodiments of the present disclosure;
[0030] Figure 5 is a multi-party collaboration data flow diagram in a transaction risk identification method and system based on blockchain and secure multi-party computing according to some exemplary embodiments of the present disclosure;
[0031] Figure 6 is a schematic diagram of a decision service node according to some exemplary embodiments of the present disclosure;
[0032] Figure 7 is a data flow diagram for constructing a blockchain transaction risk identification model according to some exemplary embodiments of the present disclosure;
[0033] Figure 8 is a flow chart of a transaction risk identification method based on blockchain and secure multi-party computing according to some exemplary embodiments of the present disclosure;
[0034] Fig. 9 is an information interaction diagram between nodes of a transaction risk identification device based on blockchain and secure multi-party computing according to some exemplary embodiments of the present disclosure;
[0035] Fig.10 A block diagram schematically shows an electronic device suitable for implementing the transaction risk identification method based on blockchain and secure multi-party computing according to an embodiment of the present disclosure; and
[0036] Fig.11 A block diagram of an electronic device suitable for implementing the above-mentioned transaction risk identification method based on blockchain and secure multi-party computing according to other embodiments of the present disclosure is schematically shown. DETAILED DESCRIPTION
[0037] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present disclosure. In the following detailed description, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.
[0038] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise", "include", etc. used herein indicate the existence of the features, steps, operations and / or components, but do not exclude the existence or addition of one or more other features, steps, operations or components.
[0039] All terms (including technical and scientific terms) used herein have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification, and should not be interpreted in an idealized or overly rigid manner.
[0040] When using expressions such as "at least one of A, B, and C, etc.", they should generally be interpreted according to the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).
[0041] In this article, "Secure Multi-Party Computation (SMPC or MPC)" refers to a privacy-preserving collaborative computation between a group of mutually distrusting parties. In secure multi-party computation, the independence of inputs and the correctness of computations must be ensured, while the input values must not be leaked to other members participating in the computation. For example, in a multi-user network, users may not trust each other, but collaborative computations can be achieved through the network, while the security of user data can be guaranteed during and after the computation. In related technologies, attempts are made to use fully homomorphic encryption schemes for secure multi-party cloud computing. Currently, fully homomorphic encryption schemes mainly include the following three types: encryption schemes based on ideal lattices; encryption schemes based on the problem of approximate greatest common divisors of integers (GCD); and encryption schemes based on the problem of learning with errors (LWE). For example, a partially homomorphic encryption algorithm (such as an additively homomorphic encryption algorithm or a multiplicative homomorphic encryption algorithm) can be used. Typical additively homomorphic encryption algorithms include the Paillier encryption algorithm and the Benaloh encryption algorithm. Typical multiplicative homomorphic encryption algorithms include the RSA encryption algorithm and the ElGamal encryption algorithm.
[0042] Embodiments of the present disclosure provide a transaction risk identification method, device, electronic device, computer-readable storage medium, and program product based on blockchain and secure multi-party computing.
[0043] For example, the transaction risk identification method includes: receiving a blockchain transaction request, the blockchain transaction request including transaction-related data; obtaining on-blockchain data of the blockchain transaction corresponding to the blockchain transaction request from a blockchain network node; obtaining off-chain data corresponding to the on-blockchain data from multiple off-chain storage nodes respectively; synchronizing the off-chain data obtained from multiple off-chain storage nodes to secure multi-party computing nodes respectively; performing secure multi-party computing and merging the results of the secure multi-party computing to obtain a risk prediction model; and determining the risk level of the blockchain transaction based on the risk prediction model.
[0044] For example, obtaining off-chain data corresponding to the data on the blockchain from multiple off-chain storage nodes includes: obtaining off-chain data anchored to the data on the blockchain by hash anchoring from multiple off-chain storage nodes.
[0045] For example, the data on the blockchain includes blockchain basic data and / or contract-related data; and / or, the off-chain data includes large-volume data, block history data, and confidential data.
[0046] For example, the transaction risk identification method also includes: sending contract-related data in the data on the blockchain to a secure multi-party computing node; and the secure multi-party computing node implementing secure multi-party computing based on the contract-related data.
[0047] For example, the contract-related data sent to the secure multi-party computing node is related to at least one of permission control, token service, computing power sharing, and model parameters.
[0048] For example, the multiple off-chain storage nodes include a distributed file system.
[0049] For example, the multiple off-chain storage nodes form a directed acyclic graph.
[0050] For example, the blockchain network nodes are multiple blockchain network nodes in a consortium chain.
[0051] For example, the method of executing secure multi-party computing and combining the results of secure multi-party computing to obtain a risk prediction model includes: executing secure multi-party computing to obtain multiple sets of parameters of the risk prediction model; determining actual parameters of the risk prediction model based on the multiple sets of parameters; sending the actual parameters to a decision service node; and the decision service node determining the risk prediction model.
[0052] In the embodiments of the present disclosure, a technical solution for analyzing and processing all-round data based on pre-detection, in-process analysis and post-emergency handling is constructed to solve the problem of analyzing, predicting and making decisions on relevant content based on data and pre-processing by a secure multi-party computing algorithm. The technical solution of the present disclosure is described in detail below in conjunction with the accompanying drawings.
[0053] Figure 1 is a schematic diagram of the structure of a transaction risk identification system based on blockchain and secure multi-party computing provided by some embodiments of the present disclosure, such as Figure 1 As shown, the transaction risk identification system provided by the embodiment of the present disclosure includes an application terminal 1, a routing node 6, an off-chain storage node 3, a secure multi-party computing node 4, a decision service node 5 and a blockchain network node 2.
[0054] The application terminal 1 is communicatively connected to the routing node 6, the routing node 6 is communicatively connected to the off-chain storage node 3 and the blockchain network node 2 respectively, the blockchain network node 2 and the off-chain storage node 3 are both communicatively connected to the secure multi-party computing node 4, the secure multi-party computing node 4 is communicatively connected to the decision service node 5 and the blockchain network node 2 respectively, and the decision service node 5 is communicatively connected to the blockchain network node 2.
[0055] The application terminal 1 initiates network communication with the blockchain network node 2, for example, the application terminal 1 sends a blockchain transaction request to the blockchain network node 2 through the routing node 6. The application terminal 1 includes but is not limited to a mobile terminal, a desktop computer, a laptop computer, an application server, etc. For example, the application terminal 1 includes various terminals, including an edge terminal, a mobile terminal, a PC terminal, an application server terminal, etc. The application terminal can establish network communication with a blockchain access node, an accounting node, and a consensus node.
[0056] Blockchain network node 2 is a node in the blockchain network, including but not limited to access nodes, accounting nodes, consensus nodes, etc. Blockchain network node 2 in the blockchain network can process blockchain transaction requests. For example, after consensus is completed through the node consensus algorithm, it communicates with the smart contract node through GRPC communication to execute the smart contract logic, and modifies the state data of the blockchain, and saves the modification record of the state data in a chain storage manner on the blockchain. The blockchain network node 2 is a node for blockchain to execute consensus transactions, receive transaction requests from upper-layer business applications of the blockchain, conduct transaction consensus and calculations of the blockchain, and manage the call of functional contracts, bypass the online real-time transaction access request of the blockchain network node to the storage and calculation node, save the transaction request information to the off-chain storage node 3, and return model parameters based on the analysis and processing of the secure multi-party computing algorithm.
[0057] In the embodiment of the present disclosure, data is stored on the blockchain network node 2, and the on-chain data is anchored to the off-chain storage node 3 by, for example, hash anchoring. The off-chain anchored storage can largely solve the cost of obtaining data on the blockchain. Among them, the off-chain storage node 3 can be implemented by a server.
[0058] Optionally, the off-chain storage node 3 may receive the replicated data sent by the application terminal 1 to the blockchain network from the routing node 6, such as the replicated data of the blockchain transaction request. The off-chain storage node 3 obtains the replicated data of the received blockchain transaction request from the replicated data, and sends the replicated data of the blockchain transaction request as a blockchain transaction bypass request to the secure multi-party computing node 4.
[0059] For example, the routing node 6 replicates the data sent by the application terminal 1 to the blockchain network, and sends the replicated traffic to the off-chain storage node 3, for example, the blockchain transaction request sent by the application terminal 1 to the blockchain network node 2 is replicated, and then the replicated blockchain transaction request is sent to the off-chain storage node 3. The routing node 6 replicates the request based on the underlying network data packet, without penetrating the entire TCP protocol stack, and can replicate traffic from the data link layer or the network layer, for example, through the port network traffic copy function on the switch to achieve traffic replication, so that the data sent by the routing node 6 to the blockchain network node 2 can be obtained non-invasively, and the request sent to the blockchain network is transparent and unaware. For example, the routing node 6 can use a switch routing device.
[0060] The secure multi-party computing node 4 may include two functional modules: storage and computing. The storage module is used to receive all data storage used to build the secure multi-party computing model, including blockchain network node request messages, blockchain network node and smart contract logs, blockchain height time series, on-chain storage data, and business-level risk monitoring data, such as account blacklists, dishonest personnel, large amounts of funds, and other business information. The computing module mainly performs model import, data exploration, model training, and other functions based on the model built by the secure multi-party computing platform, performs real-time analysis and computing on the stored data, and optimizes the secure multi-party computing business model in real time for real-time, accurate, and comprehensive identification of transaction risks.
[0061] The decision service node 5 provides an interface for external calls. When there are risks in blockchain transactions, it can perform transaction warnings, notify manual intervention, and terminate transactions according to the risk level. The decision service node 5 can be implemented using a server. For example, the decision service node 5 can build a knowledge graph of smart contracts on different blockchain networks based on the model, distinguish smart contracts in different business scenarios, and deploy corresponding secure multi-party computing models for different blockchain networks and smart contract applications, build graphs of different smart contracts, and identify and analyze potential transaction risks. At the same time, it can encapsulate an OpenAPI interface or SDK for external calls, which can be used for smart contract calls or external calls. At the same time, it can perform statistical analysis on related businesses in the blockchain system for monitoring and early warning, statistical reporting, or visualization of on-chain business transaction data.
[0062] Figure 2 is a flowchart of a transaction risk identification method based on blockchain and secure multi-party computing provided by some embodiments of the present disclosure, such as Figure 2 As shown, the blockchain transaction risk identification method provided by the embodiment of the present disclosure can be performed according to the following steps.
[0063] In step S201, a blockchain transaction request is received, where the blockchain transaction request includes transaction-related data.
[0064] Specifically, the application terminal can initiate a smart contract transaction interface call and send a blockchain transaction request to the blockchain network node through the routing node. After receiving the blockchain transaction request, the routing node will copy the blockchain transaction request while sending the blockchain transaction request to the blockchain network node normally, and then send the copied blockchain transaction request to the off-chain storage node. The transaction-related data may include information such as transaction identification, smart contract identification, including but not limited to customer ID, customer transaction amount, customer credentials and other data that need to be shared on the chain, which can be set according to actual needs and is not limited in the embodiments of the present disclosure.
[0065] In step S202, the blockchain data of the blockchain transaction corresponding to the blockchain transaction request is obtained from the blockchain network node.
[0066] In step S203, off-chain data corresponding to the data on the blockchain is obtained from multiple off-chain storage nodes respectively.
[0067] In the embodiments of the present disclosure, data can be defined differentially and divided into on-chain data and off-chain data. For example, on-chain data can refer to data stored in real time in blockchain network nodes. Blockchain network nodes have the ability to fully copy on-chain data and are the smallest unit data set that can form a proof of block validity. The on-chain data may include, but is not limited to, at least one of chain basic data, smart contracts and contract operation data, asset data, and short static data. For example, the chain basic data may include direct data such as accounts, transactions, and block headers, block validity proof data such as account trees, transaction trees, and block generation proofs, as well as index data necessary for user data query, etc.; the smart contracts and contract operation data may include Turing complete scripts of smart contracts and their dependent data; the short static data may include transaction notes and other data that are usually small in size. Off-chain data may refer to data that does not need to be stored in real time in blockchain network nodes, and may include data sets with low usage frequency and relatively large storage volume. For example, the off-chain data may include at least one of large-volume data, block history data, and data with high confidentiality requirements. The characteristics of the large-volume data are that it requires a large storage space, such as videos, pictures, geographic location and other data; the block historical data is used less frequently, users do not need to query in real time, and the off-chain data can be used as a backup method; the data with high confidentiality requirements can include personal identity information, medical data, etc.
[0068] In an embodiment of the present disclosure, off-chain data is anchored to on-chain data. For example, data hash values, data indexes, etc. can be stored as on-chain data.
[0069] Figure 3 Schematic diagram of a structure for implementing data sharing between blockchain network nodes and off-chain storage nodes according to some exemplary embodiments of the present disclosure. Figure 3 As shown, the blockchain network node 2 mainly includes a data storage smart contract 21, blockchain block information 23, state data storage 24 and historical data storage 25. For example, the data storage smart contract may include smart contract interfaces such as permission control, token service, storage sharing, and bandwidth sharing, and provide them to the data service interface 31 of the off-chain storage node 3 for calling.
[0070] For example, the off-chain storage node 3 can be a peer-to-peer distributed file system that attempts to connect all computing devices to the same file system, provides a high-throughput, content-addressed block storage model, and content-related hyperlinks, and forms a generalized Merkle tree directed acyclic graph (DAG). The off-chain storage node 3 mainly includes a data service interface 31, an interactive operation 32, a core API 30, a data service 33, and a data synchronization service 34. The data service interface 31 and the interactive operation 32 provide the function of external file operations. The data service 33 includes modules such as a DAG module, a directory module, a blockchain service, a data module, a hash index, and a format conversion module. The data synchronization module 34 includes functions such as point-to-point communication, routing strategies, block exchange, and subscription publishing, and is used to synchronize data with the data synchronization service 22 of the blockchain network node 2 based on the GRPC protocol.
[0071] For example, in a distributed file system (DFS), the physical storage resources managed by the file system are not necessarily directly connected to the local node, but are connected to the node (such as a computer) through a computer network, or a number of different logical disk partitions or volumes are combined to form a complete hierarchical file system. The distributed file system provides a logical tree-shaped file system structure for resources distributed anywhere on the network, making it easier for users to access shared files distributed on the network. The role of a shared folder in a separate distributed file system is relative to the access point of other shared folders on the network. Computers manage and store data through file systems, and the data that people can obtain in the era of information explosion has increased exponentially. The method of simply expanding the storage capacity of computer file systems by increasing the number of hard disks is not satisfactory in terms of capacity size, capacity growth rate, data backup, data security, etc. Distributed file systems can effectively solve the problem of data storage and management, and expand a file system fixed to a certain location to any number of locations / multiple file systems. Numerous nodes form a file system network. Each node can be distributed in different locations, and communication and data transmission between nodes are carried out through the network. When using a distributed file system, people do not need to care about which node the data is stored on or from which node it is obtained. They only need to manage and store the data in the file system as if they were using a local file system. A distributed file system is built on the basis of client / server technology. One or more file servers work together with the client file system so that the client can access files managed by the server.
[0072] In this article, the "directed" in the directed acyclic graph (DAG) means that there is a direction, or more precisely, the same direction, and the "acyclic" means that there is no closed loop. In DAG, there is no concept of blocks. Its constituent units are transactions, and each unit records the transactions of a single user, which saves the time of packaging blocks. The verification method depends on the verification of the previous transaction by the subsequent transaction. In other words, if you want to make a transaction, you must verify the previous transaction. The specific verification of several transactions is carried out according to different rules. This verification method allows DAG to write many transactions asynchronously and concurrently, and ultimately form a topological tree structure, which can greatly improve scalability.
[0073] In step S204, secure multi-party computation is performed and the results of the secure multi-party computation are combined to obtain a risk prediction model.
[0074] Figure 4 Schematic diagram of a structure for implementing data sharing between blockchain network nodes and secure multi-party computing nodes according to some exemplary embodiments of the present disclosure. Figure 4 As shown, based on the blockchain network node 2 and the secure multi-party computing node 4, functions such as permission control, token service, computing power sharing, and model parameter sharing of data collaborative computing can be realized. For example, the blockchain network node 2 can realize multi-party collaborative computing with the secure multi-party computing node 4 based on smart contracts and blockchain consensus. At the same time, the blockchain consensus and the smart contracts it carries realize functions such as permission control, token service, computing power sharing, and model parameter sharing.
[0075] like Figure 4 As shown, the blockchain network node 2 mainly includes a data storage smart contract 21, blockchain block information 23, state data storage 24 and historical data storage 25. For example, the data storage smart contract may include smart contract interfaces such as permission control, token service, computing power sharing, model parameter sharing, etc., and provide them to the preprocessing module of the secure multi-party computing node 4 for calling.
[0076] The secure multi-party computing node 4 uses the data provided by the blockchain network and realizes multi-party data collaborative computing through the calculation of the secure multi-party computing node. Figure 4 As shown, the secure multi-party computing node may include a preprocessing module, a computing module, a task termination module, etc. For example, the preprocessing module may implement operations such as preprocessing 41, secure computing startup 42, and function compilation 43. The computing module may include a computing circuit 44, a function operation module 45, and a verification module 46, etc. For example, the computing circuit 44 may include a Boolean circuit, an arithmetic circuit, an inadvertent random access machine, a fixed-point / floating-point number computing circuit, etc. The function operation module 45 may implement functions such as addition / multiplication, logic gates, and register access. The verification module 46 may include a multiplication triple, a global information verification password, a random number tuple, etc. The task termination module may include a result output module 48, etc. For example, the preprocessing module may be a data import module for program automatic control, and at the same time provide external business risk data, such as blacklist data, sensitive information data, large amount of funds information, etc.
[0077] Exemplarily, a transaction request can be received through the blockchain network node 2. After the transaction requester generates a calculation request, the key sharing module and the secure calculation module can be loaded through the smart contract 21. The requester submits its own certificate signature and encrypted public key to the blockchain, and uses the consensus node of the consensus layer to reach a consensus to ensure mutual trust between nodes. The blockchain network node 2 also establishes a real-time asynchronous communication connection with the calculation processing module, and the blockchain network nodes share the encrypted request data. In the calculation module, the "Map task module", "homomorphic encryption processing", and "Reduce task module" are processed in series, and the data of different alliance parties are merged together for calculation, and the calculation result is encrypted and returned using the public key of the requester. In this process, each alliance party does not know the information of other requesters. After receiving the returned result, the requester uses its own private key to decrypt and obtain the final result. In this way, the function of data joint sharing calculation is realized under the premise of information privacy protection.
[0078] In the embodiment of the present disclosure, the blockchain network node 2 can be a node in the alliance chain blockchain network. The alliance chain represents a blockchain that is subject to pre-selected nodes in the process of consensus. The blockchain technology of the alliance chain refers to a blockchain that can be controlled by pre-selected nodes in the process of consensus. For example, there is a community of 15 financial enterprises, each enterprise has a node running, and each blockchain needs to be confirmed by 10 enterprises before it can take effect. The blockchain may be accessible to everyone, or the participants may be restricted, or a hybrid route may be taken. For example, the root hash and API (application programming interface) of the blockchain are open to the outside world, and the API agrees to limit the number of access queries and the status message of the blockchain. In the alliance chain blockchain network, the ownership of data is usually controlled by different alliances. For example, the data on the chain usually uses channel isolation and encryption system to ensure data privacy and data security, but the blockchain alliance party usually needs to conduct global analysis and statistics on the data on the chain to conduct better research and make business decisions. Therefore, it is necessary to use secure multi-party computing to conduct multi-party collaborative processing and shared computing of data.
[0079] In the embodiments of the present disclosure, in order to ensure the data privacy and data security of the alliance users, the alliance users hope to collaborate to complete the computing tasks without the transaction information being obtained by others, so secure multi-party computing is introduced.
[0080] For example, secure multi-party computing is a process where n participants P1, P2, ..., Pn need to jointly perform a computing task.
[0081] f(x1,x2,…,xn)=(y1,y2,…,yn)
[0082] Each party Pi (1≤i≤n) in the alliance can only get its own input xi and can only get its own output yi. Secure multi-party computation has the following security requirements: loyalty, most of the participants are loyal, loyalty means that the participants perform tasks in full accordance with the regulations; termination, within a limited time, the loyal party can terminate the execution of the computing task; privacy, any participant Pi cannot get the input xj (i=j) of other participants; consistency, all loyal parties finally get the same output y1=y2=……=yn.
[0083] Figure 5 : is a multi-party collaboration data flow diagram in a transaction risk identification method and system based on blockchain and secure multi-party computing according to some exemplary embodiments of the present disclosure. Figure 5 As shown, the transaction request may include the main transaction elements (such as customer ID, customer transaction amount, customer credentials and other data that need to be shared on the chain), which are stored on the chain through the blockchain network node 2, and anchored to the off-chain storage 3 by hash anchoring according to the on-chain data. At the same time, the data in the off-chain storage 3 is sent to the secure multi-party computing (i.e., MPC) node 4 in ciphertext, and each MPC node 4 performs multi-party data collaborative calculation based on the off-chain anchored storage data, and shares the result parameters among multiple parties through the blockchain network nodes.
[0084] In step S205, the risk level of the blockchain transaction is determined based on the risk prediction model.
[0085] Figure 6 is a schematic diagram of a decision service node according to some exemplary embodiments of the present disclosure. Figure 6 As shown, the decision service node 5 may include a decision service control device 51, a statistical analysis device 52, an interface service device 53 and a modeling analysis device 54. For example, the decision service control device 51 may receive the data analysis interface returned by the storage MPC node 4, perform statistical analysis and provide a unified call to the standard API interface. The statistical analysis device 52 may include a monitoring and early warning module 521, a statistical reporting module 522 and a visualization module 523 for convenient statistical analysis and business processing decisions. The interface service device 53 may provide a standard OpenAPI interface 531, an encapsulated SDK interface 532, and may also provide a real-time push service 533 for real-time monitoring of transaction risks. The modeling analysis device 54 may include a data exploration module 541, a model training module 542, and a model deployment module 543, which are connected to an external secure multi-party computing platform to perform data exploration, model training and production model deployment.
[0086] Figure 7 is a data flow diagram for constructing a blockchain transaction risk identification model according to some exemplary embodiments of the present disclosure. Figure 7 As shown, in the embodiment of the present disclosure, data can be used for joint modeling based on secure multi-party computing. The data itself is calculated in the local private domain during the entire process. What is interacted in the process is the encrypted model parameters, and finally an encrypted distributed model is obtained. In the multi-party transaction risk module process, for example, there is a role A holding a data set A, and a role B holding a data set B. Data sets A and B share multi-party data of the blockchain through P2P communication of the blockchain, and obtain model parameters after multi-party computing and share them through the blockchain. Data synchronization 34 serves as a bridge between the on-chain and off-chain data sets and the MPC node 4, and is used for the construction of the MPC node data set. After obtaining the data set, the MPC node 4 performs modeling analysis of the local data set through the modeling analysis module 54. After the local modeling analysis, the model is merged through the blockchain, and the merged model and parameters are sent to the decision service node 5.
[0087] For example, Figure 8 is a flowchart of a transaction risk identification method based on blockchain and secure multi-party computing according to some exemplary embodiments of the present disclosure.
[0088] In operation T101, application requester 1 initiates a smart contract transaction interface call.
[0089] In operation T102, the transaction request is sent to the blockchain network node 2, and the data is synchronously stored in the off-chain storage node 3 through the on-chain and off-chain synchronization technology, and the requested transaction data is sent to the secure multi-party computing node 4.
[0090] In operation T103, the smart contract transaction request is replicated at the request replication node, and the real online transaction request message is obtained, parsed and stored in the secure multi-party computing node 4.
[0091] In operation T104, the secure multi-party computing node 4 obtains the copied online request in a quasi-implementation manner, obtains blockchain blocks and transaction-related information, and obtains transaction information from the log center by regular matching.
[0092] In operation T105, a secure multi-party computing algorithm model is deployed in the secure multi-party computing node 4 to perform detection and analysis on blockchain transaction requests and identify transaction risks.
[0093] In operation T106, if the transaction hits the risk strategy, the smart contract will actively call the interface provided by the decision service to terminate the transaction, display the transaction information at the decision service node 5, and notify the monitoring manager to issue an early warning and subsequent manual intervention process.
[0094] Fig. 9It is an information interaction diagram between nodes of a transaction risk identification device based on blockchain and secure multi-party computing according to some exemplary embodiments of the present disclosure.
[0095] In operation T201, the blockchain network alliance makes decisions, clarifies the blockchain network nodes and member information, and clarifies the specific business application scenarios of the network, writes the corresponding smart contract code, and deploys the business smart contract on the blockchain network node 2.
[0096] In operation T202, application requester 1 calls blockchain network node 2 through SDK or API interface to initiate a smart contract transaction call.
[0097] In operation T203, a blockchain network node 2 is set on the switch network routing node 6 to synchronize transaction data to the off-chain data storage node 3 and the secure multi-party computing node 4.
[0098] In operation T204, the secure multi-party computing node 4 directs traffic through online network requests, simulates transaction execution for playback, and parses actual transaction message information.
[0099] In operation T205, blockchain network node 2 receives the transaction request, and through the blockchain 3F+1 node consensus, determines that the conditions are met and sends the transaction request to the smart contract execution engine to execute the smart contract interface call.
[0100] In operation T206, the secure multi-party computing node 4 verifies the model and performs computational analysis, and integrates information such as the pre-request message, blockchain data, log information, and block transaction time series to perform secure multi-party computing modeling and analytical prediction.
[0101] In operation T207, the log collection daemon of blockchain network node 2 collects the execution logs of blockchain network nodes and smart contract nodes, and matches key information in the logs through regular expressions, such as transaction ID, smart contract ID, transaction result message, etc.
[0102] In operation T208, the decision service node 5 triggers a smart contract transaction risk warning, notifies the application side, and displays it visually.
[0103] In the embodiments of the present disclosure, a method and manufacturing method of blockchain transaction risk identification technology based on secure multi-party computing in an enterprise-level blockchain platform system are provided, and a set of comprehensive transaction data analysis and processing technologies based on pre-detection, in-process analysis and post-emergency processing are constructed to solve the problem of analyzing, predicting and making decisions on related content based on secure multi-party computing algorithms on the basis of data and preprocessing. In particular, in terms of data privacy protection, multi-party secure computing is introduced on the basis of blockchain security technology to share data privacy and security.
[0104] Fig.10 A block diagram of an electronic device suitable for implementing the above-mentioned transaction risk identification method based on blockchain and secure multi-party computing according to an embodiment of the present disclosure is schematically shown.
[0105] like Fig.10 As shown, the electronic device 900 according to an embodiment of the present disclosure includes a processor 901, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 902 or a program loaded from a storage part 908 into a random access memory (RAM) 903. The processor 901 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or a related chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 901 may also include an onboard memory for caching purposes. The processor 901 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.
[0106] In RAM 903, various programs and data required for the operation of electronic device 900 are stored. Processor 901, ROM 902 and RAM 903 are connected to each other via bus 904. Processor 901 performs various operations of the method flow according to the embodiment of the present disclosure by executing the program in ROM 902 and / or RAM 903. It should be noted that the program can also be stored in one or more memories other than ROM 902 and RAM 903. Processor 901 can also perform various operations of the method flow according to the embodiment of the present disclosure by executing the program stored in the one or more memories.
[0107] According to an embodiment of the present disclosure, the electronic device 900 may further include an input / output (I / O) interface 905, which is also connected to the bus 904. The electronic device 900 may further include one or more of the following components connected to the I / O interface 905: an input portion 906 including a keyboard, a mouse, etc.; an output portion 907 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage portion 908 including a hard disk, etc.; and a communication portion 909 including a network interface card such as a LAN card, a modem, etc. The communication portion 909 performs communication processing via a network such as the Internet. A drive 910 is also connected to the I / O interface 905 as needed. A removable medium 911, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 910 as needed, so that a computer program read therefrom is installed into the storage portion 908 as needed.
[0108] Fig.11The block diagram of an electronic device suitable for implementing the transaction risk identification method based on blockchain and secure multi-party computing according to other embodiments of the present disclosure is schematically shown. Fig.11 As shown, the electronic device 600 may include: a communication module 110, an input unit 120, an audio processing unit 130, a display 160, and a power supply 170. It is worth noting that the electronic device 600 does not necessarily have to include Fig.11 In addition, the electronic device 600 may also include Fig.11 For components not shown, reference may be made to the prior art.
[0109] like Fig.11 As shown, the central processor 100 is sometimes also referred to as a controller or an operation control, and may include a microprocessor or other processor devices and / or logic devices. The central processor 100 receives inputs and controls the operations of various components of the electronic device 600.
[0110] For example, the memory 140 may be one or more of a cache, a flash memory, a hard drive, a removable medium, a volatile memory, a non-volatile memory or other suitable devices. The above-mentioned information related to the failure may be stored, and a program for executing the relevant information may also be stored. The CPU 100 may execute the program stored in the memory 140 to implement information storage or processing, etc.
[0111] The input unit 120 provides input to the CPU 100. The input unit 120 is, for example, a key or a touch input device. The power supply 170 is used to provide power to the electronic device 600. The display 160 is used to display display objects such as images and text. The display may be, for example, an LCD display, but is not limited thereto.
[0112] The memory 140 may be a solid-state memory, such as a read-only memory (ROM), a random access memory (RAM), a SIM card, etc. It may also be a memory that saves information even when the power is off, can be selectively erased, and is provided with more data, examples of which are sometimes referred to as EPROMs, etc. The memory 140 may also be some other type of device. The memory 140 includes a buffer memory 141 (sometimes referred to as a buffer). The memory 140 may include an application / function storage unit 142, which is used to store application programs and function programs or processes for executing the operation of the electronic device 600 through the central processor 100.
[0113] The memory 140 may also include a data storage unit 143 for storing data, such as contacts, digital data, pictures, sounds, and / or any other data used by the electronic device. The driver storage unit 144 of the memory 140 may include various drivers for communication functions of the electronic device and / or for executing other functions of the electronic device (such as messaging applications, address book applications, etc.).
[0114] The communication module 110 is a transmitter / receiver 110 that transmits and receives signals via an antenna 111. The communication module (transmitter / receiver) 110 is coupled to the central processor 100 to provide input signals and receive output signals, which may be the same as the case of a conventional mobile communication terminal.
[0115] Based on different communication technologies, multiple communication modules 110 may be provided in the same electronic device, such as a cellular network module, a Bluetooth module and / or a wireless LAN module. The communication module (transmitter / receiver) 110 is also coupled to a speaker 131 and a microphone 132 via an audio processor 130 to provide an audio output via the speaker 131 and receive an audio input from the microphone 132, thereby realizing a common telecommunication function. The audio processor 130 may include any suitable buffer, decoder, amplifier, etc. In addition, the audio processor 130 is also coupled to the central processor 100, so that the sound can be recorded on the local machine through the microphone 132, and the sound stored on the local machine can be played through the speaker 131.
[0116] The embodiments of the present disclosure also provide a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or may exist independently without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiments of the present disclosure is implemented.
[0117] According to an embodiment of the present disclosure, a computer-readable storage medium may be a non-volatile computer-readable storage medium, for example, may include but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, an apparatus, or a device. For example, according to an embodiment of the present disclosure, a computer-readable storage medium may include the ROM 902 and / or RAM 903 described above and / or one or more memories other than ROM 902 and RAM 903.
[0118] The embodiment of the present disclosure also includes a computer program product, which includes a computer program, and the computer program contains program code for executing the method shown in the flowchart. When the computer program product is run in a computer system, the program code is used to enable the computer system to implement the item recommendation method provided by the embodiment of the present disclosure.
[0119] In this computer program Fig.10 Processor 901 or Fig.11 The central processor 100 in the system performs the above functions defined in the system / device of the embodiment of the present disclosure when executed. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.
[0120] In one embodiment, the computer program may be based on a tangible storage medium such as an optical storage device, a magnetic storage device, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of a signal on a network medium, and downloaded and installed through the communication part 909, and / or installed from a removable medium 911. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0121] In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 909, and / or installed from the removable medium 911. When the computer program is executed by the processor 901, the above functions defined in the system of the embodiment of the present disclosure are performed. According to the embodiment of the present disclosure, the system, device, means, module, unit, etc. described above can be implemented by a computer program module.
[0122] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level process and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include, but are not limited to, Java, C++, python, "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on the remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect through the Internet).
[0123] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0124] It will be appreciated by those skilled in the art that the features described in the various embodiments and / or claims of the present disclosure may be combined and / or combined in a variety of ways, even if such combinations and / or combinations are not explicitly described in the present disclosure. In particular, the features described in the various embodiments and / or claims of the present disclosure may be combined and / or combined in a variety of ways without departing from the spirit and teachings of the present disclosure. All of these combinations and / or combinations fall within the scope of the present disclosure.
[0125] The embodiments of the present disclosure are described above. However, these embodiments are only for illustrative purposes and are not intended to limit the scope of the present disclosure. Although the embodiments are described above separately, this does not mean that the measures in the various embodiments cannot be used in combination to advantage. The scope of the present disclosure is defined by the attached claims and their equivalents. Without departing from the scope of the present disclosure, those skilled in the art may make a variety of substitutions and modifications, which should all fall within the scope of the present disclosure.
Claims
1. A transaction risk identification method based on blockchain and secure multi-party computing, characterized in that: The transaction risk identification method comprises: Receiving a blockchain transaction request, wherein the blockchain transaction request includes transaction-related data; Obtaining, from a blockchain network node, on-blockchain data of a blockchain transaction corresponding to the blockchain transaction request; Obtaining off-chain data corresponding to the on-blockchain data from multiple off-chain storage nodes, respectively, wherein the on-blockchain data includes blockchain basic data and / or contract-related data, and / or the off-chain data includes large-volume data, block history data, and confidential data; Synchronize the off-chain data obtained from multiple off-chain storage nodes to secure multi-party computing nodes respectively; performing secure multi-party computation and combining the results of the secure multi-party computation to obtain a risk prediction model; and Based on the risk prediction model, a risk level of the blockchain transaction is determined.
2. The method according to claim 1, characterized in that The acquiring of off-chain data corresponding to the on-blockchain data from multiple off-chain storage nodes respectively comprises: Obtain off-chain data anchored to the data on the blockchain by hash anchoring from multiple off-chain storage nodes.
3. The method according to claim 1, characterized in that: The transaction risk identification method further includes: Sending the contract-related data in the data on the blockchain to the secure multi-party computing node; and The secure multi-party computing node implements secure multi-party computing based on the contract-related data.
4. The method according to claim 1, characterized in that The contract-related data sent to the secure multi-party computing node is related to at least one of permission control, token service, computing power sharing and model parameters.
5. The method according to claim 1, characterized in that The multiple off-chain storage nodes include a distributed file system.
6. The method according to claim 1, characterized in that The multiple off-chain storage nodes form a directed acyclic graph.
7. The method according to claim 1, characterized in that The blockchain network nodes are multiple blockchain network nodes in the alliance chain.
8. The method according to claim 1, characterized in that The performing of secure multi-party computation and combining the results of secure multi-party computation to obtain a risk prediction model comprises: Perform secure multi-party computation to obtain multiple sets of parameters for the risk prediction model; Based on the multiple sets of parameters, determining actual parameters of the risk prediction model; Sending the actual parameters to the decision service node; and The decision service node determines a risk prediction model.
9. A transaction risk identification device based on blockchain and secure multi-party computing, characterized in that: include: A receiving module, configured to receive a blockchain transaction request, wherein the blockchain transaction request includes transaction-related data; An on-chain data acquisition module, used to acquire on-blockchain data of a blockchain transaction corresponding to the blockchain transaction request from a blockchain network node; An off-chain data acquisition module, used to respectively acquire off-chain data corresponding to the on-blockchain data from multiple off-chain storage nodes, wherein the on-blockchain data includes blockchain basic data and / or contract-related data, and / or the off-chain data includes large-volume data, block history data, and confidential data; The data synchronization module is used to synchronize the off-chain data obtained from multiple off-chain storage nodes to the secure multi-party computing nodes respectively; A secure multi-party computing module, used to perform secure multi-party computing and merge the results of secure multi-party computing to obtain a risk prediction model; and A determination module is used to determine the risk level of the blockchain transaction based on the risk prediction model.
10. An electronic device comprising: one or more processors; a storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors are enabled to execute the method according to any one of claims 1 to 8.
11. A computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, causes the processor to execute the method according to any one of claims 1 to 8.
12. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the method according to any one of claims 1 to 8 is implemented.
