├── .gitignore ├── LICENSE.txt ├── README.md ├── contracts ├── Bounty.sol ├── BrokenToken.sol ├── CircuitBreaker.sol ├── EvilRecipient.sol ├── Recipient.sol ├── TokenWithEStop.sol ├── TokenWithInvariants.sol └── WorkingToken.sol ├── environments ├── development │ └── config.js ├── production │ └── config.js ├── staging │ └── config.js └── test │ └── config.js ├── test ├── bounty.js ├── broken_token.js ├── circuit_breaker.js ├── token_with_e_stop.js ├── token_with_invariants.js └── working_token.js └── truffle.js /.gitignore: -------------------------------------------------------------------------------- 1 | environments/test/contracts/** 2 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/README.md -------------------------------------------------------------------------------- /contracts/Bounty.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/contracts/Bounty.sol -------------------------------------------------------------------------------- /contracts/BrokenToken.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/contracts/BrokenToken.sol -------------------------------------------------------------------------------- /contracts/CircuitBreaker.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/contracts/CircuitBreaker.sol -------------------------------------------------------------------------------- /contracts/EvilRecipient.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/contracts/EvilRecipient.sol -------------------------------------------------------------------------------- /contracts/Recipient.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/contracts/Recipient.sol -------------------------------------------------------------------------------- /contracts/TokenWithEStop.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/contracts/TokenWithEStop.sol -------------------------------------------------------------------------------- /contracts/TokenWithInvariants.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/contracts/TokenWithInvariants.sol -------------------------------------------------------------------------------- /contracts/WorkingToken.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/contracts/WorkingToken.sol -------------------------------------------------------------------------------- /environments/development/config.js: -------------------------------------------------------------------------------- 1 | module.exports = {} 2 | -------------------------------------------------------------------------------- /environments/production/config.js: -------------------------------------------------------------------------------- 1 | module.exports = {} 2 | -------------------------------------------------------------------------------- /environments/staging/config.js: -------------------------------------------------------------------------------- 1 | module.exports = {} 2 | -------------------------------------------------------------------------------- /environments/test/config.js: -------------------------------------------------------------------------------- 1 | module.exports = {} 2 | -------------------------------------------------------------------------------- /test/bounty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/test/bounty.js -------------------------------------------------------------------------------- /test/broken_token.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/test/broken_token.js -------------------------------------------------------------------------------- /test/circuit_breaker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/test/circuit_breaker.js -------------------------------------------------------------------------------- /test/token_with_e_stop.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/test/token_with_e_stop.js -------------------------------------------------------------------------------- /test/token_with_invariants.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/test/token_with_invariants.js -------------------------------------------------------------------------------- /test/working_token.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/test/working_token.js -------------------------------------------------------------------------------- /truffle.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PeterBorah/smart-contract-security-examples/HEAD/truffle.js --------------------------------------------------------------------------------