A method and system for automatically monitoring on-chain smart contract code defects

CN116401169BActive Publication Date: 2026-09-11成都链安科技有限公司
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
CN202310392476.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-04-12
Publication Date
2026-09-11
Estimated Expiration
2043-04-12

AI Technical Summary

Technical Problem

但当前大量链上智能合约的攻击事件都是针对智能合约的业务逻辑漏洞进行攻击,由于静态检测方法本质是基于程序漏洞特征进行漏洞检测,不会探索程序路径,所以现有基于智能算法的静态检测只适用于常规漏洞检测不适用于业务逻辑漏洞检测,如公开号为CN113868650A、CN113626826A和CN109063477B的中国专利申请

Benefits of technology

[0038]1. The present invention provides an automatic detection method for on-chain smart contract code defects, which can realize the classification of business contracts in different fields, the automatic addition of business logic attribute specifications, and the filtering and verification of attribute-independent functions. It solves the problem that existing static detection technology based on smart algorithms cannot detect business logic vulnerabilities in on-chain contracts. At the same time, it solves the problems that existing program business logic vulnerabilities cannot be automatically added to attributes and the increased computational overhead caused by exploring attribute-independent program paths. It realizes the automatic detection of a large number of emerging on-chain smart contract code defects, such as conventional vulnerabilities and business logic vulnerabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116401169B_ABST
    Figure CN116401169B_ABST
Patent Text Reader

Abstract

The application discloses a kind of chain intelligent contract code defect automatic monitoring method and system, it is related to blockchain technology field, and its technical solution points are: using program judgment classification module, intelligent contract logic defect attribute library, attribute specification processing module and logic bug detection module, the classification of different field business contract, the automatic addition of business logic attribute specification, attribute independent function filtering and verification are completed, the problem that existing static detection technology based on intelligent algorithm cannot monitor the business logic bug defect of on-chain contract is solved, while the problem that existing program business logic bug cannot automatically add attribute and increase the burden of computing overhead due to exploring attribute independent program path is solved, the automatic monitoring of a large number of emerging on-chain intelligent contract code defects, conventional bug and business logic bug is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of blockchain technology, and more specifically, to an automatic detection method and system for defects in on-chain smart contract code. Background Technology

[0002] Blockchain is a novel application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanisms, and cryptographic algorithms. It uses a decentralized consensus mechanism to maintain a complete, distributed, and immutable ledger database, enabling participants in the blockchain to achieve a unified ledger system without establishing trust relationships. A smart contract is a set of promises defined in digital form, including protocols that allow contract participants to execute these promises. In the context of blockchain technology, a smart contract refers to program code running on the blockchain that can perform certain functions. Writing smart contracts digitally into the blockchain ensures that the entire process of storage, retrieval, and execution is transparent, traceable, and immutable, thanks to the characteristics of blockchain technology. Simultaneously, the consensus algorithm inherent in the blockchain constructs a state machine system, enabling smart contracts to run efficiently. With the explosive growth of smart contract projects, especially DeFi projects, the code security of smart contracts themselves faces severe challenges, and attacks targeting smart contract projects are constantly increasing. Efficiently monitoring vulnerabilities in on-chain smart contract projects is crucial for early identification of contract security issues, timely transfer and protection of project resources or assets, and minimizing project losses.

[0003] Currently, methods for code defect detection include static testing, fuzzing, and formal verification. Static testing is further divided into two modes: vulnerability pattern-based and algorithm-based. Vulnerability pattern-based static testing relies on expert experience and simple code structure. In comparison, algorithm-based methods can learn vulnerability-related information from code data and have better detection performance. However, many current attacks on on-chain smart contracts target vulnerabilities in the business logic of the smart contracts. Since static testing methods are essentially based on program vulnerability characteristics and do not explore program paths, existing algorithm-based static testing is only suitable for conventional vulnerability detection and not for business logic vulnerability detection, as illustrated in Chinese patent applications with publication numbers CN113868650A, CN113626826A, and CN109063477B. Furthermore, while fuzz testing and formal verification methods can verify the business logic of code, they rely on experts to provide formal target attribute specifications and require significant computational overhead. Therefore, they cannot be directly used to automatically detect a large number of emerging on-chain smart contract business logic vulnerabilities, such as Chinese patent applications with publication numbers CN108985073B, CN108536445B, and CN112286828B.

[0004] Therefore, how to research and design an automatic detection method and system for on-chain smart contract code defects that can overcome the above-mentioned shortcomings is a problem that we urgently need to solve. Summary of the Invention

[0005] To address the shortcomings of existing technologies, the purpose of this invention is to provide an automatic detection method and system for on-chain smart contract code defects. This system can classify business contracts from different fields, automatically add business logic attribute specifications, filter and verify attribute-independent functions, and automatically detect a large number of emerging on-chain smart contract code defects, such as conventional vulnerabilities and business logic vulnerabilities.

[0006] The above-mentioned technical objective of the present invention is achieved through the following technical solution:

[0007] Firstly, an automatic detection method for defects in on-chain smart contract code is provided, including the following steps:

[0008] Establish a smart contract defect source code library based on smart contract source code containing common vulnerabilities and / or vulnerabilities that can introduce business logic.

[0009] Semantic analysis was used to extract program graph information from the defective source code of smart contracts and the on-chain smart contract source code, respectively, to obtain the corresponding first program feature and second program feature.

[0010] Feature training is performed on the first program feature and the second program feature, and the on-chain smart contract source code is classified according to the degree of correlation between the first program feature and the second program feature to obtain the first smart contract source code with common vulnerability features and / or the second smart contract source code with logical vulnerability features.

[0011] Based on the source code of the second smart contract, the corresponding logical attributes are matched from the smart contract logical defect attribute library. Based on the predicate variables in the logical attributes, functions in the source code of the second smart contract that are not related to the logical attributes are filtered out, and logical attributes are inserted at the entry and exit points of the remaining functions.

[0012] By performing real and / or simulated execution on any path of the program, it is determined whether the source code of the second smart contract containing logical attributes contains vulnerabilities that violate logical attributes, and the source code of the third smart contract containing logical vulnerabilities is obtained.

[0013] Vulnerability monitoring results are generated based on the source code of the first smart contract, the source code of the third smart contract, and the corresponding vulnerability information.

[0014] Furthermore, the program graph information includes at least one of a control flow graph, an abstract syntax tree, and a data flow graph.

[0015] Furthermore, the process of obtaining the first program feature and / or the second program feature specifically involves: based on abstract syntax tree information, extracting contextual syntax and semantic information through deep neural network learning to represent program features.

[0016] Furthermore, the process of obtaining the first program feature and / or the second program feature specifically involves: fusing multiple dependency graph information and learning to extract program features at the dependency graph level through multi-layer graph convolution and pooling layers.

[0017] Furthermore, the process of fusing multiple dependency graph information and learning to extract program features at the dependency graph level through multi-layer graph convolution and pooling layers specifically involves:

[0018] By using the GRU model and convolutional layers, vector representations of functions are obtained from the abstract syntax tree, forming a description from a local perspective;

[0019] The word2vec model is used to obtain vector representations of dependency graphs and control flow graphs, forming a description from a global perspective;

[0020] By fusing vectors from local and global perspectives using matrix multiplication, a graph neural network is used to train a graph model with both local and global perspectives to extract program features.

[0021] Furthermore, the process of obtaining the first program feature and / or the second program feature specifically involves: using a neural network intelligent algorithm that integrates abstract syntax trees and multiple dependency graph information to learn and extract program features.

[0022] Furthermore, the process of classifying on-chain smart contract source code based on the correlation between the first program feature and the second program feature is specifically as follows:

[0023] Use the GloVe model to generate an initial vector for the token;

[0024] Extract private semantic features from the abstract syntax tree using GCN;

