https://github.com/dedis/determ-checker
A static checker for non-determinism in source files
https://github.com/dedis/determ-checker
Last synced: 8 months ago
JSON representation
A static checker for non-determinism in source files
- Host: GitHub
- URL: https://github.com/dedis/determ-checker
- Owner: dedis
- Created: 2021-04-26T14:20:18.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2022-10-14T15:44:28.000Z (over 3 years ago)
- Last Synced: 2025-01-13T19:42:25.106Z (over 1 year ago)
- Language: Go
- Size: 1.52 MB
- Stars: 1
- Watchers: 14
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Golang static checker
A static checker that detects non-determinism in Golang smart contracts.
The static checker recursively parses all the source files of the smart contract, and issues a warning if the code uses any of the blacklisted types or if it imports any packages besides the whitelisted ones. We blacklisted _float_ types, _chan_ type, go routines _GoStmt_, and _map range_ statements. The list of whitelisted packages contains _fmt_, _bytes_, _hash_, _encoding_.