Commit Graph

67 Commits

Author SHA1 Message Date
Howard Yang
17ecd46b04 Generate valid structure for MakeCredential params
* Add crate arbitrary as ctap's optional dependency, when feature "fuzz"
  is activated.

* Derive Arbitrary for all the necessary types in order to generate the
  concrete types from random bytes.

* Add a fuzz target that transforms the input to valid format for
  MakeCredential.
2022-03-22 19:06:20 +08:00
kaczmarczyck
522e6079e3 Forward desktop test fixes (#419)
* fixes clippy warnings for compilers until 2021-11-25

* fixes run_desktop_tests

* removes page_size
2021-11-30 11:07:17 +01:00
kaczmarczyck
596b47886c Upgrade signing key generation (#379)
* adds the upgrade signing key generation and the partition offset

* use openssl in build.rs instead
2021-09-15 21:25:19 +02:00
kaczmarczyck
b7a3e06cf4 ECDSA signatures and public keys in CTAP (#358)
* ECDSA signatures and public keys in CTAP

* adds one constant usage

* documents pub functions in ECDSA

* typo: involved

* extends wrong length test
2021-08-04 13:39:49 +02:00
David Drysdale
7719078d46 cbor: rename crate to sk-cbor
In anticipation of publishing to crates.io, which already has a `cbor`
crate.
2021-06-16 17:16:05 +02:00
kaczmarczyck
9a1c060234 Remove KeyType from CBOR (#306)
* removes KeyType from CBOR

* type_label usage in writer
2021-04-14 10:19:10 +02:00
kaczmarczyck
78b7767682 CBOR maps use Vec instead of BTreeMap (#303)
* CBOR uses Vec for map internally

* remove BTreeMap from get_info

* rename cbor_map_btree and clean up cbor_array_vec

* destructure now takes Vec, not BTreeMap

* adds dedup in CBOR writer

* fail to write CBOR maps with duplicates

* CBOR interface refinements

* macro documentation for CBOR map and array
2021-04-13 14:46:28 +02:00
kaczmarczyck
6216a3214d final changes to CTAP2.1 algorithm (#299) 2021-04-07 09:07:46 +02:00
kaczmarczyck
63232cfe60 adds PIN token state with timeouts (#296) 2021-03-22 14:03:51 +01:00
kaczmarczyck
aec1e0a409 adds PIN protocol V2 to all commands (#295) 2021-03-18 17:29:32 +01:00
kaczmarczyck
e5313057f9 PIN protocol V2 in ClientPin (#293)
* PIN protocol V2 in ClientPin

* the test ClientPin has a random second private key
2021-03-15 13:36:28 +01:00
kaczmarczyck
f11a838cc7 Improved documentation for customization (#287)
* move constants to new file, and update documentation

* documentation improvements, deploy checks tests

* fix pylint

* improved code style

* swap build and check
2021-02-19 14:20:23 +01:00
Fabian Kaczmarczyck
49cccfd270 correct const arrays of strings 2021-02-05 11:23:12 +01:00
Fabian Kaczmarczyck
44b7c3cdc1 dummy implementation for enterprise attestation 2021-02-04 21:26:00 +01:00
Fabian Kaczmarczyck
371e8b6f35 remove conditional trait implementation 2021-02-02 05:46:03 +01:00
Fabian Kaczmarczyck
5741595e57 new extension entry for largeBlobKey 2021-01-27 16:47:27 +01:00
Fabian Kaczmarczyck
14189a398a implements the credBlob extensions 2021-01-20 19:13:05 +01:00
Fabian Kaczmarczyck
1f37ae50c5 Merge develop into command-cred-mgmt 2021-01-14 16:14:10 +01:00
kaczmarczyck
e545acda16 Merge branch 'develop' into authenticator-config 2021-01-14 15:14:07 +01:00
Fabian Kaczmarczyck
c6726660ac adds the command logic for credential management 2021-01-13 15:02:46 +01:00
Fabian Kaczmarczyck
3e42531011 full URL 2021-01-13 14:26:59 +01:00
Fabian Kaczmarczyck
a26de3b720 moves constants to CoseKey 2021-01-13 14:00:34 +01:00
Fabian Kaczmarczyck
da27848c27 updates license header to 2021 in ctap 2021-01-12 19:13:43 +01:00
Fabian Kaczmarczyck
2776bd9b8e new CoseKey data format 2021-01-12 15:11:20 +01:00
Fabian Kaczmarczyck
6f9f833c0b moves COSE related conversion from crypto to data_formats 2021-01-08 15:42:35 +01:00
Fabian Kaczmarczyck
f4eb6c938e adds the config command 2021-01-08 13:53:27 +01:00
Fabian Kaczmarczyck
c873d3b614 removes all occurences of CTAP 2.1 flags 2021-01-08 12:40:37 +01:00
Fabian Kaczmarczyck
90def7dfd3 implicitly generate HMAC-secret 2020-12-08 18:12:48 +01:00
Fabian Kaczmarczyck
2a4677c0b1 adds user data to persistent storage 2020-11-27 16:53:12 +01:00
Fabian Kaczmarczyck
af4eef8085 adds credential ordering 2020-11-26 14:41:21 +01:00
Fabian Kaczmarczyck
3ae59ce1ec GetNextAssertion command minimal implementation
This still lacks order of credentials and timeouts.
2020-11-26 14:41:21 +01:00
Fabian Kaczmarczyck
5bf73cb8fd fail on UP=true in make 2020-11-23 12:09:48 +01:00
Guillaume Endignoux
68b0bdc29b Fix more Clippy warnings. 2020-09-29 11:05:24 +02:00
Guillaume Endignoux
85a34ad085 Migrate import statements and macros to Rust 2018. 2020-09-24 11:28:24 +02:00
Fabian Kaczmarczyck
bbcff488d5 unifying the use instructions to another standard 2020-08-17 17:36:17 +02:00
Fabian Kaczmarczyck
131f876cdd use the enum-iterator crate for better testing of enums 2020-07-08 17:59:20 +02:00
Fabian Kaczmarczyck
3b6615520f adds clarifications, improvements and tests 2020-07-06 12:39:52 +02:00
Fabian Kaczmarczyck
63aef3bd76 new client pin subcommands 2020-07-02 19:14:25 +02:00
Fabian Kaczmarczyck
a4becf9aca new error codes and enum cleanups 2020-07-02 19:14:24 +02:00
Guillaume Endignoux
09c9fb3a3e Apply suggestion to remove additional semi-colons. 2020-06-22 11:49:47 +02:00
Guillaume Endignoux
db70c3e66d s/read_cbor_map/destructure_cbor_map/g 2020-06-22 11:49:47 +02:00
Guillaume Endignoux
493efa9b25 Apply syntax suggestion to read_cbor_map! macro. 2020-06-22 11:49:46 +02:00
Guillaume Endignoux
b0321f6b4f Migrate PublicKeyCredentialSource to read_cbor_map.
I didn't realize that the values were actually constants, as
discriminants of an enum.
2020-06-22 11:49:46 +02:00
Guillaume Endignoux
2124511913 Simplify syntax of the read_cbor_map! macro, to align it with cbor_map. 2020-06-22 11:49:46 +02:00
Guillaume Endignoux
97fb222455 Add a read_cbor_map macro to avoid the overhead of removing values on-by-one in BTreeMap. 2020-06-22 11:49:46 +02:00
Fabian Kaczmarczyck
824963b382 fixes nits for refactoring 2020-06-08 18:41:48 +02:00
Fabian Kaczmarczyck
909773da36 changes extensions to proper parsed data structures 2020-06-08 16:36:57 +02:00
Fabian Kaczmarczyck
679c1cb291 reads CBOR maps by moving instead of references 2020-06-05 15:42:06 +02:00
Fabian Kaczmarczyck
b4003e36bf adding cbor::Value::from for i64-like enums 2020-06-05 09:48:03 +02:00
Fabian Kaczmarczyck
6a44d3349c fixing merge problems 2020-06-04 14:32:09 +02:00