Skip to content

TSA - Symbolic analyzer for TVM (The Open Network Virtual Machine) based on USVM.

Notifications You must be signed in to change notification settings

novusnota-forks/tsa-symbolic-analysis-tvm

 
 

Repository files navigation

Symbolic analyzer for TVM (The Telegram Open Network Virtual Machine) based on USVM.

How to build

  1. Clone this repo with all submodules (using IntelliJ Idea or git clone git clone --recurse-submodules https://github.com/explyt/tsa).

  2. Build the submodule:

    cd tvm-disasm
    npm i
    npm run build
  3. Download fift and func for the corresponding operating system from the last TON release and add them to $PATH.

    • rename the downloaded files (e.g., func-mac-arm64, fift-mac-arm64) to fift and func.
    • if you have Permission denied error, do chmod +x fift and chmod +x func
    • on MacOS you need to manually open these files once
  4. Install tact compiler with yarn:

    yarn global add @tact-lang/compiler
    • probably, you need to manually add tact to path:
      export PATH="$PATH:$(yarn global bin)"
  5. Build the project, running ./gradlew build from the root of the repo.

About

TSA - Symbolic analyzer for TVM (The Open Network Virtual Machine) based on USVM.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Kotlin 100.0%