Heiko Schaefer
15646bc50b
openpgp-card-sequoia: adjust to card-backend refactor
...
Note that a `open_by_ident` fn was added here: the backend now doesn't have knowledge of applications (like OpenPGP) anymore, so it can't select a card by OpenPGP card ident anymore.
2023-09-05 19:08:34 +02:00
Heiko Schaefer
00345fff2c
openpgp-card-sequoia: expose login_data getter/setter
2023-08-17 12:57:32 +02:00
Heiko Schaefer
7c42ec4d5e
openpgp-card-sequoia: add Card<Open>::into_card()
2023-08-04 15:09:38 +02:00
Heiko Schaefer
365670041f
openpgp-card-sequoia: fix padding for Curve 25519 private key material.
...
Importing 25519 keys with leading zero bytes led to failures on at least Gnuk and Nitrokey's opgpcard-rs implementation.
Reported by Wiktor Kwapisiewicz, also see https://codeberg.org/wiktor/broken-nitro
2023-04-08 13:49:01 +02:00
Wiktor Kwapisiewicz
5bd73d81fc
Replace nettle with pure-rust RSA for conversions
...
Fixes: https://gitlab.com/openpgp-card/openpgp-card/-/issues/66
2023-02-10 12:52:47 +01:00
Wiktor Kwapisiewicz
c80e549cc4
Add test for verifying SqRSA conversions
2023-02-10 12:24:51 +01:00
Wiktor Kwapisiewicz
c81f3ba6a9
Fix clippy warnings: remove explicit lifetime and unneeded Deref impl
2023-02-02 09:26:21 +01:00
Wiktor Kwapisiewicz
4510c34cdc
Fix clippy lints: directly use variables in format! strings
...
The source has been reformatted using `cargo +nightly fmt`.
2023-02-02 09:09:47 +01:00
Heiko Schaefer
4d94386b82
Fix new clippy lints for Rust 1.65
2022-11-07 17:32:28 +01:00
Heiko Schaefer
a1d6d8cad2
openpgp-card-sequoia: add comments to url fns
2022-11-03 15:10:15 +01:00
Heiko Schaefer
a4dff1ecb8
rustfmt: enable format_code_in_doc_comments
2022-11-03 14:43:28 +01:00
Heiko Schaefer
5e039204d5
remove "use sequoia_openpgp as openpgp;" pattern
2022-11-03 14:43:28 +01:00
Heiko Schaefer
27697cb2c5
add rustfmt.toml and set group_imports = "StdExternalCrate"
2022-11-03 14:32:00 +01:00
Heiko Schaefer
db682c45db
openpgp-card-sequoia: restructure code, api; add more documentation
2022-10-28 18:55:42 +02:00
Heiko Schaefer
375c002730
openpgp-card-sequoia: add getters for attestation key metadata
2022-10-28 10:17:45 +02:00
Heiko Schaefer
92a3f76dd0
Cardholder name format handling belongs in openpgp-card-sequoia
2022-10-27 18:26:18 +02:00
Heiko Schaefer
da65260736
openpgp-card-sequoia: refactor, base API around a Card<State> type
2022-10-27 13:41:24 +02:00
Heiko Schaefer
9723ae40b6
openpgp-card-sequoia: add re-exports
2022-10-25 12:52:49 +02:00
Heiko Schaefer
d2ac526523
openpgp-card-sequoia: add key_information()
2022-10-25 12:52:49 +02:00
Heiko Schaefer
1f7aa97df5
openpgp-card-sequoia: add ca_fingerprints()
2022-10-25 12:52:49 +02:00
Heiko Schaefer
5dae8e5758
openpgp-card-sequoia: add getters for uif_*
2022-10-25 12:52:49 +02:00
Heiko Schaefer
5fbe9186cb
openpgp-card-sequoia: add wrapper fn for set_identity()
2022-10-25 12:52:48 +02:00
Heiko Schaefer
37a99b63cf
openpgp-card-sequoia: update doc comments
2022-10-25 12:52:48 +02:00
Sosthène Guédon
0c7fae8ef9
openpgp-card-sequoia: Implement MANAGE SECURITY ENVIRONMENT command
2022-09-30 14:24:39 +02:00
Heiko Schaefer
13b2b62f07
Simplify: use the changed CardBackend handling and the new openpgp-card-sequoia Card struct
2022-09-28 20:44:34 +02:00
Heiko Schaefer
15e7241807
Add Card to the openpgp-card-sequoia API, as a wrapper around a CardBackend/OpenPgp.
...
This allows using the openpgp-card-sequoia API without needing the crate openpgp-card.
2022-09-28 20:43:57 +02:00
Heiko Schaefer
c96377c9df
OpenPGP owns CardBackend (instead of holding a &mut CardBackend).
...
When OpenPgp holds a &mut CardBackend, clients of this library need to keep track of the CardBackend (which adds unnecessary complexity).
2022-09-28 20:42:27 +02:00
Heiko Schaefer
f87ce5e53d
openpgp-card-sequoia:
...
add cardholder_name()
2022-09-18 23:18:28 +02:00
Heiko Schaefer
3756521141
openpgp-card-sequoia: Fix make_cert()
...
[The primary key was missing its CS Key Flags after the changes in 4557c40b
, both in the User ID selfsigs, and the DirectKey signature]
2022-09-18 23:18:28 +02:00
Heiko Schaefer
b32cf67196
Don't implicitly add a User ID for the cardholder name, in make_cert()
2022-09-18 15:30:35 +02:00
Heiko Schaefer
2ece9734fd
opgpcard: filter out empty User IDs in make_cert()
2022-09-08 19:25:55 +02:00
Heiko Schaefer
4557c40bda
opgpcard: DRY make_cert().
2022-09-08 19:25:35 +02:00
Heiko Schaefer
1b483b5c09
opgpcard: Add direct key signature in make_cert().
...
Without this, pubkey output contains no signatures at all, if no User ID is set.
2022-09-08 19:25:30 +02:00
Heiko Schaefer
d167883835
opgpcard: Remove obsolete FIXME
2022-09-08 19:25:24 +02:00
Heiko Schaefer
96e28b1b4f
opgpcard: Add optional user-id parameter for "pubkey" and "admin generate", to bind User IDs to the certificate.
2022-09-04 20:30:33 +02:00
Heiko Schaefer
11ccc9b5e3
cleanup import
2022-08-05 01:29:43 +02:00
Heiko Schaefer
d4f7b8d1b0
Update copyright headers
2022-07-26 09:42:03 +02:00
Heiko Schaefer
6e630254fa
Don't use Cert
to build signer and decryptor.
...
Rename decryptor/signer/authenticator getters.
Add alternatives that don't require PublicKey parameter.
2022-07-25 18:12:03 +02:00
Heiko Schaefer
f9ed6c30c0
Clippy: don't bind unit values.
2022-07-16 14:24:49 +02:00
Heiko Schaefer
7bfeb4df59
Always allow getting Sign/User
2022-06-22 21:50:57 +02:00
Heiko Schaefer
43a9abdabd
Implement signing for auth slot
2022-06-22 21:50:07 +02:00
Heiko Schaefer
17fc6ebeff
Handle empty signing key slot in key_slot()
2022-06-19 14:53:15 +02:00
Heiko Schaefer
e3dfdbffe6
Implement key_slot() to get a PublicKey representation for one of the card's key slots.
2022-06-11 10:01:00 +02:00
Heiko Schaefer
441feb0a34
Implement reload_ard().
2022-06-11 09:59:20 +02:00
Heiko Schaefer
d96e56651b
Add callback Fn for touch confirmation prompt to generate attestations.
2022-06-11 09:55:06 +02:00
Heiko Schaefer
374f9eec89
Add callback Fn for touch confirmation prompt for decryption operations.
2022-06-11 09:55:06 +02:00
Heiko Schaefer
079cc32427
Add callback Fn for touch confirmation prompt for signing operations.
2022-06-11 09:55:05 +02:00
Heiko Schaefer
ccba7c7e9f
Rename 'prompt' parameters to 'pinpad_prompt'.
2022-06-11 09:55:04 +02:00
Heiko Schaefer
bc58a346c2
Implement set_uif()
2022-06-11 09:55:03 +02:00
Heiko Schaefer
b90ee05f6d
Implement set_pso_enc_dec_key()
2022-05-28 19:41:54 +02:00