Commit graph

250 commits

Author SHA1 Message Date
Heiko Schaefer
8f80020f9c
openpgp-card-sequoia: use immutable fields from openpgp-card::Card 2023-09-06 01:16:32 +02:00
Heiko Schaefer
1681d94710
openpgp-card-sequoia: add set_algorithm() (and remove algorithm setting from generate_key)
Also add set_algorithm_attributes().
2023-09-06 01:16:32 +02:00
Heiko Schaefer
87a9f4f216
bump backend versions
card-backend to 0.2.0,
pcsc and scdc to 0.5.0
2023-09-06 01:16:32 +02:00
Heiko Schaefer
e476103e6d
In select_data(): fold yk_workaround parameter into the openpgp-card business logic 2023-09-06 01:16:32 +02:00
Heiko Schaefer
82662e6d46
openpgp-card: Remove algorithm setting from key generation
Also entirely remove set_algorithm_attributes_simple.
Callers should use AlgoSimple::matching_algorithm_attributes to determine the appropriate AlgorithmAttributes.
2023-09-06 01:16:32 +02:00
Heiko Schaefer
a54b057e00
openpgp-card: Add matching_algorithm_attributes() in AlgoSimple
Gets matching AlgorithmAttributes for the current card.
2023-09-06 01:16:32 +02:00
Heiko Schaefer
423c9d23ee
openpgp-card: add Curve::Unknown variant 2023-09-06 01:16:32 +02:00
Heiko Schaefer
f7f7a1dd3c
openpgp-card: rename AlgoInfo->AlgorithmInformation 2023-09-06 01:16:32 +02:00
Heiko Schaefer
b88caa2471
openpgp-card: rename UIF -> UserInteractionFlag 2023-09-06 01:16:32 +02:00
Heiko Schaefer
2d1bf919d4
openpgp-card: rename Openpgp and OpenpgpTransaction, restructure modules 2023-09-06 01:16:32 +02:00
Heiko Schaefer
e6658713cb
openpgp-card: rename Algo -> AlgorithmAttributes 2023-09-06 01:16:32 +02:00
Heiko Schaefer
308bd804ae
openpgp-card-sequoia: rustdoc 2023-09-06 01:16:32 +02:00
Heiko Schaefer
d3e30d5c4c
openpgp-card-sequoia: re-export Fingerprint 2023-09-06 01:16:32 +02:00
Heiko Schaefer
ccf605f086
openpgp-card-sequoia: make Card<Transaction>::new private 2023-09-06 01:16:31 +02:00
Heiko Schaefer
dcf98c512c
openpgp-card-sequoia: add Card<Admin>::set_pw_status_bytes 2023-09-06 01:16:31 +02:00
Heiko Schaefer
2601e58fe3
openpgp-card-sequoia: rename Card<Admin>::as_open to ::as_transaction 2023-09-06 01:16:31 +02:00
Heiko Schaefer
212e7f335f
openpgp-card-sequoia: Transaction::to_*_card() methods
Allow more ergonomic switching to User/Sign/Admin states by directly providing a PIN, while also allowing a `None` parameter if verification has already happened.
2023-09-06 01:16:31 +02:00
Heiko Schaefer
8d5b1c0563
openpgp-card-example: adjust to card-backend refactor 2023-09-06 01:16:31 +02:00
Heiko Schaefer
7de74d702e
openpgp-card-sequoia: adjust example 2023-09-05 19:08:37 +02:00
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
0e89c4baa6
Move backend traits to new card-backend crate
- Move CardBackend, CardTransation traits to card-backend
- Break SmartcardErrors out from openpgp-card to card-backend
- CardCaps are (mostly) openpgp-card specific, move them (mostly) to openpgp-card
- Rename pcsc and scdc backend crates: card-backend-pcsc, card-backend-scdc
2023-08-27 22:24:16 +02:00
Heiko Schaefer
bf41ab4316
release openpgp-card 0.3.7, openpgp-card-sequoia 0.1.5 2023-08-19 17:24:12 +02:00
Heiko Schaefer
00345fff2c
openpgp-card-sequoia: expose login_data getter/setter 2023-08-17 12:57:32 +02:00
Heiko Schaefer
5a77950f85
openpgp-card-sequoia: Release 0.1.4 2023-08-16 09:56:01 +02:00
Heiko Schaefer
379a41f4eb
openpgp-card-sequoia: fix dependency on openpgp-card
openpgp-card 0.3.6 is needed for OpenPgp::into_card().
2023-08-16 09:55:33 +02:00
Heiko Schaefer
bf62541b48
openpgp-card-sequoia: Release 0.1.3 2023-08-04 15:09:38 +02:00
Heiko Schaefer
da60687e25
openpgp-card-sequoia: update dependency 2023-08-04 15:09:38 +02:00
Heiko Schaefer
7c42ec4d5e
openpgp-card-sequoia: add Card<Open>::into_card() 2023-08-04 15:09:38 +02:00
Heiko Schaefer
a85d3164d7
openpgp-card-sequoia: Release 0.1.2 2023-04-08 13:52:54 +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
Heiko Schaefer
05dc5af9b5
Release openpgp-card-sequoia 0.1.1 2023-02-14 17:52:34 +01:00
Wiktor Kwapisiewicz
3c3051e31e
openpgp-card-sequoia: Allow disabling default crypto backend.
Previously the list of features of `sequoia-openpgp` unconditionally
included `crypto-nettle`. That was preventing the use of this crate in
pure Rust setups.

This commit allows disabling crypto backends and it is up to the
crate user to explicitly include `sequoia_openpgp` features that they
want.

See: https://gitlab.com/sequoia-pgp/sequoia/-/blob/main/README.md#note
2023-02-14 16:21:29 +01: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
f40f2ffbfb
clippy: new lints 2022-12-25 13:50:19 +01:00
Heiko Schaefer
79117415de
Fix dependency version 2022-12-05 11:28:20 +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
fe0a8565e8
openpgp-card-sequoia: bump version to 0.1.0 2022-10-28 19:29:22 +02: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