41 releases (14 stable)
1.3.4 | Jun 5, 2022 |
---|---|
1.3.0-beta.7 | Mar 18, 2022 |
1.3.0-beta.3 | Dec 7, 2021 |
1.2.3 | Nov 30, 2021 |
0.9.9 | Jul 4, 2021 |
#93 in #private-key
Used in twetch-sdk
480KB
9K
SLoC
BSV.WASM
A Rust/WASM Library to interact with Bitcoin SV
Installation
NodeJS 14.6+:
npm i bsv-wasm --save
Web:
npm i bsv-wasm-web --save
Webpack:
npm i bsv-wasm-bundler --save
Rust:
https://crates.io/crates/bsv-wasm
Deno:
import init, { Transaction } from "https://deno.land/x/bsv_wasm@{VERSION}/bsv_wasm.js"
await init();
Usage
Note: Rust and JS/TS method names and structs are the same
- Eg. Derive private key from XPriv and log out P2PKH String
ExtendedPrivateKey.fromWIF('LMyWif...').toPrivateKey().toPublicKey().toAddress().toString()
Features
- Hash (SHA256, SHA256d, SHA1, RIPEMD160, Hash160, SHA512)
- KDF (PBKDF2)
- Encryption (AES-CBC, AES-CTR)
- ECDSA (Private Key, Public Key, Signatures)
- Transaction (Building, Serialising, Deserialising)
- Script (Serialising, Deserialising)
- Script Matching (ScriptTemplate)
- Addresses (P2PKH)
- Sighash Support
- Extended Private Keys and Child Derivation (BIP32, BIP42)
- Testnet support
TODO:
- Isomorphic Package for JS
- Write documentation (Inline on functions and structs)
Will not do:
- Mnemonics
Thanks
- Brenton Gunning (rust-sv)
- Moneybutton Team (bsv.js)
- Bitping Team
- learnmeabitcoin.com
- Bitcoin SV Wiki
Dependencies
~7.5MB
~137K SLoC