Commit 93804a4c authored by Iztok Juvancic's avatar Iztok Juvancic
Browse files

insert test sets for integrity algorithm 133401 c2.1-c2.4

parent 0c14efde
Loading
Loading
Loading
Loading
+48 −1
Original line number Diff line number Diff line
@@ -2995,12 +2995,59 @@ module NG_NAS_TestCases {
 
            var octetstring v_mac_text_computed := fx_NG_NasIntegrityAlgorithm(v_plain_text, v_nas_enc_alg, oct2bit(v_ik), v_nas_count, v_bearer_id, 1)
            if (not(match(v_mac_text_computed, v_mac_text))) {
                log("*** " & __SCOPE__ & ": ERROR: 'v_mac_text_computed' did not return the expected value. ***");
                log("*** " & __SCOPE__ & ": ERROR: 'v_mac_text_computed-2' did not return the expected value. ***");
                setverdict(fail);
            } else {
                log("*** " & __SCOPE__ & ": 'v_mac_text_computed' returned the expected value ***");
            }

            //@see ETSI TS 133 401 V18.3.0 (2025-04) C.2.1 Test Set 1
            var O16_Type      v_ik1           := '2bd6459f82c5b300952c49104881ff48'O; // Integrity key
            var NasCount_Type v_nas_count1    := '38a6f056'O; // NAS Count
            var bitstring     v_nas_enc_alg1  := '0010'B ; // 128-NEA3 128-bit AES algorithm
            var B5_Type       v_bearer_id1    := '11000'B; // Bearer ID (Signalling)
            var octetstring   v_plain_text1   := '3332346263393840'O;
            var O4_Type       v_mac_text1     := '118c6eb8'O; // Expected mac text

            var octetstring v_mac_text_computed1 := fx_NG_NasIntegrityAlgorithm(v_plain_text1, v_nas_enc_alg1, oct2bit(v_ik1), v_nas_count1, v_bearer_id1, 0)
            if (not(match(v_mac_text_computed1, v_mac_text1))) {
                log("*** " & __SCOPE__ & ": ERROR: 'v_mac_text_computed-1' did not return the expected value. ***");
                setverdict(fail);
            } else {
                log("*** " & __SCOPE__ & ": 'v_mac_text_computed-1' returned the expected value ***");
            }

            //@see ETSI TS 133 401 V18.3.0 (2025-04) C.2.3 Test Set 3
            var O16_Type      v_ik3           := '7e5e94431e11d73828d739cc6ced4573'O; // Integrity key
            var NasCount_Type v_nas_count3    := '36af6144'O; // NAS Count
            var bitstring     v_nas_enc_alg3  := '0010'B ; // 128-NEA3 128-bit AES algorithm
            var B5_Type       v_bearer_id3    := '11000'B; // Bearer ID (Signalling)
            var octetstring   v_plain_text3   := 'b3d3c9170a4e1632f60f861013d22d84b726b6a278d802d1eeaf1321ba5929dc'O;
            var O4_Type       v_mac_text3     := '1f60b01d'O; // Expected mac text

            var octetstring v_mac_text_computed3 := fx_NG_NasIntegrityAlgorithm(v_plain_text3, v_nas_enc_alg3, oct2bit(v_ik3), v_nas_count3, v_bearer_id3, 1)
            if (not(match(v_mac_text_computed3, v_mac_text3))) {
                log("*** " & __SCOPE__ & ": ERROR: 'v_mac_text_computed-3' did not return the expected value. ***");
                setverdict(fail);
            } else {
                log("*** " & __SCOPE__ & ": 'v_mac_text_computed-3' returned the expected value ***");
            }

            //@see ETSI TS 133 401 V18.3.0 (2025-04) C.2.3 Test Set 4
            var O16_Type      v_ik4           := 'd3419be821087acd02123a9248033359'O; // Integrity key
            var NasCount_Type v_nas_count4    := 'c7590ea9'O; // NAS Count
            var bitstring     v_nas_enc_alg4  := '0010'B ; // 128-NEA3 128-bit AES algorithm
            var B5_Type       v_bearer_id4    := '10111'B; // Bearer ID (Signalling)
            var octetstring   v_plain_text4   := 'bbb057038809496bcff86d6fbc8ce5b135a06b166054f2d565be8ace75dc851e0bcdd8f07141c495872fb5d8c0c66a8b6da556663e4e461205d84580bee5bc7e'O;
            var O4_Type       v_mac_text4     := '6846a2f0'O; // Expected mac text

            var octetstring v_mac_text_computed4 := fx_NG_NasIntegrityAlgorithm(v_plain_text4, v_nas_enc_alg4, oct2bit(v_ik4), v_nas_count4, v_bearer_id4, 0)
            if (not(match(v_mac_text_computed4, v_mac_text4))) {
                log("*** " & __SCOPE__ & ": ERROR: 'v_mac_text_computed-4' did not return the expected value. ***");
                setverdict(fail);
            } else {
                log("*** " & __SCOPE__ & ": 'v_mac_text_computed-4' returned the expected value ***");
            }
            setverdict(pass)

        } // End of testcase TC_5G_AKA_CRYPTO_FUNCTIONS_TEST_26_02_01