building-secure-contracts
building-secure-contracts copied to clipboard
List real-world examples of Echidna/Manticore integration
- https://blog.trailofbits.com/2020/08/17/using-echidna-to-test-a-smart-contract-library/
- https://github.com/search?q=%22function+echidna_%22&type=Code
- Some of our public reports: https://github.com/trailofbits/publications
echidna + manticore: https://github.com/tokencard/contracts/tree/master/tools
The blogpost on library testing was directly added in the list of advanced tutorials
Echidna in CI
- uniswap https://github.com/Uniswap/uniswap-lib/blob/c01640b0f0f1d8a85cba8de378cc48469fcfd9a6/.github/workflows/fuzz-testing.yml
- akirpolisio: https://github.com/akropolisio/akropolis/blob/6d8e90b24275bef9cd879a7ab0f096b0c2d4a091/.github/workflows/security.yml#L60-L92
- contracthsark: https://github.com/contractshark/echidna/blob/5358689ae99dac9ba4027f5f4d24f78cb0a6b6e0/echidna.action.yml#L9-L57
- optimisim-dai: https://github.com/BellwoodStudios/optimism-dai-bridge/blob/c8b5f2de89b3e8beb5b75418890327bda3fad035/.github/workflows/ci.yml#L98-L144
- maker-badges: https://github.com/naszam/maker-badges/blob/718e9c5fb749241a62dede7a128c75b20e787e13/.github/workflows/fuzz.yml
Echidna properties (without CI)
- usffum: https://github.com/usmfum/USM/pull/41
- monolith_contracts: https://github.com/bughunter0xff/monolith_contracts/blob/60709d65cc2178ca936920133610268aa4c30dc5/tools/echidna/controller/controller.sol
- pooltogether: https://github.com/pooltogether/pooltogether-pool-contracts/blob/master/package.json#L38-L39
- decimalmath: https://github.com/albertocuestacanada/DecimalMath/blob/4737ebc19234106a7792f6031fcde3dd79244228/package.json#L14
- origin-dollar https://github.com/OriginProtocol/origin-dollar/blob/6e2b1738fe876aa8e7e6d38c23417383ed33b3ad/contracts/package.json#L22
Manticore in CI
- tokencard: https://github.com/tokencard/contracts/blob/ea5d68f65ef81b8f3b7bb03b0511874931f67ea5/.circleci/config.yml#L232-L277
@ggrieco-tob : some of these repo are not listed in https://github.com/crytic/echidna#property-testing-suites. Do we want to add them?