Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
ITS - Intelligent Transport Systems
ITS
Commits
8ffd1b71
Commit
8ffd1b71
authored
Nov 16, 2017
by
garciay
Browse files
Starting basic certificates typing
parent
2c436ce7
Changes
1
Hide whitespace changes
Inline
Side-by-side
ttcn/TestCodec/TestCodec_Certificates.ttcn
View file @
8ffd1b71
...
...
@@ -11,6 +11,9 @@
*
*/
module
TestCodec_Certificates
{
// LibCommon
import
from
LibCommon_BasicTypesAndValues
all
;
import
from
LibCommon_DataStrings
all
;
// LibIts
import
from
IEEE1609dot2BaseTypes
language
"ASN.1:1997"
all
;
...
...
@@ -34,7 +37,150 @@ module TestCodec_Certificates {
signature_
:=
omit
}
// End of template m_etsiTs103097Certificate
testcase
tc_Certificate
()
runs
on
TCType
system
TCType
{
template
(
value
)
IssuerIdentifier
m_issuerIdentifier_sha256AndDigest
(
in
template
(
value
)
HashedId8
p_sha256AndDigest
)
:=
{
sha256AndDigest
:=
p_sha256AndDigest
}
// End of template m_issuerIdentifier_sha256AndDigest
template
(
value
)
IssuerIdentifier
m_issuerIdentifier_sha384AndDigest
(
in
template
(
value
)
HashedId8
p_sha384AndDigest
)
:=
{
sha384AndDigest
:=
p_sha384AndDigest
}
// End of template m_issuerIdentifier_sha384AndDigest
template
(
omit
)
ToBeSignedCertificate
m_toBeSignedCertificate
(
in
template
(
value
)
CertificateId
p_id
,
in
template
(
value
)
HashedId3
p_cracaId
,
in
template
(
value
)
CrlSeries
p_crlSeries
,
in
template
(
value
)
ValidityPeriod
p_validityPeriod
,
in
template
(
value
)
SequenceOfPsidSsp
p_appPermissions
,
in
template
(
value
)
SequenceOfPsidGroupPermissions
p_certIssuePermissions
,
in
template
(
value
)
SequenceOfPsidGroupPermissions
p_certRequestPermissions
,
in
template
(
value
)
VerificationKeyIndicator
p_verifyKeyIndicator
,
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
:=
p_cracaId
,
crlSeries
:=
p_crlSeries
,
validityPeriod
:=
p_validityPeriod
,
region
:=
p_region
,
assuranceLevel
:=
p_assuranceLevel
,
appPermissions
:=
p_appPermissions
,
certIssuePermissions
:=
p_certIssuePermissions
,
certRequestPermissions
:=
p_certRequestPermissions
,
canRequestRollover
:=
omit
,
encryptionKey
:=
p_encryptionKey
,
verifyKeyIndicator
:=
p_verifyKeyIndicator
}
// End of template m_toBeSignedCertificate
template
(
value
)
ValidityPeriod
m_validity_period
(
in
Time32
p_start_
,
in
Duration
p_duration
)
:=
{
start_
:=
p_start_
,
duration
:=
p_duration
}
// End of template m_validity_period
template
(
omit
)
PsidSsp
m_psidSsp
(
in
template
(
value
)
Psid
p_psid
,
in
template
(
omit
)
ServiceSpecificPermissions
p_ssp
:=
omit
)
:=
{
psid
:=
p_psid
,
ssp
:=
p_ssp
}
// End of template m_psidSsp
template
(
omit
)
PsidSspRange
m_psidSspRange
(
in
Psid
p_psid
,
in
template
(
omit
)
SspRange
p_sspRange
:=
omit
)
:=
{
psid
:=
p_psid
,
sspRange
:=
p_sspRange
}
// End of template m_psidSspRange
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
(
value
)
SubjectPermissions
m_subjectPermissions_explicit
(
in
SequenceOfPsidSspRange
p_certIssuePermissions
)
:=
{
explicit
:=
p_certIssuePermissions
}
// End of template m_subjectPermissions_explicit
template
(
value
)
VerificationKeyIndicator
m_verificationKeyIndicator_verificationKey
(
in
template
(
value
)
PublicVerificationKey
p_verificationKey
)
:=
{
verificationKey
:=
p_verificationKey
}
// End of template m_verificationKeyIndicator_verificationKey
template
(
value
)
VerificationKeyIndicator
m_verificationKeyIndicator_reconstructionValue
(
in
template
(
value
)
EccP256CurvePoint
p_reconstructionValue
)
:=
{
reconstructionValue
:=
p_reconstructionValue
}
// End of template m_verificationKeyIndicator_reconstructionValue
template
(
value
)
PublicVerificationKey
m_publicVerificationKey_ecdsaNistP256
(
in
template
(
value
)
EccP256CurvePoint
p_ecdsaNistP256
)
:=
{
ecdsaNistP256
:=
p_ecdsaNistP256
}
// End of template m_publicVerificationKey_ecdsaNistP256
template
(
value
)
EccP256CurvePoint
m_eccP256CurvePoint_compressed_y_0
(
in
Oct32
p_compressed_y_0
)
:=
{
compressed_y_0
:=
p_compressed_y_0
}
// End of template m_eccP256CurvePoint_compressed_y_0
testcase
tc_certificate_1
()
runs
on
TCType
system
TCType
{
var
template
(
value
)
EtsiTs103097Certificate
v_cert
;
var
HashedId8
v_sha256AndDigest
:=
'0000000000000000'O
;
var
HashedId3
v_cracaId
:=
'000000'O
;
var
CrlSeries
v_crlSeries
:=
0
;
var
SequenceOfPsidSspRange
v_certIssuePermissions
:=
{
valueof
(
m_psidSspRange
(
1
))
};
var
SequenceOfPsidSspRange
v_certRequestPermissions
:=
{
valueof
(
m_psidSspRange
(
2
))
};
var
Oct32
v_compressed_y_0
:=
'0000000000000000000000000000000000000000000000000000000000000000'O
;
v_cert
:=
m_etsiTs103097Certificate
(
m_issuerIdentifier_sha256AndDigest
(
v_sha256AndDigest
),
m_toBeSignedCertificate
(
{
name
:=
"tc_certificate_1"
},
v_cracaId
,
v_crlSeries
,
m_validity_period
(
0
,
{
milliseconds
:=
1000
}),
{
m_psidSsp
(
1
),
m_psidSsp
(
2
,
{
bitmapSsp
:=
'001100110011'O
})
},
{
m_PsidGroupPermissions
(
m_subjectPermissions_explicit
(
v_certIssuePermissions
))
},
{
m_PsidGroupPermissions
(
m_subjectPermissions_explicit
(
v_certRequestPermissions
))
},
m_verificationKeyIndicator_verificationKey
(
m_publicVerificationKey_ecdsaNistP256
(
m_eccP256CurvePoint_compressed_y_0
(
v_compressed_y_0
)))
)
);
}
}
// End of module TestCodec_Certificates
\ No newline at end of file
}
// End of module tc_certificate_1
\ No newline at end of file
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment