This report analyzes the features and implementation approaches of major open-source hardware wallet projects, comparing Python-based implementations (Krux, SeedSigner, Specter-DIY) with Rust-based or Rust-adopting projects (BitBox02, Parity Signer). The analysis identifies common features, key differences, and opportunities for improvement in the hardware wallet ecosystem.
| # Bitcoin auth information | |
| # generate with https://jlopp.github.io/bitcoin-core-rpc-auth-generator/, | |
| # default is user: bitcoin, pass: bitcoin | |
| BITCOIND_RPC_AUTH=bitcoin:54ae356e13a76dc8068e960eb43193cb$$efeeb347a1f0b4a7b7832cc26e68861bc46f89126a8e136ff9932cad47739041 | |
| # This domain should point to the machine fedimintd is being deployed to | |
| FM_DOMAIN=my-super-host.com | |
| # Where bitcoind is reachable | |
| FM_BITCOIN_RPC_KIND=bitcoind |
| Dimension | RGB | Taproot Assets (TA) | Spark (statechains L2) | Liquid (sidechain) |
|---|
| Layer | Type | How BTC / assets move | Security / trust at bridge | Programming model | Lightning interop | USDT today | | ----------------------- | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------
| <!doctype html> | |
| <html lang="en" class="bg-slate-950 text-slate-100"> | |
| <head> | |
| <meta charset="utf-8" /> | |
| <meta name="viewport" content="width=device-width, initial-scale=1" /> | |
| <title>news-lens — spec rev 4</title> | |
| <script src="https://cdn.tailwindcss.com"></script> | |
| <link rel="preconnect" href="https://fonts.googleapis.com"> | |
| <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> | |
| <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;700&display=swap" rel="stylesheet"> |
Source: Introducing Cube · repo: cube-btc/cube
A Bitcoin L2 VM for trustless smart contracts — no soft fork, no bridge, no federation. Pitch: Ark-style virtual ownership + BitVM disprovable computation, glued together so contracts can hold BTC and run general logic, with unilateral exit to L1. Marketed as "trustless custody + generalized programmability."
Zero-Knowledge Time-Locked Contract = a timeout-tree virtual output carrying a zero-knowledge computation assertion enforceable via BitVM disproval. Two ingredients:
- Timeout trees (Ark-style) → scalable virtual ownership + unilateral redemption.
-
BIP-110 is a temporary consensus soft fork against arbitrary data. It adds one-year consensus restrictions meant to reject large data-storage patterns and refocus Bitcoin on money. Counterargument: the problem is not just duration. Even a temporary consensus fork can create permanent governance precedent, coordination risk, and chain-split risk. ([GitHub][1])
-
It moves data limits from relay policy into consensus. The BIP turns things like OP_RETURN size and large data pushes into block-validity rules. Counterargument: this changes Bitcoin from "valid transaction is valid" toward "valid transaction is valid only if the current majority approves the use case." That is the protocol-neutrality concern.
-
It caps most new output
scriptPubKeysat 34 bytes, while allowingOP_RETURNonly up to 83 bytes. The goal is to prevent large spendable-looking outputs from bloating the UTXO set. Counterargument:OP_RETURNis the least harmful place for arbitrary data because nodes
An initial :skill command submitted with tau --prompt-stdin is rejected as
unknown even though the same project-local skill is discovered and becomes
available to the session during startup. The equivalent command works in the
interactive UI after extension readiness.
The observed event order is consistent with an initialization-order defect in