[0025] Generate public semantic features using adversarial training;

[0026] By integrating private and public semantic features, the final vector of the source code is formed;

[0027] The classification task is completed by calculating the distance between the final vectors of the smart contract source code library and the on-chain smart contract source code.

[0028] Furthermore, the process of classifying on-chain smart contract source code based on the correlation between the first program feature and the second program feature specifically involves: using a fully connected layer to learn the correlation between the first program feature and the second program feature to complete the classification task.

[0029] Furthermore, the smart contract logic defect attribute library is a security attribute specification library related to business scenarios. Different logic vulnerability feature contracts correspond to different business scenarios. The security attribute specification is a test target based on the actual execution of a fuzz test engine or a verification target based on the simulated execution of a formal verification engine, used to detect whether the code implementation is consistent with the security attribute specification.

[0030] Secondly, an automatic detection system for defects in on-chain smart contract code is provided, including:

[0031] A smart contract defect source code library, used to store smart contract source code containing common vulnerabilities and / or vulnerabilities that could introduce business logic vulnerabilities;

[0032] The program information preprocessing module is used to extract program graph information from the source code of smart contract defects and on-chain smart contract source code through semantic analysis, and obtain the corresponding first program feature and second program feature.

[0033] The program classification module is used to perform feature training on the first program feature and the second program feature, and classify the on-chain smart contract source code according to the degree of correlation between the first program feature and the second program feature to obtain the first smart contract source code with common vulnerability features and / or the second smart contract source code with logical vulnerability features.

[0034] The attribute specification processing module is used to match the corresponding logical attributes from the smart contract logic defect attribute library based on the second smart contract source code, filter out functions in the second smart contract source code that are not related to the logical attributes based on the predicate variables in the logical attributes, and insert logical attributes at the entry and exit points of the remaining functions.

[0035] The logic vulnerability detection module is used to determine whether the source code of the second smart contract containing logical attributes contains vulnerabilities that violate logical attributes by performing real execution and / or simulated execution on any path of the program, and to obtain the source code of the third smart contract with logical vulnerabilities.

[0036] The vulnerability detection report generator is used to generate vulnerability monitoring results based on the source code of the first smart contract, the source code of the third smart contract, and the corresponding vulnerability information.

[0037] Compared with the prior art, the present invention has the following beneficial effects:

[0038] 1. The present invention provides an automatic detection method for on-chain smart contract code defects, which can realize the classification of business contracts in different fields, the automatic addition of business logic attribute specifications, and the filtering and verification of attribute-independent functions. It solves the problem that existing static detection technology based on smart algorithms cannot detect business logic vulnerabilities in on-chain contracts. At the same time, it solves the problems that existing program business logic vulnerabilities cannot be automatically added to attributes and the increased computational overhead caused by exploring attribute-independent program paths. It realizes the automatic detection of a large number of emerging on-chain smart contract code defects, such as conventional vulnerabilities and business logic vulnerabilities.

[0039] 2. This invention provides various methods with different preprocessing and training difficulties during feature extraction, which can improve classification efficiency while ensuring classification effect. Attached Figure Description

[0040] The accompanying drawings, which are included to provide a further understanding of embodiments of the invention and form part of this application, do not constitute a limitation thereof. In the drawings:

[0041] Figure 1 This is a flowchart from an embodiment of the present invention;

[0042] Figure 2 This is a system block diagram in an embodiment of the present invention. Detailed Implementation

[0043] To make the objectives, technical solutions, and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the embodiments and accompanying drawings. The illustrative embodiments and descriptions of the present invention are only used to explain the present invention and are not intended to limit the present invention.

[0044] Example 1: An automatic detection method for defects in on-chain smart contract code, such as... Figure 1 As shown, it includes the following steps:

[0045] Step S1: Establish a smart contract defect source code library based on smart contract source code containing common vulnerabilities and vulnerabilities that can introduce business logic vulnerabilities; among them, vulnerabilities that can introduce business logic vulnerabilities are normal smart contract source code that is easy to introduce business logic vulnerabilities; common vulnerabilities can be obtained based on historical data statistical analysis;

