Summary Introduction Development-guidelines High-level best practices Token integration checklist Incident Response Recommendations Secure development workflow Learn EVM EVM Opcode Reference Transaction Tracing Yellow Paper Guidance: Forks <> EIPs Forks <> CIPs Upgrades <> TIPs Forks <> BEPs Not so smart contracts Algorand Rekeying Unchecked Transaction Fees Closing Account Closing Asset Group Size Check Time-based Replay Attack Access Controls Asset Id Check Denial of Service Cairo Improper access controls Integer division errors View state modifications Arithmetic overflow Signature replays L1 to L2 Address Conversion Incorrect Felt Comparison Namespace Storage Var Collision Dangerous Public Imports in Libraries Cosmos Incorrect signers Non-determinism Not prioritized messages Slow ABCI methods ABCI methods panic Broken bookkeeping Rounding errors Unregistered message handler Missing error handler Solana Arbitrary CPI Improper PDA Validation Ownership Check Signer Check Sysvar Account Check Substrate Arithmetic overflow Don't panic! Weights and fees Verify first Unsigned transaction validation Bad randomness Bad origin Program Analysis Echidna Introduction Introduction to fuzzing How to test a property Basic How to select the most suitable testing mode How to select the best testing approach How to filter functions How to test assertions How to write good properties step by step Advanced How to collect a corpus How to use optimization mode How to detect high gas consumption How to perform smart contract fuzzing at a large scale How to test bytecode-only contracts How to use hevm cheats to test permit How to seed Echidna with unit tests Understanding and using multi-abi Fuzzing tips Frequently Asked Questions Exercises Exercise 1 Exercise 2 Exercise 3 Exercise 4 Exercise 5 Exercise 6 Exercise 7 Exercise 8 Manticore Introduction to symbolic execution: Running under Manticore Getting throwing paths Adding constraints Exercises Example Exercise 1 Exercise 2 Slither Static Analysis API Exercise 1 Exercise 2 Resources