Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
module ItsGenCert_TypeAndValues {
// LibIts
import from IEEE1609dot2BaseTypes language "ASN.1:1997" all;
import from IEEE1609dot2 language "ASN.1:1997" all;
import from EtsiTs103097Module language "ASN.1:1997" all;
const Time64 c_its_epoch := 1072911600000;
/**
* @desc Start date/time in milliseconds
* @remark See https://www/epochconverter.com/
*/
const Time32 c_2018_01_01_gmt_paris := 1514764800;
const Time32 c_2020_01_01_gmt_paris := 1577836800;
const Time32 c_2010_01_01_gmt_paris := 1262304000;
/**
* @desc Six months duration
*/
const Duration c_six_months := { hours := 6 * 30 * 24 };
/**
* @desc One year duration
*/
const Duration c_one_year := { years := 1 };
/**
* @desc This record contains, for each certificate, the parameters to generate it
*/
type record certificate_params {
charstring certificate_id,
GeographicRegion region optional,
ValidityPeriod validity_period,
SequenceOfPsidSsp app_permissions optional,
SequenceOfPsidSspRange issuing_permissions optional,
HashAlgorithm hash_algorithm,
Curve curve,
charstring signed_by
} // End of type certificate_params
type record of certificate_params certificate_params_list;
type enumerated Curve {
e_nist_p256,
e_brainpool_p256,
e_brainpool_p384
} // End of type Curve
type record certificate_details {
EtsiTs103097Certificate certificate,
octetstring enc_cert,
octetstring private_key,
octetstring public_key_x,
octetstring public_key_y,
HashedId8 hashid8,
HashedId8 issuer
} // End of type certificate_details
} // End of module ItsGenCert_TypeAndValues