Expand description
Parse wallet public-key exports into descriptors
Pubport accepts common single-sig wallet export formats and converts them
into external and internal output descriptors. Use parse_from_str or
Format::try_new_from_str when you have an unknown export string, then
match on Format to inspect the parsed descriptors
§Supported formats
- Descriptors
- Electrum
- Wasabi
- JSON
- Bare XPUB
- BIP380 Key Expressions
- note: XPUBs only, key expressions with private keys, bare compressed or uncompressed public keys are not supported
§Supported descriptors
- Single Sig
§Examples
§Import in generic JSON format used by many wallets
use pubport::Format;
let string = std::fs::read_to_string("test/data/sparrow-export.json").unwrap();
let format = Format::try_new_from_str(&string);
assert!(format.is_ok());
let format = format.unwrap();
assert!(matches!(format, Format::Json(_)));§Import from file containing descriptors
note: need external and internal descriptors, but can be single descriptor or multiple descriptor format
use pubport::Format;
let string = std::fs::read_to_string("test/data/descriptor.txt").unwrap();
let format = Format::try_new_from_str(&string);
assert!(format.is_ok());
let format = format.unwrap();
assert!(matches!(format, Format::Descriptor(_)));§Import from wasabi wallet format
use pubport::Format;
let string = std::fs::read_to_string("test/data/new-wasabi.json").unwrap();
let format = Format::try_new_from_str(&string);
assert!(format.is_ok());
let format = format.unwrap();
assert!(matches!(format, Format::Wasabi(_)));§Import from electrum wallet format
use pubport::Format;
let string = std::fs::read_to_string("test/data/new-electrum.json").unwrap();
let format = Format::try_new_from_str(&string);
assert!(format.is_ok());
let format = format.unwrap();
assert!(matches!(format, Format::Electrum(_)));Modules§
- descriptor
- Descriptor parsing and construction utilities
- formats
- Format detection for supported wallet export strings
- json
- Serde models for supported JSON wallet export formats
- key_
expression - BIP380 key-expression parsing Parse BIP380-style key expressions
- xpub
- Extended public-key normalization helpers
Functions§
- parse_
from_ str - Parse a wallet export string into the first supported format that matches