A pure and powerful JavaScript Bitcoin Cash library.
Bitcoin Cash is an other powerful peer-to-peer platform for the next generation of financial technology. The decentralized nature of the Bitcoin network allows for highly resilient bitcoin infrastructure, and the developer community needs reliable, open-source tools to implement bitcoin apps and services.
Bitcoin cash uses a different sighash
for transaction signatures. The implementation in bitcore-cash has been tested agains the original bitcoin-cash test vectors (see sighash.json in /test
). bitcoin-cash
modifications in script evaluation has not been implemented yet.
An usage example of bitcore-lib-cash can be seen at https://github.com/bitpay/copay-recovery
npm install bitcore-lib-cash
Adding Bitcore Cash to your app's package.json
:
"dependencies": {
"bitcore-lib-cash": "=0.18.0",
...
}
The complete docs are hosted here: bitcore documentation. There's also a bitcore API reference available generated from the JSDocs of the project, where you'll find low-level details on each bitcore utility.
To get community assistance and ask for help with implementation questions, please use our community forums.
- Generate a random address
- Generate a address from a SHA256 hash
- Import an address via WIF
- Create a Transaction
- Sign a Bitcoin message
- Verify a Bitcoin message
- Create an OP RETURN transaction
- Create a 2-of-3 multisig P2SH address
- Spend from a 2-of-2 multisig P2SH address
We're using Bitcore in production, as are many others, but please use common sense when doing anything related to finances! We take no responsibility for your implementation decisions.
If you find a security issue, please email [email protected].
Please send pull requests for bug fixes, code optimization, and ideas for improvement. For more information on how to contribute, please refer to our CONTRIBUTING file.
To build a bitcore-lib full bundle for the browser:
gulp browser
This will generate files named bitcore-lib.js
and bitcore-lib.min.js
.
You can also use our pre-generated files, provided for each release along with a PGP signature by one of the project's maintainers. To get them, checkout a release commit (for example, https://github.com/bitpay/bitcore-lib-cash/commit/e33b6e3ba6a1e5830a079e02d949fce69ea33546 for v0.12.6).
To verify signatures, use the following PGP keys:
- @gabegattis: https://pgp.mit.edu/pks/lookup?op=get&search=0x441430987182732C
F3EA 8E28 29B4 EC93 88CB B0AA 4414 3098 7182 732C
- @matiu: https://pgp.mit.edu/pks/lookup?op=get&search=0x9EDE6DE4DE531FAC
25CE ED88 A1B1 0CD1 12CD 4121 9EDE 6DE4 DE53 1FAC
git clone https://github.com/bitpay/bitcore-lib-cash
cd bitcore-lib
npm install
Run all the tests:
gulp test
You can also run just the Node.js tests with gulp test:node
, just the browser tests with gulp test:browser
or create a test coverage report (you can open coverage/lcov-report/index.html
to visualize it) with gulp coverage
.
Code released under the MIT license.
Copyright 2013-2018 BitPay, Inc. Bitcore is a trademark maintained by BitPay, Inc.