edhoc 1.0.4 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +170 -0
- package/binding.gyp +13 -11
- package/dist/bindings.d.ts +5 -0
- package/dist/bindings.d.ts.map +1 -0
- package/dist/bindings.js +10 -0
- package/dist/crypto.d.ts +29 -0
- package/dist/crypto.d.ts.map +1 -0
- package/dist/crypto.js +205 -0
- package/dist/edhoc.d.ts +368 -0
- package/dist/edhoc.d.ts.map +1 -0
- package/dist/edhoc.js +76 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/x509credentials.d.ts +20 -0
- package/dist/x509credentials.d.ts.map +1 -0
- package/dist/x509credentials.js +140 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_types.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_ead_decode.h +2 -2
- package/external/libedhoc/backends/cbor/include/backend_cbor_ead_encode.h +2 -2
- package/external/libedhoc/backends/cbor/include/backend_cbor_edhoc_types.h +48 -43
- package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_types.h +3 -3
- package/external/libedhoc/backends/cbor/include/backend_cbor_id_cred_x_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_id_cred_x_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_info_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_info_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_types.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_1_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_1_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_2_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_2_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_3_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_3_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_4_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_4_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_error_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_error_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_2_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_2_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_3_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_3_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_4_decode.h +3 -3
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_4_encode.h +3 -3
- package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_decode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_encode.h +1 -1
- package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_types.h +4 -4
- package/external/libedhoc/backends/cbor/include/backend_cbor_x509_types.h +93 -83
- package/external/libedhoc/backends/cbor/src/backend_cbor_bstr_type_decode.c +11 -20
- package/external/libedhoc/backends/cbor/src/backend_cbor_bstr_type_encode.c +11 -20
- package/external/libedhoc/backends/cbor/src/backend_cbor_ead_decode.c +27 -32
- package/external/libedhoc/backends/cbor/src/backend_cbor_ead_encode.c +27 -32
- package/external/libedhoc/backends/cbor/src/backend_cbor_enc_structure_decode.c +14 -23
- package/external/libedhoc/backends/cbor/src/backend_cbor_enc_structure_encode.c +14 -23
- package/external/libedhoc/backends/cbor/src/backend_cbor_id_cred_x_decode.c +63 -52
- package/external/libedhoc/backends/cbor/src/backend_cbor_id_cred_x_encode.c +62 -51
- package/external/libedhoc/backends/cbor/src/backend_cbor_info_decode.c +14 -23
- package/external/libedhoc/backends/cbor/src/backend_cbor_info_encode.c +14 -23
- package/external/libedhoc/backends/cbor/src/backend_cbor_int_type_decode.c +11 -20
- package/external/libedhoc/backends/cbor/src/backend_cbor_int_type_encode.c +11 -20
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_1_decode.c +54 -51
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_1_encode.c +54 -51
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_2_decode.c +11 -20
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_2_encode.c +11 -20
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_3_decode.c +11 -20
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_3_encode.c +11 -20
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_4_decode.c +11 -20
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_4_encode.c +11 -20
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_error_decode.c +36 -37
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_error_encode.c +36 -37
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_2_decode.c +103 -80
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_2_encode.c +102 -79
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_3_decode.c +99 -76
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_3_encode.c +98 -75
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_4_decode.c +40 -41
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_4_encode.c +40 -41
- package/external/libedhoc/backends/cbor/src/backend_cbor_sig_structure_decode.c +15 -24
- package/external/libedhoc/backends/cbor/src/backend_cbor_sig_structure_encode.c +15 -24
- package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode.c +31 -0
- package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode.h +10 -0
- package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode2.c +18 -0
- package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode2.h +9 -0
- package/external/libedhoc/externals/Unity/examples/example_1/test/TestProductionCode.c +69 -0
- package/external/libedhoc/externals/Unity/examples/example_1/test/TestProductionCode2.c +38 -0
- package/external/libedhoc/externals/Unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +53 -0
- package/external/libedhoc/externals/Unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +57 -0
- package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode.c +31 -0
- package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode.h +10 -0
- package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode2.c +18 -0
- package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode2.h +9 -0
- package/external/libedhoc/externals/Unity/examples/example_2/test/TestProductionCode.c +71 -0
- package/external/libedhoc/externals/Unity/examples/example_2/test/TestProductionCode2.c +40 -0
- package/external/libedhoc/externals/Unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +16 -0
- package/external/libedhoc/externals/Unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +18 -0
- package/external/libedhoc/externals/Unity/examples/example_2/test/test_runners/all_tests.c +19 -0
- package/external/libedhoc/externals/Unity/examples/example_3/helper/UnityHelper.c +17 -0
- package/external/libedhoc/externals/Unity/examples/example_3/helper/UnityHelper.h +19 -0
- package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode.c +31 -0
- package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode.h +10 -0
- package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode2.c +18 -0
- package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode2.h +9 -0
- package/external/libedhoc/externals/Unity/examples/example_3/test/TestProductionCode.c +69 -0
- package/external/libedhoc/externals/Unity/examples/example_3/test/TestProductionCode2.c +38 -0
- package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode.c +31 -0
- package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode.h +10 -0
- package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode2.c +18 -0
- package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode2.h +9 -0
- package/external/libedhoc/externals/Unity/examples/example_4/test/TestProductionCode.c +70 -0
- package/external/libedhoc/externals/Unity/examples/example_4/test/TestProductionCode2.c +42 -0
- package/external/libedhoc/externals/Unity/examples/example_4/test/test_runners/TestProductionCode2_Runner.c +53 -0
- package/external/libedhoc/externals/Unity/examples/example_4/test/test_runners/TestProductionCode_Runner.c +57 -0
- package/external/libedhoc/externals/Unity/examples/unity_config.h +251 -0
- package/external/libedhoc/externals/Unity/extras/bdd/src/unity_bdd.h +44 -0
- package/external/libedhoc/externals/Unity/extras/bdd/test/test_bdd.c +129 -0
- package/external/libedhoc/externals/Unity/extras/fixture/src/unity_fixture.c +310 -0
- package/external/libedhoc/externals/Unity/extras/fixture/src/unity_fixture.h +95 -0
- package/external/libedhoc/externals/Unity/extras/fixture/src/unity_fixture_internals.h +51 -0
- package/external/libedhoc/externals/Unity/extras/fixture/test/main/AllTests.c +20 -0
- package/external/libedhoc/externals/Unity/extras/fixture/test/template_fixture_tests.c +40 -0
- package/external/libedhoc/externals/Unity/extras/fixture/test/unity_fixture_Test.c +246 -0
- package/external/libedhoc/externals/Unity/extras/fixture/test/unity_fixture_TestRunner.c +33 -0
- package/external/libedhoc/externals/Unity/extras/memory/src/unity_memory.c +203 -0
- package/external/libedhoc/externals/Unity/extras/memory/src/unity_memory.h +61 -0
- package/external/libedhoc/externals/Unity/extras/memory/test/unity_memory_Test.c +326 -0
- package/external/libedhoc/externals/Unity/extras/memory/test/unity_memory_TestRunner.c +50 -0
- package/external/libedhoc/externals/Unity/extras/memory/test/unity_output_Spy.c +57 -0
- package/external/libedhoc/externals/Unity/extras/memory/test/unity_output_Spy.h +17 -0
- package/external/libedhoc/externals/Unity/src/unity.c +2501 -0
- package/external/libedhoc/externals/Unity/src/unity.h +698 -0
- package/external/libedhoc/externals/Unity/src/unity_internals.h +1183 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_cmd.c +61 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_def.c +57 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_head1.c +55 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_head1.h +15 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_cmd.c +80 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_def.c +76 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_head1.c +75 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_head1.h +13 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_new1.c +89 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_new2.c +89 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_param.c +77 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_run1.c +89 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_run2.c +89 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_yaml.c +90 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_new1.c +67 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_new2.c +70 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_param.c +58 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_run1.c +67 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_run2.c +70 -0
- package/external/libedhoc/externals/Unity/test/expectdata/testsample_yaml.c +71 -0
- package/external/libedhoc/externals/Unity/test/testdata/CException.h +18 -0
- package/external/libedhoc/externals/Unity/test/testdata/Defs.h +16 -0
- package/external/libedhoc/externals/Unity/test/testdata/cmock.h +21 -0
- package/external/libedhoc/externals/Unity/test/testdata/mockMock.h +20 -0
- package/external/libedhoc/externals/Unity/test/testdata/testRunnerGenerator.c +204 -0
- package/external/libedhoc/externals/Unity/test/testdata/testRunnerGeneratorSmall.c +73 -0
- package/external/libedhoc/externals/Unity/test/testdata/testRunnerGeneratorWithMocks.c +200 -0
- package/external/libedhoc/externals/Unity/test/tests/self_assessment_utils.h +151 -0
- package/external/libedhoc/externals/Unity/test/tests/test_unity_arrays.c +2941 -0
- package/external/libedhoc/externals/Unity/test/tests/test_unity_core.c +375 -0
- package/external/libedhoc/externals/Unity/test/tests/test_unity_doubles.c +1285 -0
- package/external/libedhoc/externals/Unity/test/tests/test_unity_floats.c +1395 -0
- package/external/libedhoc/externals/Unity/test/tests/test_unity_integers.c +2863 -0
- package/external/libedhoc/externals/Unity/test/tests/test_unity_integers_64.c +783 -0
- package/external/libedhoc/externals/Unity/test/tests/test_unity_memory.c +82 -0
- package/external/libedhoc/externals/Unity/test/tests/test_unity_parameterized.c +309 -0
- package/external/libedhoc/externals/Unity/test/tests/test_unity_parameterizedDemo.c +28 -0
- package/external/libedhoc/externals/Unity/test/tests/test_unity_strings.c +330 -0
- package/external/libedhoc/externals/Unity/test/tests/types_for_test.h +21 -0
- package/external/libedhoc/externals/zcbor/include/zcbor_common.h +147 -60
- package/external/libedhoc/externals/zcbor/include/zcbor_decode.h +291 -202
- package/external/libedhoc/externals/zcbor/include/zcbor_encode.h +100 -156
- package/external/libedhoc/externals/zcbor/include/zcbor_print.h +165 -0
- package/external/libedhoc/externals/zcbor/samples/hello_world/src/main.c +1 -1
- package/external/libedhoc/externals/zcbor/samples/pet/include/pet_decode.h +1 -1
- package/external/libedhoc/externals/zcbor/samples/pet/include/pet_encode.h +1 -1
- package/external/libedhoc/externals/zcbor/samples/pet/include/pet_types.h +4 -4
- package/external/libedhoc/externals/zcbor/samples/pet/src/main.c +4 -4
- package/external/libedhoc/externals/zcbor/samples/pet/src/pet_decode.c +15 -24
- package/external/libedhoc/externals/zcbor/samples/pet/src/pet_encode.c +14 -23
- package/external/libedhoc/externals/zcbor/src/zcbor_common.c +202 -29
- package/external/libedhoc/externals/zcbor/src/zcbor_decode.c +633 -173
- package/external/libedhoc/externals/zcbor/src/zcbor_encode.c +71 -184
- package/external/libedhoc/externals/zcbor/tests/decode/test1_suit_old_formats/src/main.c +152 -153
- package/external/libedhoc/externals/zcbor/tests/decode/test2_suit/src/main.c +64 -64
- package/external/libedhoc/externals/zcbor/tests/decode/test3_simple/src/main.c +15 -16
- package/external/libedhoc/externals/zcbor/tests/decode/test5_corner_cases/src/main.c +228 -84
- package/external/libedhoc/externals/zcbor/tests/decode/test7_suit9_simple/src/main.c +9 -9
- package/external/libedhoc/externals/zcbor/tests/decode/test8_suit12/src/main.c +0 -1
- package/external/libedhoc/externals/zcbor/tests/decode/test9_manifest14/src/main.c +172 -173
- package/external/libedhoc/externals/zcbor/tests/encode/test1_suit/src/main.c +73 -73
- package/external/libedhoc/externals/zcbor/tests/encode/test2_simple/src/main.c +1 -2
- package/external/libedhoc/externals/zcbor/tests/encode/test3_corner_cases/src/main.c +83 -56
- package/external/libedhoc/externals/zcbor/tests/encode/test4_senml/src/main.c +15 -16
- package/external/libedhoc/externals/zcbor/tests/fuzz/fuzz_everything.c +12 -0
- package/external/libedhoc/externals/zcbor/tests/fuzz/fuzz_manifest12.c +69 -69
- package/external/libedhoc/externals/zcbor/tests/unit/test1_unit_tests/src/main.c +448 -55
- package/external/libedhoc/externals/zcbor/tests/unit/test3_float16/src/main.c +49 -48
- package/external/libedhoc/include/edhoc.h +348 -54
- package/external/libedhoc/include/edhoc_common.h +289 -0
- package/external/libedhoc/include/edhoc_context.h +60 -35
- package/external/libedhoc/include/edhoc_credentials.h +55 -7
- package/external/libedhoc/include/edhoc_crypto.h +10 -10
- package/external/libedhoc/include/edhoc_ead.h +13 -10
- package/external/libedhoc/include/edhoc_macros.h +20 -11
- package/external/libedhoc/include/edhoc_values.h +2 -2
- package/external/libedhoc/library/edhoc.c +70 -36
- package/external/libedhoc/library/edhoc_common.c +1314 -0
- package/external/libedhoc/library/edhoc_exporter.c +45 -46
- package/external/libedhoc/library/edhoc_message_1.c +107 -72
- package/external/libedhoc/library/edhoc_message_2.c +396 -1693
- package/external/libedhoc/library/edhoc_message_3.c +465 -1656
- package/external/libedhoc/library/edhoc_message_4.c +93 -91
- package/external/libedhoc/library/edhoc_message_error.c +41 -41
- package/external/libedhoc/tests/include/{cipher_suites/cipher_suite_0.h → cipher_suite_0.h} +131 -134
- package/external/libedhoc/tests/include/{cipher_suites/cipher_suite_2.h → cipher_suite_2.h} +139 -140
- package/external/libedhoc/tests/include/{edhoc_trace_1/test_vector_1.h → test_vector_rfc9529_chapter_2.h} +786 -738
- package/external/libedhoc/tests/include/{edhoc_trace_2/test_vector_2.h → test_vector_rfc9529_chapter_3.h} +14 -10
- package/external/libedhoc/tests/include/{x509_chain_cs_0/test_vector_x5chain_cs_0.h → test_vector_x5chain_sign_keys_suite_0.h} +137 -140
- package/external/libedhoc/tests/include/{x509_chain_cs_2/test_vector_x5chain_cs_2.h → test_vector_x5chain_sign_keys_suite_2.h} +7 -8
- package/external/libedhoc/tests/include/{x509_chain_cs_2_static_dh/test_vector_x5chain_cs_2_static_dh.h → test_vector_x5chain_static_dh_keys_suite_2.h} +7 -8
- package/external/libedhoc/tests/include/{x509_hash_cs_2/test_vector_x5t_cs_2.h → test_vector_x5t_sign_keys_suite_2.h} +6 -7
- package/external/libedhoc/tests/src/{cipher_suites/cipher_suite_0.c → cipher_suite_0.c} +445 -447
- package/external/libedhoc/tests/src/{cipher_suites/cipher_suite_2.c → cipher_suite_2.c} +600 -600
- package/external/libedhoc/tests/src/module_test_api.c +430 -0
- package/external/libedhoc/tests/src/module_test_cipher_suite_0.c +395 -0
- package/external/libedhoc/tests/src/module_test_cipher_suite_2.c +392 -0
- package/external/libedhoc/tests/src/{error_message/test_edhoc_error_message.c → module_test_error_message.c} +94 -69
- package/external/libedhoc/tests/src/module_test_main.c +49 -0
- package/external/libedhoc/tests/src/{cipher_suite_negotiation/test_edhoc_cipher_suite_negotiation.c → module_test_rfc9528_suites_negotiation.c} +224 -227
- package/external/libedhoc/tests/src/module_test_rfc9529_chapter_2.c +2681 -0
- package/external/libedhoc/tests/src/module_test_rfc9529_chapter_3.c +1635 -0
- package/external/libedhoc/tests/src/module_test_x5chain_sign_keys_suite_0.c +1135 -0
- package/external/libedhoc/tests/src/module_test_x5chain_sign_keys_suite_2.c +1249 -0
- package/external/libedhoc/tests/src/module_test_x5chain_static_dh_keys_suite_2.c +798 -0
- package/external/libedhoc/tests/src/module_test_x5t_sign_keys_suite_2.c +956 -0
- package/include/EdhocComposeAsyncWorker.h +8 -6
- package/include/EdhocCredentialManager.h +16 -11
- package/include/EdhocCryptoManager.h +28 -21
- package/include/EdhocEadManager.h +3 -6
- package/include/{EdhocExportAsyncWorker.h → EdhocExportOscoreAsyncWorker.h} +20 -17
- package/include/EdhocKeyExporterAsyncWorker.h +76 -0
- package/include/EdhocKeyUpdateAsyncWorker.h +72 -0
- package/include/EdhocProcessAsyncWorker.h +14 -10
- package/include/LibEDHOC.h +44 -20
- package/include/UserContext.h +7 -9
- package/include/Utils.h +31 -27
- package/package.json +14 -3
- package/prebuilds/android-arm/edhoc.armv7.node +0 -0
- package/prebuilds/android-arm64/edhoc.armv8.node +0 -0
- package/prebuilds/darwin-arm64/edhoc.node +0 -0
- package/prebuilds/darwin-x64/edhoc.node +0 -0
- package/prebuilds/linux-arm/edhoc.armv6.node +0 -0
- package/prebuilds/linux-arm/edhoc.armv7.node +0 -0
- package/prebuilds/linux-arm64/edhoc.armv8.node +0 -0
- package/prebuilds/linux-x64/edhoc.glibc.node +0 -0
- package/prebuilds/linux-x64/edhoc.musl.node +0 -0
- package/prebuilds/win32-ia32/edhoc.node +0 -0
- package/prebuilds/win32-x64/edhoc.node +0 -0
- package/src/EdhocComposeAsyncWorker.cpp +18 -35
- package/src/EdhocCredentialManager.cpp +160 -187
- package/src/EdhocCryptoManager.cpp +386 -586
- package/src/EdhocEadManager.cpp +10 -18
- package/src/EdhocExportOscoreAsyncWorker.cpp +77 -0
- package/src/EdhocKeyExporterAsyncWorker.cpp +49 -0
- package/src/EdhocKeyUpdateAsyncWorker.cpp +41 -0
- package/src/EdhocProcessAsyncWorker.cpp +72 -19
- package/src/LibEDHOC.cpp +213 -174
- package/src/Suites.cpp +39 -72
- package/src/Utils.cpp +32 -56
- package/test/basic.test.ts +64 -0
- package/test/vectors.test.ts +111 -0
- package/external/libedhoc/externals/zcbor/include/zcbor_debug.h +0 -69
- package/external/libedhoc/tests/include/cipher_suite_negotiation/test_edhoc_cipher_suite_negotiation.h +0 -37
- package/external/libedhoc/tests/include/cipher_suites/test_cipher_suite_0.h +0 -48
- package/external/libedhoc/tests/include/cipher_suites/test_cipher_suite_2.h +0 -48
- package/external/libedhoc/tests/include/edhoc_trace_1/authentication_credentials_1.h +0 -60
- package/external/libedhoc/tests/include/edhoc_trace_1/test_edhoc_handshake_1.h +0 -208
- package/external/libedhoc/tests/include/edhoc_trace_1/test_edhoc_handshake_ead_1.h +0 -59
- package/external/libedhoc/tests/include/edhoc_trace_2/authentication_credentials_2.h +0 -60
- package/external/libedhoc/tests/include/edhoc_trace_2/test_edhoc_handshake_2.h +0 -199
- package/external/libedhoc/tests/include/error_message/test_edhoc_error_message.h +0 -48
- package/external/libedhoc/tests/include/x509_chain_cs_0/authentication_credentials_x5chain_cs_0.h +0 -92
- package/external/libedhoc/tests/include/x509_chain_cs_0/test_edhoc_handshake_x5chain_cs_0.h +0 -96
- package/external/libedhoc/tests/include/x509_chain_cs_2/authentication_credentials_x5chain_cs_2.h +0 -58
- package/external/libedhoc/tests/include/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2.h +0 -56
- package/external/libedhoc/tests/include/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2_ead.h +0 -57
- package/external/libedhoc/tests/include/x509_chain_cs_2_static_dh/authentication_credentials_x5chain_cs_2_static_dh.h +0 -59
- package/external/libedhoc/tests/include/x509_chain_cs_2_static_dh/test_edhoc_handshake_x5chain_cs_2_static_dh_ead.h +0 -57
- package/external/libedhoc/tests/include/x509_hash_cs_2/authentication_credentials_x5t_cs_2.h +0 -60
- package/external/libedhoc/tests/include/x509_hash_cs_2/test_edhoc_handshake_x5t_cs_2_ead.h +0 -57
- package/external/libedhoc/tests/src/cipher_suites/test_cipher_suite_0.c +0 -475
- package/external/libedhoc/tests/src/cipher_suites/test_cipher_suite_2.c +0 -473
- package/external/libedhoc/tests/src/edhoc_trace_1/authentication_credentials_1.c +0 -252
- package/external/libedhoc/tests/src/edhoc_trace_1/test_edhoc_handshake_1.c +0 -1829
- package/external/libedhoc/tests/src/edhoc_trace_1/test_edhoc_handshake_ead_1.c +0 -1247
- package/external/libedhoc/tests/src/edhoc_trace_2/authentication_credentials_2.c +0 -170
- package/external/libedhoc/tests/src/edhoc_trace_2/test_edhoc_handshake_2.c +0 -1783
- package/external/libedhoc/tests/src/tests.c +0 -228
- package/external/libedhoc/tests/src/x509_chain_cs_0/authentication_credentials_x5chain_cs_0.c +0 -332
- package/external/libedhoc/tests/src/x509_chain_cs_0/test_edhoc_handshake_x5chain_cs_0.c +0 -936
- package/external/libedhoc/tests/src/x509_chain_cs_2/authentication_credentials_x5chain_cs_2.c +0 -166
- package/external/libedhoc/tests/src/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2.c +0 -587
- package/external/libedhoc/tests/src/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2_ead.c +0 -917
- package/external/libedhoc/tests/src/x509_chain_cs_2_static_dh/authentication_credentials_x5chain_cs_2_static_dh.c +0 -186
- package/external/libedhoc/tests/src/x509_chain_cs_2_static_dh/test_edhoc_handshake_x5chain_cs_2_static_dh_ead.c +0 -743
- package/external/libedhoc/tests/src/x509_hash_cs_2/authentication_credentials_x5t_cs_2.c +0 -261
- package/external/libedhoc/tests/src/x509_hash_cs_2/test_edhoc_handshake_x5t_cs_2_ead.c +0 -854
- package/src/EdhocExportAsyncWorker.cpp +0 -82
package/external/libedhoc/tests/include/x509_chain_cs_0/authentication_credentials_x5chain_cs_0.h
DELETED
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* \file authentication_credentials_x5chain_cs_0.h
|
|
3
|
-
* \author Kamil Kielbasa
|
|
4
|
-
* \brief Example implementation of authentication credentials callbacks
|
|
5
|
-
* for X.509 chain authentication method for cipher suite 0.
|
|
6
|
-
* \version 0.4
|
|
7
|
-
* \date 2024-01-01
|
|
8
|
-
*
|
|
9
|
-
* \copyright Copyright (c) 2024
|
|
10
|
-
*
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/* Header guard ------------------------------------------------------------ */
|
|
14
|
-
#ifndef AUTHENTICATION_CREDENTIALS_X5CHAIN_CS_0_H
|
|
15
|
-
#define AUTHENTICATION_CREDENTIALS_X5CHAIN_CS_0_H
|
|
16
|
-
|
|
17
|
-
/* Include files ----------------------------------------------------------- */
|
|
18
|
-
|
|
19
|
-
/* Standard library headers: */
|
|
20
|
-
#include <stdint.h>
|
|
21
|
-
#include <stddef.h>
|
|
22
|
-
|
|
23
|
-
/* EDHOC header: */
|
|
24
|
-
#include "edhoc_credentials.h"
|
|
25
|
-
|
|
26
|
-
/* Defines ----------------------------------------------------------------- */
|
|
27
|
-
/* Types and type definitions ---------------------------------------------- */
|
|
28
|
-
/* Module interface variables and constants -------------------------------- */
|
|
29
|
-
/* Extern variables and constant declarations ------------------------------ */
|
|
30
|
-
/* Module interface function declarations ---------------------------------- */
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* \brief Authentication credentials fetch callback for initiator
|
|
34
|
-
* for single certificate in chain.
|
|
35
|
-
*/
|
|
36
|
-
int auth_cred_fetch_init_x5chain_cs_0_single_cert(
|
|
37
|
-
void *user_context, struct edhoc_auth_creds *credentials);
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* \brief Authentication credentials fetch callback for responder
|
|
41
|
-
* for single certificate in chain.
|
|
42
|
-
*/
|
|
43
|
-
int auth_cred_fetch_resp_x5chain_cs_0_single_cert(
|
|
44
|
-
void *user_context, struct edhoc_auth_creds *credentials);
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* \brief Authentication credentials verify callback for initiator
|
|
48
|
-
* for single ceritifcate in chain.
|
|
49
|
-
*/
|
|
50
|
-
int auth_cred_verify_init_x5chain_cs_0_single_cert(
|
|
51
|
-
void *user_context, struct edhoc_auth_creds *credentials,
|
|
52
|
-
const uint8_t **public_key_reference, size_t *public_key_length);
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* \brief Authentication credentials verify callback for responder
|
|
56
|
-
* for single ceritifcate in chain.
|
|
57
|
-
*/
|
|
58
|
-
int auth_cred_verify_resp_x5chain_cs_0_single_cert(
|
|
59
|
-
void *user_context, struct edhoc_auth_creds *credentials,
|
|
60
|
-
const uint8_t **public_key_reference, size_t *public_key_length);
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* \brief Authentication credentials fetch callback for initiator.
|
|
64
|
-
* for many certificates in chain.
|
|
65
|
-
*/
|
|
66
|
-
int auth_cred_fetch_init_x5chain_cs_0_many_certs(
|
|
67
|
-
void *user_context, struct edhoc_auth_creds *credentials);
|
|
68
|
-
|
|
69
|
-
/**
|
|
70
|
-
* \brief Authentication credentials fetch callback for responder.
|
|
71
|
-
* for many certificates in chain.
|
|
72
|
-
*/
|
|
73
|
-
int auth_cred_fetch_resp_x5chain_cs_0_many_certs(
|
|
74
|
-
void *user_context, struct edhoc_auth_creds *credentials);
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
* \brief Authentication credentials verify callback for initiator.
|
|
78
|
-
* for many certificates in chain.
|
|
79
|
-
*/
|
|
80
|
-
int auth_cred_verify_init_x5chain_cs_0_many_certs(
|
|
81
|
-
void *user_context, struct edhoc_auth_creds *credentials,
|
|
82
|
-
const uint8_t **public_key_reference, size_t *public_key_length);
|
|
83
|
-
|
|
84
|
-
/**
|
|
85
|
-
* \brief Authentication credentials verify callback for responder.
|
|
86
|
-
* for many certificates in chain.
|
|
87
|
-
*/
|
|
88
|
-
int auth_cred_verify_resp_x5chain_cs_0_many_certs(
|
|
89
|
-
void *user_context, struct edhoc_auth_creds *credentials,
|
|
90
|
-
const uint8_t **public_key_reference, size_t *public_key_length);
|
|
91
|
-
|
|
92
|
-
#endif /* AUTHENTICATION_CREDENTIALS_X5CHAIN_CS_0_H */
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* \file test_edhoc_handshake_x5chain_cs_0.h
|
|
3
|
-
* \author Kamil Kielbasa
|
|
4
|
-
* \brief EDHOC handshake unit test for X.509 chain authentication method
|
|
5
|
-
* with real crypto usage.
|
|
6
|
-
* \version 0.4
|
|
7
|
-
* \date 2024-01-01
|
|
8
|
-
*
|
|
9
|
-
* \copyright Copyright (c) 2024
|
|
10
|
-
*
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/* Header guard ------------------------------------------------------------ */
|
|
14
|
-
#ifndef TEST_EDHOC_HANDSHAKE_X5CHAIN_CS_0_H
|
|
15
|
-
#define TEST_EDHOC_HANDSHAKE_X5CHAIN_CS_0_H
|
|
16
|
-
|
|
17
|
-
/* Include files ----------------------------------------------------------- */
|
|
18
|
-
/* Defines ----------------------------------------------------------------- */
|
|
19
|
-
/* Types and type definitions ---------------------------------------------- */
|
|
20
|
-
/* Module interface variables and constants -------------------------------- */
|
|
21
|
-
/* Extern variables and constant declarations ------------------------------ */
|
|
22
|
-
/* Module interface function declarations ---------------------------------- */
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* \brief Test scenario with single certificate in chain:
|
|
26
|
-
* 1) use test vector as input for EDHOC context's.
|
|
27
|
-
* 2) perform full EDHOC handshake:
|
|
28
|
-
* (message 1 -> message 2 -> mesage 3 -> message 4)
|
|
29
|
-
* - verify:
|
|
30
|
-
* - internal context.
|
|
31
|
-
* - TH state.
|
|
32
|
-
* - PRK state.
|
|
33
|
-
* - DH key agreement.
|
|
34
|
-
* - C_I / C_R.
|
|
35
|
-
* 3) export OSCORE sessions:
|
|
36
|
-
* - verify by cross-check:
|
|
37
|
-
* - internal context.
|
|
38
|
-
* - master secret.
|
|
39
|
-
* - master salt.
|
|
40
|
-
* - sender ID.
|
|
41
|
-
* - recipient ID.
|
|
42
|
-
* 4) perform key update on EDHOC session
|
|
43
|
-
* - verify:
|
|
44
|
-
* - internal context.
|
|
45
|
-
* - PRK state.
|
|
46
|
-
* 5) export new OSCORE sessions:
|
|
47
|
-
* - verify by cross-check:
|
|
48
|
-
* - internal context.
|
|
49
|
-
* - master secret.
|
|
50
|
-
* - master salt.
|
|
51
|
-
* - sender ID.
|
|
52
|
-
* - recipient ID.
|
|
53
|
-
*
|
|
54
|
-
* \note "real crypto" means that ephemeral Diffie-Hellman per each run will
|
|
55
|
-
* generate different keys. This is why only cross-check is possible as
|
|
56
|
-
* verification step.
|
|
57
|
-
*/
|
|
58
|
-
void test_edhoc_handshake_x5chain_cs_0_single_cert_e2e_real_crypto(void);
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* \brief Test scenario with many certificates in chain:
|
|
62
|
-
* 1) use test vector as input for EDHOC context's.
|
|
63
|
-
* 2) perform full EDHOC handshake:
|
|
64
|
-
* (message 1 -> message 2 -> mesage 3 -> message 4)
|
|
65
|
-
* - verify:
|
|
66
|
-
* - internal context.
|
|
67
|
-
* - TH state.
|
|
68
|
-
* - PRK state.
|
|
69
|
-
* - DH key agreement.
|
|
70
|
-
* - C_I / C_R.
|
|
71
|
-
* 3) export OSCORE sessions:
|
|
72
|
-
* - verify by cross-check:
|
|
73
|
-
* - internal context.
|
|
74
|
-
* - master secret.
|
|
75
|
-
* - master salt.
|
|
76
|
-
* - sender ID.
|
|
77
|
-
* - recipient ID.
|
|
78
|
-
* 4) perform key update on EDHOC session
|
|
79
|
-
* - verify:
|
|
80
|
-
* - internal context.
|
|
81
|
-
* - PRK state.
|
|
82
|
-
* 5) export new OSCORE sessions:
|
|
83
|
-
* - verify by cross-check:
|
|
84
|
-
* - internal context.
|
|
85
|
-
* - master secret.
|
|
86
|
-
* - master salt.
|
|
87
|
-
* - sender ID.
|
|
88
|
-
* - recipient ID.
|
|
89
|
-
*
|
|
90
|
-
* \note "real crypto" means that ephemeral Diffie-Hellman per each run will
|
|
91
|
-
* generate different keys. This is why only cross-check is possible as
|
|
92
|
-
* verification step.
|
|
93
|
-
*/
|
|
94
|
-
void test_edhoc_handshake_x5chain_cs_0_many_certs_e2e_real_crypto(void);
|
|
95
|
-
|
|
96
|
-
#endif /* TEST_EDHOC_HANDSHAKE_X5CHAIN_CS_0_H */
|
package/external/libedhoc/tests/include/x509_chain_cs_2/authentication_credentials_x5chain_cs_2.h
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* \file authentication_credentials_x5chain_cs_2.h
|
|
3
|
-
* \author Kamil Kielbasa
|
|
4
|
-
* \brief Example implementation of authentication credentials callbacks
|
|
5
|
-
* for X.509 chain authentication method for cipher suite 2.
|
|
6
|
-
* \version 0.4
|
|
7
|
-
* \date 2024-01-01
|
|
8
|
-
*
|
|
9
|
-
* \copyright Copyright (c) 2024
|
|
10
|
-
*
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/* Header guard ------------------------------------------------------------ */
|
|
14
|
-
#ifndef AUTHENTICATION_CREDENTIALS_X5CHAIN_CS_2_H
|
|
15
|
-
#define AUTHENTICATION_CREDENTIALS_X5CHAIN_CS_2_H
|
|
16
|
-
|
|
17
|
-
/* Include files ----------------------------------------------------------- */
|
|
18
|
-
|
|
19
|
-
/* Standard library headers: */
|
|
20
|
-
#include <stdint.h>
|
|
21
|
-
#include <stddef.h>
|
|
22
|
-
|
|
23
|
-
/* EDHOC header: */
|
|
24
|
-
#include "edhoc_credentials.h"
|
|
25
|
-
|
|
26
|
-
/* Defines ----------------------------------------------------------------- */
|
|
27
|
-
/* Types and type definitions ---------------------------------------------- */
|
|
28
|
-
/* Module interface variables and constants -------------------------------- */
|
|
29
|
-
/* Extern variables and constant declarations ------------------------------ */
|
|
30
|
-
/* Module interface function declarations ---------------------------------- */
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* \brief Authentication credentials fetch callback for initiator.
|
|
34
|
-
*/
|
|
35
|
-
int auth_cred_fetch_init_x5chain_cs_2_single_cert(
|
|
36
|
-
void *user_context, struct edhoc_auth_creds *credentials);
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* \brief Authentication credentials fetch callback for responder.
|
|
40
|
-
*/
|
|
41
|
-
int auth_cred_fetch_resp_x5chain_cs_2_single_cert(
|
|
42
|
-
void *user_context, struct edhoc_auth_creds *credentials);
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* \brief Authentication credentials verify callback for initiator.
|
|
46
|
-
*/
|
|
47
|
-
int auth_cred_verify_init_x5chain_cs_2_single_cert(
|
|
48
|
-
void *user_context, struct edhoc_auth_creds *credentials,
|
|
49
|
-
const uint8_t **public_key_reference, size_t *public_key_length);
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* \brief Authentication credentials verify callback for responder.
|
|
53
|
-
*/
|
|
54
|
-
int auth_cred_verify_resp_x5chain_cs_2_single_cert(
|
|
55
|
-
void *user_context, struct edhoc_auth_creds *credentials,
|
|
56
|
-
const uint8_t **public_key_reference, size_t *public_key_length);
|
|
57
|
-
|
|
58
|
-
#endif /* AUTHENTICATION_CREDENTIALS_X5CHAIN_CS_2_H */
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* \file test_edhoc_handshake_x5chain_cs_2.h
|
|
3
|
-
* \author Kamil Kielbasa
|
|
4
|
-
* \brief EDHOC handshake unit test for X.509 chain authentication method
|
|
5
|
-
* for cipher suite 2.
|
|
6
|
-
* \version 0.4
|
|
7
|
-
* \date 2024-01-01
|
|
8
|
-
*
|
|
9
|
-
* \copyright Copyright (c) 2024
|
|
10
|
-
*
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/* Header guard ------------------------------------------------------------ */
|
|
14
|
-
#ifndef TEST_EDHOC_HANDSHAKE_X5CHAIN_CIPHER_SUITE_2_H
|
|
15
|
-
#define TEST_EDHOC_HANDSHAKE_X5CHAIN_CIPHER_SUITE_2_H
|
|
16
|
-
|
|
17
|
-
/* Include files ----------------------------------------------------------- */
|
|
18
|
-
/* Defines ----------------------------------------------------------------- */
|
|
19
|
-
/* Types and type definitions ---------------------------------------------- */
|
|
20
|
-
/* Module interface variables and constants -------------------------------- */
|
|
21
|
-
/* Extern variables and constant declarations ------------------------------ */
|
|
22
|
-
/* Module interface function declarations ---------------------------------- */
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* \brief Test scenario:
|
|
26
|
-
* 1) use test vector as input for EDHOC context's.
|
|
27
|
-
* 2) perform full EDHOC handshake:
|
|
28
|
-
* (message 1 -> message 2 -> mesage 3 -> message 4)
|
|
29
|
-
* - verify:
|
|
30
|
-
* - internal context.
|
|
31
|
-
* - TH state.
|
|
32
|
-
* - PRK state.
|
|
33
|
-
* - DH key agreement.
|
|
34
|
-
* - C_I / C_R.
|
|
35
|
-
* 3) export OSCORE sessions:
|
|
36
|
-
* - verify by cross-check:
|
|
37
|
-
* - internal context.
|
|
38
|
-
* - master secret.
|
|
39
|
-
* - master salt.
|
|
40
|
-
* - sender ID.
|
|
41
|
-
* - recipient ID.
|
|
42
|
-
* 4) perform key update on EDHOC session
|
|
43
|
-
* - verify:
|
|
44
|
-
* - internal context.
|
|
45
|
-
* - PRK state.
|
|
46
|
-
* 5) export new OSCORE sessions:
|
|
47
|
-
* - verify by cross-check:
|
|
48
|
-
* - internal context.
|
|
49
|
-
* - master secret.
|
|
50
|
-
* - master salt.
|
|
51
|
-
* - sender ID.
|
|
52
|
-
* - recipient ID.
|
|
53
|
-
*/
|
|
54
|
-
void test_edhoc_handshake_x5chain_cs_2_single_cert_e2e(void);
|
|
55
|
-
|
|
56
|
-
#endif /* TEST_EDHOC_HANDSHAKE_X5CHAIN_CIPHER_SUITE_2_H */
|
package/external/libedhoc/tests/include/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2_ead.h
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* \file test_edhoc_handshake_x5chain_cs_2_ead.h
|
|
3
|
-
* \author Kamil Kielbasa
|
|
4
|
-
* \brief EDHOC handshake unit test for X.509 chain authentication method
|
|
5
|
-
* for cipher suite 2 with multiple EAD tokens.
|
|
6
|
-
* \version 0.4
|
|
7
|
-
* \date 2024-01-01
|
|
8
|
-
*
|
|
9
|
-
* \copyright Copyright (c) 2024
|
|
10
|
-
*
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/* Header guard ------------------------------------------------------------ */
|
|
14
|
-
#ifndef TEST_EDHOC_HANDSHAKE_X5CHAIN_CS_2_EAD_H
|
|
15
|
-
#define TEST_EDHOC_HANDSHAKE_X5CHAIN_CS_2_EAD_H
|
|
16
|
-
|
|
17
|
-
/* Include files ----------------------------------------------------------- */
|
|
18
|
-
/* Defines ----------------------------------------------------------------- */
|
|
19
|
-
/* Types and type definitions ---------------------------------------------- */
|
|
20
|
-
/* Module interface variables and constants -------------------------------- */
|
|
21
|
-
/* Extern variables and constant declarations ------------------------------ */
|
|
22
|
-
/* Module interface function declarations ---------------------------------- */
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* \brief Test scenario:
|
|
26
|
-
* 1) use test vector as input for EDHOC context's.
|
|
27
|
-
* 2) perform full EDHOC handshake:
|
|
28
|
-
* (message 1 -> message 2 -> mesage 3 -> message 4)
|
|
29
|
-
* - verify:
|
|
30
|
-
* - internal context.
|
|
31
|
-
* - TH state.
|
|
32
|
-
* - PRK state.
|
|
33
|
-
* - DH key agreement.
|
|
34
|
-
* - C_I / C_R.
|
|
35
|
-
* - EAD.
|
|
36
|
-
* 3) export OSCORE sessions:
|
|
37
|
-
* - verify by cross-check:
|
|
38
|
-
* - internal context.
|
|
39
|
-
* - master secret.
|
|
40
|
-
* - master salt.
|
|
41
|
-
* - sender ID.
|
|
42
|
-
* - recipient ID.
|
|
43
|
-
* 4) perform key update on EDHOC session
|
|
44
|
-
* - verify:
|
|
45
|
-
* - internal context.
|
|
46
|
-
* - PRK state.
|
|
47
|
-
* 5) export new OSCORE sessions:
|
|
48
|
-
* - verify by cross-check:
|
|
49
|
-
* - internal context.
|
|
50
|
-
* - master secret.
|
|
51
|
-
* - master salt.
|
|
52
|
-
* - sender ID.
|
|
53
|
-
* - recipient ID.
|
|
54
|
-
*/
|
|
55
|
-
void test_edhoc_handshake_x5chain_cs_2_single_cert_e2e_multiple_ead_tokens(void);
|
|
56
|
-
|
|
57
|
-
#endif /* TEST_EDHOC_HANDSHAKE_X5CHAIN_CS_2_EAD_H */
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* \file authentication_credentials_x5chain_cs_2_static_dh.h
|
|
3
|
-
* \author Kamil Kielbasa
|
|
4
|
-
* \brief Example implementation of authentication credentials callbacks
|
|
5
|
-
* for X.509 chain authentication method for cipher suite 2 with
|
|
6
|
-
* static DH keys.
|
|
7
|
-
* \version 0.4
|
|
8
|
-
* \date 2024-01-01
|
|
9
|
-
*
|
|
10
|
-
* \copyright Copyright (c) 2024
|
|
11
|
-
*
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
/* Header guard ------------------------------------------------------------ */
|
|
15
|
-
#ifndef AUTHENTICATION_CREDENTIALS_X5CHAIN_CS_2_STATIC_DH_H
|
|
16
|
-
#define AUTHENTICATION_CREDENTIALS_X5CHAIN_CS_2_STATIC_DH_H
|
|
17
|
-
|
|
18
|
-
/* Include files ----------------------------------------------------------- */
|
|
19
|
-
|
|
20
|
-
/* Standard library headers: */
|
|
21
|
-
#include <stdint.h>
|
|
22
|
-
#include <stddef.h>
|
|
23
|
-
|
|
24
|
-
/* EDHOC header: */
|
|
25
|
-
#include "edhoc_credentials.h"
|
|
26
|
-
|
|
27
|
-
/* Defines ----------------------------------------------------------------- */
|
|
28
|
-
/* Types and type definitions ---------------------------------------------- */
|
|
29
|
-
/* Module interface variables and constants -------------------------------- */
|
|
30
|
-
/* Extern variables and constant declarations ------------------------------ */
|
|
31
|
-
/* Module interface function declarations ---------------------------------- */
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* \brief Authentication credentials fetch callback for initiator.
|
|
35
|
-
*/
|
|
36
|
-
int auth_cred_fetch_init_x5chain_cs_2_static_dh(
|
|
37
|
-
void *user_context, struct edhoc_auth_creds *credentials);
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* \brief Authentication credentials fetch callback for responder.
|
|
41
|
-
*/
|
|
42
|
-
int auth_cred_fetch_resp_x5chain_cs_2_static_dh(
|
|
43
|
-
void *user_context, struct edhoc_auth_creds *credentials);
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* \brief Authentication credentials verify callback for initiator.
|
|
47
|
-
*/
|
|
48
|
-
int auth_cred_verify_init_x5chain_cs_2_static_dh(
|
|
49
|
-
void *user_context, struct edhoc_auth_creds *credentials,
|
|
50
|
-
const uint8_t **public_key_reference, size_t *public_key_length);
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* \brief Authentication credentials verify callback for responder.
|
|
54
|
-
*/
|
|
55
|
-
int auth_cred_verify_resp_x5chain_cs_2_static_dh(
|
|
56
|
-
void *user_context, struct edhoc_auth_creds *credentials,
|
|
57
|
-
const uint8_t **public_key_reference, size_t *public_key_length);
|
|
58
|
-
|
|
59
|
-
#endif /* AUTHENTICATION_CREDENTIALS_X5CHAIN_CS_2_STATIC_DH_H */
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* \file test_edhoc_handshake_x5chain_cs_2_static_dh_ead.h
|
|
3
|
-
* \author Kamil Kielbasa
|
|
4
|
-
* \brief EDHOC handshake unit test for X.509 chain authentication method
|
|
5
|
-
* for cipher suite 2 with static DH keys and single EAD token.
|
|
6
|
-
* \version 0.4
|
|
7
|
-
* \date 2024-01-01
|
|
8
|
-
*
|
|
9
|
-
* \copyright Copyright (c) 2024
|
|
10
|
-
*
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/* Header guard ------------------------------------------------------------ */
|
|
14
|
-
#ifndef TEST_EDHOC_HANDSHAKE_X5CHAIN_CS_2_STATIC_DH_EAD_H
|
|
15
|
-
#define TEST_EDHOC_HANDSHAKE_X5CHAIN_CS_2_STATIC_DH_EAD_H
|
|
16
|
-
|
|
17
|
-
/* Include files ----------------------------------------------------------- */
|
|
18
|
-
/* Defines ----------------------------------------------------------------- */
|
|
19
|
-
/* Types and type definitions ---------------------------------------------- */
|
|
20
|
-
/* Module interface variables and constants -------------------------------- */
|
|
21
|
-
/* Extern variables and constant declarations ------------------------------ */
|
|
22
|
-
/* Module interface function declarations ---------------------------------- */
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* \brief Test scenario:
|
|
26
|
-
* 1) use test vector as input for EDHOC context's.
|
|
27
|
-
* 2) perform full EDHOC handshake:
|
|
28
|
-
* (message 1 -> message 2 -> mesage 3 -> message 4)
|
|
29
|
-
* - verify:
|
|
30
|
-
* - internal context.
|
|
31
|
-
* - TH state.
|
|
32
|
-
* - PRK state.
|
|
33
|
-
* - DH key agreement.
|
|
34
|
-
* - C_I / C_R.
|
|
35
|
-
* - EAD.
|
|
36
|
-
* 3) export OSCORE sessions:
|
|
37
|
-
* - verify by cross-check:
|
|
38
|
-
* - internal context.
|
|
39
|
-
* - master secret.
|
|
40
|
-
* - master salt.
|
|
41
|
-
* - sender ID.
|
|
42
|
-
* - recipient ID.
|
|
43
|
-
* 4) perform key update on EDHOC session
|
|
44
|
-
* - verify:
|
|
45
|
-
* - internal context.
|
|
46
|
-
* - PRK state.
|
|
47
|
-
* 5) export new OSCORE sessions:
|
|
48
|
-
* - verify by cross-check:
|
|
49
|
-
* - internal context.
|
|
50
|
-
* - master secret.
|
|
51
|
-
* - master salt.
|
|
52
|
-
* - sender ID.
|
|
53
|
-
* - recipient ID.
|
|
54
|
-
*/
|
|
55
|
-
void test_edhoc_handshake_x5chain_cs_2_static_dh_keys_ead_e2e(void);
|
|
56
|
-
|
|
57
|
-
#endif /* TEST_EDHOC_HANDSHAKE_X5CHAIN_CS_2_STATIC_DH_EAD_H */
|
package/external/libedhoc/tests/include/x509_hash_cs_2/authentication_credentials_x5t_cs_2.h
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* \file authentication_credentials_x5t_cs_2.h
|
|
3
|
-
* \author Kamil Kielbasa
|
|
4
|
-
* \brief Example implementation of authentication credentials callbacks
|
|
5
|
-
* for X.509 hash authentication method for cipher suite 2.
|
|
6
|
-
* \version 0.4
|
|
7
|
-
* \date 2024-01-01
|
|
8
|
-
*
|
|
9
|
-
* \copyright Copyright (c) 2024
|
|
10
|
-
*
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/* Header guard ------------------------------------------------------------ */
|
|
14
|
-
#ifndef AUTHENTICATION_CREDENTIALS_X5T_CS_2_H
|
|
15
|
-
#define AUTHENTICATION_CREDENTIALS_X5T_CS_2_H
|
|
16
|
-
|
|
17
|
-
/* Include files ----------------------------------------------------------- */
|
|
18
|
-
|
|
19
|
-
/* Standard library headers: */
|
|
20
|
-
#include <stdint.h>
|
|
21
|
-
#include <stddef.h>
|
|
22
|
-
|
|
23
|
-
/* EDHOC header: */
|
|
24
|
-
#include "edhoc_credentials.h"
|
|
25
|
-
|
|
26
|
-
/* Defines ----------------------------------------------------------------- */
|
|
27
|
-
/* Types and type definitions ---------------------------------------------- */
|
|
28
|
-
/* Module interface variables and constants -------------------------------- */
|
|
29
|
-
/* Extern variables and constant declarations ------------------------------ */
|
|
30
|
-
/* Module interface function declarations ---------------------------------- */
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* \brief Authentication credentials fetch callback for initiator.
|
|
34
|
-
*/
|
|
35
|
-
int auth_cred_fetch_init_x5t_cs_2(void *user_context,
|
|
36
|
-
struct edhoc_auth_creds *credentials);
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* \brief Authentication credentials fetch callback for responder.
|
|
40
|
-
*/
|
|
41
|
-
int auth_cred_fetch_resp_x5t_cs_2(void *user_context,
|
|
42
|
-
struct edhoc_auth_creds *credentials);
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* \brief Authentication credentials verify callback for initiator.
|
|
46
|
-
*/
|
|
47
|
-
int auth_cred_verify_init_x5t_cs_2(void *user_context,
|
|
48
|
-
struct edhoc_auth_creds *credentials,
|
|
49
|
-
const uint8_t **public_key_reference,
|
|
50
|
-
size_t *public_key_length);
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* \brief Authentication credentials verify callback for responder.
|
|
54
|
-
*/
|
|
55
|
-
int auth_cred_verify_resp_x5t_cs_2(void *user_context,
|
|
56
|
-
struct edhoc_auth_creds *credentials,
|
|
57
|
-
const uint8_t **public_key_reference,
|
|
58
|
-
size_t *public_key_length);
|
|
59
|
-
|
|
60
|
-
#endif /* AUTHENTICATION_CREDENTIALS_X5T_CS_2_H */
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* \file test_edhoc_handshake_x5t_cs_2_ead.h
|
|
3
|
-
* \author Kamil Kielbasa
|
|
4
|
-
* \brief EDHOC handshake unit test for X.509 hash authentication method
|
|
5
|
-
* for cipher suite 2 with single EAD token.
|
|
6
|
-
* \version 0.4
|
|
7
|
-
* \date 2024-01-01
|
|
8
|
-
*
|
|
9
|
-
* \copyright Copyright (c) 2024
|
|
10
|
-
*
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/* Header guard ------------------------------------------------------------ */
|
|
14
|
-
#ifndef TEST_EDHOC_HANDSHAKE_X5T_CS_2_EAD_H
|
|
15
|
-
#define TEST_EDHOC_HANDSHAKE_X5T_CS_2_EAD_H
|
|
16
|
-
|
|
17
|
-
/* Include files ----------------------------------------------------------- */
|
|
18
|
-
/* Defines ----------------------------------------------------------------- */
|
|
19
|
-
/* Types and type definitions ---------------------------------------------- */
|
|
20
|
-
/* Module interface variables and constants -------------------------------- */
|
|
21
|
-
/* Extern variables and constant declarations ------------------------------ */
|
|
22
|
-
/* Module interface function declarations ---------------------------------- */
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* \brief Test scenario:
|
|
26
|
-
* 1) use test vector as input for EDHOC context's.
|
|
27
|
-
* 2) perform full EDHOC handshake:
|
|
28
|
-
* (message 1 -> message 2 -> mesage 3 -> message 4)
|
|
29
|
-
* - verify:
|
|
30
|
-
* - internal context.
|
|
31
|
-
* - TH state.
|
|
32
|
-
* - PRK state.
|
|
33
|
-
* - DH key agreement.
|
|
34
|
-
* - C_I / C_R.
|
|
35
|
-
* - EAD.
|
|
36
|
-
* 3) export OSCORE sessions:
|
|
37
|
-
* - verify by cross-check:
|
|
38
|
-
* - internal context.
|
|
39
|
-
* - master secret.
|
|
40
|
-
* - master salt.
|
|
41
|
-
* - sender ID.
|
|
42
|
-
* - recipient ID.
|
|
43
|
-
* 4) perform key update on EDHOC session
|
|
44
|
-
* - verify:
|
|
45
|
-
* - internal context.
|
|
46
|
-
* - PRK state.
|
|
47
|
-
* 5) export new OSCORE sessions:
|
|
48
|
-
* - verify by cross-check:
|
|
49
|
-
* - internal context.
|
|
50
|
-
* - master secret.
|
|
51
|
-
* - master salt.
|
|
52
|
-
* - sender ID.
|
|
53
|
-
* - recipient ID.
|
|
54
|
-
*/
|
|
55
|
-
void test_edhoc_handshake_x5t_cs_2_e2e_single_ead_token(void);
|
|
56
|
-
|
|
57
|
-
#endif /* TEST_EDHOC_HANDSHAKE_X5T_CS_2_EAD_H */
|