[][src]Crate bitcoincash_addr

Bitcoin Cash Address Library

A simple library providing an Address struct enabling encoding/decoding of Bitcoin Cash addresses.

use bitcoincash_addr::{Address, Network, Scheme};
 
fn main() {
    // Decode base 58 address
    let legacy_addr = "1NM2HFXin4cEQRBLjkNZAS98qLX9JKzjKn";
    let mut addr = Address::decode(legacy_addr).unwrap();
 
    // Change the base 58 address to a test network cashaddr
    addr.network = Network::Test;
    addr.scheme = Scheme::CashAddr;
 
    // Encode cashaddr
    let cash_addr = addr.encode().unwrap();
 
    // bchtest:qr4zgpuznfg923ntyauyeh5v7333v72xhum2dsdgfh
    println!("{}", cash_addr);
}
 

Structs

Address
Base58Codec

Codec allowing the encoding and decoding of base58 addresses

CashAddrCodec

Codec allowing the encoding and decoding of cashaddrs

Enums

AddressError

Error concerning encoding/decoding of addresses

Base58Error

Error concerning encoding/decoding of base58 addresses

CashAddrError

Error concerning encoding/decoding of cashaddrs

HashType

Type of the hash160 raw bytes

Network

Bitcoin Networks

Scheme

Address encoding scheme

Traits

AddressCodec

A trait providing an interface for encoding and decoding the Address struct for each address scheme.