Crate xyzpub

Crate xyzpub 

Source
Expand description

§xyz-pub

Convert xpubs and xprvs to different versions.

§Example

use xyzpub::{convert_version, Version};

let xpub = "xpub6BosfCnifzxcFwrSzQiqu2DBVTshkCXacvNsWGYJVVhhawA7d4R5WSWGFNbi8Aw6ZRc1brxMyWMzG3DSSSSoekkudhUd9yLb6qx39T9nMdj";
let expected_zpub = "zpub6qUQGY8YyN3ZxYEgf8J6KCQBqQAbdSWaT9RK54L5FWTTh8na8NkCkZpYHnWt7zEwNhqd6p9Utq562cSZsqGqFE87NNsUKnyZeJ5KvbhfC8E";

let result = convert_version(xpub, &Version::Zpub).unwrap();

assert_eq!(result, expected_zpub);

Enums§

Error
xyzpub error.
Version
Enum for version bytes.

Constants§

VERSION_TPRV
Version bytes tprv: bitcoin testnet private key for P2PKH or P2SH
VERSION_TPUB
Version bytes tpub: bitcoin testnet public key for P2PKH or P2SH
VERSION_UPRV
Version bytes uprv: bitcoin testnet private key for P2WPKH in P2SH
VERSION_UPRV_MULTISIG
Version bytes Uprv: bitcoin testnet private key for multi-signature P2WSH in P2SH
VERSION_UPUB
Version bytes upub: bitcoin testnet public key for P2WPKH in P2SH
VERSION_UPUB_MULTISIG
Version bytes Upub: bitcoin testnet public key for multi-signature P2WSH in P2SH
VERSION_VPRV
Version bytes vprv: bitcoin testnet private key for P2WPKH
VERSION_VPRV_MULTISIG
Version bytes Vprv: bitcoin testnet private key for multi-signature P2WSH
VERSION_VPUB
Version bytes vpub: bitcoin testnet public key for P2WPKH
VERSION_VPUB_MULTISIG
Version bytes Vpub: bitcoin testnet public key for multi-signature P2WSH
VERSION_XPRV
Version bytes xprv: bitcoin mainnet private key P2PKH or P2SH
VERSION_XPUB
Version bytes xpub: bitcoin mainnet public key P2PKH or P2SH
VERSION_YPRV
Version bytes yprv: bitcoin mainnet private key P2WPKH in P2SH
VERSION_YPRV_MULTISIG
Version bytes Yprv: bitcoin mainnet private key for multi-signature P2WSH in P2SH
VERSION_YPUB
Version bytes ypub: bitcoin mainnet public key P2WPKH in P2SH
VERSION_YPUB_MULTISIG
Version bytes Ypub: bitcoin mainnet public key for multi-signature P2WSH in P2SH
VERSION_ZPRV
Version bytes zprv: bitcoin mainnet private key P2WPKH
VERSION_ZPRV_MULTISIG
Version bytes Zprv: bitcoin mainnet private key for multi-signature P2WSH
VERSION_ZPUB
Version bytes zpub: bitcoin mainnet public key P2WPKH
VERSION_ZPUB_MULTISIG
Version bytes Zpub: bitcoin mainnet public key for multi-signature P2WSH

Functions§

convert_version
Replaces the first 4 bytes of a base58 string with the target’s version and returns the new string. Also checks if the input is a correct address.
replace_version_bytes
Replaces the first 4 bytes of a byte slice with the target’s version and returns a new byte vec. Does not check if extended public/private key is valid and only replaces the version bytes.