Commit Graph

46 Commits

Author SHA1 Message Date
Ryan Heywood d83efcbbd0
keyfork-shard: only print one message per key-load attempt 2024-01-11 22:53:32 -05:00
Ryan Heywood 2220faf865
keyfork-shard: add keyfork-qrcode 2024-01-11 19:49:56 -05:00
Ryan Heywood ceb0ac2455
keyfork{,-shard}: make all shard-accepting commandsz take it as an argument, not stdin 2024-01-10 23:57:38 -05:00
Ryan Heywood b5320cabf3
keyfork-prompt: traitify 2024-01-10 23:28:56 -05:00
Ryan Heywood f6b41fce5f
keyfork-crossterm: add FdTerminal struct to manage non-default terminals 2024-01-10 22:35:49 -05:00
Ryan Heywood 11ced19bc5
keyfork-shard: use MnemonicSetValidator 2024-01-10 15:34:29 -05:00
Ryan Heywood 1b33e3cf0e
keyfork-shard: add prompt for loading any smartcard 2024-01-09 19:28:02 -05:00
Ryan Heywood 4384964ea5
keyfork-prompt: add validator system 2024-01-09 02:21:46 -05:00
Ryan Heywood 3df3caa235
keyfork-shard: use hkdf for remote shard keys 2024-01-08 14:00:31 -05:00
Ryan Heywood d548276bc3
keyfork: impl `recover remote-shard` 2024-01-07 00:44:59 -05:00
Ryan Heywood ac2cb3d8ca
keyfork: add `recover` porcelain to start keyforkd 2024-01-07 00:33:43 -05:00
Ryan Heywood f88a4d21f2
keyfork-shard: make clippy happy 2024-01-06 23:23:03 -05:00
Ryan Heywood 6b61279656
keyfork-{shard,prompt}: add QR code functionality 2024-01-06 00:58:18 -05:00
Ryan Heywood d08765b956
keyfork-shard: make custom error for Sharks errors 2024-01-04 23:13:42 -05:00
Ryan Heywood a79c4a4079
keyfork-shard: make remote operation algorithm agnostic 2024-01-04 23:05:30 -05:00
Ryan Heywood 3240ab9e1f
keyfork-shard: decrypt only in `decrypt` command
The way this previously runs, the combining operator would be *required*
to decrypt a share. This was not ideal for enclaves, where the process
should just send out public keys and read in public keys and payloads.
This is now resolved.
2024-01-04 22:01:13 -05:00
Ryan Heywood 1b19a08cd4
keyfork-shard: add keyfork-shard-remote-openpgp 2024-01-01 16:58:15 -05:00
Ryan Heywood d7f33874f6
keyfork-shard: move code from bin file to library 2023-12-29 16:23:04 -05:00
Ryan Heywood f157a8c954
keyfork-prompt: split on word boundaries for textual prompts 2023-12-28 17:54:38 -05:00
Ryan Heywood df7be182e4
keyfork-shard: dynamic bit size for decrypted secret, up to 512 bits 2023-12-28 16:02:24 -05:00
Ryan Heywood 7eeb494819
keyfork-shard: add basic oneshot decrypt mechanism 2023-12-26 18:09:11 -05:00
Ryan Heywood 2670cf63a3
keyfork-shard: homogenize function signatures, start work on decrypt_one() 2023-12-26 15:45:11 -05:00
Ryan Heywood 726670fe96
keyfork-shard: add PIN cache 2023-12-26 15:17:33 -05:00
Ryan Heywood ddefe1c6b5
keyfork-shard: extract message decryptor functions 2023-12-26 15:17:14 -05:00
Ryan Heywood 920e04ba23
keyfork-prompt: add DefaultPromptManager 2023-12-21 15:44:57 -05:00
Ryan Heywood dc1b36a92c
keyfork-shard: move to keyfork-prompt 2023-12-21 15:01:59 -05:00
Ryan Heywood e42e362aea
keyfork-shard: extract threshold from encrypted metadata 2023-12-20 14:49:10 -05:00
Ryan Heywood 869860a903
keyfork-shard: create metadata version 1 2023-12-20 13:14:24 -05:00
Ryan Heywood 5cf8e9bb0c
keyfork-shard: better error handling 2023-12-19 09:55:22 -05:00
Ryan Heywood ca2ce33d7a
keyfork-shard: add message for PIN too short 2023-11-10 18:11:24 -05:00
Ryan Heywood 48e4d7096c
keyfork-shard: remove recovery file 2023-11-05 16:34:45 -06:00
Ryan Heywood 0ec9f9c567
keyfork-shard: cleanup eprintln 2023-11-05 16:26:19 -06:00
Ryan Heywood fa61d31f3f
keyfork-shard: further improve error handling, add multiline prompt and PIN retry detection 2023-11-05 16:21:54 -06:00
Ryan Heywood 307941087a
keyfork-shard: slightly improved error handling 2023-11-05 13:57:22 -06:00
Ryan Heywood 0768339487
keyfork-shard: parse cardholder name when using smartcards 2023-11-05 01:36:12 -05:00
Ryan Heywood c206800ad2
keyfork-shard: add keyfork-pinentry 2023-11-05 00:48:30 -05:00
Ryan Heywood 7f90e4ada4
keyfork-shard: fixup user PIN prompt 2023-11-04 12:19:53 -05:00
Ryan Heywood 726b62b3f4
keyfork-shard: make recovery file required, key discovery optional 2023-11-03 20:58:51 -05:00
Ryan Heywood 5b427516c6
keyfork-shard: enable step 1 decoding with openpgp-card, fix bug with multiple smartcards when decrypting 2023-11-03 20:42:33 -05:00
Ryan Heywood a184c62f42
keyfork-shard: ah, whitespace, why are you so cruel 2023-11-02 01:12:28 -05:00
Ryan Heywood adad3e5b6b
keyfork-shard: begin work on OpenPGP card support 2023-11-02 01:01:34 -05:00
Ryan Heywood 7a80799115
keyfork-shard: derive cert from combined secret to ensure data integrity 2023-10-19 20:10:02 -05:00
Ryan Heywood 0615a66ace
keyfork-shard: propagate errors when message signature validation fails 2023-10-19 19:55:12 -05:00
Ryan Heywood a72bfaecec
keyfork-shard: split openpgp code into its own module 2023-10-19 17:06:34 -05:00
Ryan Heywood 5d5d5181b3
keyfork-user-guide: more additions 2023-10-19 08:53:59 -05:00
Ryan Heywood 31d1992e16
keyfork-shard: initial commit 2023-10-18 04:28:12 -05:00