Skip to main content

Wrapper around hwi, such that one can sign bdk PSBTs directly

Project description

Wrapper around hwi, such that one can sign bdk PSBTs directly

  • This provides an abstraction layer ontop of hwi, such that only bdk is needed from the outside

  • Currently supported are

    • Coldcard, Q
    • Bitbox02
    • Blockstream Jade
    • Trezor Safe
  • It also provides

    • AddressTypes, which are the commonly used bitcoin output descriptor templates
    • seed_tools.derive_spk_provider to derive xpubs from seeds for all AddressTypes (bdk does not support multisig templates currently https://github.com/bitcoindevkit/bdk/issues/1020)
    • SoftwareSigner which can sign single and multisig PSBTs, this doesn't do any security checks, so only use it on testnet
    • HWIQuick to list the connected devices without the need to unlock them

Demo

Run the demo with

python demo.py

Tests

Run tests

python -m pytest -vvv  --log-cli-level=0

Library Usage

  • For xpub derivation bip_utils is used
  • For signing a psbt python-bitcointx is used

Install package

From pypi

pip install bitcoin_usb

From git

  • Install requirements:
poetry install
  • Automatic commit formatting
pip install pre-commit
pre-commit install
  • Run the precommit manually for debugging
pre-commit run --all-files

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bitcoin_usb-0.7.6.tar.gz (35.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bitcoin_usb-0.7.6-py3-none-any.whl (40.3 kB view details)

Uploaded Python 3

File details

Details for the file bitcoin_usb-0.7.6.tar.gz.

File metadata

  • Download URL: bitcoin_usb-0.7.6.tar.gz
  • Upload date:
  • Size: 35.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.5 CPython/3.10.9 Linux/6.8.0-51-generic

File hashes

Hashes for bitcoin_usb-0.7.6.tar.gz
Algorithm Hash digest
SHA256 4382fad72b7191131cdfe7cde47248d87a07d8a8072753d476685065817fa994
MD5 ee7dd3e7174a66697039f0e5e43c8729
BLAKE2b-256 29c4ded0cb7f9e0640f4f725dcc2a76be117b215dcf78a7cd8dbeb2586446c34

See more details on using hashes here.

File details

Details for the file bitcoin_usb-0.7.6-py3-none-any.whl.

File metadata

  • Download URL: bitcoin_usb-0.7.6-py3-none-any.whl
  • Upload date:
  • Size: 40.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.5 CPython/3.10.9 Linux/6.8.0-51-generic

File hashes

Hashes for bitcoin_usb-0.7.6-py3-none-any.whl
Algorithm Hash digest
SHA256 a43c3c2ac73c073e659790352e853067cd0812bb75e1f74f673e2a46df64c13c
MD5 2d8c25c8490cff9a394ad2c552a2f153
BLAKE2b-256 c5e3c65fb43ddfadc99ec335297932b4228dce1949d98d04bb15770d10c37cdf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page