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
c30d2e87
Commit
c30d2e87
authored
Nov 01, 2018
by
Yann Garcia
Browse files
Add unit tests
parent
c3a580e8
Changes
3
Hide whitespace changes
Inline
Side-by-side
ttcn/AtsPki/ItsPki_TestCases.ttcn
View file @
c30d2e87
...
@@ -613,8 +613,6 @@ module ItsPki_TestCases {
...
@@ -613,8 +613,6 @@ module ItsPki_TestCases {
testcase
TC_SEC_PKI_SND_EA_BV_01
()
runs
on
ItsPki
system
ItsPkiSystem
{
testcase
TC_SEC_PKI_SND_EA_BV_01
()
runs
on
ItsPki
system
ItsPkiSystem
{
// Local variables
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_publicKeyCompressed
;
var
integer
v_compressedMode
;
var
integer
v_compressedMode
;
var
InnerEcRequest
v_inner_ec_request
;
var
InnerEcRequest
v_inner_ec_request
;
...
@@ -632,12 +630,12 @@ module ItsPki_TestCases {
...
@@ -632,12 +630,12 @@ module ItsPki_TestCases {
// Test adapter configuration
// Test adapter configuration
// Preamble
// Preamble
if
(
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
)
==
false
)
{
if
(
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
)
==
false
)
{
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to setup InnerEcRequest message ***"
)
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to setup InnerEcRequest message ***"
)
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
stop
;
stop
;
}
}
f_sendAcPkiPrimitive
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
);
f_sendAcPkiPrimitive
(
PICS_TS_EA_CERTIFICATE_ID
,
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
);
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_success
);
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_success
);
// Test Body
// Test Body
...
@@ -695,8 +693,6 @@ module ItsPki_TestCases {
...
@@ -695,8 +693,6 @@ module ItsPki_TestCases {
testcase
TC_SEC_PKI_SND_EA_BV_02
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
testcase
TC_SEC_PKI_SND_EA_BV_02
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
// Local variables
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_publicKeyCompressed
;
var
integer
v_compressedMode
;
var
integer
v_compressedMode
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
...
@@ -718,7 +714,7 @@ module ItsPki_TestCases {
...
@@ -718,7 +714,7 @@ module ItsPki_TestCases {
// Test adapter configuration
// Test adapter configuration
// Preamble
// Preamble
f_http_build_
enrolment
_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_http_build_
inner_ec
_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_init_default_headers_list
(
v_headers
);
f_init_default_headers_list
(
v_headers
);
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_success
);
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_success
);
...
@@ -803,8 +799,6 @@ module ItsPki_TestCases {
...
@@ -803,8 +799,6 @@ module ItsPki_TestCases {
testcase
TC_SEC_PKI_SND_EA_BV_03
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
testcase
TC_SEC_PKI_SND_EA_BV_03
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
// Local variables
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_publicKeyCompressed
;
var
integer
v_compressedMode
;
var
integer
v_compressedMode
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
...
@@ -826,7 +820,7 @@ module ItsPki_TestCases {
...
@@ -826,7 +820,7 @@ module ItsPki_TestCases {
// Test adapter configuration
// Test adapter configuration
// Preamble
// Preamble
f_http_build_
enrolment
_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_http_build_
inner_ec
_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_init_default_headers_list
(
v_headers
);
f_init_default_headers_list
(
v_headers
);
httpPort
.
send
(
httpPort
.
send
(
m_http_request
(
m_http_request
(
...
@@ -916,8 +910,6 @@ module ItsPki_TestCases {
...
@@ -916,8 +910,6 @@ module ItsPki_TestCases {
testcase
TC_SEC_PKI_SND_EA_BV_04
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
testcase
TC_SEC_PKI_SND_EA_BV_04
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
// Local variables
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_publicKeyCompressed
;
var
integer
v_compressedMode
;
var
integer
v_compressedMode
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
...
@@ -939,7 +931,7 @@ module ItsPki_TestCases {
...
@@ -939,7 +931,7 @@ module ItsPki_TestCases {
// Test adapter configuration
// Test adapter configuration
// Preamble
// Preamble
f_http_build_
enrolment
_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_http_build_
inner_ec
_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_init_default_headers_list
(
v_headers
);
f_init_default_headers_list
(
v_headers
);
httpPort
.
send
(
httpPort
.
send
(
m_http_request
(
m_http_request
(
...
@@ -1026,8 +1018,6 @@ module ItsPki_TestCases {
...
@@ -1026,8 +1018,6 @@ module ItsPki_TestCases {
testcase
TC_SEC_PKI_SND_EA_BV_05
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
testcase
TC_SEC_PKI_SND_EA_BV_05
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
// Local variables
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_publicKeyCompressed
;
var
integer
v_compressedMode
;
var
integer
v_compressedMode
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
...
@@ -1049,7 +1039,7 @@ module ItsPki_TestCases {
...
@@ -1049,7 +1039,7 @@ module ItsPki_TestCases {
// Test adapter configuration
// Test adapter configuration
// Preamble
// Preamble
f_http_build_
enrolment
_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_http_build_
inner_ec
_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_init_default_headers_list
(
v_headers
);
f_init_default_headers_list
(
v_headers
);
httpPort
.
send
(
httpPort
.
send
(
m_http_request
(
m_http_request
(
...
@@ -1135,8 +1125,6 @@ module ItsPki_TestCases {
...
@@ -1135,8 +1125,6 @@ module ItsPki_TestCases {
testcase
TC_SEC_PKI_SND_EA_BV_06
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
testcase
TC_SEC_PKI_SND_EA_BV_06
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
// Local variables
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_publicKeyCompressed
;
var
integer
v_compressedMode
;
var
integer
v_compressedMode
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
...
@@ -1158,7 +1146,7 @@ module ItsPki_TestCases {
...
@@ -1158,7 +1146,7 @@ module ItsPki_TestCases {
// Test adapter configuration
// Test adapter configuration
// Preamble
// Preamble
f_http_build_
enrolment
_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_http_build_
inner_ec
_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_init_default_headers_list
(
v_headers
);
f_init_default_headers_list
(
v_headers
);
httpPort
.
send
(
httpPort
.
send
(
m_http_request
(
m_http_request
(
...
@@ -1244,8 +1232,6 @@ module ItsPki_TestCases {
...
@@ -1244,8 +1232,6 @@ module ItsPki_TestCases {
testcase
TC_SEC_PKI_SND_EA_BV_07
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
testcase
TC_SEC_PKI_SND_EA_BV_07
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
// Local variables
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_publicKeyCompressed
;
var
integer
v_compressedMode
;
var
integer
v_compressedMode
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
...
@@ -1267,7 +1253,7 @@ module ItsPki_TestCases {
...
@@ -1267,7 +1253,7 @@ module ItsPki_TestCases {
// Test adapter configuration
// Test adapter configuration
// Preamble
// Preamble
f_http_build_
enrolment
_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_http_build_
inner_ec
_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_init_default_headers_list
(
v_headers
);
f_init_default_headers_list
(
v_headers
);
httpPort
.
send
(
httpPort
.
send
(
m_http_request
(
m_http_request
(
...
@@ -1349,8 +1335,6 @@ module ItsPki_TestCases {
...
@@ -1349,8 +1335,6 @@ module ItsPki_TestCases {
testcase
TC_SEC_PKI_SND_EA_BV_08
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
testcase
TC_SEC_PKI_SND_EA_BV_08
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
// Local variables
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_publicKeyCompressed
;
var
integer
v_compressedMode
;
var
integer
v_compressedMode
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
...
@@ -1372,7 +1356,7 @@ module ItsPki_TestCases {
...
@@ -1372,7 +1356,7 @@ module ItsPki_TestCases {
// Test adapter configuration
// Test adapter configuration
// Preamble
// Preamble
f_http_build_
enrolment
_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_http_build_
inner_ec
_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_init_default_headers_list
(
v_headers
);
f_init_default_headers_list
(
v_headers
);
httpPort
.
send
(
httpPort
.
send
(
m_http_request
(
m_http_request
(
...
@@ -1452,8 +1436,6 @@ module ItsPki_TestCases {
...
@@ -1452,8 +1436,6 @@ module ItsPki_TestCases {
testcase
TC_SEC_PKI_SND_EA_BV_09
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
testcase
TC_SEC_PKI_SND_EA_BV_09
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
// Local variables
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_publicKeyCompressed
;
var
integer
v_compressedMode
;
var
integer
v_compressedMode
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
...
@@ -1475,7 +1457,7 @@ module ItsPki_TestCases {
...
@@ -1475,7 +1457,7 @@ module ItsPki_TestCases {
// Test adapter configuration
// Test adapter configuration
// Preamble
// Preamble
f_http_build_
enrolment
_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_http_build_
inner_ec
_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_init_default_headers_list
(
v_headers
);
f_init_default_headers_list
(
v_headers
);
httpPort
.
send
(
httpPort
.
send
(
m_http_request
(
m_http_request
(
...
@@ -1555,8 +1537,6 @@ module ItsPki_TestCases {
...
@@ -1555,8 +1537,6 @@ module ItsPki_TestCases {
testcase
TC_SEC_PKI_SND_EA_BV_10
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
testcase
TC_SEC_PKI_SND_EA_BV_10
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
// Local variables
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_publicKeyCompressed
;
var
integer
v_compressedMode
;
var
integer
v_compressedMode
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
var
Oct32
v_hash_inner_ec_request_signed_for_pop
;
...
@@ -1578,7 +1558,7 @@ module ItsPki_TestCases {
...
@@ -1578,7 +1558,7 @@ module ItsPki_TestCases {
// Test adapter configuration
// Test adapter configuration
// Preamble
// Preamble
f_http_build_invalid_enrolment_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_http_build_invalid_enrolment_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
,
v_hash_inner_ec_request_signed_for_pop
);
f_init_default_headers_list
(
v_headers
);
f_init_default_headers_list
(
v_headers
);
httpPort
.
send
(
httpPort
.
send
(
m_http_request
(
m_http_request
(
...
@@ -1662,12 +1642,8 @@ module ItsPki_TestCases {
...
@@ -1662,12 +1642,8 @@ module ItsPki_TestCases {
testcase
TC_SEC_PKI_SND_EA_BV_11
()
runs
on
ItsPki
system
ItsPkiSystem
{
testcase
TC_SEC_PKI_SND_EA_BV_11
()
runs
on
ItsPki
system
ItsPkiSystem
{
// Local variables
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_private_enc_key
;
var
Oct32
v_private_enc_key
;
var
Oct32
v_publicEncKeyX
;
var
Oct32
v_publicEncKeyY
;
var
Oct32
v_publicEncKeyCompressed
;
var
Oct32
v_publicEncKeyCompressed
;
var
integer
v_compressedMode
;
var
integer
v_compressedMode
;
var
InnerEcRequest
v_inner_ec_request
;
var
InnerEcRequest
v_inner_ec_request
;
...
@@ -1689,18 +1665,19 @@ module ItsPki_TestCases {
...
@@ -1689,18 +1665,19 @@ module ItsPki_TestCases {
// Test adapter configuration
// Test adapter configuration
// Preamble
// Preamble
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
);
// Prepare AuthorizationValidationRequest message
/*if (f_generate_inner_ec_request(v_private_key, v_publicKeyX, v_publicKeyY, v_publicKeyCompressed, v_compressedMode, v_inner_ec_request) == false) {
// TODO Regroup all into f_generate_authorization_validation_request
if
(
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
)
==
false
)
{
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to setup InnerEcRequest message ***"
)
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to setup InnerEcRequest message ***"
)
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
stop
;
stop
;
}*/
}
if
(
f_generate_ec_certificate
(
v_private_key
,
v_inner_ec_request
,
v_ec_certificate
)
==
false
)
{
if
(
f_generate_ec_certificate
(
v_private_key
,
v_inner_ec_request
,
v_ec_certificate
)
==
false
)
{
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to generate EC certificate ***"
)
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to generate EC certificate ***"
)
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
stop
;
stop
;
}
}
if
(
f_generate_inner_at_request
(
v_ec_certificate
,
v_private_key
,
vc_eaCertificate
,
vc_eaHashedId8
,
true
,
v_private_enc_key
,
v_publicEncKeyX
,
v_publicEncKeyY
,
v_publicEncKeyCompressed
,
v_compressedMode
,
v_inner_at_request
,
v_inner_at_request_data
)
==
false
)
{
if
(
f_generate_inner_at_request
(
v_ec_certificate
,
v_private_key
,
vc_eaCertificate
,
vc_eaHashedId8
,
true
,
v_private_enc_key
,
v_publicEncKeyCompressed
,
v_compressedMode
,
v_inner_at_request
,
v_inner_at_request_data
)
==
false
)
{
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to setup InnerAtRequest message ***"
)
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to setup InnerAtRequest message ***"
)
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
stop
;
stop
;
...
@@ -1710,7 +1687,7 @@ module ItsPki_TestCases {
...
@@ -1710,7 +1687,7 @@ module ItsPki_TestCases {
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
stop
;
stop
;
}
}
f_sendAcPkiPrimitive
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
);
f_sendAcPkiPrimitive
(
PICS_TS_AA_CERTIFICATE_ID
,
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
);
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_success
);
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_success
);
// Test Body
// Test Body
...
@@ -1734,7 +1711,122 @@ module ItsPki_TestCases {
...
@@ -1734,7 +1711,122 @@ module ItsPki_TestCases {
LibItsPki_Functions
.
f_cfDown
();
LibItsPki_Functions
.
f_cfDown
();
}
// End of testcase TC_SEC_PKI_SND_EA_BV_11
}
// End of testcase TC_SEC_PKI_SND_EA_BV_11
/**
* @desc The AuthorizationValidationResponse message shall be sent by the EA to the AA across the interface
* at reference point S4 in response to a received AuthorizationValidationRequest message
* <pre>
* Pics Selection:
* Initial conditions:
* with {
* the IUT being in the "operational state"
* }
* Expected behaviour:
* ensure that {
* when {
* the IUT receives a AuthorizationValidationRequest message
* }
* then {
* the IUT sends a AuthorizationValidationResponse message
* across the reference point S4 to the AA
* }
* }
* </pre>
*
* @see ETSI TS ITS-00546v006 TP AuthValRes_1_EA
* @reference ETSI TS 102 941, clause 6.2.3.4
*/
testcase
TC_SEC_PKI_SND_EA_BV_12
()
runs
on
ItsPkiHttp
system
ItsPkiHttpSystem
{
// Local variables
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyCompressed
;
var
Oct32
v_private_enc_key
;
var
Oct32
v_publicEncKeyCompressed
;
var
integer
v_compressedMode
;
var
InnerEcRequest
v_inner_ec_request
;
var
Certificate
v_ec_certificate
;
var
InnerAtRequest
v_inner_at_request
;
var
Ieee1609Dot2Data
v_inner_at_request_data
;
var
AuthorizationValidationRequest
v_authorization_validation_request
;
var
HeaderLines
v_headers
;
var
HttpMessage
v_response
;
var
Ieee1609Dot2Data
v_ieee1609dot2_signed_and_encrypted_data
;
var
EtsiTs102941Data
v_etsi_ts_102941_data
;
// Test control
if
(
not
PICS_IUT_EA_ROLE
)
{
log
(
"*** "
&
testcasename
()
&
": PICS_IUT_EA_ROLE required for executing the TC ***"
);
setverdict
(
inconc
);
stop
;
}
// Test component configuration
f_cfHttpUp
();
// Default value: CERT_TS_A_EA
// Test adapter configuration
// Preamble
if
(
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
)
==
false
)
{
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to setup InnerEcRequest message ***"
)
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
stop
;
}
if
(
f_generate_ec_certificate
(
v_private_key
,
v_inner_ec_request
,
v_ec_certificate
)
==
false
)
{
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to generate EC certificate ***"
)
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
stop
;
}
if
(
f_generate_inner_at_request
(
v_ec_certificate
,
v_private_key
,
vc_eaCertificate
,
vc_eaHashedId8
,
true
,
v_private_enc_key
,
v_publicEncKeyCompressed
,
v_compressedMode
,
v_inner_at_request
,
v_inner_at_request_data
)
==
false
)
{
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to setup InnerAtRequest message ***"
)
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
stop
;
}
if
(
f_generate_authorization_validation_request
(
v_inner_at_request
,
v_ec_certificate
,
v_authorization_validation_request
)
==
false
)
{
log
(
"*** "
&
testcasename
()
&
": FAIL: Failed to setup AuthorisationValidationRequest message ***"
)
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_error
);
stop
;
}
f_http_build_authorization_validation_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_ieee1609dot2_signed_and_encrypted_data
);
f_init_default_headers_list
(
v_headers
);
httpPort
.
send
(
m_http_request
(
m_http_request_get
(
PICS_HTTP_GET_URI
,
v_headers
,
m_http_message_body_binary
(
m_binary_body_ieee1609dot2_data
(
v_ieee1609dot2_signed_and_encrypted_data
)))));
f_selfOrClientSyncAndVerdictPreamble
(
c_prDone
,
e_success
);
// Test Body
tc_ac
.
start
;
alt
{
[]
httpPort
.
receive
(
mw_http_response
(
mw_http_response_ok
(
mw_http_message_body_binary
(
mw_binary_body_ieee1609dot2_data
(
mw_authorizationValidationResponseMessage
(
mw_encryptedData
(
-
,
mw_SymmetricCiphertext_aes128ccm
)))))))
->
value
v_response
{
tc_ac
.
stop
;
log
(
"*** "
&
testcasename
()
&
": PASS: AuthorizationValidationResponse received ***"
);
f_selfOrClientSyncAndVerdictTestBody
(
c_tbDone
,
e_success
);
}
[]
tc_ac
.
timeout
{
log
(
"*** "
&
testcasename
()
&
": INCONC: Expected message not received ***"
);
f_selfOrClientSyncAndVerdictTestBody
(
c_tbDone
,
e_timeout
);
}
}
// End of 'alt' statement
// Postamble
f_cfHttpDown
();
}
// End of testcase TC_SEC_PKI_SND_EA_BV_12
}
// End of group authorization_vaidation_response
}
// End of group authorization_vaidation_response
}
// End of group ea_behavior
}
// End of group ea_behavior
...
...
LibIts
@
b31f565a
Compare
866e58fe
...
b31f565a
Subproject commit
866e58fea050293a73c48bd69ad1130c9ed48b4e
Subproject commit
b31f565ae97899e5bf9f80e65130b0ba177fbcc4
ttcn/TestCodec/TestCodec_Pki.ttcn
View file @
c30d2e87
...
@@ -24,6 +24,8 @@ module TestCodec_Pki {
...
@@ -24,6 +24,8 @@ module TestCodec_Pki {
import
from
IEEE1609dot2
language
"ASN.1:1997"
all
;
import
from
IEEE1609dot2
language
"ASN.1:1997"
all
;
import
from
EtsiTs102941BaseTypes
language
"ASN.1:1997"
all
;
import
from
EtsiTs102941BaseTypes
language
"ASN.1:1997"
all
;
import
from
EtsiTs102941TypesEnrolment
language
"ASN.1:1997"
all
;
import
from
EtsiTs102941TypesEnrolment
language
"ASN.1:1997"
all
;
import
from
EtsiTs102941TypesAuthorization
language
"ASN.1:1997"
all
;
import
from
EtsiTs102941TypesAuthorizationValidation
language
"ASN.1:1997"
all
;
import
from
EtsiTs102941MessagesItss
language
"ASN.1:1997"
all
;
import
from
EtsiTs102941MessagesItss
language
"ASN.1:1997"
all
;
import
from
EtsiTs103097Module
language
"ASN.1:1997"
all
;
import
from
EtsiTs103097Module
language
"ASN.1:1997"
all
;
...
@@ -141,7 +143,7 @@ module TestCodec_Pki {
...
@@ -141,7 +143,7 @@ module TestCodec_Pki {
}
}
// Generate InnerEcRequest
// Generate InnerEcRequest
if
(
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
)
==
false
)
{
if
(
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
)
==
false
)
{
setverdict
(
fail
,
"Failed to generate InnerEcRequest message"
);
setverdict
(
fail
,
"Failed to generate InnerEcRequest message"
);
stop
;
stop
;
}
}
...
@@ -245,7 +247,7 @@ module TestCodec_Pki {
...
@@ -245,7 +247,7 @@ module TestCodec_Pki {
LibItsPki_Functions
.
f_cfUp
();
LibItsPki_Functions
.
f_cfUp
();
// Create PKI InnerEcRequest request
// Create PKI InnerEcRequest request
if
(
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
)
==
false
)
{
if
(
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
)
==
false
)
{
setverdict
(
fail
,
"Failed to setup InnerEcRequest message"
);
setverdict
(
fail
,
"Failed to setup InnerEcRequest message"
);
stop
;
stop
;
}
}
...
@@ -571,6 +573,28 @@ module TestCodec_Pki {
...
@@ -571,6 +573,28 @@ module TestCodec_Pki {
}
// End of testcase tc_inner_ec_response_2
}
// End of testcase tc_inner_ec_response_2
testcase
tc_inner_ec_functions_1
()
runs
on
TCType
system
TCType
{
testcase
tc_inner_ec_functions_1
()
runs
on
TCType
system
TCType
{
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyCompressed
;
var
integer
v_compressedMode
;
var
InnerEcRequest
v_inner_ec_request
;
var
boolean
v_ret
:=
false
;
if
(
not
(
PICS_SEC_FIXED_KEYS
))
{
setverdict
(
inconc
,
"Please set PICS_SEC_FIXED_KEYS to true"
);
stop
;
}
f_loadCertificates
(
PX_IUT_SEC_CONFIG_NAME
);
v_ret
:=
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
);
if
(
v_ret
==
true
)
{
setverdict
(
pass
);
}
else
{
setverdict
(
fail
);
}
}
// End of testcase tc_inner_ec_functions_1
testcase
tc_inner_ec_functions_2
()
runs
on
TCType
system
TCType
{
var
Oct32
v_private_key
;
var
Oct32
v_private_key
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyX
;
var
Oct32
v_publicKeyY
;
var
Oct32
v_publicKeyY
;
...
@@ -581,7 +605,19 @@ module TestCodec_Pki {
...
@@ -581,7 +605,19 @@ module TestCodec_Pki {
valueof
(
m_appPermissions
(
36
,
{
bitmapSsp
:=
'
830001
'
O
})),
valueof
(
m_appPermissions
(
36
,
{
bitmapSsp
:=
'
830001
'
O
})),
valueof
(
m_appPermissions
(
37
,
{
bitmapSsp
:=
'
830001
'
O
}))
valueof
(
m_appPermissions
(
37
,
{
bitmapSsp
:=
'
830001
'
O
}))
};
};
var
template
(
value
)
EtsiTs103097Certificate
v_cert
;
var
EtsiTs103097Certificate
v_cert_ts_a_ea
;
var
EtsiTs103097Certificate
v_cert_iut_a_ea
;
var
Oct32
v_private_key_cert_ts_a_ea
;
var
Oct32
v_private_key_cert_iut_a_ea
;
var
Oct32
v_private_enc_key_cert_ts_a_ea
;
var
Oct32
v_private_enc_key_cert_iut_a_ea
;
var
Oct8
v_hashed_id8_cert_ts_a_ea
;
var
Oct8
v_hashed_id8_cert_iut_a_ea
;
var
Oct32
v_whole_hash_cert_ts_a_ea
;
var
Oct32
v_whole_hash_cert_iut_a_ea
;
var
InnerEcRequest
v_inner_ec_request
;
var
InnerEcRequest
v_inner_ec_request
;
var
Certificate
v_ec_certificate
;
var
boolean
v_ret
:=
false
;
var
boolean
v_ret
:=
false
;
if
(
not
(
PICS_SEC_FIXED_KEYS
))
{
if
(
not
(
PICS_SEC_FIXED_KEYS
))
{
...
@@ -590,20 +626,40 @@ module TestCodec_Pki {
...
@@ -590,20 +626,40 @@ module TestCodec_Pki {
}
}
f_loadCertificates
(
PX_IUT_SEC_CONFIG_NAME
);
f_loadCertificates
(
PX_IUT_SEC_CONFIG_NAME
);
f_readCertificate
(
"CERT_TS_A_EA"
,
v_cert_ts_a_ea
);
f_readCertificate
(
"CERT_IUT_A_EA"
,
v_cert_iut_a_ea
);
f_readSigningKey
(
"CERT_TS_A_EA"
,
v_private_key_cert_ts_a_ea
);
f_readSigningKey
(
"CERT_IUT_A_EA"
,
v_private_key_cert_iut_a_ea
);
f_readEncryptingKey
(
"CERT_TS_A_EA"
,
v_private_enc_key_cert_ts_a_ea
);
f_readEncryptingKey
(
"CERT_IUT_A_EA"
,
v_private_enc_key_cert_iut_a_ea
);
f_getCertificateDigest
(
"CERT_TS_A_EA"
,
v_hashed_id8_cert_ts_a_ea
);
f_getCertificateDigest
(
"CERT_IUT_A_EA"
,
v_hashed_id8_cert_iut_a_ea
);
f_getCertificateHash
(
"CERT_TS_A_EA"
,
v_whole_hash_cert_ts_a_ea
);
f_getCertificateHash
(
"CERT_IUT_A_EA"
,
v_whole_hash_cert_iut_a_ea
);
v_ret
:=
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyX
,
v_publicKeyY
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
);
v_ret
:=
f_generate_inner_ec_request
(
v_private_key
,
v_publicKeyCompressed
,
v_compressedMode
,
v_inner_ec_request
);
if
(
v_ret
==
true
)
{
if
(
v_ret
==
true
)
{
setverdict
(
pass
);
setverdict
(
pass
);
}
else
{
}
else
{
setverdict
(
fail
);
setverdict
(
fail
,
"f_generate_inner_ec_request"
);
stop
;
}
}
}
// End of testcase tc_inner_ec_functions_1
v_ret
:=
f_generate_ec_certificate
(
v_private_key
,
v_inner_ec_request
,
v_ec_certificate
);
if
(
v_ret
==
true
)
{
setverdict
(
pass
);