Loading ttcn/AtsSecurity/ItsSecurity_Functions.ttcn +20 −15 Original line number Diff line number Diff line Loading @@ -55,20 +55,20 @@ module ItsSecurity_Functions { * @desc Prepare a secured CAM * @param p_configId The configuration identifier to be used * @param p_headerFields HeaderInfo to be inserted in the message * @param p_issuerIdentifier Add digest or AT certificate or certificate chain * @param p_signerIdentifier Add digest or AT certificate or certificate chain * @param p_addMissingHeaders Whether to add mandatory headers not present in p_headerFields * @return Secured GeoNetworking packet containing a CAM */ function f_prepareSecuredCam( in charstring p_configId, in template (omit) HeaderInfo p_headerFields := omit, in SignerIdentifier p_issuerIdentifier,// := e_certificate_digest_with_sha256, in boolean p_addMissingHeaders := true in HeaderInfo p_headerInfo, in SignerIdentifier p_signerIdentifier/*, in boolean p_addMissingHeaders := true*/ ) runs on ItsGeoNetworking return GeoNetworkingPdu { // Local variables var GnNonSecuredPacket v_gnNonSecuredPacket; var octetstring v_gnPayload; var template (value) Ieee1609Dot2Data v_securedMessage := {}; var template (value) EtsiTs103097Data v_securedMessage; // Build signed Ieee1609Dot2Data v_gnNonSecuredPacket := valueof(m_geoNwShbPacket( Loading @@ -93,14 +93,19 @@ module ItsSecurity_Functions { v_gnNonSecuredPacket ) ); /*f_buildGnSecuredCam( f_buildGnSecuredCam( v_securedMessage, m_payload_signed(v_gnPayload), p_issuerIdentifier, p_headerFields, p_configId, p_addMissingHeaders );*/ valueof(m_toBeSignedData( m_signedDataPayload( m_etsiTs103097Data_unsecured( v_gnPayload )), p_headerInfo )), p_signerIdentifier, p_configId/*, p_addMissingHeaders*/ ); // Return secured Gn packet return valueof(m_geoNwSecPdu(v_gnNonSecuredPacket, v_securedMessage)); Loading Loading @@ -186,12 +191,12 @@ module ItsSecurity_Functions { */ function f_sendSecuredCam( in charstring p_configId, in template (omit) HeaderInfo p_headerFields := omit, in SignerIdentifier p_issuerIdentifier// := e_certificate_digest_with_sha256 in HeaderInfo p_headerInfo, in SignerIdentifier p_issuerIdentifier ) runs on ItsGeoNetworking return GeoNetworkingPdu { // Local variables var GeoNetworkingPdu v_securedGnPdu := {};//f_prepareSecuredCam(p_configId, p_headerFields, p_issuerIdentifier); var GeoNetworkingPdu v_securedGnPdu := f_prepareSecuredCam(p_configId, p_headerInfo, p_issuerIdentifier); f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_securedGnPdu))); Loading ttcn/AtsSecurity/ItsSecurity_TestCases.ttcn +782 −700 File changed.Preview size limit exceeded, changes collapsed. Show changes ttcn/AtsSecurity/ItsSecurity_TestControl.ttcn +9 −411 Original line number Diff line number Diff line Loading @@ -26,422 +26,20 @@ module ItsSecurity_TestControl { * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2 Sending behaviour */ if (PICS_GN_SECURITY) { execute(TC_SEC_ITSS_SND_MSG_01_01_BV()); execute(TC_SEC_ITSS_SND_MSG_04_01_BV()); execute(TC_SEC_ITSS_SND_MSG_04_02_BV()); execute(TC_SEC_ITSS_SND_MSG_05_01_BV()); execute(TC_SEC_ITSS_SND_MSG_01_BV()); /** * @desc Sending behaviour test cases for CAM profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.4 CAM profile */ execute(TC_SEC_ITSS_SND_CAM_01_01_BV()); execute(TC_SEC_ITSS_SND_CAM_02_01_BV()); execute(TC_SEC_ITSS_SND_CAM_05_01_BV()); execute(TC_SEC_ITSS_SND_CAM_05_02_BV()); execute(TC_SEC_ITSS_SND_CAM_06_01_BV()); execute(TC_SEC_ITSS_SND_CAM_07_01_TI()); execute(TC_SEC_ITSS_SND_CAM_08_01_BV()); execute(TC_SEC_ITSS_SND_CAM_09_01_BV()); execute(TC_SEC_ITSS_SND_CAM_09_02_BV()); execute(TC_SEC_ITSS_SND_CAM_10_01_BV()); execute(TC_SEC_ITSS_SND_CAM_12_01_BV()); execute(TC_SEC_ITSS_SND_CAM_14_01_BV()); execute(TC_SEC_ITSS_SND_CAM_15_01_BV()); execute(TC_SEC_ITSS_SND_CAM_16_01_BV()); /** * @desc Sending behaviour test cases for DENM profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.5 DENM profile */ execute(TC_SEC_ITSS_SND_DENM_01_01_BV()); execute(TC_SEC_ITSS_SND_DENM_02_01_BV()); execute(TC_SEC_ITSS_SND_DENM_03_01_BV()); execute(TC_SEC_ITSS_SND_DENM_04_01_BV()); if (PICS_CERTIFICATE_SELECTION) { execute(TC_SEC_ITSS_SND_DENM_05_01_BV()); if (PICS_USE_CIRCULAR_REGION) { execute(TC_SEC_ITSS_SND_DENM_05_02_BV()); } if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_SND_DENM_05_03_BV()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_SND_DENM_05_04_BV()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_SND_DENM_05_05_BV()); } } execute(TC_SEC_ITSS_SND_DENM_08_01_BV()); execute(TC_SEC_ITSS_SND_DENM_10_01_BV()); if (PICS_ITS_AID_OTHER_PROFILE) { execute(TC_SEC_ITSS_SND_GENMSG_01_01_BV()); execute(TC_SEC_ITSS_SND_GENMSG_02_01_BV()); execute(TC_SEC_ITSS_SND_GENMSG_03_01_BV()); execute(TC_SEC_ITSS_SND_GENMSG_04_01_BV()); if (PICS_CERTIFICATE_SELECTION) { execute(TC_SEC_ITSS_SND_GENMSG_05_01_BV()); if (PICS_USE_CIRCULAR_REGION) { execute(TC_SEC_ITSS_SND_GENMSG_05_02_BV()); } if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_SND_GENMSG_05_03_BV()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_SND_GENMSG_05_04_BV()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_SND_GENMSG_05_05_BV()); } } else { execute(TC_SEC_ITSS_SND_GENMSG_05_06_BV()); } execute(TC_SEC_ITSS_SND_GENMSG_06_01_BV()); execute(TC_SEC_ITSS_SND_GENMSG_07_01_BV()); } /** * @desc Sending behaviour test cases for certificates profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.7 Profiles for certificates */ execute(TC_SEC_ITSS_SND_CERT_01_01_BV()); execute(TC_SEC_ITSS_SND_CERT_01_02_BV()); execute(TC_SEC_ITSS_SND_CERT_02_01_BV()); if (PICS_CERTIFICATE_SELECTION) { if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_SND_CERT_04_01_BV()); execute(TC_SEC_ITSS_SND_CERT_04_02_BV()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_SND_CERT_05_01_BV()); execute(TC_SEC_ITSS_SND_CERT_05_02_BV()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_SND_CERT_06_01_BV()); execute(TC_SEC_ITSS_SND_CERT_06_02_BV()); } execute(TC_SEC_ITSS_SND_CERT_07_01_BV()); if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_SND_CERT_07_02_BV()); } } execute(TC_SEC_ITSS_SND_CERT_08_01_BV()); execute(TC_SEC_ITSS_SND_CERT_09_01_BV()); execute(TC_SEC_ITSS_SND_CERT_09_02_BV()); execute(TC_SEC_ITSS_SND_CERT_10_01_BV()); execute(TC_SEC_ITSS_SND_CERT_10_02_BV()); execute(TC_SEC_ITSS_SND_CERT_11_01_BV()); execute(TC_SEC_ITSS_SND_CERT_11_02_BV()); execute(TC_SEC_ITSS_SND_CERT_12_01_BV()); /** * @desc Sending behaviour test cases for AA certificate profil * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.7.7 AA certificate profile */ execute(TC_SEC_ITSS_SND_CERT_AA_01_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_02_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_03_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_04_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_05_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_08_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_10_01_BV()); /** * @desc Sending behaviour test cases for AT certificate profil * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.7.8 AT certificate profile */ execute(TC_SEC_ITSS_SND_CERT_AT_01_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_02_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_03_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_04_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_05_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_07_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_08_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_10_01_BV()); } /** * @desc Receiver behaviour test cases * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3 Receiver behaviour */ if (PICS_GN_SECURITY) { /** * @desc Sending behaviour test cases for CAM profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.2 CAM Profile */ execute(TC_SEC_ITSS_RCV_CAM_01_01_BV()); execute(TC_SEC_ITSS_RCV_CAM_01_02_BV()); execute(TC_SEC_ITSS_RCV_CAM_01_03_BV()); execute(TC_SEC_ITSS_RCV_CAM_02_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_02_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_04_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_05_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_06_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_06a_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_07_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_08_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_09_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_10_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_11_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_12_BV()); execute(TC_SEC_ITSS_RCV_CAM_04_13_BO()); execute(TC_SEC_ITSS_RCV_CAM_05_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_05_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_05_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_05_04_BO()); execute(TC_SEC_ITSS_RCV_CAM_05_05_BO()); execute(TC_SEC_ITSS_RCV_CAM_06_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_06_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_07_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_07_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_04_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_05_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_06_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_07_BO()); execute(TC_SEC_ITSS_RCV_CAM_10_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_10_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_11_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_11_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_11_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_12_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_12_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_12_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_12_04_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_04_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_05_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_06_BO()); /** * @desc Sending behaviour test cases for DENM profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.3 DENM Profile */ execute(TC_SEC_ITSS_RCV_DENM_01_01_BV()); execute(TC_SEC_ITSS_RCV_DENM_01_02_BV()); execute(TC_SEC_ITSS_RCV_DENM_01_03_BV()); execute(TC_SEC_ITSS_RCV_DENM_01_04_BV()); execute(TC_SEC_ITSS_RCV_DENM_01_05_BV()); execute(TC_SEC_ITSS_RCV_DENM_02_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_02_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_03_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_04_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_05_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_06_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_06a_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_07_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_08_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_09_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_10_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_11_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_12_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_13_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_14_BO()); execute(TC_SEC_ITSS_RCV_DENM_05_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_05_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_05_03_BO()); execute(TC_SEC_ITSS_RCV_DENM_05_04_BO()); execute(TC_SEC_ITSS_RCV_DENM_06_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_06_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_07_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_07_02_BO()); if (PICS_USE_CIRCULAR_REGION) { execute(TC_SEC_ITSS_RCV_DENM_08_01_BO()); } if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_RCV_DENM_08_02_BO()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_RCV_DENM_08_03_BO()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_RCV_DENM_08_04_BO()); } execute(TC_SEC_ITSS_RCV_DENM_09_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_09_03_BO()); execute(TC_SEC_ITSS_RCV_DENM_09_04_BO()); execute(TC_SEC_ITSS_RCV_DENM_09_05_BO()); execute(TC_SEC_ITSS_RCV_DENM_09_06_BO()); execute(TC_SEC_ITSS_RCV_DENM_10_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_10_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_11_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_11_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_12_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_12_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_12_03_BO()); execute(TC_SEC_ITSS_RCV_DENM_12_04_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_03_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_04_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_05_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_06_BO()); /** * @desc Receiving behaviour test cases for Other profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.4 Generic Signed Message Profile */ if (PICS_GN_GBC_SRC) { execute(TC_SEC_ITSS_RCV_GENMSG_01_01_BV()); execute(TC_SEC_ITSS_RCV_GENMSG_01_02_BV()); execute(TC_SEC_ITSS_RCV_GENMSG_01_03_BV()); execute(TC_SEC_ITSS_RCV_GENMSG_01_04_BV()); execute(TC_SEC_ITSS_RCV_GENMSG_01_05_BV()); execute(TC_SEC_ITSS_RCV_GENMSG_02_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_02_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_03_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_04_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_05_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_06_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_06a_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_07_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_08_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_09_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_11_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_12_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_13_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_05_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_05_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_05_03_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_05_04_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_06_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_06_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_07_01_BO()); if (PICS_USE_CIRCULAR_REGION) { execute(TC_SEC_ITSS_RCV_GENMSG_08_01_BO()); } if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_RCV_GENMSG_08_02_BO()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_RCV_GENMSG_08_03_BO()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_RCV_GENMSG_08_04_BO()); } execute(TC_SEC_ITSS_RCV_GENMSG_09_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_09_03_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_09_04_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_09_05_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_09_06_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_10_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_10_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_11_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_11_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_12_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_12_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_12_03_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_12_04_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_03_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_04_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_05_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_06_BO()); } /** * @desc Receiving behaviour test cases for certificates profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.5 Profiles for certificates */ execute(TC_SEC_ITSS_RCV_CERT_01_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_01_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_01_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_01_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_02_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_02_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_02_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_02_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_03_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_03_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_04_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_05_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_05_02_BO()); if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_RCV_CERT_06_01_BV()); execute(TC_SEC_ITSS_RCV_CERT_06_02_BV()); execute(TC_SEC_ITSS_RCV_CERT_06_03_BV()); execute(TC_SEC_ITSS_RCV_CERT_06_04_BV()); execute(TC_SEC_ITSS_RCV_CERT_06_05_BV()); execute(TC_SEC_ITSS_RCV_CERT_06_06_BO()); execute(TC_SEC_ITSS_RCV_CERT_06_07_BO()); execute(TC_SEC_ITSS_RCV_CERT_06_08_BO()); } if (PICS_USE_CIRCULAR_REGION) { execute(TC_SEC_ITSS_RCV_CERT_07_01_BV()); execute(TC_SEC_ITSS_RCV_CERT_07_02_BV()); execute(TC_SEC_ITSS_RCV_CERT_07_03_BV()); execute(TC_SEC_ITSS_RCV_CERT_07_04_BV()); execute(TC_SEC_ITSS_RCV_CERT_07_05_BV()); execute(TC_SEC_ITSS_RCV_CERT_07_06_BO()); execute(TC_SEC_ITSS_RCV_CERT_07_07_BO()); execute(TC_SEC_ITSS_RCV_CERT_07_08_BO()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_RCV_CERT_08_01_BV()); execute(TC_SEC_ITSS_RCV_CERT_08_02_BV()); execute(TC_SEC_ITSS_RCV_CERT_08_03_BV()); execute(TC_SEC_ITSS_RCV_CERT_08_04_BV()); execute(TC_SEC_ITSS_RCV_CERT_08_05_BV()); execute(TC_SEC_ITSS_RCV_CERT_08_06_BO()); execute(TC_SEC_ITSS_RCV_CERT_08_07_BO()); execute(TC_SEC_ITSS_RCV_CERT_08_08_BO()); execute(TC_SEC_ITSS_RCV_CERT_08_09_BO()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_RCV_CERT_09_01_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_02_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_03_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_04_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_05_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_06_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_07_BO()); execute(TC_SEC_ITSS_RCV_CERT_09_08_BO()); execute(TC_SEC_ITSS_RCV_CERT_09_09_BO()); execute(TC_SEC_ITSS_RCV_CERT_09_10_BO()); execute(TC_SEC_ITSS_RCV_CERT_09_11_BO()); } execute(TC_SEC_ITSS_RCV_CERT_10_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_10_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_10_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_10_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_10_05_BO()); execute(TC_SEC_ITSS_RCV_CERT_10_06_BO()); execute(TC_SEC_ITSS_RCV_CERT_11_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_11_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_11_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_11_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_12_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_12_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_12_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_12_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_13_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_13_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_13_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_14_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_14_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_14_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_15_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_15_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_15_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_16_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_17_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_17_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_17_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_17_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_18_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_18_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_19_01_BO()); execute(TC_SEC_ITSS_SND_CAM_01_BV()); execute(TC_SEC_ITSS_SND_CAM_02_BV()); execute(TC_SEC_ITSS_SND_CAM_03_BV()); execute(TC_SEC_ITSS_SND_CAM_04_BV()); execute(TC_SEC_ITSS_SND_CAM_05_BV()); execute(TC_SEC_ITSS_SND_CAM_06_BV()); execute(TC_SEC_ITSS_SND_CAM_07_BV()); execute(TC_SEC_ITSS_SND_CAM_08_BV()); } } // End of 'control' statement Loading ttcn/TestCodec/TestCodec_SecuredMessages.ttcn +19 −10 Original line number Diff line number Diff line Loading @@ -188,7 +188,16 @@ module TestCodec_SecuredMessages { } ) ); v_raw_payload_to_be_signed := bit2oct(encvalue(v_gnPacket)); v_raw_payload_to_be_signed := bit2oct(encvalue(m_toBeSignedData( m_signedDataPayload( m_etsiTs103097Data_unsecured(v_raw_payload_to_be_signed) ), m_headerInfo_gn( -, 12345, 123456 ) ))); v_secured_data := m_etsiTs103097Data_signed( m_signedData( sha256, Loading Loading
ttcn/AtsSecurity/ItsSecurity_Functions.ttcn +20 −15 Original line number Diff line number Diff line Loading @@ -55,20 +55,20 @@ module ItsSecurity_Functions { * @desc Prepare a secured CAM * @param p_configId The configuration identifier to be used * @param p_headerFields HeaderInfo to be inserted in the message * @param p_issuerIdentifier Add digest or AT certificate or certificate chain * @param p_signerIdentifier Add digest or AT certificate or certificate chain * @param p_addMissingHeaders Whether to add mandatory headers not present in p_headerFields * @return Secured GeoNetworking packet containing a CAM */ function f_prepareSecuredCam( in charstring p_configId, in template (omit) HeaderInfo p_headerFields := omit, in SignerIdentifier p_issuerIdentifier,// := e_certificate_digest_with_sha256, in boolean p_addMissingHeaders := true in HeaderInfo p_headerInfo, in SignerIdentifier p_signerIdentifier/*, in boolean p_addMissingHeaders := true*/ ) runs on ItsGeoNetworking return GeoNetworkingPdu { // Local variables var GnNonSecuredPacket v_gnNonSecuredPacket; var octetstring v_gnPayload; var template (value) Ieee1609Dot2Data v_securedMessage := {}; var template (value) EtsiTs103097Data v_securedMessage; // Build signed Ieee1609Dot2Data v_gnNonSecuredPacket := valueof(m_geoNwShbPacket( Loading @@ -93,14 +93,19 @@ module ItsSecurity_Functions { v_gnNonSecuredPacket ) ); /*f_buildGnSecuredCam( f_buildGnSecuredCam( v_securedMessage, m_payload_signed(v_gnPayload), p_issuerIdentifier, p_headerFields, p_configId, p_addMissingHeaders );*/ valueof(m_toBeSignedData( m_signedDataPayload( m_etsiTs103097Data_unsecured( v_gnPayload )), p_headerInfo )), p_signerIdentifier, p_configId/*, p_addMissingHeaders*/ ); // Return secured Gn packet return valueof(m_geoNwSecPdu(v_gnNonSecuredPacket, v_securedMessage)); Loading Loading @@ -186,12 +191,12 @@ module ItsSecurity_Functions { */ function f_sendSecuredCam( in charstring p_configId, in template (omit) HeaderInfo p_headerFields := omit, in SignerIdentifier p_issuerIdentifier// := e_certificate_digest_with_sha256 in HeaderInfo p_headerInfo, in SignerIdentifier p_issuerIdentifier ) runs on ItsGeoNetworking return GeoNetworkingPdu { // Local variables var GeoNetworkingPdu v_securedGnPdu := {};//f_prepareSecuredCam(p_configId, p_headerFields, p_issuerIdentifier); var GeoNetworkingPdu v_securedGnPdu := f_prepareSecuredCam(p_configId, p_headerInfo, p_issuerIdentifier); f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_securedGnPdu))); Loading
ttcn/AtsSecurity/ItsSecurity_TestCases.ttcn +782 −700 File changed.Preview size limit exceeded, changes collapsed. Show changes
ttcn/AtsSecurity/ItsSecurity_TestControl.ttcn +9 −411 Original line number Diff line number Diff line Loading @@ -26,422 +26,20 @@ module ItsSecurity_TestControl { * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2 Sending behaviour */ if (PICS_GN_SECURITY) { execute(TC_SEC_ITSS_SND_MSG_01_01_BV()); execute(TC_SEC_ITSS_SND_MSG_04_01_BV()); execute(TC_SEC_ITSS_SND_MSG_04_02_BV()); execute(TC_SEC_ITSS_SND_MSG_05_01_BV()); execute(TC_SEC_ITSS_SND_MSG_01_BV()); /** * @desc Sending behaviour test cases for CAM profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.4 CAM profile */ execute(TC_SEC_ITSS_SND_CAM_01_01_BV()); execute(TC_SEC_ITSS_SND_CAM_02_01_BV()); execute(TC_SEC_ITSS_SND_CAM_05_01_BV()); execute(TC_SEC_ITSS_SND_CAM_05_02_BV()); execute(TC_SEC_ITSS_SND_CAM_06_01_BV()); execute(TC_SEC_ITSS_SND_CAM_07_01_TI()); execute(TC_SEC_ITSS_SND_CAM_08_01_BV()); execute(TC_SEC_ITSS_SND_CAM_09_01_BV()); execute(TC_SEC_ITSS_SND_CAM_09_02_BV()); execute(TC_SEC_ITSS_SND_CAM_10_01_BV()); execute(TC_SEC_ITSS_SND_CAM_12_01_BV()); execute(TC_SEC_ITSS_SND_CAM_14_01_BV()); execute(TC_SEC_ITSS_SND_CAM_15_01_BV()); execute(TC_SEC_ITSS_SND_CAM_16_01_BV()); /** * @desc Sending behaviour test cases for DENM profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.5 DENM profile */ execute(TC_SEC_ITSS_SND_DENM_01_01_BV()); execute(TC_SEC_ITSS_SND_DENM_02_01_BV()); execute(TC_SEC_ITSS_SND_DENM_03_01_BV()); execute(TC_SEC_ITSS_SND_DENM_04_01_BV()); if (PICS_CERTIFICATE_SELECTION) { execute(TC_SEC_ITSS_SND_DENM_05_01_BV()); if (PICS_USE_CIRCULAR_REGION) { execute(TC_SEC_ITSS_SND_DENM_05_02_BV()); } if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_SND_DENM_05_03_BV()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_SND_DENM_05_04_BV()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_SND_DENM_05_05_BV()); } } execute(TC_SEC_ITSS_SND_DENM_08_01_BV()); execute(TC_SEC_ITSS_SND_DENM_10_01_BV()); if (PICS_ITS_AID_OTHER_PROFILE) { execute(TC_SEC_ITSS_SND_GENMSG_01_01_BV()); execute(TC_SEC_ITSS_SND_GENMSG_02_01_BV()); execute(TC_SEC_ITSS_SND_GENMSG_03_01_BV()); execute(TC_SEC_ITSS_SND_GENMSG_04_01_BV()); if (PICS_CERTIFICATE_SELECTION) { execute(TC_SEC_ITSS_SND_GENMSG_05_01_BV()); if (PICS_USE_CIRCULAR_REGION) { execute(TC_SEC_ITSS_SND_GENMSG_05_02_BV()); } if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_SND_GENMSG_05_03_BV()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_SND_GENMSG_05_04_BV()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_SND_GENMSG_05_05_BV()); } } else { execute(TC_SEC_ITSS_SND_GENMSG_05_06_BV()); } execute(TC_SEC_ITSS_SND_GENMSG_06_01_BV()); execute(TC_SEC_ITSS_SND_GENMSG_07_01_BV()); } /** * @desc Sending behaviour test cases for certificates profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.7 Profiles for certificates */ execute(TC_SEC_ITSS_SND_CERT_01_01_BV()); execute(TC_SEC_ITSS_SND_CERT_01_02_BV()); execute(TC_SEC_ITSS_SND_CERT_02_01_BV()); if (PICS_CERTIFICATE_SELECTION) { if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_SND_CERT_04_01_BV()); execute(TC_SEC_ITSS_SND_CERT_04_02_BV()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_SND_CERT_05_01_BV()); execute(TC_SEC_ITSS_SND_CERT_05_02_BV()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_SND_CERT_06_01_BV()); execute(TC_SEC_ITSS_SND_CERT_06_02_BV()); } execute(TC_SEC_ITSS_SND_CERT_07_01_BV()); if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_SND_CERT_07_02_BV()); } } execute(TC_SEC_ITSS_SND_CERT_08_01_BV()); execute(TC_SEC_ITSS_SND_CERT_09_01_BV()); execute(TC_SEC_ITSS_SND_CERT_09_02_BV()); execute(TC_SEC_ITSS_SND_CERT_10_01_BV()); execute(TC_SEC_ITSS_SND_CERT_10_02_BV()); execute(TC_SEC_ITSS_SND_CERT_11_01_BV()); execute(TC_SEC_ITSS_SND_CERT_11_02_BV()); execute(TC_SEC_ITSS_SND_CERT_12_01_BV()); /** * @desc Sending behaviour test cases for AA certificate profil * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.7.7 AA certificate profile */ execute(TC_SEC_ITSS_SND_CERT_AA_01_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_02_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_03_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_04_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_05_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_08_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AA_10_01_BV()); /** * @desc Sending behaviour test cases for AT certificate profil * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.7.8 AT certificate profile */ execute(TC_SEC_ITSS_SND_CERT_AT_01_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_02_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_03_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_04_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_05_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_07_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_08_01_BV()); execute(TC_SEC_ITSS_SND_CERT_AT_10_01_BV()); } /** * @desc Receiver behaviour test cases * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3 Receiver behaviour */ if (PICS_GN_SECURITY) { /** * @desc Sending behaviour test cases for CAM profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.2 CAM Profile */ execute(TC_SEC_ITSS_RCV_CAM_01_01_BV()); execute(TC_SEC_ITSS_RCV_CAM_01_02_BV()); execute(TC_SEC_ITSS_RCV_CAM_01_03_BV()); execute(TC_SEC_ITSS_RCV_CAM_02_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_02_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_04_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_05_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_06_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_06a_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_07_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_08_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_09_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_10_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_11_BO()); execute(TC_SEC_ITSS_RCV_CAM_04_12_BV()); execute(TC_SEC_ITSS_RCV_CAM_04_13_BO()); execute(TC_SEC_ITSS_RCV_CAM_05_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_05_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_05_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_05_04_BO()); execute(TC_SEC_ITSS_RCV_CAM_05_05_BO()); execute(TC_SEC_ITSS_RCV_CAM_06_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_06_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_07_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_07_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_04_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_05_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_06_BO()); execute(TC_SEC_ITSS_RCV_CAM_09_07_BO()); execute(TC_SEC_ITSS_RCV_CAM_10_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_10_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_11_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_11_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_11_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_12_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_12_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_12_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_12_04_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_01_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_02_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_03_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_04_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_05_BO()); execute(TC_SEC_ITSS_RCV_CAM_13_06_BO()); /** * @desc Sending behaviour test cases for DENM profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.3 DENM Profile */ execute(TC_SEC_ITSS_RCV_DENM_01_01_BV()); execute(TC_SEC_ITSS_RCV_DENM_01_02_BV()); execute(TC_SEC_ITSS_RCV_DENM_01_03_BV()); execute(TC_SEC_ITSS_RCV_DENM_01_04_BV()); execute(TC_SEC_ITSS_RCV_DENM_01_05_BV()); execute(TC_SEC_ITSS_RCV_DENM_02_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_02_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_03_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_04_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_05_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_06_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_06a_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_07_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_08_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_09_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_10_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_11_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_12_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_13_BO()); execute(TC_SEC_ITSS_RCV_DENM_04_14_BO()); execute(TC_SEC_ITSS_RCV_DENM_05_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_05_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_05_03_BO()); execute(TC_SEC_ITSS_RCV_DENM_05_04_BO()); execute(TC_SEC_ITSS_RCV_DENM_06_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_06_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_07_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_07_02_BO()); if (PICS_USE_CIRCULAR_REGION) { execute(TC_SEC_ITSS_RCV_DENM_08_01_BO()); } if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_RCV_DENM_08_02_BO()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_RCV_DENM_08_03_BO()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_RCV_DENM_08_04_BO()); } execute(TC_SEC_ITSS_RCV_DENM_09_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_09_03_BO()); execute(TC_SEC_ITSS_RCV_DENM_09_04_BO()); execute(TC_SEC_ITSS_RCV_DENM_09_05_BO()); execute(TC_SEC_ITSS_RCV_DENM_09_06_BO()); execute(TC_SEC_ITSS_RCV_DENM_10_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_10_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_11_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_11_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_12_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_12_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_12_03_BO()); execute(TC_SEC_ITSS_RCV_DENM_12_04_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_01_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_02_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_03_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_04_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_05_BO()); execute(TC_SEC_ITSS_RCV_DENM_13_06_BO()); /** * @desc Receiving behaviour test cases for Other profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.4 Generic Signed Message Profile */ if (PICS_GN_GBC_SRC) { execute(TC_SEC_ITSS_RCV_GENMSG_01_01_BV()); execute(TC_SEC_ITSS_RCV_GENMSG_01_02_BV()); execute(TC_SEC_ITSS_RCV_GENMSG_01_03_BV()); execute(TC_SEC_ITSS_RCV_GENMSG_01_04_BV()); execute(TC_SEC_ITSS_RCV_GENMSG_01_05_BV()); execute(TC_SEC_ITSS_RCV_GENMSG_02_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_02_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_03_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_04_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_05_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_06_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_06a_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_07_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_08_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_09_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_11_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_12_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_04_13_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_05_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_05_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_05_03_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_05_04_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_06_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_06_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_07_01_BO()); if (PICS_USE_CIRCULAR_REGION) { execute(TC_SEC_ITSS_RCV_GENMSG_08_01_BO()); } if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_RCV_GENMSG_08_02_BO()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_RCV_GENMSG_08_03_BO()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_RCV_GENMSG_08_04_BO()); } execute(TC_SEC_ITSS_RCV_GENMSG_09_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_09_03_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_09_04_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_09_05_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_09_06_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_10_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_10_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_11_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_11_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_12_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_12_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_12_03_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_12_04_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_01_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_02_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_03_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_04_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_05_BO()); execute(TC_SEC_ITSS_RCV_GENMSG_13_06_BO()); } /** * @desc Receiving behaviour test cases for certificates profile * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.5 Profiles for certificates */ execute(TC_SEC_ITSS_RCV_CERT_01_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_01_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_01_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_01_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_02_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_02_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_02_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_02_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_03_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_03_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_04_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_05_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_05_02_BO()); if (PICS_USE_RECTANGULAR_REGION) { execute(TC_SEC_ITSS_RCV_CERT_06_01_BV()); execute(TC_SEC_ITSS_RCV_CERT_06_02_BV()); execute(TC_SEC_ITSS_RCV_CERT_06_03_BV()); execute(TC_SEC_ITSS_RCV_CERT_06_04_BV()); execute(TC_SEC_ITSS_RCV_CERT_06_05_BV()); execute(TC_SEC_ITSS_RCV_CERT_06_06_BO()); execute(TC_SEC_ITSS_RCV_CERT_06_07_BO()); execute(TC_SEC_ITSS_RCV_CERT_06_08_BO()); } if (PICS_USE_CIRCULAR_REGION) { execute(TC_SEC_ITSS_RCV_CERT_07_01_BV()); execute(TC_SEC_ITSS_RCV_CERT_07_02_BV()); execute(TC_SEC_ITSS_RCV_CERT_07_03_BV()); execute(TC_SEC_ITSS_RCV_CERT_07_04_BV()); execute(TC_SEC_ITSS_RCV_CERT_07_05_BV()); execute(TC_SEC_ITSS_RCV_CERT_07_06_BO()); execute(TC_SEC_ITSS_RCV_CERT_07_07_BO()); execute(TC_SEC_ITSS_RCV_CERT_07_08_BO()); } if (PICS_USE_POLYGONAL_REGION) { execute(TC_SEC_ITSS_RCV_CERT_08_01_BV()); execute(TC_SEC_ITSS_RCV_CERT_08_02_BV()); execute(TC_SEC_ITSS_RCV_CERT_08_03_BV()); execute(TC_SEC_ITSS_RCV_CERT_08_04_BV()); execute(TC_SEC_ITSS_RCV_CERT_08_05_BV()); execute(TC_SEC_ITSS_RCV_CERT_08_06_BO()); execute(TC_SEC_ITSS_RCV_CERT_08_07_BO()); execute(TC_SEC_ITSS_RCV_CERT_08_08_BO()); execute(TC_SEC_ITSS_RCV_CERT_08_09_BO()); } if (PICS_USE_IDENTIFIED_REGION) { execute(TC_SEC_ITSS_RCV_CERT_09_01_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_02_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_03_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_04_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_05_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_06_BV()); execute(TC_SEC_ITSS_RCV_CERT_09_07_BO()); execute(TC_SEC_ITSS_RCV_CERT_09_08_BO()); execute(TC_SEC_ITSS_RCV_CERT_09_09_BO()); execute(TC_SEC_ITSS_RCV_CERT_09_10_BO()); execute(TC_SEC_ITSS_RCV_CERT_09_11_BO()); } execute(TC_SEC_ITSS_RCV_CERT_10_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_10_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_10_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_10_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_10_05_BO()); execute(TC_SEC_ITSS_RCV_CERT_10_06_BO()); execute(TC_SEC_ITSS_RCV_CERT_11_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_11_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_11_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_11_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_12_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_12_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_12_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_12_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_13_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_13_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_13_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_14_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_14_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_14_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_15_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_15_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_15_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_16_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_17_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_17_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_17_03_BO()); execute(TC_SEC_ITSS_RCV_CERT_17_04_BO()); execute(TC_SEC_ITSS_RCV_CERT_18_01_BO()); execute(TC_SEC_ITSS_RCV_CERT_18_02_BO()); execute(TC_SEC_ITSS_RCV_CERT_19_01_BO()); execute(TC_SEC_ITSS_SND_CAM_01_BV()); execute(TC_SEC_ITSS_SND_CAM_02_BV()); execute(TC_SEC_ITSS_SND_CAM_03_BV()); execute(TC_SEC_ITSS_SND_CAM_04_BV()); execute(TC_SEC_ITSS_SND_CAM_05_BV()); execute(TC_SEC_ITSS_SND_CAM_06_BV()); execute(TC_SEC_ITSS_SND_CAM_07_BV()); execute(TC_SEC_ITSS_SND_CAM_08_BV()); } } // End of 'control' statement Loading
ttcn/TestCodec/TestCodec_SecuredMessages.ttcn +19 −10 Original line number Diff line number Diff line Loading @@ -188,7 +188,16 @@ module TestCodec_SecuredMessages { } ) ); v_raw_payload_to_be_signed := bit2oct(encvalue(v_gnPacket)); v_raw_payload_to_be_signed := bit2oct(encvalue(m_toBeSignedData( m_signedDataPayload( m_etsiTs103097Data_unsecured(v_raw_payload_to_be_signed) ), m_headerInfo_gn( -, 12345, 123456 ) ))); v_secured_data := m_etsiTs103097Data_signed( m_signedData( sha256, Loading