Audited minimal JavaScript/TypeScript library for creating, signing, and decoding Bitcoin transactions.
scure-btc-signer is an audited, minimal JavaScript/TypeScript library for creating, signing, and decoding Bitcoin transactions. It solves the problem of securely and efficiently building Bitcoin transactions in applications, supporting everything from classic outputs to modern Taproot and Schnorr signatures. The library is designed to be dependency-free and audit-friendly, with no network code to allow for offline usage.
Bitcoin developers and engineers building wallets, transaction processors, or blockchain tools that require secure, low-level transaction construction and signing. It's particularly suited for those who prioritize security audits, minimal dependencies, and support for advanced Bitcoin features like Taproot and PSBT.
Developers choose scure-btc-signer for its strong security focus (independently audited), comprehensive feature set covering all major Bitcoin transaction types, and minimal footprint with zero dependencies. Its design for offline usage and simplified audits makes it a reliable choice for security-critical applications.
Audited & minimal library for creating, signing & decoding Bitcoin transactions.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Independently audited by Cure53, with PGP-signed releases and transparent builds, ensuring high trustworthiness for security-critical applications.
Handles all major Bitcoin transaction types from classic P2PK to modern Taproot (P2TR), including Schnorr signatures and multi-signature scripts, as detailed in the payments section.
Implements BIP174 PSBT for partial signing workflows and BIP327 MuSig2 for secure multi-party signing, facilitating complex wallet operations without network dependencies.
Zero dependencies, 39KB gzipped size, and runs on Node.js, Deno, and React Native with a polyfill, making it easy to audit and deploy across platforms.
Key PSBTv2 features like tx_modifiable and taproot+bip32 derivation are not yet implemented, limiting compatibility with the latest Bitcoin standards.
Strips unknown PSBT keys to simplify audits, but this may break support for future PSBT extensions or custom use cases that rely on those keys.
Requires additional libraries for UTXO lookup and transaction broadcasting, adding complexity for applications that need real-time blockchain interaction.