Skip to content

BIP138 Encrypted Descriptors Registration - #168

Open
odudex wants to merge 8 commits into
masterfrom
feat/bip138-c
Open

odudex wants to merge 8 commits into
masterfrom
feat/bip138-c

Conversation

@odudex

@odudex odudex commented Sep 9, 2026

Copy link
Copy Markdown
Owner

This PR is part of a parallel work with #167 (Rust based implementation of BIP138 and Miniscript QR code protocol)

BIP138 is a WIP proposal to standardize encrypted descriptors' registration, where data can be decrypted and loaded using any of the public keys which are part of the wallet descriptor.

A pure C implementation of BIP138 was created, focusing resources reuse in embedded devices, especially the ESP32, paired with PSA crypto.

The goal now is to keep both Rust and C development fronts being compared and cross-tested as a support for BIP138 itself and the advanced Miniscript code QR protocol, part of BWK development

Encrypt descriptor backups to their public recipient keys with a seed-derived
approval mark. Recover binary or base64 backups using origin hints and common
paths, with bounded work and a cache scoped to the recovery session.
Store binary backups on flash and base64 backups on SD. Restore only approved
backups that pass keyed validation, deduplicate entries, and protect existing
files in both persistence APIs. Bound storage reads and scanning work, run
recovery at idle priority without changing watchdog subscriptions, and remove
the selected persisted entry. Automatic scans reuse mounted SD storage without
probing empty slots; brief scans do not flash a progress dialog.
The Descriptor Loaded page now asks whether to keep the descriptor for this session or register it on flash or SD card under a chosen name. Registering promotes the session entry in place.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant