53 lines
2.0 KiB
Markdown
53 lines
2.0 KiB
Markdown
# SystemX Hybrid-PQC ASN.1 Profile
|
|||
|
|
|
||
|
|
This directory keeps the experimental certificate additions separate from
|
||
|
|
Vanetza's standard ASN.1 inputs. `hybrid-pqc.patch` contains the complete
|
||
|
|
experimental delta. The unmodified input modules are fetched from pinned
|
||
|
|
official ETSI Forge revisions during regeneration instead of being duplicated
|
||
|
|
in the source tree.
|
||
|
|
|
||
|
|
The IEEE inputs are from the official `v2025` tag of the ETSI Forge mirror:
|
||
|
|
|
||
|
|
* repository: `https://forge.etsi.org/rep/ITS/asn1/ieee1609.2.git`
|
||
|
|
* commit: `77e2c822a11bf8adbe9848ad3fd4f311925aff30`
|
||
|
|
* `Ieee1609Dot2.asn` SHA-256:
|
||
|
|
`82b5e35cbaadae1c6b2f087626b10d52afc73779c9ac6700c6445830d8824e0b`
|
||
|
|
* `Ieee1609Dot2BaseTypes.asn` SHA-256:
|
||
|
|
`bf2b3d66d394449319323f8a59d8084d963c3ad55d6790e1436ab897221690fe`
|
||
|
|
|
||
|
|
The two ETSI TS 103 097 inputs are fetched from the official Release 2
|
||
|
|
repository:
|
||
|
|
|
||
|
|
* repository: `https://forge.etsi.org/rep/ITS/asn1/sec_ts103097.git`
|
||
|
|
* commit: `65e6d8ea88b2bfb3aca3151dbedf07d89b97fd00`
|
||
|
|
|
||
|
|
* `EtsiTs103097Module.asn` SHA-256:
|
||
|
|
`245a3c10c176497f658c6a4d9ec804d3226dda2ac10a4351e382ddb5afe9ff72`
|
||
|
|
* `EtsiTs103097ExtensionModule.asn` SHA-256:
|
||
|
|
`b94c9b373567dd9bfb15d61c8c206d5630f6b0c481ef41ddd574c96784a9eb1a`
|
||
|
|
|
||
|
|
The patch adds only the certificate material used by this implementation:
|
||
|
|
|
||
|
|
* the fixed-size `FnDsa512Key` and `FnDsa512Signature` types;
|
||
|
|
* FN-DSA-512 choices in `PublicVerificationKey` and `Signature`;
|
||
|
|
* `altVerificationKey` and `altSignatureValue` in
|
||
|
|
`ToBeSignedCertificate`.
|
||
|
|
|
||
|
|
## Regeneration
|
||
|
|
|
||
|
|
Normal builds compile the committed generated files and do not need network
|
||
|
|
access, `asn1c`, Docker, or the patch utility. Regeneration is an explicit
|
||
|
|
maintainer action:
|
||
|
|
|
||
|
|
```shell
|
||
|
|
cmake -S . -B build-asn1 \
|
||
|
|
-DVANETZA_WITH_PQC=ON \
|
||
|
|
-DVANETZA_ASN1_WITH_ASN1C=ON \
|
||
|
|
-DVANETZA_ASN1_WITH_ISO=ON
|
||
|
|
cmake --build build-asn1 --target generate_asn1c
|
||
|
|
```
|
||
|
|
|
||
|
|
The generation target fetches and verifies the pristine inputs in its build
|
||
|
|
directory, applies `hybrid-pqc.patch`, invokes `asn1c`, and refreshes the
|
||
|
|
committed output under `vanetza/asn1/systemx-pqc`.
|