DevCon2: Smart Contract Security Best Practices

Benefactory
Benefactory
Published in
2 min readNov 16, 2016

First, developers need to prepare for failure. Developers and alpha users should also be ready for the “unknown unknowns.” Knowing all the possible outcomes of a contract is simply not possible in some cases.

Second, developers should prepare a roll out of their product carefully. A good production system requires time to be ready and engineers should not feel pressure from monetary considerations when pushing out products. The strongest contracts require a significant amount of time to be made before the launch, including:

  1. the deployment on testnets
  2. a beta on the mainnet

Third, developers should aim to keep contracts simple. Not only was this more cost efficient for gas usage but could also lead to new surprising results as simplicity breeds creativity.

Finally, staying up to date on the most recent findings and developments was absolutely crucial in this industry. Specifically, ConsenSys maintains the Smart Contract Best Practices guide of the community’s suggestions for building secure contracts. The Smart Contract Best Practices document is a community collaboration, so if you have suggestions, pull requests are welcome!

Joseph Chow presenting in DevCon2 in Shanghai, China

This series was a collaborative research project written by Bill Gleim, Simon de la Rouviere, Paul Kohlhaas, and Niran Babalola. It was crowdfunded by the Ethereum Movement, a decentralized nonprofit built on Benefactory.

--

--

Benefactory
Benefactory

Benefactory grows the movement for crowd philanthropy: a new economic sector led by community organizers. Join us. http://slack.benefactory.cc/