[0046] Step S2: Extract program graph information from the defective source code of the smart contract and the on-chain smart contract source code through semantic analysis to obtain the corresponding first program feature and second program feature; the on-chain smart contract source code refers to the source code of the smart contract to be monitored, and it is monitored for whether there are general vulnerabilities or business logic vulnerabilities.

[0047] Step S3: Perform feature training on the first program feature and the second program feature, and classify the on-chain smart contract source code according to the correlation between the first program feature and the second program feature to obtain the first smart contract source code with common vulnerability features and / or the second smart contract source code with logical vulnerability features.

[0048] Step S4: Match the corresponding logical attributes from the smart contract logic defect attribute library based on the second smart contract source code, filter out functions in the second smart contract source code that are unrelated to the logical attributes based on the predicate variables in the logical attributes, and insert logical attributes at the entry and exit points of the remaining functions.

[0049] Step S5: Determine whether the source code of the second smart contract containing logical attributes contains vulnerabilities that violate logical attributes by performing real execution and / or simulated execution on any path of the program, and obtain the source code of the third smart contract with logical vulnerabilities.

[0050] Step S6: Generate vulnerability monitoring results based on the source code of the first smart contract, the source code of the third smart contract, and the corresponding vulnerability information.

[0051] Program graph information includes at least one of control flow graphs, abstract syntax trees (ASTs), and data flow graphs. ASTs focus on describing the syntax information of the source code, from which syntactic information such as variable names and function names can be obtained. Control flow graphs and data flow graphs are both dependency graphs. Dependency graphs are closer to the underlying level, describing how data is stored in the computer and how data depends on each other. There is no direct correspondence between dependency graph nodes and source code.

[0052] The process of obtaining the first program feature and / or the second program feature can be divided into three methods: A, B, and C.

[0053] The implementation process of Method A is as follows: Based on the abstract syntax tree information, deep neural networks are used to learn and extract contextual syntax and semantic information to represent program features. When using Method A, the process of classifying on-chain smart contract source code according to the correlation between the first program feature and the second program feature is as follows: an initial vector of tokens is generated using the GloVe model; private semantic features of the abstract syntax tree are extracted using GCN; public semantic features are generated using adversarial training; the private and public semantic features are fused to form the final vector of the source code; and the classification task is completed by calculating the distance between the final vector of the smart contract source code library and the on-chain smart contract source code.

[0054] The implementation process of Method B is as follows: It integrates multiple dependency graph information and learns to extract program features at the dependency graph level through multi-layer graph convolution and pooling layers. Specifically, it uses a GRU model and convolutional layers to obtain vector representations of functions from the abstract syntax tree to form a local perspective description; it uses a word2vec model to obtain vector representations of dependency graphs and control flow graphs to form a global perspective description; it uses matrix multiplication to fuse the vectors from the local and global perspectives, and uses a graph neural network to train the graph model with local and global perspectives to extract program features.

[0055] The implementation process of method C is as follows: it integrates abstract syntax tree and multiple dependency graph information, and uses a neural network intelligent algorithm to learn and extract program features.

[0056] When using methods B and C, the process of classifying on-chain smart contract source code based on the degree of correlation between the first program feature and the second program feature is as follows: the fully connected layer is used to learn the correlation between the first program feature and the second program feature to complete the classification task.

[0057] In this embodiment, the smart contract logic defect attribute library is a security attribute specification library related to business scenarios. Different logic vulnerability feature contracts correspond to different business scenarios. The security attribute specification is a test target based on the actual execution of a fuzz test engine or a verification target based on the simulated execution of a formal verification engine, used to detect whether the code implementation is consistent with the security attribute specification.

