Heiko Schaefer
e9f1256309
Remove/adjust debug prints
2021-08-13 20:02:53 +02:00
Heiko Schaefer
9e5bb9b5a6
Make CardSigner accessible (for use in card-functionality crate)
2021-08-13 20:02:53 +02:00
Heiko Schaefer
44d5abd7ed
WIP: Handling of public key material from cards
2021-08-13 20:02:53 +02:00
Heiko Schaefer
a0d92d2dc4
Refactor: add a set_fingerprint() method to CardApp.
...
Use that method instead of manually calling the apdu command.
Change type of fingerprint in CardUploadableKey to [u8; 20].
2021-08-07 19:27:24 +02:00
Heiko Schaefer
7acc1deb98
- Implement key generation (without specifying an algorithm so the current algo is used. only supports RSA for now)
...
- Refactor: rename key_upload.rs -> keys.rs
- Fix handling of key timestamps
2021-08-06 20:14:02 +02:00
Heiko Schaefer
f67501d0f9
Lints
2021-08-05 15:16:16 +02:00
Heiko Schaefer
833cdbc238
Adjust to new ScdClient API, socket is not needed anymore.
2021-08-03 18:23:47 +02:00
Heiko Schaefer
083db2a8be
Adjust to changed ScdClient API
2021-08-03 15:32:48 +02:00
Heiko Schaefer
9d93570d9f
Add comment pointing to Gnuk source for decryption return format.
2021-07-29 17:33:30 +02:00
Heiko Schaefer
6c563b230b
Handle Gnuk's return format for NistP256 decryption
2021-07-20 17:38:15 +02:00
Heiko Schaefer
2b221fa76b
Truncate digest length for ECDSA.
...
This fixes signing for nistp256 keys with Gnuk (Gnuk expects a 32 byte hash for nistp256)
2021-07-19 14:18:09 +02:00
Heiko Schaefer
c85d006887
Support ECDSA signatures
2021-07-18 21:12:22 +02:00
Heiko Schaefer
97d4880118
Signing
2021-07-18 12:00:00 +02:00
Heiko Schaefer
5af213562b
Add decryption to card-functionality tests.
2021-07-17 02:24:43 +02:00
Heiko Schaefer
4b7b4a2ab6
Use ScdClient::open_scdc_by_serial() in test code.
2021-07-16 17:24:53 +02:00
Heiko Schaefer
e34285dc68
Add helper fn vka_as_uploadable_key()
2021-07-16 17:23:47 +02:00
Heiko Schaefer
da51f27173
Simplify code.
2021-07-16 16:31:14 +02:00
Heiko Schaefer
01126aabdf
Support scdaemon as an alternative backend for interaction with OpenPGP cards.
2021-07-16 16:30:56 +02:00
Heiko Schaefer
8e3c6c0046
Add an abstraction layer (CardClient) for access to the card, in preparation for scdaemon client mode.
2021-07-09 20:37:52 +02:00
Heiko Schaefer
fd9cd6eabd
Change set* commands to leave out 'Le', because no response data is expected.
...
(The Floss-Card 3.4 rejects set* commands with "expected" response data)
2021-07-04 01:03:09 +02:00
Heiko Schaefer
3bc14e9d19
Implement check_pw1/3(), which calls "7.2.2 VERIFY" with no data ("Lc empty"), to ask the card for verification status.
...
(It seems that the Yubikey 5 doesn't support this type of request, but instead responds "6A 80: Incorrect parameters")
2021-07-04 00:04:35 +02:00
Heiko Schaefer
d1f854f2f0
Implement get_pw_status_bytes()
2021-07-03 21:23:17 +02:00
Heiko Schaefer
2a836546b3
Adjust README
2021-07-03 18:24:56 +02:00
Heiko Schaefer
01fab2d91c
Use an "ident" to specify a card.
...
The ident is a combination of manufacturer and serial number.
The OpenPGP card spec stipulates:
"Each OpenPGP application on a card from a manufacturer/personaliser has a unique serial number"
2021-07-03 18:17:30 +02:00
Heiko Schaefer
920da0442b
Rename structs that represent different verification states of the OpenPGP card.
2021-07-02 19:47:34 +02:00
Heiko Schaefer
f00865ab75
rustfmt
2021-07-01 23:46:12 +02:00
Heiko Schaefer
1f77472746
Add version to dependency
2021-06-30 22:37:20 +02:00
Heiko Schaefer
f8b10927e7
Documentation links
2021-06-30 22:34:42 +02:00
Heiko Schaefer
88f0598eab
Initial commit
2021-06-30 22:29:23 +02:00