edhoc 1.3.3 → 2.0.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.
Files changed (759) hide show
  1. package/.clang-format +79 -0
  2. package/README.md +6 -5
  3. package/dist/cbor-utils.d.ts +30 -0
  4. package/dist/cbor-utils.d.ts.map +1 -0
  5. package/dist/cbor-utils.js +179 -0
  6. package/dist/cipher-suites.d.ts +13 -0
  7. package/dist/cipher-suites.d.ts.map +1 -0
  8. package/dist/cipher-suites.js +22 -0
  9. package/dist/edhoc.d.ts +85 -277
  10. package/dist/edhoc.d.ts.map +1 -1
  11. package/dist/edhoc.js +562 -34
  12. package/package.json +5 -19
  13. package/.gitmodules +0 -3
  14. package/binding.gyp +0 -66
  15. package/dist/bindings.d.ts +0 -5
  16. package/dist/bindings.d.ts.map +0 -1
  17. package/dist/bindings.js +0 -10
  18. package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_decode.h +0 -35
  19. package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_encode.h +0 -35
  20. package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_types.h +0 -34
  21. package/external/libedhoc/backends/cbor/include/backend_cbor_ead_decode.h +0 -35
  22. package/external/libedhoc/backends/cbor/include/backend_cbor_ead_encode.h +0 -35
  23. package/external/libedhoc/backends/cbor/include/backend_cbor_edhoc_types.h +0 -102
  24. package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_decode.h +0 -35
  25. package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_encode.h +0 -35
  26. package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_types.h +0 -37
  27. package/external/libedhoc/backends/cbor/include/backend_cbor_id_cred_x_decode.h +0 -35
  28. package/external/libedhoc/backends/cbor/include/backend_cbor_id_cred_x_encode.h +0 -35
  29. package/external/libedhoc/backends/cbor/include/backend_cbor_info_decode.h +0 -35
  30. package/external/libedhoc/backends/cbor/include/backend_cbor_info_encode.h +0 -35
  31. package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_decode.h +0 -35
  32. package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_encode.h +0 -35
  33. package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_types.h +0 -34
  34. package/external/libedhoc/backends/cbor/include/backend_cbor_message_1_decode.h +0 -35
  35. package/external/libedhoc/backends/cbor/include/backend_cbor_message_1_encode.h +0 -35
  36. package/external/libedhoc/backends/cbor/include/backend_cbor_message_2_decode.h +0 -35
  37. package/external/libedhoc/backends/cbor/include/backend_cbor_message_2_encode.h +0 -35
  38. package/external/libedhoc/backends/cbor/include/backend_cbor_message_3_decode.h +0 -35
  39. package/external/libedhoc/backends/cbor/include/backend_cbor_message_3_encode.h +0 -35
  40. package/external/libedhoc/backends/cbor/include/backend_cbor_message_4_decode.h +0 -35
  41. package/external/libedhoc/backends/cbor/include/backend_cbor_message_4_encode.h +0 -35
  42. package/external/libedhoc/backends/cbor/include/backend_cbor_message_error_decode.h +0 -35
  43. package/external/libedhoc/backends/cbor/include/backend_cbor_message_error_encode.h +0 -35
  44. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_2_decode.h +0 -35
  45. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_2_encode.h +0 -35
  46. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_3_decode.h +0 -35
  47. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_3_encode.h +0 -35
  48. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_4_decode.h +0 -35
  49. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_4_encode.h +0 -35
  50. package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_decode.h +0 -35
  51. package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_encode.h +0 -35
  52. package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_types.h +0 -38
  53. package/external/libedhoc/backends/cbor/include/backend_cbor_x509_types.h +0 -180
  54. package/external/libedhoc/backends/cbor/src/backend_cbor_bstr_type_decode.c +0 -50
  55. package/external/libedhoc/backends/cbor/src/backend_cbor_bstr_type_encode.c +0 -50
  56. package/external/libedhoc/backends/cbor/src/backend_cbor_ead_decode.c +0 -69
  57. package/external/libedhoc/backends/cbor/src/backend_cbor_ead_encode.c +0 -69
  58. package/external/libedhoc/backends/cbor/src/backend_cbor_enc_structure_decode.c +0 -53
  59. package/external/libedhoc/backends/cbor/src/backend_cbor_enc_structure_encode.c +0 -53
  60. package/external/libedhoc/backends/cbor/src/backend_cbor_id_cred_x_decode.c +0 -152
  61. package/external/libedhoc/backends/cbor/src/backend_cbor_id_cred_x_encode.c +0 -152
  62. package/external/libedhoc/backends/cbor/src/backend_cbor_info_decode.c +0 -52
  63. package/external/libedhoc/backends/cbor/src/backend_cbor_info_encode.c +0 -52
  64. package/external/libedhoc/backends/cbor/src/backend_cbor_int_type_decode.c +0 -50
  65. package/external/libedhoc/backends/cbor/src/backend_cbor_int_type_encode.c +0 -50
  66. package/external/libedhoc/backends/cbor/src/backend_cbor_message_1_decode.c +0 -115
  67. package/external/libedhoc/backends/cbor/src/backend_cbor_message_1_encode.c +0 -115
  68. package/external/libedhoc/backends/cbor/src/backend_cbor_message_2_decode.c +0 -50
  69. package/external/libedhoc/backends/cbor/src/backend_cbor_message_2_encode.c +0 -50
  70. package/external/libedhoc/backends/cbor/src/backend_cbor_message_3_decode.c +0 -50
  71. package/external/libedhoc/backends/cbor/src/backend_cbor_message_3_encode.c +0 -50
  72. package/external/libedhoc/backends/cbor/src/backend_cbor_message_4_decode.c +0 -50
  73. package/external/libedhoc/backends/cbor/src/backend_cbor_message_4_encode.c +0 -50
  74. package/external/libedhoc/backends/cbor/src/backend_cbor_message_error_decode.c +0 -92
  75. package/external/libedhoc/backends/cbor/src/backend_cbor_message_error_encode.c +0 -92
  76. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_2_decode.c +0 -216
  77. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_2_encode.c +0 -217
  78. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_3_decode.c +0 -212
  79. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_3_encode.c +0 -212
  80. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_4_decode.c +0 -87
  81. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_4_encode.c +0 -87
  82. package/external/libedhoc/backends/cbor/src/backend_cbor_sig_structure_decode.c +0 -54
  83. package/external/libedhoc/backends/cbor/src/backend_cbor_sig_structure_encode.c +0 -54
  84. package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode.c +0 -31
  85. package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode.h +0 -10
  86. package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode2.c +0 -18
  87. package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode2.h +0 -9
  88. package/external/libedhoc/externals/Unity/examples/example_1/test/TestProductionCode.c +0 -69
  89. package/external/libedhoc/externals/Unity/examples/example_1/test/TestProductionCode2.c +0 -38
  90. package/external/libedhoc/externals/Unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +0 -53
  91. package/external/libedhoc/externals/Unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +0 -57
  92. package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode.c +0 -31
  93. package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode.h +0 -10
  94. package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode2.c +0 -18
  95. package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode2.h +0 -9
  96. package/external/libedhoc/externals/Unity/examples/example_2/test/TestProductionCode.c +0 -71
  97. package/external/libedhoc/externals/Unity/examples/example_2/test/TestProductionCode2.c +0 -40
  98. package/external/libedhoc/externals/Unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +0 -16
  99. package/external/libedhoc/externals/Unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +0 -18
  100. package/external/libedhoc/externals/Unity/examples/example_2/test/test_runners/all_tests.c +0 -19
  101. package/external/libedhoc/externals/Unity/examples/example_3/helper/UnityHelper.c +0 -17
  102. package/external/libedhoc/externals/Unity/examples/example_3/helper/UnityHelper.h +0 -19
  103. package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode.c +0 -31
  104. package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode.h +0 -10
  105. package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode2.c +0 -18
  106. package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode2.h +0 -9
  107. package/external/libedhoc/externals/Unity/examples/example_3/test/TestProductionCode.c +0 -69
  108. package/external/libedhoc/externals/Unity/examples/example_3/test/TestProductionCode2.c +0 -38
  109. package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode.c +0 -31
  110. package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode.h +0 -10
  111. package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode2.c +0 -18
  112. package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode2.h +0 -9
  113. package/external/libedhoc/externals/Unity/examples/example_4/test/TestProductionCode.c +0 -70
  114. package/external/libedhoc/externals/Unity/examples/example_4/test/TestProductionCode2.c +0 -42
  115. package/external/libedhoc/externals/Unity/examples/example_4/test/test_runners/TestProductionCode2_Runner.c +0 -53
  116. package/external/libedhoc/externals/Unity/examples/example_4/test/test_runners/TestProductionCode_Runner.c +0 -57
  117. package/external/libedhoc/externals/Unity/examples/unity_config.h +0 -251
  118. package/external/libedhoc/externals/Unity/extras/bdd/src/unity_bdd.h +0 -44
  119. package/external/libedhoc/externals/Unity/extras/bdd/test/test_bdd.c +0 -129
  120. package/external/libedhoc/externals/Unity/extras/fixture/src/unity_fixture.c +0 -310
  121. package/external/libedhoc/externals/Unity/extras/fixture/src/unity_fixture.h +0 -95
  122. package/external/libedhoc/externals/Unity/extras/fixture/src/unity_fixture_internals.h +0 -51
  123. package/external/libedhoc/externals/Unity/extras/fixture/test/main/AllTests.c +0 -20
  124. package/external/libedhoc/externals/Unity/extras/fixture/test/template_fixture_tests.c +0 -40
  125. package/external/libedhoc/externals/Unity/extras/fixture/test/unity_fixture_Test.c +0 -246
  126. package/external/libedhoc/externals/Unity/extras/fixture/test/unity_fixture_TestRunner.c +0 -33
  127. package/external/libedhoc/externals/Unity/extras/memory/src/unity_memory.c +0 -203
  128. package/external/libedhoc/externals/Unity/extras/memory/src/unity_memory.h +0 -61
  129. package/external/libedhoc/externals/Unity/extras/memory/test/unity_memory_Test.c +0 -326
  130. package/external/libedhoc/externals/Unity/extras/memory/test/unity_memory_TestRunner.c +0 -50
  131. package/external/libedhoc/externals/Unity/extras/memory/test/unity_output_Spy.c +0 -57
  132. package/external/libedhoc/externals/Unity/extras/memory/test/unity_output_Spy.h +0 -17
  133. package/external/libedhoc/externals/Unity/src/unity.c +0 -2501
  134. package/external/libedhoc/externals/Unity/src/unity.h +0 -698
  135. package/external/libedhoc/externals/Unity/src/unity_internals.h +0 -1183
  136. package/external/libedhoc/externals/Unity/test/expectdata/testsample_cmd.c +0 -61
  137. package/external/libedhoc/externals/Unity/test/expectdata/testsample_def.c +0 -57
  138. package/external/libedhoc/externals/Unity/test/expectdata/testsample_head1.c +0 -55
  139. package/external/libedhoc/externals/Unity/test/expectdata/testsample_head1.h +0 -15
  140. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_cmd.c +0 -80
  141. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_def.c +0 -76
  142. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_head1.c +0 -75
  143. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_head1.h +0 -13
  144. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_new1.c +0 -89
  145. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_new2.c +0 -89
  146. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_param.c +0 -77
  147. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_run1.c +0 -89
  148. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_run2.c +0 -89
  149. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_yaml.c +0 -90
  150. package/external/libedhoc/externals/Unity/test/expectdata/testsample_new1.c +0 -67
  151. package/external/libedhoc/externals/Unity/test/expectdata/testsample_new2.c +0 -70
  152. package/external/libedhoc/externals/Unity/test/expectdata/testsample_param.c +0 -58
  153. package/external/libedhoc/externals/Unity/test/expectdata/testsample_run1.c +0 -67
  154. package/external/libedhoc/externals/Unity/test/expectdata/testsample_run2.c +0 -70
  155. package/external/libedhoc/externals/Unity/test/expectdata/testsample_yaml.c +0 -71
  156. package/external/libedhoc/externals/Unity/test/testdata/CException.h +0 -18
  157. package/external/libedhoc/externals/Unity/test/testdata/Defs.h +0 -16
  158. package/external/libedhoc/externals/Unity/test/testdata/cmock.h +0 -21
  159. package/external/libedhoc/externals/Unity/test/testdata/mockMock.h +0 -20
  160. package/external/libedhoc/externals/Unity/test/testdata/testRunnerGenerator.c +0 -204
  161. package/external/libedhoc/externals/Unity/test/testdata/testRunnerGeneratorSmall.c +0 -73
  162. package/external/libedhoc/externals/Unity/test/testdata/testRunnerGeneratorWithMocks.c +0 -200
  163. package/external/libedhoc/externals/Unity/test/tests/self_assessment_utils.h +0 -151
  164. package/external/libedhoc/externals/Unity/test/tests/test_unity_arrays.c +0 -2941
  165. package/external/libedhoc/externals/Unity/test/tests/test_unity_core.c +0 -375
  166. package/external/libedhoc/externals/Unity/test/tests/test_unity_doubles.c +0 -1285
  167. package/external/libedhoc/externals/Unity/test/tests/test_unity_floats.c +0 -1395
  168. package/external/libedhoc/externals/Unity/test/tests/test_unity_integers.c +0 -2863
  169. package/external/libedhoc/externals/Unity/test/tests/test_unity_integers_64.c +0 -783
  170. package/external/libedhoc/externals/Unity/test/tests/test_unity_memory.c +0 -82
  171. package/external/libedhoc/externals/Unity/test/tests/test_unity_parameterized.c +0 -309
  172. package/external/libedhoc/externals/Unity/test/tests/test_unity_parameterizedDemo.c +0 -28
  173. package/external/libedhoc/externals/Unity/test/tests/test_unity_strings.c +0 -330
  174. package/external/libedhoc/externals/Unity/test/tests/types_for_test.h +0 -21
  175. package/external/libedhoc/externals/compact25519/src/c25519/c25519.c +0 -126
  176. package/external/libedhoc/externals/compact25519/src/c25519/c25519.h +0 -49
  177. package/external/libedhoc/externals/compact25519/src/c25519/ed25519.c +0 -323
  178. package/external/libedhoc/externals/compact25519/src/c25519/ed25519.h +0 -84
  179. package/external/libedhoc/externals/compact25519/src/c25519/edsign.c +0 -171
  180. package/external/libedhoc/externals/compact25519/src/c25519/edsign.h +0 -53
  181. package/external/libedhoc/externals/compact25519/src/c25519/f25519.c +0 -330
  182. package/external/libedhoc/externals/compact25519/src/c25519/f25519.h +0 -98
  183. package/external/libedhoc/externals/compact25519/src/c25519/fprime.c +0 -226
  184. package/external/libedhoc/externals/compact25519/src/c25519/fprime.h +0 -81
  185. package/external/libedhoc/externals/compact25519/src/c25519/sha512.c +0 -230
  186. package/external/libedhoc/externals/compact25519/src/c25519/sha512.h +0 -54
  187. package/external/libedhoc/externals/compact25519/src/compact_ed25519.c +0 -46
  188. package/external/libedhoc/externals/compact25519/src/compact_ed25519.h +0 -110
  189. package/external/libedhoc/externals/compact25519/src/compact_wipe.c +0 -12
  190. package/external/libedhoc/externals/compact25519/src/compact_wipe.h +0 -14
  191. package/external/libedhoc/externals/compact25519/src/compact_x25519.c +0 -68
  192. package/external/libedhoc/externals/compact25519/src/compact_x25519.h +0 -101
  193. package/external/libedhoc/externals/compact25519/test/pcg_random.h +0 -25
  194. package/external/libedhoc/externals/compact25519/test/run-all.c +0 -178
  195. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/Hacl_Curve25519.h +0 -21
  196. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/everest.h +0 -234
  197. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlib/FStar_UInt128.h +0 -124
  198. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlib/FStar_UInt64_FStar_UInt32_FStar_UInt16_FStar_UInt8.h +0 -280
  199. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlib.h +0 -29
  200. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/c_endianness.h +0 -204
  201. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/builtin.h +0 -16
  202. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/callconv.h +0 -46
  203. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/compat.h +0 -34
  204. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/debug.h +0 -57
  205. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/target.h +0 -102
  206. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/types.h +0 -61
  207. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/wasmsupport.h +0 -5
  208. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/vs2013/Hacl_Curve25519.h +0 -21
  209. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/vs2013/inttypes.h +0 -36
  210. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/vs2013/stdbool.h +0 -31
  211. package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/x25519.h +0 -190
  212. package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/Hacl_Curve25519.c +0 -760
  213. package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/Hacl_Curve25519_joined.c +0 -50
  214. package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/everest.c +0 -102
  215. package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/kremlib/FStar_UInt128_extracted.c +0 -413
  216. package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/kremlib/FStar_UInt64_FStar_UInt32_FStar_UInt16_FStar_UInt8.c +0 -100
  217. package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/legacy/Hacl_Curve25519.c +0 -805
  218. package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/x25519.c +0 -186
  219. package/external/libedhoc/externals/mbedtls/3rdparty/p256-m/p256-m/p256-m.c +0 -1514
  220. package/external/libedhoc/externals/mbedtls/3rdparty/p256-m/p256-m/p256-m.h +0 -135
  221. package/external/libedhoc/externals/mbedtls/3rdparty/p256-m/p256-m_driver_entrypoints.c +0 -312
  222. package/external/libedhoc/externals/mbedtls/3rdparty/p256-m/p256-m_driver_entrypoints.h +0 -219
  223. package/external/libedhoc/externals/mbedtls/configs/config-ccm-psk-dtls1_2.h +0 -92
  224. package/external/libedhoc/externals/mbedtls/configs/config-ccm-psk-tls1_2.h +0 -83
  225. package/external/libedhoc/externals/mbedtls/configs/config-no-entropy.h +0 -73
  226. package/external/libedhoc/externals/mbedtls/configs/config-suite-b.h +0 -106
  227. package/external/libedhoc/externals/mbedtls/configs/config-symmetric-only.h +0 -77
  228. package/external/libedhoc/externals/mbedtls/configs/config-thread.h +0 -76
  229. package/external/libedhoc/externals/mbedtls/configs/crypto-config-ccm-aes-sha256.h +0 -25
  230. package/external/libedhoc/externals/mbedtls/configs/crypto_config_profile_medium.h +0 -136
  231. package/external/libedhoc/externals/mbedtls/configs/tfm_mbedcrypto_config_profile_medium.h +0 -609
  232. package/external/libedhoc/externals/mbedtls/doxygen/input/doc_encdec.h +0 -54
  233. package/external/libedhoc/externals/mbedtls/doxygen/input/doc_hashing.h +0 -30
  234. package/external/libedhoc/externals/mbedtls/doxygen/input/doc_mainpage.h +0 -19
  235. package/external/libedhoc/externals/mbedtls/doxygen/input/doc_rng.h +0 -27
  236. package/external/libedhoc/externals/mbedtls/doxygen/input/doc_ssltls.h +0 -37
  237. package/external/libedhoc/externals/mbedtls/doxygen/input/doc_tcpip.h +0 -32
  238. package/external/libedhoc/externals/mbedtls/doxygen/input/doc_x509.h +0 -31
  239. package/external/libedhoc/externals/mbedtls/include/mbedtls/aes.h +0 -627
  240. package/external/libedhoc/externals/mbedtls/include/mbedtls/aria.h +0 -341
  241. package/external/libedhoc/externals/mbedtls/include/mbedtls/asn1.h +0 -641
  242. package/external/libedhoc/externals/mbedtls/include/mbedtls/asn1write.h +0 -389
  243. package/external/libedhoc/externals/mbedtls/include/mbedtls/base64.h +0 -82
  244. package/external/libedhoc/externals/mbedtls/include/mbedtls/bignum.h +0 -1084
  245. package/external/libedhoc/externals/mbedtls/include/mbedtls/build_info.h +0 -146
  246. package/external/libedhoc/externals/mbedtls/include/mbedtls/camellia.h +0 -303
  247. package/external/libedhoc/externals/mbedtls/include/mbedtls/ccm.h +0 -518
  248. package/external/libedhoc/externals/mbedtls/include/mbedtls/chacha20.h +0 -202
  249. package/external/libedhoc/externals/mbedtls/include/mbedtls/chachapoly.h +0 -342
  250. package/external/libedhoc/externals/mbedtls/include/mbedtls/check_config.h +0 -1206
  251. package/external/libedhoc/externals/mbedtls/include/mbedtls/cipher.h +0 -1183
  252. package/external/libedhoc/externals/mbedtls/include/mbedtls/cmac.h +0 -246
  253. package/external/libedhoc/externals/mbedtls/include/mbedtls/compat-2.x.h +0 -46
  254. package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_legacy_crypto.h +0 -183
  255. package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_legacy_from_psa.h +0 -877
  256. package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_psa_from_legacy.h +0 -334
  257. package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_psa_superset_legacy.h +0 -142
  258. package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_ssl.h +0 -76
  259. package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_x509.h +0 -25
  260. package/external/libedhoc/externals/mbedtls/include/mbedtls/config_psa.h +0 -55
  261. package/external/libedhoc/externals/mbedtls/include/mbedtls/constant_time.h +0 -36
  262. package/external/libedhoc/externals/mbedtls/include/mbedtls/ctr_drbg.h +0 -564
  263. package/external/libedhoc/externals/mbedtls/include/mbedtls/debug.h +0 -308
  264. package/external/libedhoc/externals/mbedtls/include/mbedtls/des.h +0 -385
  265. package/external/libedhoc/externals/mbedtls/include/mbedtls/dhm.h +0 -972
  266. package/external/libedhoc/externals/mbedtls/include/mbedtls/ecdh.h +0 -441
  267. package/external/libedhoc/externals/mbedtls/include/mbedtls/ecdsa.h +0 -671
  268. package/external/libedhoc/externals/mbedtls/include/mbedtls/ecjpake.h +0 -298
  269. package/external/libedhoc/externals/mbedtls/include/mbedtls/ecp.h +0 -1362
  270. package/external/libedhoc/externals/mbedtls/include/mbedtls/entropy.h +0 -273
  271. package/external/libedhoc/externals/mbedtls/include/mbedtls/error.h +0 -201
  272. package/external/libedhoc/externals/mbedtls/include/mbedtls/gcm.h +0 -370
  273. package/external/libedhoc/externals/mbedtls/include/mbedtls/hkdf.h +0 -124
  274. package/external/libedhoc/externals/mbedtls/include/mbedtls/hmac_drbg.h +0 -434
  275. package/external/libedhoc/externals/mbedtls/include/mbedtls/lms.h +0 -440
  276. package/external/libedhoc/externals/mbedtls/include/mbedtls/mbedtls_config.h +0 -4116
  277. package/external/libedhoc/externals/mbedtls/include/mbedtls/md.h +0 -640
  278. package/external/libedhoc/externals/mbedtls/include/mbedtls/md5.h +0 -190
  279. package/external/libedhoc/externals/mbedtls/include/mbedtls/memory_buffer_alloc.h +0 -142
  280. package/external/libedhoc/externals/mbedtls/include/mbedtls/net_sockets.h +0 -299
  281. package/external/libedhoc/externals/mbedtls/include/mbedtls/nist_kw.h +0 -166
  282. package/external/libedhoc/externals/mbedtls/include/mbedtls/oid.h +0 -722
  283. package/external/libedhoc/externals/mbedtls/include/mbedtls/pem.h +0 -160
  284. package/external/libedhoc/externals/mbedtls/include/mbedtls/pk.h +0 -1091
  285. package/external/libedhoc/externals/mbedtls/include/mbedtls/pkcs12.h +0 -186
  286. package/external/libedhoc/externals/mbedtls/include/mbedtls/pkcs5.h +0 -197
  287. package/external/libedhoc/externals/mbedtls/include/mbedtls/pkcs7.h +0 -241
  288. package/external/libedhoc/externals/mbedtls/include/mbedtls/platform.h +0 -485
  289. package/external/libedhoc/externals/mbedtls/include/mbedtls/platform_time.h +0 -79
  290. package/external/libedhoc/externals/mbedtls/include/mbedtls/platform_util.h +0 -201
  291. package/external/libedhoc/externals/mbedtls/include/mbedtls/poly1305.h +0 -168
  292. package/external/libedhoc/externals/mbedtls/include/mbedtls/private_access.h +0 -20
  293. package/external/libedhoc/externals/mbedtls/include/mbedtls/psa_util.h +0 -104
  294. package/external/libedhoc/externals/mbedtls/include/mbedtls/ripemd160.h +0 -136
  295. package/external/libedhoc/externals/mbedtls/include/mbedtls/rsa.h +0 -1143
  296. package/external/libedhoc/externals/mbedtls/include/mbedtls/sha1.h +0 -219
  297. package/external/libedhoc/externals/mbedtls/include/mbedtls/sha256.h +0 -198
  298. package/external/libedhoc/externals/mbedtls/include/mbedtls/sha3.h +0 -172
  299. package/external/libedhoc/externals/mbedtls/include/mbedtls/sha512.h +0 -208
  300. package/external/libedhoc/externals/mbedtls/include/mbedtls/ssl.h +0 -5369
  301. package/external/libedhoc/externals/mbedtls/include/mbedtls/ssl_cache.h +0 -187
  302. package/external/libedhoc/externals/mbedtls/include/mbedtls/ssl_ciphersuites.h +0 -616
  303. package/external/libedhoc/externals/mbedtls/include/mbedtls/ssl_cookie.h +0 -106
  304. package/external/libedhoc/externals/mbedtls/include/mbedtls/ssl_ticket.h +0 -181
  305. package/external/libedhoc/externals/mbedtls/include/mbedtls/threading.h +0 -105
  306. package/external/libedhoc/externals/mbedtls/include/mbedtls/timing.h +0 -94
  307. package/external/libedhoc/externals/mbedtls/include/mbedtls/version.h +0 -78
  308. package/external/libedhoc/externals/mbedtls/include/mbedtls/x509.h +0 -550
  309. package/external/libedhoc/externals/mbedtls/include/mbedtls/x509_crl.h +0 -184
  310. package/external/libedhoc/externals/mbedtls/include/mbedtls/x509_crt.h +0 -1196
  311. package/external/libedhoc/externals/mbedtls/include/mbedtls/x509_csr.h +0 -319
  312. package/external/libedhoc/externals/mbedtls/include/psa/build_info.h +0 -20
  313. package/external/libedhoc/externals/mbedtls/include/psa/crypto.h +0 -4685
  314. package/external/libedhoc/externals/mbedtls/include/psa/crypto_adjust_auto_enabled.h +0 -21
  315. package/external/libedhoc/externals/mbedtls/include/psa/crypto_adjust_config_key_pair_types.h +0 -91
  316. package/external/libedhoc/externals/mbedtls/include/psa/crypto_adjust_config_synonyms.h +0 -45
  317. package/external/libedhoc/externals/mbedtls/include/psa/crypto_builtin_composites.h +0 -210
  318. package/external/libedhoc/externals/mbedtls/include/psa/crypto_builtin_key_derivation.h +0 -118
  319. package/external/libedhoc/externals/mbedtls/include/psa/crypto_builtin_primitives.h +0 -114
  320. package/external/libedhoc/externals/mbedtls/include/psa/crypto_compat.h +0 -153
  321. package/external/libedhoc/externals/mbedtls/include/psa/crypto_config.h +0 -153
  322. package/external/libedhoc/externals/mbedtls/include/psa/crypto_driver_common.h +0 -44
  323. package/external/libedhoc/externals/mbedtls/include/psa/crypto_driver_contexts_composites.h +0 -151
  324. package/external/libedhoc/externals/mbedtls/include/psa/crypto_driver_contexts_key_derivation.h +0 -52
  325. package/external/libedhoc/externals/mbedtls/include/psa/crypto_driver_contexts_primitives.h +0 -105
  326. package/external/libedhoc/externals/mbedtls/include/psa/crypto_extra.h +0 -2064
  327. package/external/libedhoc/externals/mbedtls/include/psa/crypto_legacy.h +0 -88
  328. package/external/libedhoc/externals/mbedtls/include/psa/crypto_platform.h +0 -92
  329. package/external/libedhoc/externals/mbedtls/include/psa/crypto_se_driver.h +0 -1383
  330. package/external/libedhoc/externals/mbedtls/include/psa/crypto_sizes.h +0 -1282
  331. package/external/libedhoc/externals/mbedtls/include/psa/crypto_struct.h +0 -460
  332. package/external/libedhoc/externals/mbedtls/include/psa/crypto_types.h +0 -453
  333. package/external/libedhoc/externals/mbedtls/include/psa/crypto_values.h +0 -2756
  334. package/external/libedhoc/externals/mbedtls/library/aes.c +0 -2315
  335. package/external/libedhoc/externals/mbedtls/library/aesce.c +0 -503
  336. package/external/libedhoc/externals/mbedtls/library/aesce.h +0 -121
  337. package/external/libedhoc/externals/mbedtls/library/aesni.c +0 -802
  338. package/external/libedhoc/externals/mbedtls/library/aesni.h +0 -158
  339. package/external/libedhoc/externals/mbedtls/library/alignment.h +0 -509
  340. package/external/libedhoc/externals/mbedtls/library/aria.c +0 -991
  341. package/external/libedhoc/externals/mbedtls/library/asn1parse.c +0 -467
  342. package/external/libedhoc/externals/mbedtls/library/asn1write.c +0 -436
  343. package/external/libedhoc/externals/mbedtls/library/base64.c +0 -299
  344. package/external/libedhoc/externals/mbedtls/library/base64_internal.h +0 -45
  345. package/external/libedhoc/externals/mbedtls/library/bignum.c +0 -2806
  346. package/external/libedhoc/externals/mbedtls/library/bignum_core.c +0 -894
  347. package/external/libedhoc/externals/mbedtls/library/bignum_core.h +0 -763
  348. package/external/libedhoc/externals/mbedtls/library/bignum_mod.c +0 -394
  349. package/external/libedhoc/externals/mbedtls/library/bignum_mod.h +0 -452
  350. package/external/libedhoc/externals/mbedtls/library/bignum_mod_raw.c +0 -276
  351. package/external/libedhoc/externals/mbedtls/library/bignum_mod_raw.h +0 -416
  352. package/external/libedhoc/externals/mbedtls/library/bignum_mod_raw_invasive.h +0 -34
  353. package/external/libedhoc/externals/mbedtls/library/bn_mul.h +0 -1094
  354. package/external/libedhoc/externals/mbedtls/library/camellia.c +0 -1044
  355. package/external/libedhoc/externals/mbedtls/library/ccm.c +0 -712
  356. package/external/libedhoc/externals/mbedtls/library/chacha20.c +0 -497
  357. package/external/libedhoc/externals/mbedtls/library/chachapoly.c +0 -478
  358. package/external/libedhoc/externals/mbedtls/library/check_crypto_config.h +0 -141
  359. package/external/libedhoc/externals/mbedtls/library/cipher.c +0 -1664
  360. package/external/libedhoc/externals/mbedtls/library/cipher_wrap.c +0 -2422
  361. package/external/libedhoc/externals/mbedtls/library/cipher_wrap.h +0 -132
  362. package/external/libedhoc/externals/mbedtls/library/cmac.c +0 -1067
  363. package/external/libedhoc/externals/mbedtls/library/common.h +0 -325
  364. package/external/libedhoc/externals/mbedtls/library/constant_time.c +0 -261
  365. package/external/libedhoc/externals/mbedtls/library/constant_time_impl.h +0 -554
  366. package/external/libedhoc/externals/mbedtls/library/constant_time_internal.h +0 -579
  367. package/external/libedhoc/externals/mbedtls/library/ctr_drbg.c +0 -881
  368. package/external/libedhoc/externals/mbedtls/library/debug.c +0 -465
  369. package/external/libedhoc/externals/mbedtls/library/des.c +0 -1042
  370. package/external/libedhoc/externals/mbedtls/library/dhm.c +0 -712
  371. package/external/libedhoc/externals/mbedtls/library/ecdh.c +0 -685
  372. package/external/libedhoc/externals/mbedtls/library/ecdsa.c +0 -867
  373. package/external/libedhoc/externals/mbedtls/library/ecjpake.c +0 -1216
  374. package/external/libedhoc/externals/mbedtls/library/ecp.c +0 -3631
  375. package/external/libedhoc/externals/mbedtls/library/ecp_curves.c +0 -5467
  376. package/external/libedhoc/externals/mbedtls/library/ecp_curves_new.c +0 -6043
  377. package/external/libedhoc/externals/mbedtls/library/ecp_internal_alt.h +0 -287
  378. package/external/libedhoc/externals/mbedtls/library/ecp_invasive.h +0 -325
  379. package/external/libedhoc/externals/mbedtls/library/entropy.c +0 -676
  380. package/external/libedhoc/externals/mbedtls/library/entropy_poll.c +0 -229
  381. package/external/libedhoc/externals/mbedtls/library/entropy_poll.h +0 -64
  382. package/external/libedhoc/externals/mbedtls/library/error.c +0 -878
  383. package/external/libedhoc/externals/mbedtls/library/gcm.c +0 -1168
  384. package/external/libedhoc/externals/mbedtls/library/hkdf.c +0 -161
  385. package/external/libedhoc/externals/mbedtls/library/hmac_drbg.c +0 -633
  386. package/external/libedhoc/externals/mbedtls/library/lmots.c +0 -821
  387. package/external/libedhoc/externals/mbedtls/library/lmots.h +0 -311
  388. package/external/libedhoc/externals/mbedtls/library/lms.c +0 -779
  389. package/external/libedhoc/externals/mbedtls/library/md.c +0 -1108
  390. package/external/libedhoc/externals/mbedtls/library/md5.c +0 -426
  391. package/external/libedhoc/externals/mbedtls/library/md_psa.h +0 -63
  392. package/external/libedhoc/externals/mbedtls/library/md_wrap.h +0 -46
  393. package/external/libedhoc/externals/mbedtls/library/memory_buffer_alloc.c +0 -745
  394. package/external/libedhoc/externals/mbedtls/library/mps_common.h +0 -181
  395. package/external/libedhoc/externals/mbedtls/library/mps_error.h +0 -89
  396. package/external/libedhoc/externals/mbedtls/library/mps_reader.c +0 -538
  397. package/external/libedhoc/externals/mbedtls/library/mps_reader.h +0 -366
  398. package/external/libedhoc/externals/mbedtls/library/mps_trace.c +0 -112
  399. package/external/libedhoc/externals/mbedtls/library/mps_trace.h +0 -154
  400. package/external/libedhoc/externals/mbedtls/library/net_sockets.c +0 -696
  401. package/external/libedhoc/externals/mbedtls/library/nist_kw.c +0 -725
  402. package/external/libedhoc/externals/mbedtls/library/oid.c +0 -1154
  403. package/external/libedhoc/externals/mbedtls/library/padlock.c +0 -155
  404. package/external/libedhoc/externals/mbedtls/library/padlock.h +0 -111
  405. package/external/libedhoc/externals/mbedtls/library/pem.c +0 -520
  406. package/external/libedhoc/externals/mbedtls/library/pk.c +0 -970
  407. package/external/libedhoc/externals/mbedtls/library/pk_internal.h +0 -118
  408. package/external/libedhoc/externals/mbedtls/library/pk_wrap.c +0 -1834
  409. package/external/libedhoc/externals/mbedtls/library/pk_wrap.h +0 -156
  410. package/external/libedhoc/externals/mbedtls/library/pkcs12.c +0 -447
  411. package/external/libedhoc/externals/mbedtls/library/pkcs5.c +0 -496
  412. package/external/libedhoc/externals/mbedtls/library/pkcs7.c +0 -773
  413. package/external/libedhoc/externals/mbedtls/library/pkparse.c +0 -1845
  414. package/external/libedhoc/externals/mbedtls/library/pkwrite.c +0 -836
  415. package/external/libedhoc/externals/mbedtls/library/pkwrite.h +0 -112
  416. package/external/libedhoc/externals/mbedtls/library/platform.c +0 -402
  417. package/external/libedhoc/externals/mbedtls/library/platform_util.c +0 -285
  418. package/external/libedhoc/externals/mbedtls/library/poly1305.c +0 -492
  419. package/external/libedhoc/externals/mbedtls/library/psa_crypto.c +0 -8432
  420. package/external/libedhoc/externals/mbedtls/library/psa_crypto_aead.c +0 -653
  421. package/external/libedhoc/externals/mbedtls/library/psa_crypto_aead.h +0 -499
  422. package/external/libedhoc/externals/mbedtls/library/psa_crypto_cipher.c +0 -590
  423. package/external/libedhoc/externals/mbedtls/library/psa_crypto_cipher.h +0 -293
  424. package/external/libedhoc/externals/mbedtls/library/psa_crypto_client.c +0 -67
  425. package/external/libedhoc/externals/mbedtls/library/psa_crypto_core.h +0 -838
  426. package/external/libedhoc/externals/mbedtls/library/psa_crypto_core_common.h +0 -52
  427. package/external/libedhoc/externals/mbedtls/library/psa_crypto_driver_wrappers.h +0 -2871
  428. package/external/libedhoc/externals/mbedtls/library/psa_crypto_driver_wrappers_no_static.c +0 -256
  429. package/external/libedhoc/externals/mbedtls/library/psa_crypto_driver_wrappers_no_static.h +0 -31
  430. package/external/libedhoc/externals/mbedtls/library/psa_crypto_ecp.c +0 -561
  431. package/external/libedhoc/externals/mbedtls/library/psa_crypto_ecp.h +0 -267
  432. package/external/libedhoc/externals/mbedtls/library/psa_crypto_ffdh.c +0 -295
  433. package/external/libedhoc/externals/mbedtls/library/psa_crypto_ffdh.h +0 -132
  434. package/external/libedhoc/externals/mbedtls/library/psa_crypto_hash.c +0 -470
  435. package/external/libedhoc/externals/mbedtls/library/psa_crypto_hash.h +0 -211
  436. package/external/libedhoc/externals/mbedtls/library/psa_crypto_invasive.h +0 -70
  437. package/external/libedhoc/externals/mbedtls/library/psa_crypto_its.h +0 -131
  438. package/external/libedhoc/externals/mbedtls/library/psa_crypto_mac.c +0 -496
  439. package/external/libedhoc/externals/mbedtls/library/psa_crypto_mac.h +0 -264
  440. package/external/libedhoc/externals/mbedtls/library/psa_crypto_pake.c +0 -571
  441. package/external/libedhoc/externals/mbedtls/library/psa_crypto_pake.h +0 -159
  442. package/external/libedhoc/externals/mbedtls/library/psa_crypto_random_impl.h +0 -192
  443. package/external/libedhoc/externals/mbedtls/library/psa_crypto_rsa.c +0 -727
  444. package/external/libedhoc/externals/mbedtls/library/psa_crypto_rsa.h +0 -317
  445. package/external/libedhoc/externals/mbedtls/library/psa_crypto_se.c +0 -373
  446. package/external/libedhoc/externals/mbedtls/library/psa_crypto_se.h +0 -185
  447. package/external/libedhoc/externals/mbedtls/library/psa_crypto_slot_management.c +0 -559
  448. package/external/libedhoc/externals/mbedtls/library/psa_crypto_slot_management.h +0 -213
  449. package/external/libedhoc/externals/mbedtls/library/psa_crypto_storage.c +0 -481
  450. package/external/libedhoc/externals/mbedtls/library/psa_crypto_storage.h +0 -384
  451. package/external/libedhoc/externals/mbedtls/library/psa_its_file.c +0 -259
  452. package/external/libedhoc/externals/mbedtls/library/psa_util.c +0 -160
  453. package/external/libedhoc/externals/mbedtls/library/psa_util_internal.h +0 -96
  454. package/external/libedhoc/externals/mbedtls/library/ripemd160.c +0 -490
  455. package/external/libedhoc/externals/mbedtls/library/rsa.c +0 -2640
  456. package/external/libedhoc/externals/mbedtls/library/rsa_alt_helpers.c +0 -447
  457. package/external/libedhoc/externals/mbedtls/library/rsa_alt_helpers.h +0 -208
  458. package/external/libedhoc/externals/mbedtls/library/sha1.c +0 -480
  459. package/external/libedhoc/externals/mbedtls/library/sha256.c +0 -946
  460. package/external/libedhoc/externals/mbedtls/library/sha3.c +0 -626
  461. package/external/libedhoc/externals/mbedtls/library/sha512.c +0 -1111
  462. package/external/libedhoc/externals/mbedtls/library/ssl_cache.c +0 -410
  463. package/external/libedhoc/externals/mbedtls/library/ssl_ciphersuites.c +0 -2050
  464. package/external/libedhoc/externals/mbedtls/library/ssl_client.c +0 -1017
  465. package/external/libedhoc/externals/mbedtls/library/ssl_client.h +0 -22
  466. package/external/libedhoc/externals/mbedtls/library/ssl_cookie.c +0 -380
  467. package/external/libedhoc/externals/mbedtls/library/ssl_debug_helpers.h +0 -78
  468. package/external/libedhoc/externals/mbedtls/library/ssl_debug_helpers_generated.c +0 -234
  469. package/external/libedhoc/externals/mbedtls/library/ssl_misc.h +0 -2847
  470. package/external/libedhoc/externals/mbedtls/library/ssl_msg.c +0 -6155
  471. package/external/libedhoc/externals/mbedtls/library/ssl_ticket.c +0 -540
  472. package/external/libedhoc/externals/mbedtls/library/ssl_tls.c +0 -9577
  473. package/external/libedhoc/externals/mbedtls/library/ssl_tls12_client.c +0 -3607
  474. package/external/libedhoc/externals/mbedtls/library/ssl_tls12_server.c +0 -4403
  475. package/external/libedhoc/externals/mbedtls/library/ssl_tls13_client.c +0 -3046
  476. package/external/libedhoc/externals/mbedtls/library/ssl_tls13_generic.c +0 -1740
  477. package/external/libedhoc/externals/mbedtls/library/ssl_tls13_invasive.h +0 -23
  478. package/external/libedhoc/externals/mbedtls/library/ssl_tls13_keys.c +0 -1897
  479. package/external/libedhoc/externals/mbedtls/library/ssl_tls13_keys.h +0 -651
  480. package/external/libedhoc/externals/mbedtls/library/ssl_tls13_server.c +0 -3146
  481. package/external/libedhoc/externals/mbedtls/library/threading.c +0 -181
  482. package/external/libedhoc/externals/mbedtls/library/timing.c +0 -154
  483. package/external/libedhoc/externals/mbedtls/library/version.c +0 -32
  484. package/external/libedhoc/externals/mbedtls/library/version_features.c +0 -826
  485. package/external/libedhoc/externals/mbedtls/library/x509.c +0 -1776
  486. package/external/libedhoc/externals/mbedtls/library/x509_create.c +0 -557
  487. package/external/libedhoc/externals/mbedtls/library/x509_crl.c +0 -712
  488. package/external/libedhoc/externals/mbedtls/library/x509_crt.c +0 -3292
  489. package/external/libedhoc/externals/mbedtls/library/x509_csr.c +0 -574
  490. package/external/libedhoc/externals/mbedtls/library/x509write.c +0 -174
  491. package/external/libedhoc/externals/mbedtls/library/x509write_crt.c +0 -681
  492. package/external/libedhoc/externals/mbedtls/library/x509write_csr.c +0 -331
  493. package/external/libedhoc/externals/mbedtls/programs/aes/crypt_and_hash.c +0 -573
  494. package/external/libedhoc/externals/mbedtls/programs/cipher/cipher_aead_demo.c +0 -259
  495. package/external/libedhoc/externals/mbedtls/programs/fuzz/common.c +0 -105
  496. package/external/libedhoc/externals/mbedtls/programs/fuzz/common.h +0 -25
  497. package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_client.c +0 -195
  498. package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_dtlsclient.c +0 -138
  499. package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_dtlsserver.c +0 -183
  500. package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_pkcs7.c +0 -20
  501. package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_privkey.c +0 -106
  502. package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_pubkey.c +0 -86
  503. package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_server.c +0 -218
  504. package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_x509crl.c +0 -41
  505. package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_x509crt.c +0 -41
  506. package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_x509csr.c +0 -41
  507. package/external/libedhoc/externals/mbedtls/programs/fuzz/onefile.c +0 -69
  508. package/external/libedhoc/externals/mbedtls/programs/hash/generic_sum.c +0 -209
  509. package/external/libedhoc/externals/mbedtls/programs/hash/hello.c +0 -45
  510. package/external/libedhoc/externals/mbedtls/programs/hash/md_hmac_demo.c +0 -136
  511. package/external/libedhoc/externals/mbedtls/programs/pkey/dh_client.c +0 -274
  512. package/external/libedhoc/externals/mbedtls/programs/pkey/dh_genprime.c +0 -161
  513. package/external/libedhoc/externals/mbedtls/programs/pkey/dh_server.c +0 -296
  514. package/external/libedhoc/externals/mbedtls/programs/pkey/ecdh_curve25519.c +0 -189
  515. package/external/libedhoc/externals/mbedtls/programs/pkey/ecdsa.c +0 -217
  516. package/external/libedhoc/externals/mbedtls/programs/pkey/gen_key.c +0 -419
  517. package/external/libedhoc/externals/mbedtls/programs/pkey/key_app.c +0 -316
  518. package/external/libedhoc/externals/mbedtls/programs/pkey/key_app_writer.c +0 -435
  519. package/external/libedhoc/externals/mbedtls/programs/pkey/mpi_demo.c +0 -84
  520. package/external/libedhoc/externals/mbedtls/programs/pkey/pk_decrypt.c +0 -153
  521. package/external/libedhoc/externals/mbedtls/programs/pkey/pk_encrypt.c +0 -154
  522. package/external/libedhoc/externals/mbedtls/programs/pkey/pk_sign.c +0 -155
  523. package/external/libedhoc/externals/mbedtls/programs/pkey/pk_verify.c +0 -128
  524. package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_decrypt.c +0 -172
  525. package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_encrypt.c +0 -149
  526. package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_genkey.c +0 -141
  527. package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_sign.c +0 -155
  528. package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_sign_pss.c +0 -161
  529. package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_verify.c +0 -131
  530. package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_verify_pss.c +0 -136
  531. package/external/libedhoc/externals/mbedtls/programs/psa/aead_demo.c +0 -281
  532. package/external/libedhoc/externals/mbedtls/programs/psa/crypto_examples.c +0 -321
  533. package/external/libedhoc/externals/mbedtls/programs/psa/hmac_demo.c +0 -159
  534. package/external/libedhoc/externals/mbedtls/programs/psa/key_ladder_demo.c +0 -691
  535. package/external/libedhoc/externals/mbedtls/programs/psa/psa_constant_names.c +0 -310
  536. package/external/libedhoc/externals/mbedtls/programs/psa/psa_constant_names_generated.c +0 -474
  537. package/external/libedhoc/externals/mbedtls/programs/random/gen_entropy.c +0 -75
  538. package/external/libedhoc/externals/mbedtls/programs/random/gen_random_ctr_drbg.c +0 -107
  539. package/external/libedhoc/externals/mbedtls/programs/ssl/dtls_client.c +0 -342
  540. package/external/libedhoc/externals/mbedtls/programs/ssl/dtls_server.c +0 -408
  541. package/external/libedhoc/externals/mbedtls/programs/ssl/mini_client.c +0 -274
  542. package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_client1.c +0 -288
  543. package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_client2.c +0 -3118
  544. package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_context_info.c +0 -1009
  545. package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_fork_server.c +0 -381
  546. package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_mail_client.c +0 -804
  547. package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_pthread_server.c +0 -489
  548. package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_server.c +0 -362
  549. package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_server2.c +0 -4268
  550. package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_test_common_source.c +0 -375
  551. package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_test_lib.c +0 -601
  552. package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_test_lib.h +0 -306
  553. package/external/libedhoc/externals/mbedtls/programs/test/benchmark.c +0 -1284
  554. package/external/libedhoc/externals/mbedtls/programs/test/cmake_package/cmake_package.c +0 -27
  555. package/external/libedhoc/externals/mbedtls/programs/test/cmake_package_install/cmake_package_install.c +0 -28
  556. package/external/libedhoc/externals/mbedtls/programs/test/cmake_subproject/cmake_subproject.c +0 -28
  557. package/external/libedhoc/externals/mbedtls/programs/test/dlopen.c +0 -92
  558. package/external/libedhoc/externals/mbedtls/programs/test/query_compile_time_config.c +0 -66
  559. package/external/libedhoc/externals/mbedtls/programs/test/query_config.c +0 -5137
  560. package/external/libedhoc/externals/mbedtls/programs/test/query_config.h +0 -34
  561. package/external/libedhoc/externals/mbedtls/programs/test/query_included_headers.c +0 -29
  562. package/external/libedhoc/externals/mbedtls/programs/test/selftest.c +0 -583
  563. package/external/libedhoc/externals/mbedtls/programs/test/udp_proxy.c +0 -967
  564. package/external/libedhoc/externals/mbedtls/programs/test/zeroize.c +0 -72
  565. package/external/libedhoc/externals/mbedtls/programs/util/pem2der.c +0 -265
  566. package/external/libedhoc/externals/mbedtls/programs/util/strerror.c +0 -61
  567. package/external/libedhoc/externals/mbedtls/programs/wince_main.c +0 -31
  568. package/external/libedhoc/externals/mbedtls/programs/x509/cert_app.c +0 -456
  569. package/external/libedhoc/externals/mbedtls/programs/x509/cert_req.c +0 -509
  570. package/external/libedhoc/externals/mbedtls/programs/x509/cert_write.c +0 -1012
  571. package/external/libedhoc/externals/mbedtls/programs/x509/crl_app.c +0 -132
  572. package/external/libedhoc/externals/mbedtls/programs/x509/load_roots.c +0 -165
  573. package/external/libedhoc/externals/mbedtls/programs/x509/req_app.c +0 -132
  574. package/external/libedhoc/externals/mbedtls/tests/configs/tls13-only.h +0 -31
  575. package/external/libedhoc/externals/mbedtls/tests/configs/user-config-for-test.h +0 -89
  576. package/external/libedhoc/externals/mbedtls/tests/configs/user-config-malloc-0-null.h +0 -22
  577. package/external/libedhoc/externals/mbedtls/tests/configs/user-config-zeroize-memset.h +0 -17
  578. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/aes_alt.h +0 -23
  579. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/aria_alt.h +0 -16
  580. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/camellia_alt.h +0 -16
  581. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/ccm_alt.h +0 -16
  582. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/chacha20_alt.h +0 -16
  583. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/chachapoly_alt.h +0 -18
  584. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/cmac_alt.h +0 -15
  585. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/des_alt.h +0 -22
  586. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/dhm_alt.h +0 -16
  587. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/ecjpake_alt.h +0 -15
  588. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/ecp_alt.h +0 -22
  589. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/gcm_alt.h +0 -16
  590. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/md5_alt.h +0 -16
  591. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/nist_kw_alt.h +0 -15
  592. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/platform_alt.h +0 -16
  593. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/poly1305_alt.h +0 -16
  594. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/ripemd160_alt.h +0 -16
  595. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/rsa_alt.h +0 -16
  596. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/sha1_alt.h +0 -16
  597. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/sha256_alt.h +0 -16
  598. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/sha512_alt.h +0 -16
  599. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/threading_alt.h +0 -14
  600. package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/timing_alt.h +0 -19
  601. package/external/libedhoc/externals/mbedtls/tests/include/alt-extra/psa/crypto.h +0 -7
  602. package/external/libedhoc/externals/mbedtls/tests/include/baremetal-override/time.h +0 -6
  603. package/external/libedhoc/externals/mbedtls/tests/include/spe/crypto_spe.h +0 -131
  604. package/external/libedhoc/externals/mbedtls/tests/include/test/arguments.h +0 -26
  605. package/external/libedhoc/externals/mbedtls/tests/include/test/asn1_helpers.h +0 -38
  606. package/external/libedhoc/externals/mbedtls/tests/include/test/bignum_helpers.h +0 -106
  607. package/external/libedhoc/externals/mbedtls/tests/include/test/certs.h +0 -234
  608. package/external/libedhoc/externals/mbedtls/tests/include/test/constant_flow.h +0 -71
  609. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/aead.h +0 -121
  610. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/asymmetric_encryption.h +0 -67
  611. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/cipher.h +0 -130
  612. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/config_test_driver.h +0 -44
  613. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/crypto_config_test_driver_extension.h +0 -430
  614. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/hash.h +0 -64
  615. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/key_agreement.h +0 -62
  616. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/key_management.h +0 -123
  617. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/mac.h +0 -125
  618. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/pake.h +0 -75
  619. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/signature.h +0 -112
  620. package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/test_driver.h +0 -32
  621. package/external/libedhoc/externals/mbedtls/tests/include/test/fake_external_rng_for_test.h +0 -40
  622. package/external/libedhoc/externals/mbedtls/tests/include/test/helpers.h +0 -268
  623. package/external/libedhoc/externals/mbedtls/tests/include/test/macros.h +0 -250
  624. package/external/libedhoc/externals/mbedtls/tests/include/test/psa_crypto_helpers.h +0 -398
  625. package/external/libedhoc/externals/mbedtls/tests/include/test/psa_exercise_key.h +0 -223
  626. package/external/libedhoc/externals/mbedtls/tests/include/test/psa_helpers.h +0 -24
  627. package/external/libedhoc/externals/mbedtls/tests/include/test/random.h +0 -91
  628. package/external/libedhoc/externals/mbedtls/tests/include/test/ssl_helpers.h +0 -628
  629. package/external/libedhoc/externals/mbedtls/tests/src/asn1_helpers.c +0 -62
  630. package/external/libedhoc/externals/mbedtls/tests/src/bignum_helpers.c +0 -145
  631. package/external/libedhoc/externals/mbedtls/tests/src/certs.c +0 -480
  632. package/external/libedhoc/externals/mbedtls/tests/src/drivers/hash.c +0 -199
  633. package/external/libedhoc/externals/mbedtls/tests/src/drivers/platform_builtin_keys.c +0 -78
  634. package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_aead.c +0 -462
  635. package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_asymmetric_encryption.c +0 -151
  636. package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_cipher.c +0 -424
  637. package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_key_agreement.c +0 -147
  638. package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_key_management.c +0 -783
  639. package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_mac.c +0 -422
  640. package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_pake.c +0 -202
  641. package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_signature.c +0 -405
  642. package/external/libedhoc/externals/mbedtls/tests/src/fake_external_rng_for_test.c +0 -45
  643. package/external/libedhoc/externals/mbedtls/tests/src/helpers.c +0 -353
  644. package/external/libedhoc/externals/mbedtls/tests/src/psa_crypto_helpers.c +0 -196
  645. package/external/libedhoc/externals/mbedtls/tests/src/psa_exercise_key.c +0 -989
  646. package/external/libedhoc/externals/mbedtls/tests/src/random.c +0 -136
  647. package/external/libedhoc/externals/mbedtls/tests/src/test_certs.h +0 -1226
  648. package/external/libedhoc/externals/mbedtls/tests/src/test_helpers/ssl_helpers.c +0 -2292
  649. package/external/libedhoc/externals/mbedtls/tests/src/threading_helpers.c +0 -210
  650. package/external/libedhoc/externals/zcbor/include/zcbor_common.h +0 -509
  651. package/external/libedhoc/externals/zcbor/include/zcbor_decode.h +0 -447
  652. package/external/libedhoc/externals/zcbor/include/zcbor_encode.h +0 -240
  653. package/external/libedhoc/externals/zcbor/include/zcbor_print.h +0 -165
  654. package/external/libedhoc/externals/zcbor/include/zcbor_tags.h +0 -94
  655. package/external/libedhoc/externals/zcbor/samples/hello_world/src/main.c +0 -41
  656. package/external/libedhoc/externals/zcbor/samples/pet/include/pet_decode.h +0 -39
  657. package/external/libedhoc/externals/zcbor/samples/pet/include/pet_encode.h +0 -39
  658. package/external/libedhoc/externals/zcbor/samples/pet/include/pet_types.h +0 -47
  659. package/external/libedhoc/externals/zcbor/samples/pet/src/main.c +0 -128
  660. package/external/libedhoc/externals/zcbor/samples/pet/src/pet_decode.c +0 -60
  661. package/external/libedhoc/externals/zcbor/samples/pet/src/pet_encode.c +0 -61
  662. package/external/libedhoc/externals/zcbor/src/zcbor_common.c +0 -430
  663. package/external/libedhoc/externals/zcbor/src/zcbor_decode.c +0 -1567
  664. package/external/libedhoc/externals/zcbor/src/zcbor_encode.c +0 -609
  665. package/external/libedhoc/externals/zcbor/tests/decode/test1_suit_old_formats/src/main.c +0 -367
  666. package/external/libedhoc/externals/zcbor/tests/decode/test2_suit/src/main.c +0 -189
  667. package/external/libedhoc/externals/zcbor/tests/decode/test3_simple/src/main.c +0 -528
  668. package/external/libedhoc/externals/zcbor/tests/decode/test5_corner_cases/src/main.c +0 -2154
  669. package/external/libedhoc/externals/zcbor/tests/decode/test7_suit9_simple/src/main.c +0 -134
  670. package/external/libedhoc/externals/zcbor/tests/decode/test8_suit12/src/main.c +0 -862
  671. package/external/libedhoc/externals/zcbor/tests/decode/test9_manifest14/src/main.c +0 -363
  672. package/external/libedhoc/externals/zcbor/tests/encode/test1_suit/src/main.c +0 -453
  673. package/external/libedhoc/externals/zcbor/tests/encode/test2_simple/src/main.c +0 -122
  674. package/external/libedhoc/externals/zcbor/tests/encode/test3_corner_cases/src/main.c +0 -1554
  675. package/external/libedhoc/externals/zcbor/tests/encode/test4_senml/src/main.c +0 -65
  676. package/external/libedhoc/externals/zcbor/tests/fuzz/fuzz_everything.c +0 -12
  677. package/external/libedhoc/externals/zcbor/tests/fuzz/fuzz_manifest12.c +0 -136
  678. package/external/libedhoc/externals/zcbor/tests/fuzz/fuzz_pet.c +0 -12
  679. package/external/libedhoc/externals/zcbor/tests/fuzz/main_entry.c +0 -60
  680. package/external/libedhoc/externals/zcbor/tests/fuzz/main_entry.h +0 -5
  681. package/external/libedhoc/externals/zcbor/tests/unit/test1_unit_tests/src/main.c +0 -1437
  682. package/external/libedhoc/externals/zcbor/tests/unit/test3_float16/src/main.c +0 -203
  683. package/external/libedhoc/include/edhoc.h +0 -687
  684. package/external/libedhoc/include/edhoc_common.h +0 -289
  685. package/external/libedhoc/include/edhoc_context.h +0 -343
  686. package/external/libedhoc/include/edhoc_credentials.h +0 -265
  687. package/external/libedhoc/include/edhoc_crypto.h +0 -331
  688. package/external/libedhoc/include/edhoc_ead.h +0 -102
  689. package/external/libedhoc/include/edhoc_macros.h +0 -60
  690. package/external/libedhoc/include/edhoc_values.h +0 -181
  691. package/external/libedhoc/library/edhoc.c +0 -253
  692. package/external/libedhoc/library/edhoc_common.c +0 -1314
  693. package/external/libedhoc/library/edhoc_exporter.c +0 -542
  694. package/external/libedhoc/library/edhoc_message_1.c +0 -474
  695. package/external/libedhoc/library/edhoc_message_2.c +0 -1697
  696. package/external/libedhoc/library/edhoc_message_3.c +0 -1467
  697. package/external/libedhoc/library/edhoc_message_4.c +0 -828
  698. package/external/libedhoc/library/edhoc_message_error.c +0 -238
  699. package/external/libedhoc/tests/include/cipher_suite_0.h +0 -131
  700. package/external/libedhoc/tests/include/cipher_suite_2.h +0 -139
  701. package/external/libedhoc/tests/include/test_vector_rfc9529_chapter_2.h +0 -786
  702. package/external/libedhoc/tests/include/test_vector_rfc9529_chapter_3.h +0 -529
  703. package/external/libedhoc/tests/include/test_vector_x5chain_sign_keys_suite_0.h +0 -137
  704. package/external/libedhoc/tests/include/test_vector_x5chain_sign_keys_suite_2.h +0 -168
  705. package/external/libedhoc/tests/include/test_vector_x5chain_static_dh_keys_suite_2.h +0 -162
  706. package/external/libedhoc/tests/include/test_vector_x5t_sign_keys_suite_2.h +0 -180
  707. package/external/libedhoc/tests/src/cipher_suite_0.c +0 -445
  708. package/external/libedhoc/tests/src/cipher_suite_2.c +0 -600
  709. package/external/libedhoc/tests/src/module_test_api.c +0 -430
  710. package/external/libedhoc/tests/src/module_test_cipher_suite_0.c +0 -395
  711. package/external/libedhoc/tests/src/module_test_cipher_suite_2.c +0 -392
  712. package/external/libedhoc/tests/src/module_test_error_message.c +0 -251
  713. package/external/libedhoc/tests/src/module_test_main.c +0 -49
  714. package/external/libedhoc/tests/src/module_test_rfc9528_suites_negotiation.c +0 -541
  715. package/external/libedhoc/tests/src/module_test_rfc9529_chapter_2.c +0 -2681
  716. package/external/libedhoc/tests/src/module_test_rfc9529_chapter_3.c +0 -1635
  717. package/external/libedhoc/tests/src/module_test_x5chain_sign_keys_suite_0.c +0 -1135
  718. package/external/libedhoc/tests/src/module_test_x5chain_sign_keys_suite_2.c +0 -1249
  719. package/external/libedhoc/tests/src/module_test_x5chain_static_dh_keys_suite_2.c +0 -798
  720. package/external/libedhoc/tests/src/module_test_x5t_sign_keys_suite_2.c +0 -956
  721. package/include/Binding.h +0 -348
  722. package/include/EdhocComposeAsyncWorker.h +0 -49
  723. package/include/EdhocCredentialManager.h +0 -89
  724. package/include/EdhocCryptoManager.h +0 -495
  725. package/include/EdhocEadManager.h +0 -147
  726. package/include/EdhocExportOscoreAsyncWorker.h +0 -57
  727. package/include/EdhocKeyExporterAsyncWorker.h +0 -56
  728. package/include/EdhocKeyUpdateAsyncWorker.h +0 -55
  729. package/include/EdhocProcessAsyncWorker.h +0 -55
  730. package/include/RunningContext.h +0 -102
  731. package/include/Suites.h +0 -27
  732. package/include/Utils.h +0 -71
  733. package/patches/prebuildify-cross+5.1.0.dev.patch +0 -26
  734. package/patches/prebuildify-cross+5.1.1.dev.patch +0 -26
  735. package/prebuilds/android-arm/edhoc.armv7.node +0 -0
  736. package/prebuilds/android-arm64/edhoc.armv8.node +0 -0
  737. package/prebuilds/darwin-arm64/edhoc.node +0 -0
  738. package/prebuilds/darwin-x64/edhoc.node +0 -0
  739. package/prebuilds/linux-arm/edhoc.armv6.node +0 -0
  740. package/prebuilds/linux-arm/edhoc.armv7.node +0 -0
  741. package/prebuilds/linux-arm64/edhoc.armv8.node +0 -0
  742. package/prebuilds/linux-x64/edhoc.glibc.node +0 -0
  743. package/prebuilds/linux-x64/edhoc.musl.node +0 -0
  744. package/prebuilds/win32-ia32/edhoc.node +0 -0
  745. package/prebuilds/win32-x64/edhoc.node +0 -0
  746. package/src/Binding.cpp +0 -434
  747. package/src/EdhocComposeAsyncWorker.cpp +0 -60
  748. package/src/EdhocCredentialManager.cpp +0 -314
  749. package/src/EdhocCryptoManager.cpp +0 -593
  750. package/src/EdhocEadManager.cpp +0 -148
  751. package/src/EdhocExportOscoreAsyncWorker.cpp +0 -67
  752. package/src/EdhocKeyExporterAsyncWorker.cpp +0 -39
  753. package/src/EdhocKeyUpdateAsyncWorker.cpp +0 -31
  754. package/src/EdhocProcessAsyncWorker.cpp +0 -120
  755. package/src/RunningContext.cpp +0 -95
  756. package/src/Suites.cpp +0 -120
  757. package/src/Utils.cpp +0 -54
  758. package/test/basic.test.ts +0 -118
  759. package/test/vectors.test.ts +0 -111