[0058] Example 2: An automatic on-chain smart contract code defect detection system, which implements the automatic on-chain smart contract code defect detection method described in Example 1, such as... Figure 2 As shown, it includes a smart contract defect source code library, a program information preprocessing module, a program judgment and classification module, an attribute specification processing module, a logic vulnerability detection module, and a vulnerability detection report generator.

[0059] The system includes: a smart contract defect source code library for storing smart contract source code containing common vulnerabilities and / or vulnerabilities that could introduce business logic; a program information preprocessing module for extracting program graph information from the smart contract defect source code and on-chain smart contract source code through semantic analysis to obtain corresponding first program features and second program features; a program judgment and classification module for training features on the first and second program features and classifying on-chain smart contract source code according to the correlation between the first and second program features to obtain first smart contract source code with common vulnerability features and / or second smart contract source code with logical vulnerability features; and an attribute specification processing module. The first smart contract source code is used to match corresponding logical attributes from the smart contract logic defect attribute library based on the second smart contract source code, and to filter out functions in the second smart contract source code that are unrelated to the logical attributes based on the predicate variables in the logical attributes, and to insert logical attributes at the entry and exit points of the remaining functions; the logic vulnerability detection module is used to determine whether the second smart contract source code containing logical attributes contains vulnerabilities that violate logical attributes by performing real execution and / or simulated execution on arbitrary paths of the program, and to obtain the third smart contract source code with logical vulnerabilities; the vulnerability detection report generator is used to generate vulnerability monitoring results based on the first smart contract source code, the third smart contract source code and the corresponding vulnerability information.

[0060] Working principle: This invention can classify business contracts in different fields, automatically add business logic attribute specifications, and filter and verify attribute-independent functions. It solves the problem that existing static detection technologies based on intelligent algorithms cannot monitor business logic vulnerabilities in on-chain contracts. At the same time, it solves the problems that existing programs cannot automatically add attributes for business logic vulnerabilities and that increasing computational overhead due to exploring attribute-independent program paths. It realizes the automatic detection of a large number of emerging on-chain smart contract code defects, such as conventional vulnerabilities and business logic vulnerabilities.

[0061] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0062] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations 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, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0063] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0064] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0065] The above specific embodiments further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above are merely specific embodiments of the present invention and are not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A method for automatically monitoring chain smart contract code defects, characterized in that, Includes the following steps: A smart contract defect source code library was established based on the source code of smart contracts containing both common vulnerabilities and vulnerabilities that could introduce business logic. Semantic analysis was used to extract program graph information from the defective source code of smart contracts and the on-chain smart contract source code, respectively, to obtain the corresponding first program feature and second program feature. Feature training is performed on the first program feature and the second program feature, and the on-chain smart contract source code is classified according to the degree of correlation between the first program feature and the second program feature to obtain the first smart contract source code with common vulnerability features and the second smart contract source code with logical vulnerability features. Based on the source code of the second smart contract, the corresponding logical attributes are matched from the smart contract logical defect attribute library. Based on the predicate variables in the logical attributes, functions in the source code of the second smart contract that are not related to the logical attributes are filtered out, and logical attributes are inserted at the entry and exit points of the remaining functions. By performing real and simulated executions of arbitrary paths in the program, we can determine whether the source code of the second smart contract containing logical attributes contains vulnerabilities that violate logical attributes, and thus obtain the source code of the third smart contract with logical vulnerabilities. Vulnerability monitoring results are generated based on the source code of the first smart contract, the source code of the third smart contract, and the corresponding vulnerability information.

2. The method for automatic detection of defects in on-chain smart contract code according to claim 1, characterized in that, The program graph information includes at least one of control flow graph, abstract syntax tree, and data flow graph.

3. The method for automatic detection of defects in on-chain smart contract code according to claim 1, characterized in that, The process of obtaining the first program feature and the second program feature is as follows: based on the abstract syntax tree information, the program features are represented by extracting contextual syntax and semantic information through deep neural network learning.

