Skip to content

Commit 4831ce2

Browse files
authored
Fix X.509 parsing to support PQC use in attestation statements (#800)
This PR updates dependencies and maps PQC X.509 algorithm OIDs so that attestation statements leveraging PQC algorithms can be properly verified. Note that I still cannot yet include full registration responses containing PQC-using attestation statements as test vectors because I am under an NDA. This PR also includes some intentional raising of a new `PQCNotSupportedError` when verifying responses with PQC passkeys in runtimes that don't support PQC. This happens earlier in the flow so that downstream problems that happen because of the lack of PQC support are't masked as other types of errors. And I also included some test optimizations. Fixes #799
1 parent 83f87ad commit 4831ce2

18 files changed

Lines changed: 292 additions & 134 deletions

‎deno.lock‎

Lines changed: 68 additions & 38 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎packages/server/deno.json‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
"lineWidth": 100
3737
},
3838
"imports": {
39+
"reflect-metadata": "npm:reflect-metadata@^0.2.2",
3940
"tiny-cbor": "npm:@levischuck/tiny-cbor@^0.2.2",
4041
"@hexagon/base64": "npm:@hexagon/base64@^1.1.27",
4142
"@levischuck/tiny-cbor": "npm:@levischuck/tiny-cbor@^0.2.2",
@@ -44,7 +45,8 @@
4445
"@peculiar/asn1-rsa": "npm:@peculiar/asn1-rsa@^2.6.1",
4546
"@peculiar/asn1-schema": "npm:@peculiar/asn1-schema@^2.6.0",
4647
"@peculiar/asn1-x509": "npm:@peculiar/asn1-x509@^2.6.1",
47-
"@peculiar/x509": "npm:@peculiar/x509@^1.14.3"
48+
"@peculiar/asn1-x509-post-quantum": "npm:@peculiar/asn1-x509-post-quantum@^2.9.4",
49+
"@peculiar/x509": "npm:@peculiar/x509@^2.1.0"
4850
},
4951
"publish": {
5052
"include": [

0 commit comments

Comments
 (0)