Commit graph

703 commits

Author SHA1 Message Date
Heiko Schaefer
84a7f0060d Fix problem in test on debian stable Rust. 2021-09-01 22:35:26 +02:00
Heiko Schaefer
b6cc237f61 Make low level signing and decryption fn private.
Adjust docs.
2021-09-01 22:27:37 +02:00
Heiko Schaefer
f8d998b3a6 Implement From<CardClientBox>, Into<CardClientBox> for CardApp and adjust client code. 2021-09-01 22:26:25 +02:00
Heiko Schaefer
88c924c7d9 Add documentation, normalize fn names. 2021-09-01 20:45:18 +02:00
Heiko Schaefer
65780cf352 Explicitly handle RSA keysizes that are not in the card's algorithm list as an error. 2021-08-29 18:21:38 +02:00
Heiko Schaefer
5a6a5754e1 Add an RSA3k private key for import tests 2021-08-29 18:00:23 +02:00
Heiko Schaefer
a89a106d20 Print ApplicationId in test_print_caps 2021-08-28 19:59:23 +02:00
Heiko Schaefer
935c77f59a Rename ApplicationRelatedData::get_aid() to get_application_id() 2021-08-28 19:58:34 +02:00
Heiko Schaefer
c25c8b55b8 Cleanup Tlv, Tag, Value:
- Make Tlv/Tag fields private.
- Rename TlvEntry to Value.
- impl TryFrom<&[u8]> for Tlv
2021-08-28 18:29:51 +02:00
Heiko Schaefer
821b5f0dae Make error messages easier to read. 2021-08-28 17:54:39 +02:00
Heiko Schaefer
4ba7a4707f Adjust graph details, add some more detail to the backends section. 2021-08-28 14:10:15 +02:00
Heiko Schaefer
0cdf5ce2a4 Added more text about architecture. 2021-08-28 13:47:20 +02:00
Heiko Schaefer
6583c160eb Edit comment 2021-08-28 11:58:42 +02:00
Heiko Schaefer
889ac234c6 Clean up AlgoSimple::get_algo(). 2021-08-28 11:57:04 +02:00
Heiko Schaefer
139f3116f2 Document known limitations of scdc 2021-08-27 23:05:58 +02:00
Heiko Schaefer
d766a1c474 markdown fix 2021-08-27 22:33:19 +02:00
Heiko Schaefer
75c0bae206 clarify 2021-08-27 22:32:20 +02:00
Heiko Schaefer
a9bf175ed6 Add architecture diagram and some notes on architecture 2021-08-27 22:30:21 +02:00
Heiko Schaefer
a55f0f6621 Use check_card_algo_ecc() when uploading keys: if algo_list is available and oid is not listed, error out of upload_key(). 2021-08-27 21:42:18 +02:00
Heiko Schaefer
cb2269c761 Remove redundant check_card_algo_e*() fn. 2021-08-27 21:29:23 +02:00
Heiko Schaefer
7748a7b1e0 Improve documentation of determining algorithm attributes for key import.
Implement setting of default RSA values when neither algo info nor algo attrs for import of an RSA key are available.
2021-08-27 21:12:36 +02:00
Heiko Schaefer
ea8e33b6d5 Return Err for unexpected cases. 2021-08-27 19:24:15 +02:00
Heiko Schaefer
0e37967200 Handle Attestation KeyType as a type of signing key. 2021-08-27 19:23:21 +02:00
Heiko Schaefer
e4eff705af Make AlgoSimple, Algo, Curve non_exhaustive. 2021-08-27 19:22:22 +02:00
Heiko Schaefer
fdac0de34f Add a CI job to run 'cargo test' with rustc/cargo from debian stable.
Minor fixes so that the code compiles with rustc 1.48
2021-08-27 15:15:31 +02:00
Heiko Schaefer
454d50eb45 Make KeyType non_exhaustive. 2021-08-27 15:15:15 +02:00
Heiko Schaefer
64f05e93f5 Implement From/TryFrom for conversions of Historical and its members. 2021-08-27 13:55:55 +02:00
Heiko Schaefer
73829a6b27 Make handling of Historical Bytes more robust.
Add unit tests.
2021-08-27 13:39:30 +02:00
Heiko Schaefer
9b321c5232 Don't fail when the card doesn't support algo information. 2021-08-26 20:57:50 +02:00
Heiko Schaefer
3d1b166911 Add comments 2021-08-26 20:40:36 +02:00
Heiko Schaefer
36cf10cbad Tests need to use RsaAttrs::new(). 2021-08-26 20:03:24 +02:00
Heiko Schaefer
7c8c72339b Use KeyGenerationTime in openpgp-card APIs (instead of u32 or SystemTime) 2021-08-26 19:27:08 +02:00
Heiko Schaefer
794b04725f Remove redundant import. 2021-08-26 19:25:13 +02:00
Heiko Schaefer
38c701187d Fix clippy warnings 2021-08-26 18:23:34 +02:00
Heiko Schaefer
eaf46e6bbb Make fields private, add accessor methods. 2021-08-26 17:59:54 +02:00
Heiko Schaefer
fadd327e7c Release pcsc, scdc. 2021-08-26 15:05:40 +02:00
Heiko Schaefer
9f3ebe8972 Release openpgp-card. 2021-08-26 15:01:59 +02:00
Heiko Schaefer
6001eacfa1 Make placeholder fn private, for now. 2021-08-26 14:47:41 +02:00
Heiko Schaefer
7e03ea5642 Use sequoia-ipc release. 2021-08-26 14:23:14 +02:00
Heiko Schaefer
faba8f6ca0 Fix comment 2021-08-26 14:11:16 +02:00
Heiko Schaefer
5df81dd464 Rename Fingerprint::from() -> to_keyset() 2021-08-25 21:27:28 +02:00
Heiko Schaefer
f3bfecd185 Use the openpgp_card::card_do::Fingerprint type instead of [u8; 20].
Add a TryFrom<&[u8]> implementation to Fingerprint.
2021-08-25 21:25:20 +02:00
Heiko Schaefer
c6ba204293 Move debug prints for key generation from keys.rs to tests.rs 2021-08-25 21:18:13 +02:00
Heiko Schaefer
786515a7f4 Make fields of Command private. 2021-08-25 17:29:21 +02:00
Heiko Schaefer
833a22f8f0 Add test to explore cardholder cert functionality 2021-08-25 16:42:18 +02:00
Heiko Schaefer
39f48bf13b Add get_data() method to Response. 2021-08-25 16:42:00 +02:00
Heiko Schaefer
780b6e724c Implement get_cardholder_certificate()/set_cardholder_certificate() and select_data(). 2021-08-25 13:59:53 +02:00
Heiko Schaefer
20cfcead02 Adjust ExtendedCap field names 2021-08-25 13:32:30 +02:00
Heiko Schaefer
159af0d98c Explicitly depend on sequoia with branch="main", for the time being 2021-08-25 13:29:45 +02:00
Heiko Schaefer
f9bad31d63 Explicitly limit size of data. 2021-08-25 13:07:25 +02:00