#cash #bitcoin #crypto

bch

A Rust library for working with Bitcoin Cash

2 releases

Uses old Rust 2015

0.1.1 Nov 7, 2018
0.1.0 Nov 4, 2018

#10 in #cash

MIT license

405KB
9K SLoC

Rust-BCH

A fresh library to build Bitcoin Cash applications in Rust.

Documentation

Features

  • P2P protocol messages (construction and serialization)
  • Address generation (cashaddr and legacy)
  • Transaction signing
  • Script evaluation
  • Node connections and basic message handling
  • Wallet key derivation and mnemonic parsing
  • Mainnet and testnet support
  • Various Bitcoin primitives

Installation

Add bch = "0.1.0" to Cargo.toml

Requirements

Rust nightly is required for documentation due to a bug fix which has not yet made it to stable.

Run ./configure once to setup nightly.

Known limitations

This library should not be used for consensus code because its validation checks are incomplete.

Comparison with other Rust libraries

rust-bitcoin - rust-bch has no ties to rust-bitcoin. This library can do everything rust-bitcoin can do and more for Bitcoin Cash.

parity-bitcoin - The parity Bitcoin client is a full node in Rust. Its code is more full-featured and also more complex.

bitcrust - The bitcrust project is strong in some areas and lacking in others. The two projects could be used together.

Support for the November 2018 hard fork

This library supports the SV implementation of Bitcoin Cash. It includes the new opcodes OP_MUL, OP_RSHIFT, OP_LSHIFT, and OP_INVERT and the increased script op limit. CDS and CTOR validation are not supported.

License

rust-bch is licensed under the MIT license.

Dependencies

~10–19MB
~315K SLoC