暂无描述

Leonardo 99e4b081dc ECRecover test should revert because of wrong calldata size (#1050) 7 年之前
.github a7e91856f3 Update to Truffle 4.1.5 and Ganache 6.1.0 (#876) 7 年之前
audit 6d8bb497c8 removing trailing whitespace 8 年之前
contracts 99e4b081dc ECRecover test should revert because of wrong calldata size (#1050) 7 年之前
migrations 0e5799c93b Clean up npm package (#904) 7 年之前
scripts 90413e75f1 add version script to update ethpm.json (#906) 7 年之前
test 99e4b081dc ECRecover test should revert because of wrong calldata size (#1050) 7 年之前
.babelrc f2142545c7 modified test to use async await pattern. 9 年之前
.env.example b9b26e1d8a feat: allow configuration of ropsten and ganache with env variables 7 年之前
.eslintrc 8662846838 feat: apply eslint --fix across project 7 年之前
.gitattributes ad5edd329f feat: add solidity syntax highlighting directive, fixes #671 7 年之前
.gitignore 0047e79681 ignore truffle generated file (#1019) 7 年之前
.jshintrc 90654cb2c9 add .jshintrc 8 年之前
.node-version 846b0714ad feat: remove yarn in favor of npm 7 年之前
.solcover.js 1455a5a942 Re-enable solidity coverage 7 年之前
.soliumignore 6d8bb497c8 removing trailing whitespace 8 年之前
.soliumrc.json 746673a94f style: use the max-len solidity rule (#944) 7 年之前
.travis.yml 0b33d29e41 Add travis job to run test suite with solc nightly (#902) 7 年之前
CODE_OF_CONDUCT.md 4575a240f7 Create CODE_OF_CONDUCT.md (#1061) 7 年之前
CONTRIBUTING.md 5db0d7d1a0 included command to add upstream (#959) 7 年之前
LICENSE 6d8bb497c8 removing trailing whitespace 8 年之前
README.md 32ec8b5398 Add Status Embark to README (#956) 7 年之前
ethpm.json feb665136c 1.10.0 7 年之前
package-lock.json fd253d6b8d Fix dependency warnings (#1053) 7 年之前
package.json fd253d6b8d Fix dependency warnings (#1053) 7 年之前
truffle-config.js c191757c6e rename truffle.js to truffle-config.js (#886) 7 年之前

README.md

OpenZeppelin Solidity

NPM Package Build Status Coverage Status

OpenZeppelin is a library for writing secure Smart Contracts on Ethereum.

With OpenZeppelin, you can build distributed applications, protocols and organizations:

NOTE: New to smart contract development? Check our introductory guide.

Getting Started

OpenZeppelin integrates with Truffle and Embark.

Truffle

To use with Truffle, first install it and initialize your project with truffle init.

npm install -g truffle
mkdir myproject && cd myproject
truffle init

Embark

To use with Embark, first install it and initialize your project with embark new MyApp.

npm install -g embark
embark new MyApp
cd MyApp

Installing OpenZeppelin

After installing either Framework, to install the OpenZeppelin library, run the following in your Solidity project root directory:

npm init -y
npm install -E openzeppelin-solidity

Note that OpenZeppelin does not currently follow semantic versioning. You may encounter breaking changes upon a minor version bump. We recommend pinning the version of OpenZeppelin you use, as done by the -E (--save-exact) option.

After that, you'll get all the library's contracts in the node_modules/openzeppelin-solidity/contracts folder. You can use the contracts in the library like so:

import 'openzeppelin-solidity/contracts/ownership/Ownable.sol';

contract MyContract is Ownable {
  ...
}

If you are using Embark, you can also import directly from github:

import "github.com/OpenZeppelin/openzeppelin-solidity/contracts/ownership/Ownable.sol#v1.9.0";

contract MyContract is Ownable {
  ...
}

Security

OpenZeppelin is meant to provide secure, tested and community-audited code, but please use common sense when doing anything that deals with real money! We take no responsibility for your implementation decisions and any security problem you might experience.

If you find a security issue, please email security@openzeppelin.org.

Developer Resources

Building a distributed application, protocol or organization with OpenZeppelin?

Interested in contributing to OpenZeppelin?

License

Code released under the MIT License.