圖標

Cambium

NIP-55 signer that holds no keys: signing is proxied to a NIP-46 hardware bunker
新版本 0.4.3
Keeps Amethyst relay activity from monopolising Cambium.

- Only one distinct relay-auth request per identity can enter the hardware worker.
- Failed relay auth opens a 60-second cooldown and is never retried internally.
- Posts, reactions, encryption, and cached duplicate auth remain available.
Cambium is an Android NIP-55 signer that holds no user keys. Every signing request is proxied to a paired Heartwood hardware signer over NIP-46 (Nostr relays), and the response is handed straight back to the requesting app.

Amethyst, Primal and most other Amber-compatible Android Nostr clients cannot log in to a remote NIP-46 bunker directly, but they all support signing in via any installed NIP-55 external signer. Cambium fills that gap: it registers as a signer, but it is not one. It is a thin proxy that turns NIP-55 intents into NIP-46 requests against your hardware signer.

Security model:

- No user secrets ever touch the phone. Cambium stores only the bunker pairing (the paired signer's public key, its relay list, and the per-pairing connection secret) and Cambium's own ephemeral NIP-46 client keypair. Compromising the phone exposes the ability to request signatures — which the hardware signer's policy engine and physical confirmation button still gate — never the identity key itself.
- All pairing state lives in Android Keystore-backed encrypted storage.
- Per-app approval is tracked locally, in addition to whatever the hardware signer's own policy enforces. The signer remains the authority on what actually gets signed.
- All NIP-46 payloads are NIP-44-encrypted.

Features:

- Pair by QR scan or pasted bunker:// URI; multiple identities, each fully isolated.
- NIP-55 intent handling: get_public_key, sign_event, nip04/nip44 encrypt and decrypt, decrypt_zap_event (private zaps, recipient path), current_user identity selection.
- A silent content-provider path answers already-approved apps without any visible popup.
- Persistent per-app approval or denial, with a connected-apps list to review and forget choices.
- Optional keep-warm foreground service so silent signing skips the reconnect penalty.
- A metadata-only activity log (app, method, event kind, identity, outcome — never any content).
- Optional biometric or device-credential app lock on the management screen and approval decisions.

No Google Play services, no Firebase, no analytics. Runs on any Android 8.1+ device, including GrapheneOS.

版本

雖然在下方可選擇下載 APK 檔案,但要留意這樣的安裝方式將不會收到更新通知,是一種較不安全的下載方法。建議您先安裝 F-Droid 用戶端使用。

下載 F-Droid
  • 版本 0.4.3 (13) 建議 於 2026 年 9 月 15 日新增

    arm64-v8a x86_64

    此版本需要 Android 8.1 或更高的版本。

    此套件包由原開發者建置和簽署,並保證與此原始碼 Tarball 保持一致。

    權限
    • 拍攝相片和影片
      這個應用程式在使用期間可以使用相機拍照及錄影。
    • 執行前景服務
      允許應用程式使用前景服務。
    • 搭配「specialUse」類型執行前景服務
      允許應用程式搭配「specialUse」類型使用前景服務
    • 擁有完整的網路存取權
      允許應用程式建立網路通訊端及使用自訂網路通訊協定。瀏覽器和其他應用程式會提供將資料傳輸到網際網路的方法,因此不需要這項權限也能將資料傳輸到網際網路。
    • 顯示通知
      允許應用程式顯示通知
    • 啟動時執行
      允許應用程式在系統完成開機程序後立刻自行啟動。這會增加手機的開機時間,而且會因為系統一直執行該應用程式導致手機的整體運作速度變慢。
    • 使用生物識別硬體
      允許應用程式使用生物特徵硬體進行驗證
    • 使用指紋硬體
      允許應用程式使用指紋硬體進行驗證
    • dev.forgesworn.cambium.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下載 APK 18 MiB PGP 簽章 | 建置紀錄