Newer
Older
/**
* @author ETSI / STF545
* @version $URL$
* $Id$
* @desc Module containing templates for IT PKI Protocol
* @copyright ETSI Copyright Notification
* No part may be reproduced except as authorized by written permission.
* The copyright and the foregoing restriction extend to reproduction in all media.
* All rights reserved.
*
*/
module LibItsPki_Templates {
// LibCommon
import from LibCommon_BasicTypesAndValues all;
import from LibCommon_DataStrings all;
// LibItsCommon
import from LibItsCommon_TypesAndValues all;
import from LibItsCommon_Functions all;
import from LibItsCommon_TypesAndValues all;
import from LibItsCommon_ASN1_NamedNumbers all;
// LibIts
import from IEEE1609dot2BaseTypes language "ASN.1:1997" all;
import from IEEE1609dot2 language "ASN.1:1997" all;
import from EtsiTs102941BaseTypes language "ASN.1:1997" all;
import from EtsiTs102941TypesEnrolment language "ASN.1:1997" all;
import from EtsiTs102941MessagesItss language "ASN.1:1997" all;
import from EtsiTs103097Module language "ASN.1:1997" all;
// LibItsSecurity
import from LibItsSecurity_Templates all;
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
template (value) EtsiTs102941Data m_etsiTs102941Data_inner_ec_request_signed_for_pop(
in template (value) InnerEcRequestSignedForPop p_inner_ec_request_signed_for_pop
) := {
version := 1,
content := {
enrolmentRequest := p_inner_ec_request_signed_for_pop
}
} // End of template m_etsiTs102941Data_inner_ec_request_signed_for_pop
template (value) EtsiTs102941Data m_etsiTs102941Data_inner_ec_response(
in template (value) InnerEcResponse p_inner_ec_response
) := {
version := 1,
content := {
enrolmentResponse := p_inner_ec_response
}
} // End of template m_etsiTs102941Data_inner_ec_response
template (value) EnrolmentRequestMessage m_enrolmentRequestMessage(
in template (value) EncryptedData p_encryptedData
) modifies m_etsiTs103097Data_encrypted := {
} // End of template m_enrolmentRequestMessage
template (present) EnrolmentRequestMessage mw_enrolmentResponseMessage(
template (present) EncryptedData p_encryptedData := ?
) modifies mw_etsiTs103097Data_encrypted := {
} // End of template mw_enrolmentResponseMessage
template (value) EtsiTs102941DataContent m_enrolmentRequest(
in template (value) InnerEcRequestSignedForPop p_enrolmentRequest
) := {
enrolmentRequest := p_enrolmentRequest
} // End of template m_enrolmentRequest
template (present) EtsiTs102941DataContent mw_enrolmentResponse(
template (present) InnerEcResponse p_enrolmentResponse := ?
) := {
enrolmentResponse := p_enrolmentResponse
} // End of template mw_enrolmentResponse
template (value) InnerEcRequest m_innerEcRequest(
in template (value) charstring p_itsId,
in template (value) PublicKeys p_publicKeys,
in template (value) CertificateSubjectAttributes p_requestedSubjectAttributes
) := {
itsId := p_itsId,
certificateFormat := 1,
publicKeys := p_publicKeys,
requestedSubjectAttributes := p_requestedSubjectAttributes
} // End of template m_innerEcRequest
template (present) InnerEcRequest mw_innerEcRequest(
template (present) charstring p_itsId := ?,
template (present) PublicKeys p_publicKeys := ?,
template (present) CertificateSubjectAttributes p_requestedSubjectAttributes := ?
) := {
itsId := p_itsId,
certificateFormat := 1,
publicKeys := p_publicKeys,
requestedSubjectAttributes := p_requestedSubjectAttributes
} // End of template mw_innerEcRequest
template (omit) PublicKeys m_publicKeys(
in template (value) PublicVerificationKey p_verificationKey,
in template (omit) PublicEncryptionKey p_encryptionKey := omit
) := {
verificationKey := p_verificationKey,
encryptionKey := p_encryptionKey
} // End of template m_publicKeys
template PublicKeys mw_publicKeys(
template (present) PublicVerificationKey p_verificationKey := ?,
template PublicEncryptionKey p_encryptionKey := *
) := {
verificationKey := p_verificationKey,
encryptionKey := p_encryptionKey
} // End of template mw_publicKeys
template (omit) CertificateSubjectAttributes m_certificateSubjectAttributes(
in template (value) SequenceOfPsidSsp p_appPermissions,
in template (omit) ValidityPeriod p_validityPeriod := omit,
in template (omit) GeographicRegion p_region := omit,
in template (omit) SubjectAssurance p_assuranceLevel := omit
) := {
id := { none_ := NULL },
validityPeriod := p_validityPeriod,
region := p_region,
assuranceLevel := p_assuranceLevel,
appPermissions := p_appPermissions,
certIssuePermissions := omit
} // End of template m_certificateSubjectAttributes
template (value) InnerEcResponse m_innerEcResponse_ok(
in template (value) Oct16 p_requestHash,
in template (value) EtsiTs103097Certificate p_certificate
) := {
requestHash := p_requestHash,
responseCode := ok,
certificate := p_certificate
} // End of template m_innerEcResponse_ok
template (present) InnerEcResponse mw_innerEcResponse_ok(
template (present) Oct16 p_requestHash := ?,
template (present) EtsiTs103097Certificate p_certificate := ?
) := {
requestHash := p_requestHash,
responseCode := ok,
certificate := p_certificate
} // End of template mw_innerEcResponse_ok
template (value) InnerEcResponse m_innerEcResponse_ko(
in template (value) Oct16 p_requestHash,
in template (value) EnrolmentResponseCode p_responseCode
) := {
requestHash := p_requestHash,
responseCode := p_responseCode,
certificate := omit
} // End of template m_innerEcResponse_ko
template (present) InnerEcResponse mw_innerEcResponse_ko(
template (present) Oct16 p_requestHash := ?,
template (present) EnrolmentResponseCode p_responseCode := complement(ok)
) := {
requestHash := p_requestHash,
responseCode := p_responseCode,
certificate := *
} // End of template mw_innerEcResponse_ko
} // End of module LibItsPki_Templates