Skip to content
@rust-bitcoin

Rust Bitcoin Community

A Series of Projects to implement various Bitcoin Protocols in Rust

Rust Bitcoin Community

A Series of projects to implement various Bitcoin protocols in Rust.

TL;DR;

rust-bitcoin hosts the bitcoin crate that supports the Bitcoin network protocol and associated primitives. It is designed for Rust programs built to work with the Bitcoin network.

Core Crates

The "core" crates developed and maintained collectively by the rust-bitcoin devs. There is a list of official maintainers for the bitcoin crate, for other crates please see the git index to get an idea of who is who.

For these crates we hold ourselves to high standards relating to security, testing, release schedule, API design, and coding style. Our current focus is on stabilizing these crates1.

Name Crate Repository
base58 base58ck rust-bitcoin
bitcoin bitcoin rust-bitcoin
bitcoinconsensus bitcoinconsensus rust-bitcoinconsensus
bech32 bech32 rust-bech32
hashes bitcoin_hashes rust-bitcoin
hex hex-conservative hex-conservative
internals bitcoin-internals rust-bitcoin
io bitcoin-io rust-bitcoin
ordered ordered rust-ordered
secp256k1 secp256k1 rust-secp256k1
units bitcoin-units rust-bitcoin

We aim to make usage of these crates secure, ergonomic, and intuitive. We try to enable users of these crates to follow software engineering best practices e.g., semver compliance.

If we fall short of these stated aims, or can in anyway improve our support of Bitcoin free software projects, please raise issues or contact maintainers directly. For security related issues please see SECURITY.md.

If you write proprietary software and want better integration with these crates by all means raise issues on the respective repository. We are interested in all users and your usecase may help us improve the libraries, however all development is done in the open and will stay that way.

Other Crates

Other crates/repositories hosted here and developed and maintained by the community.

These crates are developed and maintained by a subset of the rust-bitcoin devs or other members of the community. We are fairly open about hosting any Bitcoin-related crates in this organization, provided that they are actively maintained. Other requirements are:

  • The repository contains Bitcoin-specific crates (implies Bitcoin-only and not general purpose crates).
  • The repository has at least minimal CI.
  • The author has made at least some effort to adhere to practices and standards maintained in the core crates (defined above).

These crates may not be reviewed or maintained by the primary rust-bitcoin maintainers. Keep this in mind when choosing to use them as dependencies. And as with any dependencies, you should review new versions rather than blindly upgrading.

Name Crate Repository
miniscript miniscript rust-miniscript
bitcoind bitcoind bitcoind
bitcoincore-rpc bitcoincore-rpc rust-bitcoincore-rpc
bip39 bip39 rust-bip39
bip47 bip47 rust-bip47
bip322 bip322 bip322
murmel murmel murmel
hammersbald hammersbald hammersbald
bitcoin-bech32 bitcoin-bech32 rust-bech32-bitcoin
corepc corepc corepc
bitcoin-payment-instructions bitcoin-payment-instructions bitcoin-payment-instructions

Non-crate repositories

Repositories that are not crates (libraries).

Name Repository Description
maintainer-tools rust-bitcoin-maintainer-tools Scripts, test vectors, and other things used by or across multiple repositories in the rust-bitcoin ecosystem.
website rust-bitcoin.github.io Source for the organization website https://rust-bitcoin.org
workshop workshop Conference presentation material
.github .github Hosts this readme file

Archived crates

These crates have either been moved to another location or are no longer actively maintained.

Repository Crate or Description
rust-wallet Unmaintained bitcoin-wallet
rust-bitcoin-chain Unmaintained bitcoin-chain
bitcoin_hashes Moved to rust-bitcoin
rust-lightning-invoice Moved to rust-lightning
www.rust-bitcoin.org Moved to rust-bitcoin.github.io
bitcoind-json-rpc-client Unmaintained bitcoind-json-rpc-client
bitcoind-json-rpc-regtest Unmaintained bitcoind-json-rpc-regtest
bitcoind-json-rpc-types Unmaintained bitcoind-json-rpc-types

TODO

Footnotes

  1. Please note internals will explicitly never stabalize.

Popular repositories Loading

  1. rust-bitcoin rust-bitcoin Public

    Rust Bitcoin library

    Rust 2.3k 790

  2. rust-miniscript rust-miniscript Public

    Support for Miniscript and Output Descriptors for rust-bitcoin

    Rust 377 149

  3. rust-secp256k1 rust-secp256k1 Public

    Rust language bindings for Bitcoin secp256k1 library.

    C 376 283

  4. rust-bitcoincore-rpc rust-bitcoincore-rpc Public

    Rust RPC client library for the Bitcoin Core JSON-RPC API.

    Rust 370 274

  5. rust-wallet rust-wallet Public

    *archived* Library for a Bitcoin Wallet

    Rust 184 89

  6. rust-bip39 rust-bip39 Public

    A Rust library for working with Bitcoin BIP-39 mnemonics

    Rust 103 63

Repositories

Showing 10 of 30 repositories
  • corepc Public

    Rust library for interacting with Bitcoin Core over JSONRPC

    rust-bitcoin/corepc’s past year of commit activity
    Rust 25 CC0-1.0 21 20 3 Updated Apr 9, 2025
  • bitcoin-payment-instructions Public

    Resolves Bitcoin Payment Instructions of various forms

    rust-bitcoin/bitcoin-payment-instructions’s past year of commit activity
    Rust 0 1 0 0 Updated Apr 8, 2025
  • .github Public
    rust-bitcoin/.github’s past year of commit activity
    0 CC0-1.0 3 1 1 Updated Apr 8, 2025
  • rust-bitcoin Public

    Rust Bitcoin library

    rust-bitcoin/rust-bitcoin’s past year of commit activity
    Rust 2,300 CC0-1.0 790 368 (1 issue needs help) 90 Updated Apr 8, 2025
  • rust-secp256k1 Public

    Rust language bindings for Bitcoin secp256k1 library.

    rust-bitcoin/rust-secp256k1’s past year of commit activity
    C 376 CC0-1.0 283 66 20 Updated Apr 7, 2025
  • rust-miniscript Public

    Support for Miniscript and Output Descriptors for rust-bitcoin

    rust-bitcoin/rust-miniscript’s past year of commit activity
    Rust 377 CC0-1.0 149 62 (1 issue needs help) 27 Updated Apr 5, 2025
  • rust-bech32 Public

    Bech32 format encoding and decoding

    rust-bitcoin/rust-bech32’s past year of commit activity
    Rust 96 MIT 58 4 4 Updated Apr 2, 2025
  • hex-conservative Public

    Hex crate with a conservative MSRV and dependency policy

    rust-bitcoin/hex-conservative’s past year of commit activity
    Rust 9 CC0-1.0 9 10 (1 issue needs help) 7 Updated Mar 24, 2025
  • rust-ordered Public

    Wrapper for adding `PartialOrd` and `Ord` to types without a meaningful canonical ordering.

    rust-bitcoin/rust-ordered’s past year of commit activity
    Rust 1 CC0-1.0 3 5 0 Updated Mar 17, 2025
  • bip324 Public

    encrypted messages over the Bitcoin P2P Protocol

    rust-bitcoin/bip324’s past year of commit activity
    Rust 27 4 1 0 Updated Mar 7, 2025

Top languages

Loading…

Most used topics