Commit Graph

69 Commits

Author SHA1 Message Date
Laan Tungir
64fbd5c874 v0.1.0 - CYD firmware v0.0.2: algorithm-based API upgrade (all verbs, all algorithms), vendored Keccak/SHAKE + PSA ed25519/x25519 for IDF v5.4, Web Serial test page, CYD docs, Teensy 4.1 port plan (1TB SDXC OTP pad), brainstorming READMEs for BLE/IR/NFC/FPGA signer concepts 2026-07-21 13:16:04 -04:00
Laan Tungir
ca18e1e42d v0.0.58 - Added derive verb: HMAC-SHA256(privkey, data) for secp256k1, enabling opaque d-tag derivation via nsigner remote backend without exposing the privkey v0.1.0 2026-07-20 19:56:51 -04:00
Laan Tungir
b3421c3e40 v0.0.57 - Migrated to unified nostr_ prefixed verb names; removed legacy verb aliases (sign_data, ssh_sign, verify_signature, kem_encapsulate, kem_decapsulate, otp_encrypt, otp_decrypt); split get_public_key into algorithm-based get_public_key and role-based nostr_get_public_key; OTP now selected via algorithm:otp instead of curve:otp; consolidated API docs from api.md into README.md v0.0.58 2026-07-20 17:29:45 -04:00
Laan Tungir
96ab9741ef v0.0.56 - Fix connection display scroll issue: use full screen clear instead of tui_clear_continuous for modal connections view v0.0.57 2026-07-20 10:11:09 -04:00
Laan Tungir
2af12868e2 v0.0.55 - Remove redundant 'Press d for connection instructions' hint line from TUI (already in hotkey menu) v0.0.56 2026-07-20 09:55:10 -04:00
Laan Tungir
a0a5987ffa v0.0.54 - TUI: show full derivation path in Roles table, move connection instructions to on-demand 'd' hotkey display with spaced transport blocks v0.0.55 2026-07-20 09:49:20 -04:00
Laan Tungir
0b0ec5eb1a v0.0.53 - Fixed SIGILL crash in multi-listen mode: pfds array was too small (3) for 3 listeners + stdin (4), causing stack buffer overflow v0.0.54 2026-07-20 09:13:18 -04:00
Laan Tungir
0355744103 v0.0.52 - Added api.md with unified verb scheme, fixed TUI status display in README, added TCP/HTTP port auto-increment on EADDRINUSE (up to 5 tries) v0.0.53 2026-07-20 09:07:21 -04:00
Laan Tungir
db274ce487 v0.0.51 - Document memfd_secret as future secret-memory backing in README §2.5 (mlock remains current path; memfd_secret unusable on Qubes Xen guests due to SIGBUS on page materialization) v0.0.52 2026-07-19 14:35:00 -04:00
Laan Tungir
56f37e092d v0.0.50 - Clean up README: rename 4c.1 to 'Verbs' (no past-tense references), remove section 11 (Implemented adjuncts and future work) and section 12 (Document map) v0.0.51 2026-07-19 14:07:04 -04:00
Laan Tungir
a017dc40e0 v0.0.49 - Added general encrypt/decrypt verbs with curve-based routing (otp, secp256k1 NIP-04/44, x25519, ml-kem-768) and updated README documentation v0.0.50 2026-07-19 11:38:44 -04:00
Laan Tungir
05c055503d v0.0.48 - Added OTP one-time pad encryption (otp_encrypt/otp_decrypt verbs), HTTP listener mode (--listen http:HOST:PORT), interactive OTP pad auto-scan on USB drives, raised SERVER_MAX_MSG_SIZE to 16MB, updated README with curl examples and current API documentation v0.0.49 2026-07-19 11:07:07 -04:00
Laan Tungir
a7c6de2dcd v0.0.47 - Clean up main menu layout and hotkeys v0.0.48 2026-07-16 17:59:58 -04:00
Laan Tungir
16a6da817c Auto-fix Gitea release timestamp via SSH after release creation (workaround for Gitea created_unix=0 bug) v0.0.47 2026-07-16 16:30:15 -04:00
Laan Tungir
1cf541b02d Fix install script: use git tags API with version sorting instead of releases API (works around Gitea epoch-zero timestamp bug) 2026-07-16 16:13:11 -04:00
Laan Tungir
8015742e29 v0.0.46 - Post-quantum crypto expansion: ML-DSA-65, SLH-DSA-128s, ML-KEM-768, ed25519, x25519, algorithm-based API v0.0.46 2026-07-16 16:11:46 -04:00
Laan Tungir
09f3ec2f7c Fix Gitea release creation: include created_at timestamp to work around Gitea bug where releases get epoch zero timestamp 2026-07-16 16:10:00 -04:00
Laan Tungir
5744b83288 v0.0.47 - Fix increment_and_push.sh build output visibility 2026-07-16 15:38:52 -04:00
Laan Tungir
21892c108e Fix increment_and_push.sh hanging by showing build output instead of suppressing it 2026-07-16 15:37:10 -04:00
Laan Tungir
344add841c v0.0.48 - . 2026-07-16 15:35:20 -04:00
Laan Tungir
3e3013dde1 v0.0.47 - . 2026-07-16 15:33:25 -04:00
Laan Tungir
11d3760d7b v0.0.46 - Fix release tagging for post-quantum crypto expansion 2026-07-16 15:27:34 -04:00
Laan Tungir
c5f1a70658 v0.0.47 - Added post-quantum cryptography (ML-DSA-65, SLH-DSA-128s, ML-KEM-768) and standard ECC (ed25519, x25519) support with algorithm-based API 2026-07-16 15:14:57 -04:00
Laan Tungir
6fd7b8ce1f v0.0.45 - Display qrexec service name (qubes.NsignerRpc) in signer connection info; use human-readable timestamps in activity log; fix static release build by adding miner.c to Dockerfile.alpine-musl 2026-07-11 19:12:34 -04:00
Laan Tungir
1b5af2fd33 v0.0.44 - Add JavaScript and Python demo programs (client/demo_javascript.js, client/demo_python.py) demonstrating get_public_key, sign_event, and nip44 encrypt/decrypt via qrexec v0.0.45 2026-07-11 15:01:48 -04:00
Laan Tungir
9b47883330 v0.0.43 - Add C99 demo program (client/demo_c99.c) demonstrating get_public_key, sign_event, and nip44 encrypt/decrypt via qrexec; sync nostr_core_lib with reconnect fix v0.0.44 2026-07-11 14:55:16 -04:00
Laan Tungir
9a8657f663 v0.0.42 - Add C qrexec client example using high-level nostr_signer API with nostr_index selector; sync nostr_core_lib with qrexec transport and index support v0.0.43 2026-07-11 14:28:09 -04:00
Laan Tungir
478c3a569e v0.0.41 - Fix activity log label for index whitelist denials — shows 'DENIED:index-not-approved' instead of 'DENIED:no-match' v0.0.42 2026-07-11 13:57:13 -04:00
Laan Tungir
10208e5fac v0.0.40 - Add interactive index whitelist prompt after transport selection — users can restrict nostr_index values without CLI flags v0.0.41 2026-07-11 13:46:23 -04:00
Laan Tungir
922a45ce3a v0.0.39 - Remove qrexec one-shot (option 4) from interactive transport menu — only persistent listeners remain v0.0.40 2026-07-11 13:42:59 -04:00
Laan Tungir
d28f691aae v0.0.38 - Add --allow-index whitelist for nostr_index restriction — supports list (1,3,4), range (0-3), mixed (0,2-3), or 'all' v0.0.39 2026-07-11 13:11:36 -04:00
Laan Tungir
2e8ce777d8 v0.0.37 - Add interactive multi-transport selection menu at startup — users can select one or more transports (unix, qrexec bridge, TCP) from a menu instead of memorizing CLI flags v0.0.38 2026-07-11 11:31:21 -04:00
Laan Tungir
8ebdb50789 v0.0.36 - Update README with qrexec bridge docs, update start_nsigner.sh to support qrexec mode and extra args, add setup scripts v0.0.37 2026-07-11 11:09:41 -04:00
Laan Tungir
a39baed82b v0.0.35 - Update README with qrexec bridge docs, update start_nsigner.sh to support qrexec mode and extra args v0.0.36 2026-07-11 11:08:04 -04:00
Laan Tungir
d15eebb80f v0.0.34 - Add qrexec bridge subcommand and --bridge-source-trusted flag for persistent-signer qrexec transport v0.0.35 2026-07-11 09:37:51 -04:00
Laan Tungir
fd622dfd60 server: ignore SIGPIPE so abrupt client disconnects don't kill the signer
The attended signer only handled SIGINT/SIGTERM. A client that disconnects
abruptly (e.g. nostr_core_lib's nsigner client reconnects per request and
closes the previous connection) could cause a write to the closed socket to
raise SIGPIPE, terminating the whole signer process after one request.

Ignore SIGPIPE process-wide so writes to closed sockets return EPIPE instead.
Verified end-to-end with nostr_core_lib note_poster --signer unix:nsigner-test
posting a kind-1 to relay.laantungir.net.
v0.0.34
2026-07-08 09:46:42 -04:00
Laan Tungir
c847179ba4 v0.0.33 - Implement in-place mnemonic entry grid with staged prefix selection and fix stage-3 candidate rendering 2026-06-09 10:29:15 -04:00
Laan Tungir
69c46ab2a7 v0.0.32 - Fix KB2040 Python WebUSB handshake and robust frame reassembly for get-public-key v0.0.33 2026-06-08 20:24:02 -04:00
Laan Tungir
6fd09f521a v0.0.31 - Harden LVGL screen transitions with widget pointer resets and null guards v0.0.32 2026-05-28 09:22:42 -04:00
Laan Tungir
430e391347 v0.0.30 - CYD: add post-approval event log screen and document CH340 EN-GND capacitor reset mitigation v0.0.31 2026-05-27 06:56:40 -04:00
Laan Tungir
bd23b674d6 v0.0.29 - Feather firmware: auto-approve sign_event and always return explicit JSON-RPC errors for unhandled/oversized requests v0.0.30 2026-05-11 13:43:14 -04:00
Laan Tungir
e4fa743654 v0.0.28 - Finalize Feather TinyUSB migration and remove cardputer artifacts v0.0.29 2026-05-09 16:22:50 -04:00
Laan Tungir
44372c0108 v0.0.27 - Refine TUI login flow, fix menu hotkey underlining, and pin connection info header v0.0.28 2026-05-08 11:36:26 -04:00
Laan Tungir
5c214f3614 v0.0.26 - Add mnemonic-stdin and mnemonic-fd startup input modes with tests/docs v0.0.27 2026-05-06 17:38:50 -04:00
Laan Tungir
f4413b7969 v0.0.25 - Add --allow-all flag and short aliases for CLI options v0.0.26 2026-05-06 12:09:08 -04:00
Laan Tungir
cca1254740 v0.0.24 - Fix stale release installs by validating installer version and hardening release artifact build/version checks v0.0.25 2026-05-05 12:21:26 -04:00
Laan Tungir
5bb59c1422 v0.0.22 - Fix integration warning regressions and stabilize client-backed test flow v0.0.24 2026-05-05 12:07:51 -04:00
Laan Tungir
cc5638b6e7 v0.0.21 - Add C reference client library, examples, and integration test migration v0.0.22 2026-05-05 11:44:43 -04:00
Laan Tungir
cc797a16df v0.0.20 - Implement TCP auth envelope verification with signed caller pubkey identity, replay protection, tests, and deferred NIP-46 bunker plan v0.0.21 2026-05-05 11:22:58 -04:00
Laan Tungir
17a1b3f020 v0.0.19 - Publish release with prompt options for verb-only vs all-verbs session approval v0.0.20 2026-05-05 07:39:40 -04:00