Skip to content

Latest commit

 

History

466 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TSA(TON Symbolic Analyzer) is a static analysis tool based on symbolic execution and designed for smart contracts on the TON blockchain.

Quick start

To install TSA, follow the guide.

To know more about TSA use cases, read the following document.

The easiest way to use TSA is to generate tests. For examples, see the following.

Language Support

TSA works on TVM bitcode level, so it is possible to analyze smart contracts written in any language, just need to compile it to BoC format.

Use Cases

TSA is designed for a few purposes:

  • Detect possible TVM runtime errors: Find possible misbehavior while processing integers (overflow/underflow, division by zero) and slices/builders (reading or writing wrong number of bits, incorrect types, etc).
  • Generate regression tests: TSA is able to generate Blueprint-based tests based on discovered execution paths that allow to fix expected behavior and find errorneous executions.
  • Honeypots detection: TSA can detect and report malicious contracts that are created to fool users.

Funding

TSA has been funded by the TON Foundation grant grant and has been developed under the 8-month roadmap.

License

MIT © Esprito Tech QFZ LLC

Releases

Packages

Used by

Contributors

Languages