Exploring how to use Bitcon Core as a Watch-Only wallet, accessed via python-bitcoinrpc, "glued" w/ SeedQReader for air-gapped QR-Code signing w/ stateless devices like Krux and SeedSigner
Exploring how to use Bitcon Core as a Watch-Only wallet, accessed via python-bitcoinrpc, "glued" w/ SeedQReader for air-gapped QR-Code signing w/ stateless devices like Krux and SeedSigner
Exploring how to use Bitcon Core as a Watch-Only wallet, accessed via python-bitcoinrpc, "glued" w/ SeedQReader for air-gapped QR-Code signing w/ stateless devices like Krux
Note: The sample python sessions below have been done on signet
, a bitcoin testnet where coins have no value.
Exploring how to use Bitcon Core as a Watch-Only wallet, accessed via python-bitcoinrpc, "glued" w/ SeedQReader for air-gapped QR-Code signing w/ stateless devices like Krux.
Note: The sample python sessions below have been done on signet
, a bitcoin testnet where coins have no value.
Exploring how to use Bitcon Core as a Watch-Only wallet, accessed via python-bitcoinrpc, "glued" w/ SeedQReader for air-gapped QR-Code signing w/ stateless devices like Krux and SeedSigner
Exploring how to use Bitcon Core as a Watch-Only wallet, accessed via python-bitcoinrpc, "glued" w/ SeedQReader for air-gapped QR-Code signing w/ stateless devices like Krux and SeedSigner
when recovering an expired utxo (taproot, single primary key, single recovery key after(6)):
- can update w/krux's sign-to-sdcard and broadcast
- can update w/krux's sign-to-qr but cannot broadcast: complains "422: failed to finalize PSBT"
- can copy from liana after above error, delete psbt, import from clipboard and broadcast w/o error
Wallet Output Descriptor:
tr([d63dc4a7/48'/1'/0'/2']tpubDEXCvh2aPYzMz2xfgsh9ZM6dQZxioYfCafUgw16keqschYbED4VeS46Qhr7EoonDHNr9dSsKPEGeRP5WRzDGdY3aazneR7wKmtDVNTf6qic/<0;1>/*,and_v(v:pk([c98cbe58/48'/1'/0'/2']tpubDFXZ3rcRyvU6AvNrb4kRQFomJbtCTCyMX9jDJmfN5XfHLEAZq7a8h3CrYDZYtdexk6XWfT5DB8PYgySWA5GSdyWdzWwveQcbrzvVQw3u7bV/<0;1>/*),older(6)))#v4dwzex2
In the spring of 2024, while brute-forcing mnemonics, I took a look at improving the performance of embit.bip39.mnemonic_to_bytes(), which is:
- well peer-reviewed
- tested... arguably enough
- stable and in-use by a number of projects
I ended up re-implementing this function using a big-integer accumulator. I call the branch "bip39_via_accumulator".
Completely untested with actual qrcodes: based on fact that python's set.symmetric_difference is analogous to XOR.
This is an exploration of extrapolating more XOR-mixed frames than have been received while reading a fountain qrcode.
ie: If we get 2 frames with parts [0, 1, 3, 5] and [3, 5, 7, 9], then we also have [0, 1, 7, 9]