@@ -1,1183 +0,0 @@
1
- /**
2
- * \file cipher.h
3
- *
4
- * \brief This file contains an abstraction interface for use with the cipher
5
- * primitives provided by the library. It provides a common interface to all of
6
- * the available cipher operations.
7
- *
8
- * \author Adriaan de Jong <dejong@fox-it.com>
9
- */
10
- /*
11
- * Copyright The Mbed TLS Contributors
12
- * SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
13
- */
14
-
15
- #ifndef MBEDTLS_CIPHER_H
16
- #define MBEDTLS_CIPHER_H
17
- #include "mbedtls/private_access.h"
18
-
19
- #include "mbedtls/build_info.h"
20
-
21
- #include <stddef.h>
22
- #include "mbedtls/platform_util.h"
23
-
24
- #if defined(MBEDTLS_GCM_C) || defined(MBEDTLS_CCM_C) || defined(MBEDTLS_CHACHAPOLY_C)
25
- #define MBEDTLS_CIPHER_MODE_AEAD
26
- #endif
27
-
28
- #if defined(MBEDTLS_CIPHER_MODE_CBC)
29
- #define MBEDTLS_CIPHER_MODE_WITH_PADDING
30
- #endif
31
-
32
- #if defined(MBEDTLS_CIPHER_NULL_CIPHER) || \
33
- defined(MBEDTLS_CHACHA20_C)
34
- #define MBEDTLS_CIPHER_MODE_STREAM
35
- #endif
36
-
37
- /** The selected feature is not available. */
38
- #define MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE -0x6080
39
- /** Bad input parameters. */
40
- #define MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA -0x6100
41
- /** Failed to allocate memory. */
42
- #define MBEDTLS_ERR_CIPHER_ALLOC_FAILED -0x6180
43
- /** Input data contains invalid padding and is rejected. */
44
- #define MBEDTLS_ERR_CIPHER_INVALID_PADDING -0x6200
45
- /** Decryption of block requires a full block. */
46
- #define MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED -0x6280
47
- /** Authentication failed (for AEAD modes). */
48
- #define MBEDTLS_ERR_CIPHER_AUTH_FAILED -0x6300
49
- /** The context is invalid. For example, because it was freed. */
50
- #define MBEDTLS_ERR_CIPHER_INVALID_CONTEXT -0x6380
51
-
52
- #define MBEDTLS_CIPHER_VARIABLE_IV_LEN 0x01 /**< Cipher accepts IVs of variable length. */
53
- #define MBEDTLS_CIPHER_VARIABLE_KEY_LEN 0x02 /**< Cipher accepts keys of variable length. */
54
-
55
- #ifdef __cplusplus
56
- extern "C" {
57
- #endif
58
-
59
- /**
60
- * \brief Supported cipher types.
61
- *
62
- * \warning DES/3DES are considered weak ciphers and their use
63
- * constitutes a security risk. We recommend considering stronger
64
- * ciphers instead.
65
- */
66
- typedef enum {
67
- MBEDTLS_CIPHER_ID_NONE = 0, /**< Placeholder to mark the end of cipher ID lists. */
68
- MBEDTLS_CIPHER_ID_NULL, /**< The identity cipher, treated as a stream cipher. */
69
- MBEDTLS_CIPHER_ID_AES, /**< The AES cipher. */
70
- MBEDTLS_CIPHER_ID_DES, /**< The DES cipher. \warning DES is considered weak. */
71
- MBEDTLS_CIPHER_ID_3DES, /**< The Triple DES cipher. \warning 3DES is considered weak. */
72
- MBEDTLS_CIPHER_ID_CAMELLIA, /**< The Camellia cipher. */
73
- MBEDTLS_CIPHER_ID_ARIA, /**< The Aria cipher. */
74
- MBEDTLS_CIPHER_ID_CHACHA20, /**< The ChaCha20 cipher. */
75
- } mbedtls_cipher_id_t;
76
-
77
- /**
78
- * \brief Supported {cipher type, cipher mode} pairs.
79
- *
80
- * \warning DES/3DES are considered weak ciphers and their use
81
- * constitutes a security risk. We recommend considering stronger
82
- * ciphers instead.
83
- */
84
- typedef enum {
85
- MBEDTLS_CIPHER_NONE = 0, /**< Placeholder to mark the end of cipher-pair lists. */
86
- MBEDTLS_CIPHER_NULL, /**< The identity stream cipher. */
87
- MBEDTLS_CIPHER_AES_128_ECB, /**< AES cipher with 128-bit ECB mode. */
88
- MBEDTLS_CIPHER_AES_192_ECB, /**< AES cipher with 192-bit ECB mode. */
89
- MBEDTLS_CIPHER_AES_256_ECB, /**< AES cipher with 256-bit ECB mode. */
90
- MBEDTLS_CIPHER_AES_128_CBC, /**< AES cipher with 128-bit CBC mode. */
91
- MBEDTLS_CIPHER_AES_192_CBC, /**< AES cipher with 192-bit CBC mode. */
92
- MBEDTLS_CIPHER_AES_256_CBC, /**< AES cipher with 256-bit CBC mode. */
93
- MBEDTLS_CIPHER_AES_128_CFB128, /**< AES cipher with 128-bit CFB128 mode. */
94
- MBEDTLS_CIPHER_AES_192_CFB128, /**< AES cipher with 192-bit CFB128 mode. */
95
- MBEDTLS_CIPHER_AES_256_CFB128, /**< AES cipher with 256-bit CFB128 mode. */
96
- MBEDTLS_CIPHER_AES_128_CTR, /**< AES cipher with 128-bit CTR mode. */
97
- MBEDTLS_CIPHER_AES_192_CTR, /**< AES cipher with 192-bit CTR mode. */
98
- MBEDTLS_CIPHER_AES_256_CTR, /**< AES cipher with 256-bit CTR mode. */
99
- MBEDTLS_CIPHER_AES_128_GCM, /**< AES cipher with 128-bit GCM mode. */
100
- MBEDTLS_CIPHER_AES_192_GCM, /**< AES cipher with 192-bit GCM mode. */
101
- MBEDTLS_CIPHER_AES_256_GCM, /**< AES cipher with 256-bit GCM mode. */
102
- MBEDTLS_CIPHER_CAMELLIA_128_ECB, /**< Camellia cipher with 128-bit ECB mode. */
103
- MBEDTLS_CIPHER_CAMELLIA_192_ECB, /**< Camellia cipher with 192-bit ECB mode. */
104
- MBEDTLS_CIPHER_CAMELLIA_256_ECB, /**< Camellia cipher with 256-bit ECB mode. */
105
- MBEDTLS_CIPHER_CAMELLIA_128_CBC, /**< Camellia cipher with 128-bit CBC mode. */
106
- MBEDTLS_CIPHER_CAMELLIA_192_CBC, /**< Camellia cipher with 192-bit CBC mode. */
107
- MBEDTLS_CIPHER_CAMELLIA_256_CBC, /**< Camellia cipher with 256-bit CBC mode. */
108
- MBEDTLS_CIPHER_CAMELLIA_128_CFB128, /**< Camellia cipher with 128-bit CFB128 mode. */
109
- MBEDTLS_CIPHER_CAMELLIA_192_CFB128, /**< Camellia cipher with 192-bit CFB128 mode. */
110
- MBEDTLS_CIPHER_CAMELLIA_256_CFB128, /**< Camellia cipher with 256-bit CFB128 mode. */
111
- MBEDTLS_CIPHER_CAMELLIA_128_CTR, /**< Camellia cipher with 128-bit CTR mode. */
112
- MBEDTLS_CIPHER_CAMELLIA_192_CTR, /**< Camellia cipher with 192-bit CTR mode. */
113
- MBEDTLS_CIPHER_CAMELLIA_256_CTR, /**< Camellia cipher with 256-bit CTR mode. */
114
- MBEDTLS_CIPHER_CAMELLIA_128_GCM, /**< Camellia cipher with 128-bit GCM mode. */
115
- MBEDTLS_CIPHER_CAMELLIA_192_GCM, /**< Camellia cipher with 192-bit GCM mode. */
116
- MBEDTLS_CIPHER_CAMELLIA_256_GCM, /**< Camellia cipher with 256-bit GCM mode. */
117
- MBEDTLS_CIPHER_DES_ECB, /**< DES cipher with ECB mode. \warning DES is considered weak. */
118
- MBEDTLS_CIPHER_DES_CBC, /**< DES cipher with CBC mode. \warning DES is considered weak. */
119
- MBEDTLS_CIPHER_DES_EDE_ECB, /**< DES cipher with EDE ECB mode. \warning 3DES is considered weak. */
120
- MBEDTLS_CIPHER_DES_EDE_CBC, /**< DES cipher with EDE CBC mode. \warning 3DES is considered weak. */
121
- MBEDTLS_CIPHER_DES_EDE3_ECB, /**< DES cipher with EDE3 ECB mode. \warning 3DES is considered weak. */
122
- MBEDTLS_CIPHER_DES_EDE3_CBC, /**< DES cipher with EDE3 CBC mode. \warning 3DES is considered weak. */
123
- MBEDTLS_CIPHER_AES_128_CCM, /**< AES cipher with 128-bit CCM mode. */
124
- MBEDTLS_CIPHER_AES_192_CCM, /**< AES cipher with 192-bit CCM mode. */
125
- MBEDTLS_CIPHER_AES_256_CCM, /**< AES cipher with 256-bit CCM mode. */
126
- MBEDTLS_CIPHER_AES_128_CCM_STAR_NO_TAG, /**< AES cipher with 128-bit CCM_STAR_NO_TAG mode. */
127
- MBEDTLS_CIPHER_AES_192_CCM_STAR_NO_TAG, /**< AES cipher with 192-bit CCM_STAR_NO_TAG mode. */
128
- MBEDTLS_CIPHER_AES_256_CCM_STAR_NO_TAG, /**< AES cipher with 256-bit CCM_STAR_NO_TAG mode. */
129
- MBEDTLS_CIPHER_CAMELLIA_128_CCM, /**< Camellia cipher with 128-bit CCM mode. */
130
- MBEDTLS_CIPHER_CAMELLIA_192_CCM, /**< Camellia cipher with 192-bit CCM mode. */
131
- MBEDTLS_CIPHER_CAMELLIA_256_CCM, /**< Camellia cipher with 256-bit CCM mode. */
132
- MBEDTLS_CIPHER_CAMELLIA_128_CCM_STAR_NO_TAG, /**< Camellia cipher with 128-bit CCM_STAR_NO_TAG mode. */
133
- MBEDTLS_CIPHER_CAMELLIA_192_CCM_STAR_NO_TAG, /**< Camellia cipher with 192-bit CCM_STAR_NO_TAG mode. */
134
- MBEDTLS_CIPHER_CAMELLIA_256_CCM_STAR_NO_TAG, /**< Camellia cipher with 256-bit CCM_STAR_NO_TAG mode. */
135
- MBEDTLS_CIPHER_ARIA_128_ECB, /**< Aria cipher with 128-bit key and ECB mode. */
136
- MBEDTLS_CIPHER_ARIA_192_ECB, /**< Aria cipher with 192-bit key and ECB mode. */
137
- MBEDTLS_CIPHER_ARIA_256_ECB, /**< Aria cipher with 256-bit key and ECB mode. */
138
- MBEDTLS_CIPHER_ARIA_128_CBC, /**< Aria cipher with 128-bit key and CBC mode. */
139
- MBEDTLS_CIPHER_ARIA_192_CBC, /**< Aria cipher with 192-bit key and CBC mode. */
140
- MBEDTLS_CIPHER_ARIA_256_CBC, /**< Aria cipher with 256-bit key and CBC mode. */
141
- MBEDTLS_CIPHER_ARIA_128_CFB128, /**< Aria cipher with 128-bit key and CFB-128 mode. */
142
- MBEDTLS_CIPHER_ARIA_192_CFB128, /**< Aria cipher with 192-bit key and CFB-128 mode. */
143
- MBEDTLS_CIPHER_ARIA_256_CFB128, /**< Aria cipher with 256-bit key and CFB-128 mode. */
144
- MBEDTLS_CIPHER_ARIA_128_CTR, /**< Aria cipher with 128-bit key and CTR mode. */
145
- MBEDTLS_CIPHER_ARIA_192_CTR, /**< Aria cipher with 192-bit key and CTR mode. */
146
- MBEDTLS_CIPHER_ARIA_256_CTR, /**< Aria cipher with 256-bit key and CTR mode. */
147
- MBEDTLS_CIPHER_ARIA_128_GCM, /**< Aria cipher with 128-bit key and GCM mode. */
148
- MBEDTLS_CIPHER_ARIA_192_GCM, /**< Aria cipher with 192-bit key and GCM mode. */
149
- MBEDTLS_CIPHER_ARIA_256_GCM, /**< Aria cipher with 256-bit key and GCM mode. */
150
- MBEDTLS_CIPHER_ARIA_128_CCM, /**< Aria cipher with 128-bit key and CCM mode. */
151
- MBEDTLS_CIPHER_ARIA_192_CCM, /**< Aria cipher with 192-bit key and CCM mode. */
152
- MBEDTLS_CIPHER_ARIA_256_CCM, /**< Aria cipher with 256-bit key and CCM mode. */
153
- MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG, /**< Aria cipher with 128-bit key and CCM_STAR_NO_TAG mode. */
154
- MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG, /**< Aria cipher with 192-bit key and CCM_STAR_NO_TAG mode. */
155
- MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG, /**< Aria cipher with 256-bit key and CCM_STAR_NO_TAG mode. */
156
- MBEDTLS_CIPHER_AES_128_OFB, /**< AES 128-bit cipher in OFB mode. */
157
- MBEDTLS_CIPHER_AES_192_OFB, /**< AES 192-bit cipher in OFB mode. */
158
- MBEDTLS_CIPHER_AES_256_OFB, /**< AES 256-bit cipher in OFB mode. */
159
- MBEDTLS_CIPHER_AES_128_XTS, /**< AES 128-bit cipher in XTS block mode. */
160
- MBEDTLS_CIPHER_AES_256_XTS, /**< AES 256-bit cipher in XTS block mode. */
161
- MBEDTLS_CIPHER_CHACHA20, /**< ChaCha20 stream cipher. */
162
- MBEDTLS_CIPHER_CHACHA20_POLY1305, /**< ChaCha20-Poly1305 AEAD cipher. */
163
- MBEDTLS_CIPHER_AES_128_KW, /**< AES cipher with 128-bit NIST KW mode. */
164
- MBEDTLS_CIPHER_AES_192_KW, /**< AES cipher with 192-bit NIST KW mode. */
165
- MBEDTLS_CIPHER_AES_256_KW, /**< AES cipher with 256-bit NIST KW mode. */
166
- MBEDTLS_CIPHER_AES_128_KWP, /**< AES cipher with 128-bit NIST KWP mode. */
167
- MBEDTLS_CIPHER_AES_192_KWP, /**< AES cipher with 192-bit NIST KWP mode. */
168
- MBEDTLS_CIPHER_AES_256_KWP, /**< AES cipher with 256-bit NIST KWP mode. */
169
- } mbedtls_cipher_type_t;
170
-
171
- /** Supported cipher modes. */
172
- typedef enum {
173
- MBEDTLS_MODE_NONE = 0, /**< None. */
174
- MBEDTLS_MODE_ECB, /**< The ECB cipher mode. */
175
- MBEDTLS_MODE_CBC, /**< The CBC cipher mode. */
176
- MBEDTLS_MODE_CFB, /**< The CFB cipher mode. */
177
- MBEDTLS_MODE_OFB, /**< The OFB cipher mode. */
178
- MBEDTLS_MODE_CTR, /**< The CTR cipher mode. */
179
- MBEDTLS_MODE_GCM, /**< The GCM cipher mode. */
180
- MBEDTLS_MODE_STREAM, /**< The stream cipher mode. */
181
- MBEDTLS_MODE_CCM, /**< The CCM cipher mode. */
182
- MBEDTLS_MODE_CCM_STAR_NO_TAG, /**< The CCM*-no-tag cipher mode. */
183
- MBEDTLS_MODE_XTS, /**< The XTS cipher mode. */
184
- MBEDTLS_MODE_CHACHAPOLY, /**< The ChaCha-Poly cipher mode. */
185
- MBEDTLS_MODE_KW, /**< The SP800-38F KW mode */
186
- MBEDTLS_MODE_KWP, /**< The SP800-38F KWP mode */
187
- } mbedtls_cipher_mode_t;
188
-
189
- /** Supported cipher padding types. */
190
- typedef enum {
191
- MBEDTLS_PADDING_PKCS7 = 0, /**< PKCS7 padding (default). */
192
- MBEDTLS_PADDING_ONE_AND_ZEROS, /**< ISO/IEC 7816-4 padding. */
193
- MBEDTLS_PADDING_ZEROS_AND_LEN, /**< ANSI X.923 padding. */
194
- MBEDTLS_PADDING_ZEROS, /**< Zero padding (not reversible). */
195
- MBEDTLS_PADDING_NONE, /**< Never pad (full blocks only). */
196
- } mbedtls_cipher_padding_t;
197
-
198
- /** Type of operation. */
199
- typedef enum {
200
- MBEDTLS_OPERATION_NONE = -1,
201
- MBEDTLS_DECRYPT = 0,
202
- MBEDTLS_ENCRYPT,
203
- } mbedtls_operation_t;
204
-
205
- enum {
206
- /** Undefined key length. */
207
- MBEDTLS_KEY_LENGTH_NONE = 0,
208
- /** Key length, in bits (including parity), for DES keys. \warning DES is considered weak. */
209
- MBEDTLS_KEY_LENGTH_DES = 64,
210
- /** Key length in bits, including parity, for DES in two-key EDE. \warning 3DES is considered weak. */
211
- MBEDTLS_KEY_LENGTH_DES_EDE = 128,
212
- /** Key length in bits, including parity, for DES in three-key EDE. \warning 3DES is considered weak. */
213
- MBEDTLS_KEY_LENGTH_DES_EDE3 = 192,
214
- };
215
-
216
- /** Maximum length of any IV, in Bytes. */
217
- /* This should ideally be derived automatically from list of ciphers.
218
- * This should be kept in sync with MBEDTLS_SSL_MAX_IV_LENGTH defined
219
- * in library/ssl_misc.h. */
220
- #define MBEDTLS_MAX_IV_LENGTH 16
221
-
222
- /** Maximum block size of any cipher, in Bytes. */
223
- /* This should ideally be derived automatically from list of ciphers.
224
- * This should be kept in sync with MBEDTLS_SSL_MAX_BLOCK_LENGTH defined
225
- * in library/ssl_misc.h. */
226
- #define MBEDTLS_MAX_BLOCK_LENGTH 16
227
-
228
- /** Maximum key length, in Bytes. */
229
- /* This should ideally be derived automatically from list of ciphers.
230
- * For now, only check whether XTS is enabled which uses 64 Byte keys,
231
- * and use 32 Bytes as an upper bound for the maximum key length otherwise.
232
- * This should be kept in sync with MBEDTLS_SSL_MAX_BLOCK_LENGTH defined
233
- * in library/ssl_misc.h, which however deliberately ignores the case of XTS
234
- * since the latter isn't used in SSL/TLS. */
235
- #if defined(MBEDTLS_CIPHER_MODE_XTS)
236
- #define MBEDTLS_MAX_KEY_LENGTH 64
237
- #else
238
- #define MBEDTLS_MAX_KEY_LENGTH 32
239
- #endif /* MBEDTLS_CIPHER_MODE_XTS */
240
-
241
- /**
242
- * Base cipher information (opaque struct).
243
- */
244
- typedef struct mbedtls_cipher_base_t mbedtls_cipher_base_t;
245
-
246
- /**
247
- * CMAC context (opaque struct).
248
- */
249
- typedef struct mbedtls_cmac_context_t mbedtls_cmac_context_t;
250
-
251
- /**
252
- * Cipher information. Allows calling cipher functions
253
- * in a generic way.
254
- *
255
- * \note The library does not support custom cipher info structures,
256
- * only built-in structures returned by the functions
257
- * mbedtls_cipher_info_from_string(),
258
- * mbedtls_cipher_info_from_type(),
259
- * mbedtls_cipher_info_from_values(),
260
- * mbedtls_cipher_info_from_psa().
261
- *
262
- * \note Some fields store a value that has been right-shifted to save
263
- * code-size, so should not be used directly. The accessor
264
- * functions adjust for this and return the "natural" value.
265
- */
266
- typedef struct mbedtls_cipher_info_t {
267
- /** Name of the cipher. */
268
- const char *MBEDTLS_PRIVATE(name);
269
-
270
- /** The block size, in bytes. */
271
- unsigned int MBEDTLS_PRIVATE(block_size) : 5;
272
-
273
- /** IV or nonce size, in bytes (right shifted by #MBEDTLS_IV_SIZE_SHIFT).
274
- * For ciphers that accept variable IV sizes,
275
- * this is the recommended size.
276
- */
277
- unsigned int MBEDTLS_PRIVATE(iv_size) : 3;
278
-
279
- /** The cipher key length, in bits (right shifted by #MBEDTLS_KEY_BITLEN_SHIFT).
280
- * This is the default length for variable sized ciphers.
281
- * Includes parity bits for ciphers like DES.
282
- */
283
- unsigned int MBEDTLS_PRIVATE(key_bitlen) : 4;
284
-
285
- /** The cipher mode (as per mbedtls_cipher_mode_t).
286
- * For example, MBEDTLS_MODE_CBC.
287
- */
288
- unsigned int MBEDTLS_PRIVATE(mode) : 4;
289
-
290
- /** Full cipher identifier (as per mbedtls_cipher_type_t).
291
- * For example, MBEDTLS_CIPHER_AES_256_CBC.
292
- *
293
- * This could be 7 bits, but 8 bits retains byte alignment for the
294
- * next field, which reduces code size to access that field.
295
- */
296
- unsigned int MBEDTLS_PRIVATE(type) : 8;
297
-
298
- /** Bitflag comprised of MBEDTLS_CIPHER_VARIABLE_IV_LEN and
299
- * MBEDTLS_CIPHER_VARIABLE_KEY_LEN indicating whether the
300
- * cipher supports variable IV or variable key sizes, respectively.
301
- */
302
- unsigned int MBEDTLS_PRIVATE(flags) : 2;
303
-
304
- /** Index to LUT for base cipher information and functions. */
305
- unsigned int MBEDTLS_PRIVATE(base_idx) : 5;
306
-
307
- } mbedtls_cipher_info_t;
308
-
309
- /* For internal use only.
310
- * These are used to more compactly represent the fields above. */
311
- #define MBEDTLS_KEY_BITLEN_SHIFT 6
312
- #define MBEDTLS_IV_SIZE_SHIFT 2
313
- /**
314
- * Generic cipher context.
315
- */
316
- typedef struct mbedtls_cipher_context_t {
317
- /** Information about the associated cipher. */
318
- const mbedtls_cipher_info_t *MBEDTLS_PRIVATE(cipher_info);
319
-
320
- /** Key length to use. */
321
- int MBEDTLS_PRIVATE(key_bitlen);
322
-
323
- /** Operation that the key of the context has been
324
- * initialized for.
325
- */
326
- mbedtls_operation_t MBEDTLS_PRIVATE(operation);
327
-
328
- #if defined(MBEDTLS_CIPHER_MODE_WITH_PADDING)
329
- /** Padding functions to use, if relevant for
330
- * the specific cipher mode.
331
- */
332
- void(*MBEDTLS_PRIVATE(add_padding))(unsigned char *output, size_t olen, size_t data_len);
333
- int(*MBEDTLS_PRIVATE(get_padding))(unsigned char *input, size_t ilen, size_t *data_len);
334
- #endif
335
-
336
- /** Buffer for input that has not been processed yet. */
337
- unsigned char MBEDTLS_PRIVATE(unprocessed_data)[MBEDTLS_MAX_BLOCK_LENGTH];
338
-
339
- /** Number of Bytes that have not been processed yet. */
340
- size_t MBEDTLS_PRIVATE(unprocessed_len);
341
-
342
- /** Current IV or NONCE_COUNTER for CTR-mode, data unit (or sector) number
343
- * for XTS-mode. */
344
- unsigned char MBEDTLS_PRIVATE(iv)[MBEDTLS_MAX_IV_LENGTH];
345
-
346
- /** IV size in Bytes, for ciphers with variable-length IVs. */
347
- size_t MBEDTLS_PRIVATE(iv_size);
348
-
349
- /** The cipher-specific context. */
350
- void *MBEDTLS_PRIVATE(cipher_ctx);
351
-
352
- #if defined(MBEDTLS_CMAC_C)
353
- /** CMAC-specific context. */
354
- mbedtls_cmac_context_t *MBEDTLS_PRIVATE(cmac_ctx);
355
- #endif
356
-
357
- #if defined(MBEDTLS_USE_PSA_CRYPTO) && !defined(MBEDTLS_DEPRECATED_REMOVED)
358
- /** Indicates whether the cipher operations should be performed
359
- * by Mbed TLS' own crypto library or an external implementation
360
- * of the PSA Crypto API.
361
- * This is unset if the cipher context was established through
362
- * mbedtls_cipher_setup(), and set if it was established through
363
- * mbedtls_cipher_setup_psa().
364
- */
365
- unsigned char MBEDTLS_PRIVATE(psa_enabled);
366
- #endif /* MBEDTLS_USE_PSA_CRYPTO && !MBEDTLS_DEPRECATED_REMOVED */
367
-
368
- } mbedtls_cipher_context_t;
369
-
370
- /**
371
- * \brief This function retrieves the list of ciphers supported
372
- * by the generic cipher module.
373
- *
374
- * For any cipher identifier in the returned list, you can
375
- * obtain the corresponding generic cipher information structure
376
- * via mbedtls_cipher_info_from_type(), which can then be used
377
- * to prepare a cipher context via mbedtls_cipher_setup().
378
- *
379
- *
380
- * \return A statically-allocated array of cipher identifiers
381
- * of type cipher_type_t. The last entry is zero.
382
- */
383
- const int *mbedtls_cipher_list(void);
384
-
385
- /**
386
- * \brief This function retrieves the cipher-information
387
- * structure associated with the given cipher name.
388
- *
389
- * \param cipher_name Name of the cipher to search for. This must not be
390
- * \c NULL.
391
- *
392
- * \return The cipher information structure associated with the
393
- * given \p cipher_name.
394
- * \return \c NULL if the associated cipher information is not found.
395
- */
396
- const mbedtls_cipher_info_t *mbedtls_cipher_info_from_string(const char *cipher_name);
397
-
398
- /**
399
- * \brief This function retrieves the cipher-information
400
- * structure associated with the given cipher type.
401
- *
402
- * \param cipher_type Type of the cipher to search for.
403
- *
404
- * \return The cipher information structure associated with the
405
- * given \p cipher_type.
406
- * \return \c NULL if the associated cipher information is not found.
407
- */
408
- const mbedtls_cipher_info_t *mbedtls_cipher_info_from_type(const mbedtls_cipher_type_t cipher_type);
409
-
410
- /**
411
- * \brief This function retrieves the cipher-information
412
- * structure associated with the given cipher ID,
413
- * key size and mode.
414
- *
415
- * \param cipher_id The ID of the cipher to search for. For example,
416
- * #MBEDTLS_CIPHER_ID_AES.
417
- * \param key_bitlen The length of the key in bits.
418
- * \param mode The cipher mode. For example, #MBEDTLS_MODE_CBC.
419
- *
420
- * \return The cipher information structure associated with the
421
- * given \p cipher_id.
422
- * \return \c NULL if the associated cipher information is not found.
423
- */
424
- const mbedtls_cipher_info_t *mbedtls_cipher_info_from_values(const mbedtls_cipher_id_t cipher_id,
425
- int key_bitlen,
426
- const mbedtls_cipher_mode_t mode);
427
-
428
- /**
429
- * \brief Retrieve the identifier for a cipher info structure.
430
- *
431
- * \param[in] info The cipher info structure to query.
432
- * This may be \c NULL.
433
- *
434
- * \return The full cipher identifier (\c MBEDTLS_CIPHER_xxx).
435
- * \return #MBEDTLS_CIPHER_NONE if \p info is \c NULL.
436
- */
437
- static inline mbedtls_cipher_type_t mbedtls_cipher_info_get_type(
438
- const mbedtls_cipher_info_t *info)
439
- {
440
- if (info == NULL) {
441
- return MBEDTLS_CIPHER_NONE;
442
- } else {
443
- return (mbedtls_cipher_type_t) info->MBEDTLS_PRIVATE(type);
444
- }
445
- }
446
-
447
- /**
448
- * \brief Retrieve the operation mode for a cipher info structure.
449
- *
450
- * \param[in] info The cipher info structure to query.
451
- * This may be \c NULL.
452
- *
453
- * \return The cipher mode (\c MBEDTLS_MODE_xxx).
454
- * \return #MBEDTLS_MODE_NONE if \p info is \c NULL.
455
- */
456
- static inline mbedtls_cipher_mode_t mbedtls_cipher_info_get_mode(
457
- const mbedtls_cipher_info_t *info)
458
- {
459
- if (info == NULL) {
460
- return MBEDTLS_MODE_NONE;
461
- } else {
462
- return (mbedtls_cipher_mode_t) info->MBEDTLS_PRIVATE(mode);
463
- }
464
- }
465
-
466
- /**
467
- * \brief Retrieve the key size for a cipher info structure.
468
- *
469
- * \param[in] info The cipher info structure to query.
470
- * This may be \c NULL.
471
- *
472
- * \return The key length in bits.
473
- * For variable-sized ciphers, this is the default length.
474
- * For DES, this includes the parity bits.
475
- * \return \c 0 if \p info is \c NULL.
476
- */
477
- static inline size_t mbedtls_cipher_info_get_key_bitlen(
478
- const mbedtls_cipher_info_t *info)
479
- {
480
- if (info == NULL) {
481
- return 0;
482
- } else {
483
- return info->MBEDTLS_PRIVATE(key_bitlen) << MBEDTLS_KEY_BITLEN_SHIFT;
484
- }
485
- }
486
-
487
- /**
488
- * \brief Retrieve the human-readable name for a
489
- * cipher info structure.
490
- *
491
- * \param[in] info The cipher info structure to query.
492
- * This may be \c NULL.
493
- *
494
- * \return The cipher name, which is a human readable string,
495
- * with static storage duration.
496
- * \return \c NULL if \p info is \c NULL.
497
- */
498
- static inline const char *mbedtls_cipher_info_get_name(
499
- const mbedtls_cipher_info_t *info)
500
- {
501
- if (info == NULL) {
502
- return NULL;
503
- } else {
504
- return info->MBEDTLS_PRIVATE(name);
505
- }
506
- }
507
-
508
- /**
509
- * \brief This function returns the size of the IV or nonce
510
- * for the cipher info structure, in bytes.
511
- *
512
- * \param info The cipher info structure. This may be \c NULL.
513
- *
514
- * \return The recommended IV size.
515
- * \return \c 0 for ciphers not using an IV or a nonce.
516
- * \return \c 0 if \p info is \c NULL.
517
- */
518
- static inline size_t mbedtls_cipher_info_get_iv_size(
519
- const mbedtls_cipher_info_t *info)
520
- {
521
- if (info == NULL) {
522
- return 0;
523
- }
524
-
525
- return ((size_t) info->MBEDTLS_PRIVATE(iv_size)) << MBEDTLS_IV_SIZE_SHIFT;
526
- }
527
-
528
- /**
529
- * \brief This function returns the block size of the given
530
- * cipher info structure in bytes.
531
- *
532
- * \param info The cipher info structure. This may be \c NULL.
533
- *
534
- * \return The block size of the cipher.
535
- * \return \c 1 if the cipher is a stream cipher.
536
- * \return \c 0 if \p info is \c NULL.
537
- */
538
- static inline size_t mbedtls_cipher_info_get_block_size(
539
- const mbedtls_cipher_info_t *info)
540
- {
541
- if (info == NULL) {
542
- return 0;
543
- }
544
-
545
- return (size_t) (info->MBEDTLS_PRIVATE(block_size));
546
- }
547
-
548
- /**
549
- * \brief This function returns a non-zero value if the key length for
550
- * the given cipher is variable.
551
- *
552
- * \param info The cipher info structure. This may be \c NULL.
553
- *
554
- * \return Non-zero if the key length is variable, \c 0 otherwise.
555
- * \return \c 0 if the given pointer is \c NULL.
556
- */
557
- static inline int mbedtls_cipher_info_has_variable_key_bitlen(
558
- const mbedtls_cipher_info_t *info)
559
- {
560
- if (info == NULL) {
561
- return 0;
562
- }
563
-
564
- return info->MBEDTLS_PRIVATE(flags) & MBEDTLS_CIPHER_VARIABLE_KEY_LEN;
565
- }
566
-
567
- /**
568
- * \brief This function returns a non-zero value if the IV size for
569
- * the given cipher is variable.
570
- *
571
- * \param info The cipher info structure. This may be \c NULL.
572
- *
573
- * \return Non-zero if the IV size is variable, \c 0 otherwise.
574
- * \return \c 0 if the given pointer is \c NULL.
575
- */
576
- static inline int mbedtls_cipher_info_has_variable_iv_size(
577
- const mbedtls_cipher_info_t *info)
578
- {
579
- if (info == NULL) {
580
- return 0;
581
- }
582
-
583
- return info->MBEDTLS_PRIVATE(flags) & MBEDTLS_CIPHER_VARIABLE_IV_LEN;
584
- }
585
-
586
- /**
587
- * \brief This function initializes a \p ctx as NONE.
588
- *
589
- * \param ctx The context to be initialized. This must not be \c NULL.
590
- */
591
- void mbedtls_cipher_init(mbedtls_cipher_context_t *ctx);
592
-
593
- /**
594
- * \brief This function frees and clears the cipher-specific
595
- * context of \p ctx. Freeing \p ctx itself remains the
596
- * responsibility of the caller.
597
- *
598
- * \param ctx The context to be freed. If this is \c NULL, the
599
- * function has no effect, otherwise this must point to an
600
- * initialized context.
601
- */
602
- void mbedtls_cipher_free(mbedtls_cipher_context_t *ctx);
603
-
604
-
605
- /**
606
- * \brief This function prepares a cipher context for
607
- * use with the given cipher primitive.
608
- *
609
- * \note After calling this function, you should call
610
- * mbedtls_cipher_setkey() and, if the mode uses padding,
611
- * mbedtls_cipher_set_padding_mode(), then for each
612
- * message to encrypt or decrypt with this key, either:
613
- * - mbedtls_cipher_crypt() for one-shot processing with
614
- * non-AEAD modes;
615
- * - mbedtls_cipher_auth_encrypt_ext() or
616
- * mbedtls_cipher_auth_decrypt_ext() for one-shot
617
- * processing with AEAD modes or NIST_KW;
618
- * - for multi-part processing, see the documentation of
619
- * mbedtls_cipher_reset().
620
- *
621
- * \param ctx The context to prepare. This must be initialized by
622
- * a call to mbedtls_cipher_init() first.
623
- * \param cipher_info The cipher to use.
624
- *
625
- * \return \c 0 on success.
626
- * \return #MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA on
627
- * parameter-verification failure.
628
- * \return #MBEDTLS_ERR_CIPHER_ALLOC_FAILED if allocation of the
629
- * cipher-specific context fails.
630
- */
631
- int mbedtls_cipher_setup(mbedtls_cipher_context_t *ctx,
632
- const mbedtls_cipher_info_t *cipher_info);
633
-
634
- #if defined(MBEDTLS_USE_PSA_CRYPTO)
635
- #if !defined(MBEDTLS_DEPRECATED_REMOVED)
636
- /**
637
- * \brief This function initializes a cipher context for
638
- * PSA-based use with the given cipher primitive.
639
- *
640
- * \deprecated This function is deprecated and will be removed in a
641
- * future version of the library.
642
- * Please use psa_aead_xxx() / psa_cipher_xxx() directly
643
- * instead.
644
- *
645
- * \note See #MBEDTLS_USE_PSA_CRYPTO for information on PSA.
646
- *
647
- * \param ctx The context to initialize. May not be \c NULL.
648
- * \param cipher_info The cipher to use.
649
- * \param taglen For AEAD ciphers, the length in bytes of the
650
- * authentication tag to use. Subsequent uses of
651
- * mbedtls_cipher_auth_encrypt_ext() or
652
- * mbedtls_cipher_auth_decrypt_ext() must provide
653
- * the same tag length.
654
- * For non-AEAD ciphers, the value must be \c 0.
655
- *
656
- * \return \c 0 on success.
657
- * \return #MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA on
658
- * parameter-verification failure.
659
- * \return #MBEDTLS_ERR_CIPHER_ALLOC_FAILED if allocation of the
660
- * cipher-specific context fails.
661
- */
662
- int MBEDTLS_DEPRECATED mbedtls_cipher_setup_psa(mbedtls_cipher_context_t *ctx,
663
- const mbedtls_cipher_info_t *cipher_info,
664
- size_t taglen);
665
- #endif /* MBEDTLS_DEPRECATED_REMOVED */
666
- #endif /* MBEDTLS_USE_PSA_CRYPTO */
667
-
668
- /**
669
- * \brief This function returns the block size of the given cipher
670
- * in bytes.
671
- *
672
- * \param ctx The context of the cipher.
673
- *
674
- * \return The block size of the underlying cipher.
675
- * \return \c 1 if the cipher is a stream cipher.
676
- * \return \c 0 if \p ctx has not been initialized.
677
- */
678
- static inline unsigned int mbedtls_cipher_get_block_size(
679
- const mbedtls_cipher_context_t *ctx)
680
- {
681
- MBEDTLS_INTERNAL_VALIDATE_RET(ctx != NULL, 0);
682
- if (ctx->MBEDTLS_PRIVATE(cipher_info) == NULL) {
683
- return 0;
684
- }
685
-
686
- return (unsigned int) ctx->MBEDTLS_PRIVATE(cipher_info)->MBEDTLS_PRIVATE(block_size);
687
- }
688
-
689
- /**
690
- * \brief This function returns the mode of operation for
691
- * the cipher. For example, MBEDTLS_MODE_CBC.
692
- *
693
- * \param ctx The context of the cipher. This must be initialized.
694
- *
695
- * \return The mode of operation.
696
- * \return #MBEDTLS_MODE_NONE if \p ctx has not been initialized.
697
- */
698
- static inline mbedtls_cipher_mode_t mbedtls_cipher_get_cipher_mode(
699
- const mbedtls_cipher_context_t *ctx)
700
- {
701
- MBEDTLS_INTERNAL_VALIDATE_RET(ctx != NULL, MBEDTLS_MODE_NONE);
702
- if (ctx->MBEDTLS_PRIVATE(cipher_info) == NULL) {
703
- return MBEDTLS_MODE_NONE;
704
- }
705
-
706
- return (mbedtls_cipher_mode_t) ctx->MBEDTLS_PRIVATE(cipher_info)->MBEDTLS_PRIVATE(mode);
707
- }
708
-
709
- /**
710
- * \brief This function returns the size of the IV or nonce
711
- * of the cipher, in Bytes.
712
- *
713
- * \param ctx The context of the cipher. This must be initialized.
714
- *
715
- * \return The recommended IV size if no IV has been set.
716
- * \return \c 0 for ciphers not using an IV or a nonce.
717
- * \return The actual size if an IV has been set.
718
- */
719
- static inline int mbedtls_cipher_get_iv_size(
720
- const mbedtls_cipher_context_t *ctx)
721
- {
722
- MBEDTLS_INTERNAL_VALIDATE_RET(ctx != NULL, 0);
723
- if (ctx->MBEDTLS_PRIVATE(cipher_info) == NULL) {
724
- return 0;
725
- }
726
-
727
- if (ctx->MBEDTLS_PRIVATE(iv_size) != 0) {
728
- return (int) ctx->MBEDTLS_PRIVATE(iv_size);
729
- }
730
-
731
- return (int) (((int) ctx->MBEDTLS_PRIVATE(cipher_info)->MBEDTLS_PRIVATE(iv_size)) <<
732
- MBEDTLS_IV_SIZE_SHIFT);
733
- }
734
-
735
- /**
736
- * \brief This function returns the type of the given cipher.
737
- *
738
- * \param ctx The context of the cipher. This must be initialized.
739
- *
740
- * \return The type of the cipher.
741
- * \return #MBEDTLS_CIPHER_NONE if \p ctx has not been initialized.
742
- */
743
- static inline mbedtls_cipher_type_t mbedtls_cipher_get_type(
744
- const mbedtls_cipher_context_t *ctx)
745
- {
746
- MBEDTLS_INTERNAL_VALIDATE_RET(
747
- ctx != NULL, MBEDTLS_CIPHER_NONE);
748
- if (ctx->MBEDTLS_PRIVATE(cipher_info) == NULL) {
749
- return MBEDTLS_CIPHER_NONE;
750
- }
751
-
752
- return (mbedtls_cipher_type_t) ctx->MBEDTLS_PRIVATE(cipher_info)->MBEDTLS_PRIVATE(type);
753
- }
754
-
755
- /**
756
- * \brief This function returns the name of the given cipher
757
- * as a string.
758
- *
759
- * \param ctx The context of the cipher. This must be initialized.
760
- *
761
- * \return The name of the cipher.
762
- * \return NULL if \p ctx has not been not initialized.
763
- */
764
- static inline const char *mbedtls_cipher_get_name(
765
- const mbedtls_cipher_context_t *ctx)
766
- {
767
- MBEDTLS_INTERNAL_VALIDATE_RET(ctx != NULL, 0);
768
- if (ctx->MBEDTLS_PRIVATE(cipher_info) == NULL) {
769
- return 0;
770
- }
771
-
772
- return ctx->MBEDTLS_PRIVATE(cipher_info)->MBEDTLS_PRIVATE(name);
773
- }
774
-
775
- /**
776
- * \brief This function returns the key length of the cipher.
777
- *
778
- * \param ctx The context of the cipher. This must be initialized.
779
- *
780
- * \return The key length of the cipher in bits.
781
- * \return #MBEDTLS_KEY_LENGTH_NONE if \p ctx has not been
782
- * initialized.
783
- */
784
- static inline int mbedtls_cipher_get_key_bitlen(
785
- const mbedtls_cipher_context_t *ctx)
786
- {
787
- MBEDTLS_INTERNAL_VALIDATE_RET(
788
- ctx != NULL, MBEDTLS_KEY_LENGTH_NONE);
789
- if (ctx->MBEDTLS_PRIVATE(cipher_info) == NULL) {
790
- return MBEDTLS_KEY_LENGTH_NONE;
791
- }
792
-
793
- return (int) ctx->MBEDTLS_PRIVATE(cipher_info)->MBEDTLS_PRIVATE(key_bitlen) <<
794
- MBEDTLS_KEY_BITLEN_SHIFT;
795
- }
796
-
797
- /**
798
- * \brief This function returns the operation of the given cipher.
799
- *
800
- * \param ctx The context of the cipher. This must be initialized.
801
- *
802
- * \return The type of operation: #MBEDTLS_ENCRYPT or #MBEDTLS_DECRYPT.
803
- * \return #MBEDTLS_OPERATION_NONE if \p ctx has not been initialized.
804
- */
805
- static inline mbedtls_operation_t mbedtls_cipher_get_operation(
806
- const mbedtls_cipher_context_t *ctx)
807
- {
808
- MBEDTLS_INTERNAL_VALIDATE_RET(
809
- ctx != NULL, MBEDTLS_OPERATION_NONE);
810
- if (ctx->MBEDTLS_PRIVATE(cipher_info) == NULL) {
811
- return MBEDTLS_OPERATION_NONE;
812
- }
813
-
814
- return ctx->MBEDTLS_PRIVATE(operation);
815
- }
816
-
817
- /**
818
- * \brief This function sets the key to use with the given context.
819
- *
820
- * \param ctx The generic cipher context. This must be initialized and
821
- * bound to a cipher information structure.
822
- * \param key The key to use. This must be a readable buffer of at
823
- * least \p key_bitlen Bits.
824
- * \param key_bitlen The key length to use, in Bits.
825
- * \param operation The operation that the key will be used for:
826
- * #MBEDTLS_ENCRYPT or #MBEDTLS_DECRYPT.
827
- *
828
- * \return \c 0 on success.
829
- * \return #MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA on
830
- * parameter-verification failure.
831
- * \return A cipher-specific error code on failure.
832
- */
833
- int mbedtls_cipher_setkey(mbedtls_cipher_context_t *ctx,
834
- const unsigned char *key,
835
- int key_bitlen,
836
- const mbedtls_operation_t operation);
837
-
838
- #if defined(MBEDTLS_CIPHER_MODE_WITH_PADDING)
839
- /**
840
- * \brief This function sets the padding mode, for cipher modes
841
- * that use padding.
842
- *
843
- *
844
- * \param ctx The generic cipher context. This must be initialized and
845
- * bound to a cipher information structure.
846
- * \param mode The padding mode.
847
- *
848
- * \return \c 0 on success.
849
- * \return #MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE
850
- * if the selected padding mode is not supported.
851
- * \return #MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA if the cipher mode
852
- * does not support padding.
853
- */
854
- int mbedtls_cipher_set_padding_mode(mbedtls_cipher_context_t *ctx,
855
- mbedtls_cipher_padding_t mode);
856
- #endif /* MBEDTLS_CIPHER_MODE_WITH_PADDING */
857
-
858
- /**
859
- * \brief This function sets the initialization vector (IV)
860
- * or nonce.
861
- *
862
- * \note Some ciphers do not use IVs nor nonce. For these
863
- * ciphers, this function has no effect.
864
- *
865
- * \note For #MBEDTLS_CIPHER_CHACHA20, the nonce length must
866
- * be 12, and the initial counter value is 0.
867
- *
868
- * \note For #MBEDTLS_CIPHER_CHACHA20_POLY1305, the nonce length
869
- * must be 12.
870
- *
871
- * \param ctx The generic cipher context. This must be initialized and
872
- * bound to a cipher information structure.
873
- * \param iv The IV to use, or NONCE_COUNTER for CTR-mode ciphers. This
874
- * must be a readable buffer of at least \p iv_len Bytes.
875
- * \param iv_len The IV length for ciphers with variable-size IV.
876
- * This parameter is discarded by ciphers with fixed-size IV.
877
- *
878
- * \return \c 0 on success.
879
- * \return #MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA on
880
- * parameter-verification failure.
881
- */
882
- int mbedtls_cipher_set_iv(mbedtls_cipher_context_t *ctx,
883
- const unsigned char *iv,
884
- size_t iv_len);
885
-
886
- /**
887
- * \brief This function resets the cipher state.
888
- *
889
- * \note With non-AEAD ciphers, the order of calls for each message
890
- * is as follows:
891
- * 1. mbedtls_cipher_set_iv() if the mode uses an IV/nonce.
892
- * 2. mbedtls_cipher_reset()
893
- * 3. mbedtls_cipher_update() one or more times
894
- * 4. mbedtls_cipher_finish()
895
- * .
896
- * This sequence can be repeated to encrypt or decrypt multiple
897
- * messages with the same key.
898
- *
899
- * \note With AEAD ciphers, the order of calls for each message
900
- * is as follows:
901
- * 1. mbedtls_cipher_set_iv() if the mode uses an IV/nonce.
902
- * 2. mbedtls_cipher_reset()
903
- * 3. mbedtls_cipher_update_ad()
904
- * 4. mbedtls_cipher_update() one or more times
905
- * 5. mbedtls_cipher_finish()
906
- * 6. mbedtls_cipher_check_tag() (for decryption) or
907
- * mbedtls_cipher_write_tag() (for encryption).
908
- * .
909
- * This sequence can be repeated to encrypt or decrypt multiple
910
- * messages with the same key.
911
- *
912
- * \param ctx The generic cipher context. This must be bound to a key.
913
- *
914
- * \return \c 0 on success.
915
- * \return #MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA on
916
- * parameter-verification failure.
917
- */
918
- int mbedtls_cipher_reset(mbedtls_cipher_context_t *ctx);
919
-
920
- #if defined(MBEDTLS_GCM_C) || defined(MBEDTLS_CHACHAPOLY_C)
921
- /**
922
- * \brief This function adds additional data for AEAD ciphers.
923
- * Currently supported with GCM and ChaCha20+Poly1305.
924
- *
925
- * \param ctx The generic cipher context. This must be initialized.
926
- * \param ad The additional data to use. This must be a readable
927
- * buffer of at least \p ad_len Bytes.
928
- * \param ad_len The length of \p ad in Bytes.
929
- *
930
- * \return \c 0 on success.
931
- * \return A specific error code on failure.
932
- */
933
- int mbedtls_cipher_update_ad(mbedtls_cipher_context_t *ctx,
934
- const unsigned char *ad, size_t ad_len);
935
- #endif /* MBEDTLS_GCM_C || MBEDTLS_CHACHAPOLY_C */
936
-
937
- /**
938
- * \brief The generic cipher update function. It encrypts or
939
- * decrypts using the given cipher context. Writes as
940
- * many block-sized blocks of data as possible to output.
941
- * Any data that cannot be written immediately is either
942
- * added to the next block, or flushed when
943
- * mbedtls_cipher_finish() is called.
944
- * Exception: For MBEDTLS_MODE_ECB, expects a single block
945
- * in size. For example, 16 Bytes for AES.
946
- *
947
- * \param ctx The generic cipher context. This must be initialized and
948
- * bound to a key.
949
- * \param input The buffer holding the input data. This must be a
950
- * readable buffer of at least \p ilen Bytes.
951
- * \param ilen The length of the input data.
952
- * \param output The buffer for the output data. This must be able to
953
- * hold at least `ilen + block_size`. This must not be the
954
- * same buffer as \p input.
955
- * \param olen The length of the output data, to be updated with the
956
- * actual number of Bytes written. This must not be
957
- * \c NULL.
958
- *
959
- * \return \c 0 on success.
960
- * \return #MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA on
961
- * parameter-verification failure.
962
- * \return #MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE on an
963
- * unsupported mode for a cipher.
964
- * \return A cipher-specific error code on failure.
965
- */
966
- int mbedtls_cipher_update(mbedtls_cipher_context_t *ctx,
967
- const unsigned char *input,
968
- size_t ilen, unsigned char *output,
969
- size_t *olen);
970
-
971
- /**
972
- * \brief The generic cipher finalization function. If data still
973
- * needs to be flushed from an incomplete block, the data
974
- * contained in it is padded to the size of
975
- * the last block, and written to the \p output buffer.
976
- *
977
- * \param ctx The generic cipher context. This must be initialized and
978
- * bound to a key.
979
- * \param output The buffer to write data to. This needs to be a writable
980
- * buffer of at least block_size Bytes.
981
- * \param olen The length of the data written to the \p output buffer.
982
- * This may not be \c NULL.
983
- *
984
- * \return \c 0 on success.
985
- * \return #MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA on
986
- * parameter-verification failure.
987
- * \return #MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED on decryption
988
- * expecting a full block but not receiving one.
989
- * \return #MBEDTLS_ERR_CIPHER_INVALID_PADDING on invalid padding
990
- * while decrypting.
991
- * \return A cipher-specific error code on failure.
992
- */
993
- int mbedtls_cipher_finish(mbedtls_cipher_context_t *ctx,
994
- unsigned char *output, size_t *olen);
995
-
996
- #if defined(MBEDTLS_GCM_C) || defined(MBEDTLS_CHACHAPOLY_C)
997
- /**
998
- * \brief This function writes a tag for AEAD ciphers.
999
- * Currently supported with GCM and ChaCha20+Poly1305.
1000
- * This must be called after mbedtls_cipher_finish().
1001
- *
1002
- * \param ctx The generic cipher context. This must be initialized,
1003
- * bound to a key, and have just completed a cipher
1004
- * operation through mbedtls_cipher_finish() the tag for
1005
- * which should be written.
1006
- * \param tag The buffer to write the tag to. This must be a writable
1007
- * buffer of at least \p tag_len Bytes.
1008
- * \param tag_len The length of the tag to write.
1009
- *
1010
- * \return \c 0 on success.
1011
- * \return A specific error code on failure.
1012
- */
1013
- int mbedtls_cipher_write_tag(mbedtls_cipher_context_t *ctx,
1014
- unsigned char *tag, size_t tag_len);
1015
-
1016
- /**
1017
- * \brief This function checks the tag for AEAD ciphers.
1018
- * Currently supported with GCM and ChaCha20+Poly1305.
1019
- * This must be called after mbedtls_cipher_finish().
1020
- *
1021
- * \param ctx The generic cipher context. This must be initialized.
1022
- * \param tag The buffer holding the tag. This must be a readable
1023
- * buffer of at least \p tag_len Bytes.
1024
- * \param tag_len The length of the tag to check.
1025
- *
1026
- * \return \c 0 on success.
1027
- * \return A specific error code on failure.
1028
- */
1029
- int mbedtls_cipher_check_tag(mbedtls_cipher_context_t *ctx,
1030
- const unsigned char *tag, size_t tag_len);
1031
- #endif /* MBEDTLS_GCM_C || MBEDTLS_CHACHAPOLY_C */
1032
-
1033
- /**
1034
- * \brief The generic all-in-one encryption/decryption function,
1035
- * for all ciphers except AEAD constructs.
1036
- *
1037
- * \param ctx The generic cipher context. This must be initialized.
1038
- * \param iv The IV to use, or NONCE_COUNTER for CTR-mode ciphers.
1039
- * This must be a readable buffer of at least \p iv_len
1040
- * Bytes.
1041
- * \param iv_len The IV length for ciphers with variable-size IV.
1042
- * This parameter is discarded by ciphers with fixed-size
1043
- * IV.
1044
- * \param input The buffer holding the input data. This must be a
1045
- * readable buffer of at least \p ilen Bytes.
1046
- * \param ilen The length of the input data in Bytes.
1047
- * \param output The buffer for the output data. This must be able to
1048
- * hold at least `ilen + block_size`. This must not be the
1049
- * same buffer as \p input.
1050
- * \param olen The length of the output data, to be updated with the
1051
- * actual number of Bytes written. This must not be
1052
- * \c NULL.
1053
- *
1054
- * \note Some ciphers do not use IVs nor nonce. For these
1055
- * ciphers, use \p iv = NULL and \p iv_len = 0.
1056
- *
1057
- * \return \c 0 on success.
1058
- * \return #MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA on
1059
- * parameter-verification failure.
1060
- * \return #MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED on decryption
1061
- * expecting a full block but not receiving one.
1062
- * \return #MBEDTLS_ERR_CIPHER_INVALID_PADDING on invalid padding
1063
- * while decrypting.
1064
- * \return A cipher-specific error code on failure.
1065
- */
1066
- int mbedtls_cipher_crypt(mbedtls_cipher_context_t *ctx,
1067
- const unsigned char *iv, size_t iv_len,
1068
- const unsigned char *input, size_t ilen,
1069
- unsigned char *output, size_t *olen);
1070
-
1071
- #if defined(MBEDTLS_CIPHER_MODE_AEAD) || defined(MBEDTLS_NIST_KW_C)
1072
- /**
1073
- * \brief The authenticated encryption (AEAD/NIST_KW) function.
1074
- *
1075
- * \note For AEAD modes, the tag will be appended to the
1076
- * ciphertext, as recommended by RFC 5116.
1077
- * (NIST_KW doesn't have a separate tag.)
1078
- *
1079
- * \param ctx The generic cipher context. This must be initialized and
1080
- * bound to a key, with an AEAD algorithm or NIST_KW.
1081
- * \param iv The nonce to use. This must be a readable buffer of
1082
- * at least \p iv_len Bytes and may be \c NULL if \p
1083
- * iv_len is \c 0.
1084
- * \param iv_len The length of the nonce. For AEAD ciphers, this must
1085
- * satisfy the constraints imposed by the cipher used.
1086
- * For NIST_KW, this must be \c 0.
1087
- * \param ad The additional data to authenticate. This must be a
1088
- * readable buffer of at least \p ad_len Bytes, and may
1089
- * be \c NULL is \p ad_len is \c 0.
1090
- * \param ad_len The length of \p ad. For NIST_KW, this must be \c 0.
1091
- * \param input The buffer holding the input data. This must be a
1092
- * readable buffer of at least \p ilen Bytes, and may be
1093
- * \c NULL if \p ilen is \c 0.
1094
- * \param ilen The length of the input data.
1095
- * \param output The buffer for the output data. This must be a
1096
- * writable buffer of at least \p output_len Bytes, and
1097
- * must not be \c NULL.
1098
- * \param output_len The length of the \p output buffer in Bytes. For AEAD
1099
- * ciphers, this must be at least \p ilen + \p tag_len.
1100
- * For NIST_KW, this must be at least \p ilen + 8
1101
- * (rounded up to a multiple of 8 if KWP is used);
1102
- * \p ilen + 15 is always a safe value.
1103
- * \param olen This will be filled with the actual number of Bytes
1104
- * written to the \p output buffer. This must point to a
1105
- * writable object of type \c size_t.
1106
- * \param tag_len The desired length of the authentication tag. For AEAD
1107
- * ciphers, this must match the constraints imposed by
1108
- * the cipher used, and in particular must not be \c 0.
1109
- * For NIST_KW, this must be \c 0.
1110
- *
1111
- * \return \c 0 on success.
1112
- * \return #MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA on
1113
- * parameter-verification failure.
1114
- * \return A cipher-specific error code on failure.
1115
- */
1116
- int mbedtls_cipher_auth_encrypt_ext(mbedtls_cipher_context_t *ctx,
1117
- const unsigned char *iv, size_t iv_len,
1118
- const unsigned char *ad, size_t ad_len,
1119
- const unsigned char *input, size_t ilen,
1120
- unsigned char *output, size_t output_len,
1121
- size_t *olen, size_t tag_len);
1122
-
1123
- /**
1124
- * \brief The authenticated encryption (AEAD/NIST_KW) function.
1125
- *
1126
- * \note If the data is not authentic, then the output buffer
1127
- * is zeroed out to prevent the unauthentic plaintext being
1128
- * used, making this interface safer.
1129
- *
1130
- * \note For AEAD modes, the tag must be appended to the
1131
- * ciphertext, as recommended by RFC 5116.
1132
- * (NIST_KW doesn't have a separate tag.)
1133
- *
1134
- * \param ctx The generic cipher context. This must be initialized and
1135
- * bound to a key, with an AEAD algorithm or NIST_KW.
1136
- * \param iv The nonce to use. This must be a readable buffer of
1137
- * at least \p iv_len Bytes and may be \c NULL if \p
1138
- * iv_len is \c 0.
1139
- * \param iv_len The length of the nonce. For AEAD ciphers, this must
1140
- * satisfy the constraints imposed by the cipher used.
1141
- * For NIST_KW, this must be \c 0.
1142
- * \param ad The additional data to authenticate. This must be a
1143
- * readable buffer of at least \p ad_len Bytes, and may
1144
- * be \c NULL is \p ad_len is \c 0.
1145
- * \param ad_len The length of \p ad. For NIST_KW, this must be \c 0.
1146
- * \param input The buffer holding the input data. This must be a
1147
- * readable buffer of at least \p ilen Bytes, and may be
1148
- * \c NULL if \p ilen is \c 0.
1149
- * \param ilen The length of the input data. For AEAD ciphers this
1150
- * must be at least \p tag_len. For NIST_KW this must be
1151
- * at least \c 8.
1152
- * \param output The buffer for the output data. This must be a
1153
- * writable buffer of at least \p output_len Bytes, and
1154
- * may be \c NULL if \p output_len is \c 0.
1155
- * \param output_len The length of the \p output buffer in Bytes. For AEAD
1156
- * ciphers, this must be at least \p ilen - \p tag_len.
1157
- * For NIST_KW, this must be at least \p ilen - 8.
1158
- * \param olen This will be filled with the actual number of Bytes
1159
- * written to the \p output buffer. This must point to a
1160
- * writable object of type \c size_t.
1161
- * \param tag_len The actual length of the authentication tag. For AEAD
1162
- * ciphers, this must match the constraints imposed by
1163
- * the cipher used, and in particular must not be \c 0.
1164
- * For NIST_KW, this must be \c 0.
1165
- *
1166
- * \return \c 0 on success.
1167
- * \return #MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA on
1168
- * parameter-verification failure.
1169
- * \return #MBEDTLS_ERR_CIPHER_AUTH_FAILED if data is not authentic.
1170
- * \return A cipher-specific error code on failure.
1171
- */
1172
- int mbedtls_cipher_auth_decrypt_ext(mbedtls_cipher_context_t *ctx,
1173
- const unsigned char *iv, size_t iv_len,
1174
- const unsigned char *ad, size_t ad_len,
1175
- const unsigned char *input, size_t ilen,
1176
- unsigned char *output, size_t output_len,
1177
- size_t *olen, size_t tag_len);
1178
- #endif /* MBEDTLS_CIPHER_MODE_AEAD || MBEDTLS_NIST_KW_C */
1179
- #ifdef __cplusplus
1180
- }
1181
- #endif
1182
-
1183
- #endif /* MBEDTLS_CIPHER_H */