Newer
Older
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
} // End of template m_eccP256CurvePoint_x_only
template (present) EccP256CurvePoint mw_eccP256CurvePoint_x_only(
template (present) Oct32 p_x_only := ?
) := {
x_only := p_x_only
} // End of template mw_eccP256CurvePoint_x_only
template (value) EccP256CurvePoint m_eccP256CurvePoint_compressed_y_0(
in template (value) Oct32 p_compressed_y_0
) := {
compressed_y_0 := p_compressed_y_0
} // End of template m_eccP256CurvePoint_compressed_y_0
template (present) EccP256CurvePoint mw_eccP256CurvePoint_compressed_y_0(
template (present) Oct32 p_compressed_y_0 := ?
) := {
compressed_y_0 := p_compressed_y_0
} // End of template mw_eccP256CurvePoint_compressed_y_0
template (value) EccP256CurvePoint m_eccP256CurvePoint_compressed_y_1(
in template (value) Oct32 p_compressed_y_1
) := {
compressed_y_1 := p_compressed_y_1
} // End of template m_eccP256CurvePoint_compressed_y_1
template (present) EccP256CurvePoint mw_eccP256CurvePoint_compressed_y_1(
template (present) Oct32 p_compressed_y_1 := ?
) := {
compressed_y_1 := p_compressed_y_1
} // End of template mw_eccP256CurvePoint_compressed_y_1
template (value) EccP256CurvePoint m_eccP256CurvePoint_uncompressed(
in template (value) Oct32 p_x,
in template (value) Oct32 p_y
) := {
uncompressedP256 := {
x := p_x,
y := p_y
}
} // End of template m_eccP256CurvePoint_uncompressed
template (present) EccP256CurvePoint mw_eccP256CurvePoint_uncompressed(
template (present) Oct32 p_x := ?,
template (present) Oct32 p_y := ?
) := {
uncompressedP256 := {
x := p_x,
y := p_y
}
} // End of template mw_eccP256CurvePoint_uncompressed
template (value) EccP384CurvePoint m_eccP384CurvePoint_x_only(
in template (value) Oct48 p_x_only
) := {
x_only := p_x_only
} // End of template m_eccP384CurvePoint_x_only
template (present) EccP384CurvePoint mw_eccP384CurvePoint_x_only(
template (present) Oct48 p_x_only := ?
) := {
x_only := p_x_only
} // End of template mw_eccP384CurvePoint_x_only
template (value) EccP384CurvePoint m_eccP384CurvePoint_compressed_y_0(
in template (value) Oct48 p_compressed_y_0
) := {
compressed_y_0 := p_compressed_y_0
} // End of template m_eccP384CurvePoint_compressed_y_0
template (present) EccP384CurvePoint mw_eccP384CurvePoint_compressed_y_0(
template (present) Oct48 p_compressed_y_0 := ?
) := {
compressed_y_0 := p_compressed_y_0
} // End of template mw_eccP384CurvePoint_compressed_y_0
template (value) EccP384CurvePoint m_eccP384CurvePoint_compressed_y_1(
in template (value) Oct48 p_compressed_y_1
) := {
compressed_y_1 := p_compressed_y_1
} // End of template m_eccP384CurvePoint_compressed_y_1
template (present) EccP384CurvePoint mw_eccP384CurvePoint_compressed_y_1(
template (present) Oct48 p_compressed_y_1 := ?
) := {
compressed_y_1 := p_compressed_y_1
} // End of template mw_eccP384CurvePoint_compressed_y_1
template (value) EccP384CurvePoint m_eccP384CurvePoint_uncompressed(
in template (value) Oct48 p_x,
in template (value) Oct48 p_y
) := {
uncompressedP384 := {
x := p_x,
y := p_y
}
} // End of template m_eccP384CurvePoint_uncompressed
template (present) EccP384CurvePoint mw_eccP384CurvePoint_uncompressed(
template (present) Oct48 p_x := ?,
template (present) Oct48 p_y := ?
) := {
uncompressedP384 := {
x := p_x,
y := p_y
}
} // End of template mw_eccP384CurvePoint_uncompressed
} // End of group signatures
* @see Draft ETSI TS 103 097 V1.3.1 Clause 6 Specification of certificate format
* @desc Send certificate template
* @member p_signer_info Signer information
* @member p_subject_info The subject information
* @member p_subject_attributes List of subject attribute
* @member p_validity_restrictions List of validity restriction
* @member p_signature The signature
* @see Draft ETSI TS 103 097 V1.3.1 Clause 6.1 Certificate
template (omit) EtsiTs103097Certificate m_etsiTs103097Certificate(
in template (value) IssuerIdentifier p_issuer,
in template (value) ToBeSignedCertificate p_toBeSigned,
in template (omit) Signature p_signature_ := omit
) := {
version := c_certificate_version,
type_ := explicit,
issuer := p_issuer,
toBeSigned := p_toBeSigned,
signature_ := p_signature_
} // End of template m_etsiTs103097Certificate
* @desc Send certificate template
* @member p_signer_info Signer information
* @member p_subject_info The subject information
* @member p_subject_attributes List of subject attribute
* @member p_validity_restrictions List of validity restriction
* @member p_signature The signature
* @see Draft ETSI TS 103 097 V1.3.1 Clause 6.1 Certificate
template (present) EtsiTs103097Certificate mw_etsiTs103097Certificate(
template (present) IssuerIdentifier p_issuer := ?,
template (present) ToBeSignedCertificate p_toBeSigned := ?,
template (present) Signature p_signature_ := ?
) := {
version := c_certificate_version,
type_ := explicit,
issuer := p_issuer,
toBeSigned := p_toBeSigned,
signature_ := p_signature_
} // End of template mw_etsiTs103097Certificate
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
group issuerIdentifier {
template (value) IssuerIdentifier m_issuerIdentifier_self(
in template (value) HashAlgorithm p_self
) := {
self_ := p_self
} // End of template m_issuerIdentifier_self
template (present) IssuerIdentifier mw_issuerIdentifier_self(
template (present) HashAlgorithm p_self := ?
) := {
self_ := p_self
} // End of template mw_issuerIdentifier_self
template (value) IssuerIdentifier m_issuerIdentifier_sha256AndDigest( // FIXME Add opque field for unknown issuer?
in template (value) HashedId8 p_sha256AndDigest
) := {
sha256AndDigest := p_sha256AndDigest
} // End of template m_issuerIdentifier_sha256AndDigest
template (present) IssuerIdentifier mw_issuerIdentifier_sha256AndDigest( // FIXME Add opque field for unknown issuer?
template (present) HashedId8 p_sha256AndDigest := ?
) := {
sha256AndDigest := p_sha256AndDigest
} // End of template mw_issuerIdentifier_sha256AndDigest
template (value) IssuerIdentifier m_issuerIdentifier_sha384AndDigest(
in template (value) HashedId8 p_sha384AndDigest
) := {
sha384AndDigest := p_sha384AndDigest
} // End of template m_issuerIdentifier_sha384AndDigest
template (present) IssuerIdentifier mw_issuerIdentifier_sha384AndDigest(
template (present) HashedId8 p_sha384AndDigest := ?
) := {
sha384AndDigest := p_sha384AndDigest
} // End of template mw_issuerIdentifier_sha384AndDigest
} // End of group issuerIdentifier
group toBeSignedCertificate {
/**
* @desc Send template for ToBeSignedCertificate with CA restrictions
* @see ETSI TS 103 097 V1.3.1 Clause 7.2.3 Root CA certificate
*/
template (omit) ToBeSignedCertificate m_toBeSignedCertificate_ca(
in template (value) CertificateId p_id,
in template (value) SequenceOfPsidSsp p_appPermissions,
in template (value) SequenceOfPsidGroupPermissions p_certIssuePermissions,
in template (value) VerificationKeyIndicator p_verifyKeyIndicator,
in template (omit) ValidityPeriod p_validityPeriod := omit,
in template (omit) GeographicRegion p_region := omit,
in template (omit) SubjectAssurance p_assuranceLevel := omit,
in template (omit) PublicEncryptionKey p_encryptionKey := omit
cracaId := '000000'O, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 2
crlSeries := 0, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 3
validityPeriod := p_validityPeriod,
region := p_region,
assuranceLevel := p_assuranceLevel,
appPermissions := p_appPermissions,
certIssuePermissions := p_certIssuePermissions, // ETSI TS 103 097 V1.3.1 Clause 7.2.3 Root CA certificates Bullet 4
certRequestPermissions := omit,
canRequestRollover := omit,
encryptionKey := p_encryptionKey,
verifyKeyIndicator := p_verifyKeyIndicator
} // End of template m_toBeSignedCertificate_ca
/**
* @desc Receive template for ToBeSignedCertificate with CA restrictions
* @see ETSI TS 103 097 V1.3.1 Clause 7.2.3 Root CA certificate
*/
template ToBeSignedCertificate mw_toBeSignedCertificate_ca(
template (present) CertificateId p_id := ?,
template (present) SequenceOfPsidSsp p_appPermissions := ?,
template (present) SequenceOfPsidGroupPermissions p_certIssuePermissions := ?,
template (present) SequenceOfPsidGroupPermissions p_certRequestPermissions := ?,
template (present) VerificationKeyIndicator p_verifyKeyIndicator := ?,
template (present) ValidityPeriod p_validityPeriod := ?,
template GeographicRegion p_region := *,
template SubjectAssurance p_assuranceLevel := *,
template PublicEncryptionKey p_encryptionKey := *
validityPeriod := p_validityPeriod,
region := p_region,
assuranceLevel := p_assuranceLevel,
certIssuePermissions := p_certIssuePermissions,
certRequestPermissions := p_certRequestPermissions,
encryptionKey := p_encryptionKey,
verifyKeyIndicator := p_verifyKeyIndicator
} // End of template mw_toBeSignedCertificate
/**
* @desc Send template for ToBeSignedCertificate with Enrolment credential restrictions
* @see ETSI TS 103 097 V1.3.1 Clause 7.2.2 Enrolment credential
*/
template (omit) ToBeSignedCertificate m_toBeSignedCertificate_ea(
in template (value) CertificateId p_id,
in template (value) SequenceOfPsidSsp p_appPermissions,
in template (value) VerificationKeyIndicator p_verifyKeyIndicator,
in template (value) ValidityPeriod p_validityPeriod,
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
in template (omit) GeographicRegion p_region := omit,
in template (omit) SubjectAssurance p_assuranceLevel := omit,
in template (omit) PublicEncryptionKey p_encryptionKey := omit
) := {
id := p_id,
cracaId := '000000'O, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 2
crlSeries := 0, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 3
validityPeriod := p_validityPeriod,
region := p_region,
assuranceLevel := p_assuranceLevel,
appPermissions := p_appPermissions,
certIssuePermissions := omit,
certRequestPermissions := omit,
canRequestRollover := omit,
encryptionKey := p_encryptionKey,
verifyKeyIndicator := p_verifyKeyIndicator
} // End of template m_toBeSignedCertificate_ea
/**
* @desc Send template for ToBeSignedCertificate with Enrolment credential restrictions
* @see ETSI TS 103 097 V1.3.1 Clause 7.2.2 Enrolment credential
*/
template ToBeSignedCertificate mw_toBeSignedCertificate_ea(
template (present) CertificateId p_id := ?,
template (present) SequenceOfPsidSsp p_appPermissions := ?,
template (present) VerificationKeyIndicator p_verifyKeyIndicator := ?,
template (present) ValidityPeriod p_validityPeriod := ?,
template GeographicRegion p_region := *,
template SubjectAssurance p_assuranceLevel := *,
template PublicEncryptionKey p_encryptionKey := *
) := {
id := p_id,
cracaId := '000000'O, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 2
crlSeries := 0, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 3
validityPeriod := p_validityPeriod,
region := p_region,
assuranceLevel := p_assuranceLevel,
appPermissions := p_appPermissions,
certIssuePermissions := omit,
certRequestPermissions := omit,
canRequestRollover := omit,
encryptionKey := p_encryptionKey,
verifyKeyIndicator := p_verifyKeyIndicator
} // End of template mw_toBeSignedCertificate_ea
/**
* @desc Send template for ToBeSignedCertificate with Authorization authority restrictions
* @see ETSI TS 103 097 V1.3.1 Clause 7.2.4 Subordinate certification authority certificates
*/
template (omit) ToBeSignedCertificate m_toBeSignedCertificate_aa(
in template (value) CertificateId p_id,
in template (value) SequenceOfPsidSsp p_appPermissions,
in template (value) VerificationKeyIndicator p_verifyKeyIndicator,
in template (value) ValidityPeriod p_validityPeriod,
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
in template (omit) GeographicRegion p_region := omit,
in template (omit) SubjectAssurance p_assuranceLevel := omit,
in template (omit) PublicEncryptionKey p_encryptionKey := omit
) := {
id := p_id,
cracaId := '000000'O, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 2
crlSeries := 0, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 3
validityPeriod := p_validityPeriod,
region := p_region,
assuranceLevel := p_assuranceLevel,
appPermissions := p_appPermissions,
certIssuePermissions := omit,
certRequestPermissions := omit,
canRequestRollover := omit,
encryptionKey := p_encryptionKey,
verifyKeyIndicator := p_verifyKeyIndicator
} // End of template m_toBeSignedCertificate_aa
/**
* @desc Send template for ToBeSignedCertificate with Authorization authority restrictions
* @see ETSI TS 103 097 V1.3.1 Clause 7.2.4 Subordinate certification authority certificates
*/
template ToBeSignedCertificate mw_toBeSignedCertificate_aa(
template (present) CertificateId p_id := ?,
template (present) SequenceOfPsidSsp p_appPermissions := ?,
template (present) VerificationKeyIndicator p_verifyKeyIndicator := ?,
template (present) ValidityPeriod p_validityPeriod := ?,
template GeographicRegion p_region := *,
template SubjectAssurance p_assuranceLevel := *,
template PublicEncryptionKey p_encryptionKey := *
) := {
id := p_id,
cracaId := '000000'O, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 2
crlSeries := 0, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 3
validityPeriod := p_validityPeriod,
region := p_region,
assuranceLevel := p_assuranceLevel,
appPermissions := p_appPermissions,
certIssuePermissions := omit,
certRequestPermissions := omit,
canRequestRollover := omit,
encryptionKey := p_encryptionKey,
verifyKeyIndicator := p_verifyKeyIndicator
} // End of template mw_toBeSignedCertificate_aa
template (present) CertificateId mw_certificateId_name(
template (present) charstring p_name := ?
) := {
name := p_name
} // End of template mw_certificateId_name
template (present) CertificateId mw_certificateId_none := {
none_ := NULL
} // End of template mw_certificateId_none
/**
* @desc Send template for ToBeSignedCertificate with AT restrictions
* @see ETSI TS 103 097 V1.3.1 Clause 7.2.1 Authorization tickets
*/
template (omit) ToBeSignedCertificate m_toBeSignedCertificate_at(
in template (value) SequenceOfPsidSsp p_appPermissions,
in template (value) VerificationKeyIndicator p_verifyKeyIndicator,
in template (omit) ValidityPeriod p_validityPeriod := omit,
in template (omit) GeographicRegion p_region := omit,
in template (omit) SubjectAssurance p_assuranceLevel := omit,
in template (omit) PublicEncryptionKey p_encryptionKey := omit
) := {
id := { none_ := NULL },
cracaId := '000000'O, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 2
crlSeries := 0, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 3
validityPeriod := p_validityPeriod,
region := p_region,
assuranceLevel := p_assuranceLevel,
appPermissions := p_appPermissions,
certIssuePermissions := omit,
canRequestRollover := omit,
encryptionKey := p_encryptionKey,
verifyKeyIndicator := p_verifyKeyIndicator
} // End of template m_toBeSignedCertificate_at
/**
* @desc Send template for ToBeSignedCertificate with AT restrictions
* @see ETSI TS 103 097 V1.3.1 Clause 7.2.1 Authorization tickets
*/
template ToBeSignedCertificate mw_toBeSignedCertificate_at(
template (present) SequenceOfPsidSsp p_appPermissions := ?,
template (present) VerificationKeyIndicator p_verifyKeyIndicator := ?,
template (present) ValidityPeriod p_validityPeriod := ?,
template GeographicRegion p_region := *,
template SubjectAssurance p_assuranceLevel := *,
template PublicEncryptionKey p_encryptionKey := *
) := {
id := { none_ := NULL },
cracaId := '000000'O, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 2
crlSeries := 0, // ETSI TS 103 097 V1.3.1 Clause 6 Bullet 3
validityPeriod := p_validityPeriod,
region := p_region,
assuranceLevel := p_assuranceLevel,
appPermissions := p_appPermissions,
certIssuePermissions := omit,
certRequestPermissions := omit,
canRequestRollover := omit,
encryptionKey := p_encryptionKey,
verifyKeyIndicator := p_verifyKeyIndicator
} // End of template mw_toBeSignedCertificate_at
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
group keys {
template (value) VerificationKeyIndicator m_verificationKeyIndicator_verificationKey(
in template (value) PublicVerificationKey p_verificationKey
) := {
verificationKey := p_verificationKey
} // End of template m_verificationKeyIndicator_verificationKey
template (present) VerificationKeyIndicator mw_verificationKeyIndicator_verificationKey(
template (present) PublicVerificationKey p_verificationKey := ?
) := {
verificationKey := p_verificationKey
} // End of template mw_verificationKeyIndicator_verificationKey
template (value) VerificationKeyIndicator m_verificationKeyIndicator_reconstructionValue(
in template (value) EccP256CurvePoint p_reconstructionValue
) := {
reconstructionValue := p_reconstructionValue
} // End of template m_verificationKeyIndicator_reconstructionValue
template (present) VerificationKeyIndicator mw_verificationKeyIndicator_reconstructionValue(
template (present) EccP256CurvePoint p_reconstructionValue := ?
) := {
reconstructionValue := p_reconstructionValue
} // End of template mw_verificationKeyIndicator_reconstructionValue
template (value) PublicVerificationKey m_publicVerificationKey_ecdsaNistP256(
in template (value) EccP256CurvePoint p_ecdsaNistP256
) := {
ecdsaNistP256 := p_ecdsaNistP256
} // End of template m_publicVerificationKey_ecdsaNistP256
template (present) PublicVerificationKey mw_publicVerificationKey_ecdsaNistP256(
template (present) EccP256CurvePoint p_ecdsaNistP256 := ?
) := {
ecdsaNistP256 := p_ecdsaNistP256
} // End of template mw_publicVerificationKey_ecdsaNistP256
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
template (value) PublicVerificationKey m_publicVerificationKey_ecdsaBrainpoolP256(
in template (value) EccP256CurvePoint p_ecdsaBrainpoolP256r1
) := {
ecdsaBrainpoolP256r1 := p_ecdsaBrainpoolP256r1
} // End of template m_publicVerificationKey_ecdsaBrainpoolP256
template (present) PublicVerificationKey mw_publicVerificationKey_ecdsaBrainpoolP256(
template (present) EccP256CurvePoint p_ecdsaBrainpoolP256r1 := ?
) := {
ecdsaBrainpoolP256r1 := p_ecdsaBrainpoolP256r1
} // End of template mw_publicVerificationKey_ecdsaBrainpoolP256
template (value) PublicVerificationKey m_publicVerificationKey_ecdsaBrainpoolP384(
in template (value) EccP384CurvePoint p_ecdsaBrainpoolP384r1
) := {
ecdsaBrainpoolP384r1 := p_ecdsaBrainpoolP384r1
} // End of template m_publicVerificationKey_ecdsaBrainpoolP384
template (present) PublicVerificationKey mw_publicVerificationKey_ecdsaBrainpoolP384(
template (present) EccP384CurvePoint p_ecdsaBrainpoolP384r1 := ?
) := {
ecdsaBrainpoolP384r1 := p_ecdsaBrainpoolP384r1
} // End of template mw_publicVerificationKey_ecdsaBrainpoolP384
} // End of group keys
group appPermissions {
template (omit) PsidSsp m_appPermissions(
in template (value) Psid p_psid,
in template (omit) ServiceSpecificPermissions p_ssp := omit
) := {
psid := p_psid,
ssp := p_ssp
} // End of template m_appPermissions
template (present) PsidSsp mw_appPermissions(
template (present) Psid p_psid := ?,
template ServiceSpecificPermissions p_ssp := *
) := {
psid := p_psid,
ssp := p_ssp
} // End of template mw_appPermissions
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
template (value) PsidSspRange m_psidSspRange(
in Psid p_psid,
in template (value) SspRange p_sspRange := m_SspRange_all
) := {
psid := p_psid,
sspRange := p_sspRange
} // End of template m_psidSspRange
template (value) SspRange m_SspRange_all := {
all_ := NULL
} // End of template m_SspRange_all
template (value) SspRange m_SspRange_opaque(
in template (value) SequenceOfOctetString p_opaque
) := {
opaque := p_opaque
} // End of template m_SspRange_opaque
template (value) SspRange m_SspRange_bitmapSspRange(
in template (value) BitmapSspRange p_bitmapSspRange
) := {
bitmapSspRange := p_bitmapSspRange
} // End of template m_SspRange_bitmapSspRange
template (value) PsidGroupPermissions m_psidGroupPermissions(
in template (value) SubjectPermissions p_subjectPermissions,
in integer p_minChainLength := 1,
in integer p_chainLengthRange := 0,
in EndEntityType p_eeType := oct2bit('00'O)
) := {
subjectPermissions := p_subjectPermissions,
minChainLength := p_minChainLength,
chainLengthRange := p_chainLengthRange,
eeType := p_eeType
} // End of template m_psidGroupPermissions
template (present) PsidGroupPermissions mw_psidGroupPermissions(
template (present) SubjectPermissions p_subjectPermissions := ?,
integer p_minChainLength := 1,
integer p_chainLengthRange := 0,
template (present) EndEntityType p_eeType := ?
) := {
subjectPermissions := p_subjectPermissions,
minChainLength := p_minChainLength,
chainLengthRange := p_chainLengthRange,
eeType := p_eeType
} // End of template mw_psidGroupPermissions
template (value) SubjectPermissions m_subjectPermissions_explicit(
in template (value) SequenceOfPsidSspRange p_certIssuePermissions
) := {
explicit := p_certIssuePermissions
} // End of template m_subjectPermissions_explicit
template (present) SubjectPermissions mw_subjectPermissions_explicit(
template (present) SequenceOfPsidSspRange p_certIssuePermissions := ?
) := {
explicit := p_certIssuePermissions
} // End of template mw_subjectPermissions_explicit
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
template (value) SubjectPermissions m_subjectPermissions_all := {
all_ := NULL
} // End of template m_subjectPermissions_all
} // End of group appPermissions
group validityRestriction {
template (value) ValidityPeriod m_validityPeriod(
in template (value) Time32 p_start_,
in template (value) Duration p_duration
) := {
start_ := p_start_,
duration := p_duration
} // End of template m_validityPeriod
template (present) ValidityPeriod mw_validityPeriod(
template (present) Time32 p_start_ := ?,
template (present) Duration p_duration := ?
) := {
start_ := p_start_,
duration := p_duration
} // End of template mw_validityPeriod
* @desc Send template for Duration (in seconds)
* @param p_duration The duration value
* @see Draft ETSI TS 103 097 V1.3.1 Clause 4.2.18 Duration
template (value) Duration m_duration_in_seconds(
in template (value) Int16 p_duration
) := {
seconds := p_duration
} // End of template m_duration_in_seconds
* @desc Receive template for Duration (in seconds)
* @param p_duration The duration value
* @see Draft ETSI TS 103 097 V1.3.1 Clause 4.2.18 Duration
template (present) Duration mw_duration_in_seconds(
template (present) Int16 p_duration := ?
) := {
seconds := p_duration
} // End of template mw_duration_in_seconds
template (value) Duration m_duration_years(
in template (value) Uint16 p_years
) := {
years := p_years
} // End of template m_duration_years
template (present) Duration mw_duration_years(
template (present) Uint16 p_years := ?
) := {
years := p_years
} // End of template mw_duration_years
} // End of group validityRestriction
group sspCam {
group sspCamSend {
template (value) SspCAM m_sspCAMContainer_sign_all := {
cenDsrcTollingZone := '1'B,
publicTransport := '1'B,
specialTransport := '1'B,
dangerousGoods := '1'B,
roadwork := '1'B,
rescue := '1'B,
emergency := '1'B,
safetyCar := '1'B,
closedLanes := '1'B,
requestForRightOfWay := '1'B,
requestForFreeCrossingAtATrafficLight := '1'B,
noPassing := '1'B,
noPassingForTrucks := '1'B,
speedLimit := '1'B,
} // End of template m_sspCAMContainer_sign_all
template (value) SspCAM m_sspCAMContainer_vehicle
modifies m_sspCAMContainer_sign_all := {
cenDsrcTollingZone := '0'B,
closedLanes := '0'B,
noPassing := '0'B,
noPassingForTrucks := '0'B,
speedLimit := '0'B
} // End of template m_sspCAMContainer_vehicle
template (value) ServiceSpecificPermissions m_sspCAM(
in template (value) BitmapSsp p_bitmapSsp
) := {
bitmapSsp := p_bitmapSsp
} // End of template m_sspCAM
} // End of group sspCamSend
group sspCamRecv {
template (present) SspCAM mw_sspCAMContainer_dummy := {
cenDsrcTollingZone := ?,
publicTransport := ?,
specialTransport := ?,
dangerousGoods := ?,
roadwork := ?,
rescue := ?,
emergency := ?,
safetyCar := ?,
closedLanes := ?,
requestForRightOfWay := ?,
requestForFreeCrossingAtATrafficLight := ?,
noPassing := ?,
noPassingForTrucks := ?,
speedLimit := ?,
} // End of template mw_sspCAMContainer_dummy
template (present) ServiceSpecificPermissions mw_sspCAM_dummy := {
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
} // End of group sspCamRecv
} // End of group sspCam
group sspDenm {
group sspDenmSend {
template (value) SspDENM m_sspDENMContainer_sign_all := {
trafficCondition := '1'B,
accident := '1'B,
roadworks := '1'B,
adverseWeatherCondition_Adhesion := '1'B,
hazardousLocation_SurfaceCondition := '1'B,
hazardousLocation_ObstacleOnTheRoad := '1'B,
hazardousLocation_AnimalOnTheRoad := '1'B,
humanPresenceOnTheRoad := '1'B,
wrongWayDriving := '1'B,
rescueAndRecoveryWorkInProgress := '1'B,
adverseWeatherCondition_ExtremeWeatherCondition := '1'B,
adverseWeatherCondition_Visibility := '1'B,
adverseWeatherCondition_Precipitation := '1'B,
slowVehicle := '1'B,
dangerousEndOfQueue := '1'B,
vehicleBreakdown := '1'B,
postCrash := '1'B,
humanProblem := '1'B,
stationaryVehicle := '1'B,
emergencyVehicleApproaching := '1'B,
hazardousLocation_DangerousCurve := '1'B,
collisionRisk := '1'B,
signalViolation := '1'B,
dangerousSituation := '1'B,
reserved := '00000000'B
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
} // End of template m_sspDENMContainer_sign_all
template (value) SspDENM m_sspDENMContainer_vehicle
modifies m_sspDENMContainer_sign_all:= {
trafficCondition := '0'B,
accident := '0'B,
roadworks := '0'B,
adverseWeatherCondition_Adhesion := '0'B,
hazardousLocation_SurfaceCondition := '0'B,
hazardousLocation_ObstacleOnTheRoad := '0'B,
hazardousLocation_AnimalOnTheRoad := '0'B,
slowVehicle := '0'B,
dangerousEndOfQueue := '0'B,
vehicleBreakdown := '0'B,
stationaryVehicle := '0'B
} // End of template m_sspDENMContainer_sign_all
template (value) SspDENM m_sspDENMContainer_roadSideUnit
modifies m_sspDENMContainer_sign_all:= {
trafficCondition := '0'B,
accident := '0'B,
roadworks := '0'B,
adverseWeatherCondition_Adhesion := '0'B,
hazardousLocation_SurfaceCondition := '0'B,
hazardousLocation_ObstacleOnTheRoad := '0'B,
hazardousLocation_AnimalOnTheRoad := '0'B,
humanPresenceOnTheRoad := '0'B,
wrongWayDriving := '0'B,
rescueAndRecoveryWorkInProgress := '0'B,
adverseWeatherCondition_ExtremeWeatherCondition := '0'B,
adverseWeatherCondition_Visibility := '0'B,
adverseWeatherCondition_Precipitation := '0'B,
postCrash := '0'B,
humanProblem := '0'B,
stationaryVehicle := '0'B,
hazardousLocation_DangerousCurve := '0'B,
collisionRisk := '0'B,
dangerousSituation := '0'B
} // End of template m_sspDENMContainer_roadSideUnit
template (value) ServiceSpecificPermissions m_sspDENM(
in template (value) BitmapSsp p_bitmapSsp
) := {
bitmapSsp := p_bitmapSsp
} // End of template m_sspDENM
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
} // End of group sspDenmSend
group sspDenmRecv {
template (present) SspDENM mw_sspDENMContainer_dummy := {
trafficCondition := ?,
accident := ?,
roadworks := ?,
adverseWeatherCondition_Adhesion := ?,
hazardousLocation_SurfaceCondition := ?,
hazardousLocation_ObstacleOnTheRoad := ?,
hazardousLocation_AnimalOnTheRoad := ?,
humanPresenceOnTheRoad := ?,
wrongWayDriving := ?,
rescueAndRecoveryWorkInProgress := ?,
adverseWeatherCondition_ExtremeWeatherCondition := ?,
adverseWeatherCondition_Visibility := ?,
adverseWeatherCondition_Precipitation := ?,
slowVehicle := ?,
dangerousEndOfQueue := ?,
vehicleBreakdown := ?,
postCrash := ?,
humanProblem := ?,
stationaryVehicle := ?,
emergencyVehicleApproaching := ?,
hazardousLocation_DangerousCurve := ?,
collisionRisk := ?,
signalViolation := ?,
dangerousSituation := ?,
reserved := '00000000'B
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
} // End of template mw_sspDENMContainer_dummy
template (present) SspDENM mw_sspDENMContainer_vehicle
modifies mw_sspDENMContainer_dummy := {
trafficCondition := '0'B,
accident := '0'B,
roadworks := '0'B,
adverseWeatherCondition_Adhesion := '0'B,
hazardousLocation_SurfaceCondition := '0'B,
hazardousLocation_ObstacleOnTheRoad := '0'B,
hazardousLocation_AnimalOnTheRoad := '0'B,
slowVehicle := '0'B,
dangerousEndOfQueue := '0'B,
vehicleBreakdown := '0'B,
stationaryVehicle := '0'B
} // End of template mw_sspDENMContainer_vehicle
template (present) SspDENM mw_sspDENMContainer_roadSideUnit
modifies mw_sspDENMContainer_dummy := {
trafficCondition := '0'B,
accident := '0'B,
roadworks := '0'B,
adverseWeatherCondition_Adhesion := '0'B,
hazardousLocation_SurfaceCondition := '0'B,
hazardousLocation_ObstacleOnTheRoad := '0'B,
hazardousLocation_AnimalOnTheRoad := '0'B,
humanPresenceOnTheRoad := '0'B,
wrongWayDriving := '0'B,
rescueAndRecoveryWorkInProgress := '0'B,
adverseWeatherCondition_ExtremeWeatherCondition := '0'B,
adverseWeatherCondition_Visibility := '0'B,
adverseWeatherCondition_Precipitation := '0'B,
postCrash := '0'B,
humanProblem := '0'B,
stationaryVehicle := '0'B,
hazardousLocation_DangerousCurve := '0'B,
collisionRisk := '0'B,
dangerousSituation := '0'B
} // End of template m_sspDENMContainer_roadSideUnit
} // End of group sspDenmRecv
template UtGnInitialize m_secGnInitialize(
in Oct8 p_hashedId8
) := {
hashedId8 := p_hashedId8
} // End of template m_secGnInitialize
} // End of module LibItsSecurity_Templates