Commit Graph

71 Commits

Author SHA1 Message Date
Jack Grigg dd8589811b Improve UI messages for YubiKey management
In particular, we now print out the candidate management key if setting
it as the PIN-protected management key fails.
2021-04-14 00:51:45 +12:00
Jack Grigg 50b873c89f Reliably ignore PIV devices that are not connected
This is primarily to ignore smart card readers that don't have cards
plugged in.
2021-04-14 00:51:45 +12:00
Jack Grigg 33ab757025 Migrate to new age-plugin API 2021-04-13 20:41:34 +12:00
Jack Grigg 63c8d6c303 Rename PLUGIN_NAME to BINARY_NAME 2021-04-12 22:31:46 +12:00
Jack Grigg 771cad885a Always use created date from YubiKey certificate 2021-04-12 18:22:54 +12:00
Jack Grigg 5a85a15341 YubiKey plugin protocol 2021-04-05 23:08:07 +12:00
Jack Grigg f74dd2ec4b Fix clippy lints 2021-04-04 16:55:34 +12:00
Jack Grigg 3ea2463c3c Remove direct dependency on elliptic-curve crate
Using the re-export from p256 ensures we always use the correct version.
2021-04-04 16:48:12 +12:00
Jack Grigg c7f173b43e Rework Recipient to wrap p256::PublicKey 2021-04-04 16:13:57 +12:00
Jack Grigg c5a2b7ee5a Implement no-command pretty CLI 2021-03-29 21:19:20 +13:00
Jack Grigg 4ea8506e49 Extract slot UI indexing into util functions 2021-03-29 21:09:02 +13:00
Jack Grigg 850f96cd2c Implement --generate command
Includes logic to help users manage their keys:

- If the key is using a default PIN, we require the user to change it.
- We set the PUK equal to the PIN so the user doesn't need to remember
  them separately.
- We migrate the default management key to a new PIN-protected key.
2021-03-29 19:02:32 +13:00
Jack Grigg acac62660c list: Ignore PIV devices we can't read from 2021-03-29 18:51:21 +13:00
Jack Grigg b6d70ba1f0 Use env_logger to enable logging
Log output is disabled by default.
2021-03-29 18:43:16 +13:00
Jack Grigg 0f7095a60a Bump to latest age-plugin 2021-03-29 11:00:42 +13:00
Jack Grigg 50e4fee48c bech32 0.8 2021-03-29 10:43:57 +13:00
Jack Grigg 7a527b2be6 Implement --identity command 2021-01-12 02:29:57 +00:00
Jack Grigg babe64da42 Implement --list and --list-all commands
Requires a MSRV of 1.44 due to the transitive dependency on bitvec 0.19.
2021-01-12 02:29:30 +00:00
Jack Grigg 259947386a Add skeleton of administration commands 2020-12-31 23:01:22 +00:00
Jack Grigg 0052d91aad Set up plugin structure 2020-12-31 23:01:22 +00:00
Jack Grigg 61c1460635 Empty age-plugin-yubikey binary crate 2020-08-30 21:39:48 +01:00