Secure development workflow

Here's a high-level process we recommend following while you write your smart contracts.

Check for known security issues:

Consider special features of your contract:

Visually inspect critical security features of your code:

Document critical security properties and use automated test generators to evaluate them:

Finally, be mindful of issues that automated tools cannot easily find:

  • Lack of privacy: everyone else can see your transactions while they're queued in the pool

  • Front running transactions

  • Cryptographic operations

  • Risky interactions with external DeFi components

Ask for help

Office Hours run every Tuesday afternoon. These 1-hour, 1-on-1 sessions are an opportunity to ask us any questions you have about security, troubleshoot using our tools, and get feedback from experts about your current approach. We will help you work through this guide.

Join our Slack: Empire Hacking. We're always available in the #crytic and #ethereum channels if you have any questions.

Security is about more than just smart contracts

Review our quick tips for general application and corporate security. It's most important that your code on-chain is secure, but lapses in off-chain security may be just as severe, especially where owner keys are concerned.

Last updated