Skip to content

Cambium 0.2.0

Choose a tag to compare

@TheCryptoDonkey TheCryptoDonkey released this 09 Jul 23:49

First signed release of Cambium: the Android NIP-55 signer that holds no keys. Every signature comes from your paired Heartwood hardware signer over NIP-46.

What's in 0.2.0

  • Private zaps decrypt (decrypt_zap_event, DIP-03 recipient path): Cambium unpacks the zap request's anon tag locally and asks Heartwood for an ordinary nip04_decrypt. Viewing your own sent private zaps needs the raw private key and is permanently out of reach over NIP-46; those attempts fail as a normal decrypt error.
  • Keep connection warm: an optional, off-by-default foreground service holds the signer session between requests, so silent signing skips the reconnect penalty. Survives reboots while enabled.
  • Persistent denial: the approval sheet gains an "always deny this app" action; denied apps get a terminal rejection on every path. A connected-apps list shows every remembered choice with a Forget action.
  • Login transparency: the first-approval sheet shows the permissions a client asked for. Display only: Heartwood's own policy decides what actually gets signed.
  • Decrypt cache and invisible processing: repeat decrypts answer instantly, and requests from approved apps render nothing at all.
  • Hardening: a malformed zap request can no longer crash the provider; back-press and rotation can no longer swallow an in-flight request's result; boot-time work moved off the main thread.

Install

Requires a paired Heartwood signer (pair via Sapwood: Apps, Connect an app, scan the QR). Android 8.1+, no Google Play services.

Verify before installing (AppVerifier):

dev.forgesworn.cambium
9E:A1:88:EF:A9:01:5F:7E:7F:90:E1:88:8F:58:6F:52:7B:2A:0E:8A:6D:CD:B3:99:1E:41:FB:4F:14:EE:EF:C6

SHA-256 of cambium-0.2.0.apk: 318e2b2eb5958a8a58f6c689972fdcbc53d442e486d43535d27e44dafc49d1b7

Track updates with Obtainium pointed at this repository.