4. The method for automatic detection of defects in on-chain smart contract code according to claim 1, characterized in that, The process of obtaining the first and second program features is as follows: fusing multiple dependency graph information and learning to extract program features at the dependency graph level through multi-layer graph convolution and pooling layers.

5. The method for automatic detection of defects in on-chain smart contract code according to claim 4, characterized in that, The process of fusing multiple dependency graph information and learning to extract program features at the dependency graph level through multi-layer graph convolution and pooling layers is specifically as follows: By using the GRU model and convolutional layers, vector representations of functions are obtained from the abstract syntax tree, forming a description from a local perspective; The word2vec model is used to obtain vector representations of dependency graphs and control flow graphs, forming a description from a global perspective; By fusing vectors from local and global perspectives using matrix multiplication, a graph neural network is used to train a graph model with both local and global perspectives to extract program features.

6. The method for automatic detection of defects in on-chain smart contract code according to claim 1, characterized in that, The process of obtaining the first program feature and the second program feature is as follows: a neural network intelligent algorithm that integrates abstract syntax tree and multiple dependency graph information to learn and extract program features.

7. The method for automatic detection of defects in on-chain smart contract code according to claim 3, characterized in that, The process of classifying on-chain smart contract source code based on the correlation between the first program feature and the second program feature is as follows: Use the GloVe model to generate an initial vector for the token; Extract private semantic features from the abstract syntax tree using GCN; Generate common semantic features using adversarial training; By integrating private and public semantic features, the final vector of the source code is formed; The classification task is completed by calculating the distance between the final vectors of the smart contract source code library and the on-chain smart contract source code.

8. A method for automatic detection of defects in on-chain smart contract code according to any one of claims 4-6, characterized in that, The process of classifying on-chain smart contract source code based on the correlation between the first program feature and the second program feature is as follows: the fully connected layer is used to learn the correlation between the first program feature and the second program feature to complete the classification task.

9. The method for automatic detection of defects in on-chain smart contract code according to claim 1, characterized in that, The smart contract logic defect attribute library is a security attribute specification library related to business scenarios. Different logic vulnerability feature contracts correspond to different business scenarios. The security attribute specification is based on the test target of the real execution fuzz test engine or the verification target of the simulated execution formal verification engine, and is used to detect whether the code implementation is consistent with the security attribute specification.

10. An automatic detection system for defects in on-chain smart contract code, characterized in that, include: The smart contract defect source code library is used to store the source code of smart contracts containing common vulnerabilities and vulnerabilities that can introduce business logic. The program information preprocessing module is used to extract program graph information from the source code of smart contract defects and on-chain smart contract source code through semantic analysis, and obtain the corresponding first program feature and second program feature. The program classification module is used to perform feature training on the first program feature and the second program feature, and classify the on-chain smart contract source code according to the correlation between the first program feature and the second program feature to obtain the first smart contract source code with common vulnerability features and the second smart contract source code with logical vulnerability features. The attribute specification processing module is used to match the corresponding logical attributes from the smart contract logic defect attribute library based on the second smart contract source code, filter out functions in the second smart contract source code that are not related to the logical attributes based on the predicate variables in the logical attributes, and insert logical attributes at the entry and exit points of the remaining functions. The logic vulnerability detection module is used to determine whether the source code of the second smart contract containing logical attributes contains vulnerabilities that violate logical attributes by performing real and simulated executions of arbitrary paths of the program, and to obtain the source code of the third smart contract with logical vulnerabilities. The vulnerability detection report generator is used to generate vulnerability monitoring results based on the source code of the first smart contract, the source code of the third smart contract, and the corresponding vulnerability information.

Citation Information

Patent Citations

  • A highly automated formal verification system and method for blockchain smart contracts

    CN108536445B

  • A highly automated formal verification system and method for smart contracts

    CN108985073B

  • An automated smart contract code defect detection system and method

    CN109063477B

  • A testing method and system for blockchain smart contracts

    CN112286828B

  • Smart contract security detection method and system, equipment, terminal and application

    CN113626826A