@owstack/btg-lib
v0.0.1
Published
A pure and powerful JavaScript Bitcoin Gold library.
Downloads
3
Readme
BTG Lib
A pure and powerful JavaScript Bitcoin Gold library.
What this provides
This repository extends @owstack/satoshi-common-lib with bitcoin-gold fork changes
Principles
Bitcoin Gold is an other powerful peer-to-peer platform for the next generation of financial technology. The decentralized nature of the Bitcoin Gold network allows for highly resilient bitcoin gold infrastructure, and the developer community needs reliable, open-source tools to implement bitcoin gold apps and services.
Bitcoin Gold vs. Bitcoin
Bitcoin Gold uses a different sighash
for transaction signatures. The implementation has been tested against the original bitcoin gold test vectors (see sighash.json in /test
). bitcoin gold
modifications in script evaluation has not been implemented yet.
Get Started
npm install btg-lib
bower install btg-lib
Examples
- Generate a random address
- Generate a address from a SHA256 hash
- Import an address via WIF
- Create a Transaction
- Sign a Bitcoin Gold message
- Verify a Bitcoin Gold message
- Create an OP RETURN transaction
- Create a 2-of-3 multisig P2SH address
- Spend from a 2-of-2 multisig P2SH address
Security
If you find a security issue, please email [email protected].
Contributing
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.
Building the Browser Bundle
To build a btg-lib full bundle for the browser:
gulp browser
This will generate files named bch.js
and bch.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/owstack/btg-lib/commit/e33b6e3ba6a1e5830a079e02d949fce69ea33546 for v0.12.6).
To verify signatures, use the following PGP keys:
- @braydonf: https://pgp.mit.edu/pks/lookup?op=get&search=0x9BBF07CAC07A276D
D909 EFE6 70B5 F6CC 89A3 607A 9BBF 07CA C07A 276D
- @gabegattis: https://pgp.mit.edu/pks/lookup?op=get&search=0x441430987182732C
F3EA 8E28 29B4 EC93 88CB B0AA 4414 3098 7182 732C
- @kleetus: https://pgp.mit.edu/pks/lookup?op=get&search=0x33195D27EF6BDB7F
F8B0 891C C459 C197 65C2 5043 3319 5D27 EF6B DB7F
- @matiu: https://pgp.mit.edu/pks/lookup?op=get&search=0x9EDE6DE4DE531FAC
25CE ED88 A1B1 0CD1 12CD 4121 9EDE 6DE4 DE53 1FAC
Development & Tests
git clone https://github.com/owstack/btg-lib
cd btg-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
.
License
Code released under the MIT license.
Copyright 2017 Open Wallet Stack.