edhoc 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/binding.gyp +64 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_types.h +34 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_ead_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_ead_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_edhoc_types.h +97 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_types.h +37 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_id_cred_x_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_id_cred_x_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_info_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_info_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_types.h +34 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_1_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_1_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_2_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_2_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_3_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_3_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_4_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_4_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_error_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_message_error_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_2_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_2_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_3_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_3_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_4_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_4_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_decode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_encode.h +35 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_types.h +38 -0
- package/external/libedhoc/backends/cbor/include/backend_cbor_x509_types.h +170 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_bstr_type_decode.c +59 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_bstr_type_encode.c +59 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_ead_decode.c +74 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_ead_encode.c +74 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_enc_structure_decode.c +62 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_enc_structure_encode.c +62 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_id_cred_x_decode.c +141 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_id_cred_x_encode.c +141 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_info_decode.c +61 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_info_encode.c +61 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_int_type_decode.c +59 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_int_type_encode.c +59 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_1_decode.c +112 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_1_encode.c +112 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_2_decode.c +59 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_2_encode.c +59 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_3_decode.c +59 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_3_encode.c +59 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_4_decode.c +59 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_4_encode.c +59 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_error_decode.c +93 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_message_error_encode.c +93 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_2_decode.c +193 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_2_encode.c +194 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_3_decode.c +189 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_3_encode.c +189 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_4_decode.c +88 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_4_encode.c +88 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_sig_structure_decode.c +63 -0
- package/external/libedhoc/backends/cbor/src/backend_cbor_sig_structure_encode.c +63 -0
- package/external/libedhoc/externals/compact25519/src/c25519/c25519.c +126 -0
- package/external/libedhoc/externals/compact25519/src/c25519/c25519.h +49 -0
- package/external/libedhoc/externals/compact25519/src/c25519/ed25519.c +323 -0
- package/external/libedhoc/externals/compact25519/src/c25519/ed25519.h +84 -0
- package/external/libedhoc/externals/compact25519/src/c25519/edsign.c +171 -0
- package/external/libedhoc/externals/compact25519/src/c25519/edsign.h +53 -0
- package/external/libedhoc/externals/compact25519/src/c25519/f25519.c +330 -0
- package/external/libedhoc/externals/compact25519/src/c25519/f25519.h +98 -0
- package/external/libedhoc/externals/compact25519/src/c25519/fprime.c +226 -0
- package/external/libedhoc/externals/compact25519/src/c25519/fprime.h +81 -0
- package/external/libedhoc/externals/compact25519/src/c25519/sha512.c +230 -0
- package/external/libedhoc/externals/compact25519/src/c25519/sha512.h +54 -0
- package/external/libedhoc/externals/compact25519/src/compact_ed25519.c +46 -0
- package/external/libedhoc/externals/compact25519/src/compact_ed25519.h +110 -0
- package/external/libedhoc/externals/compact25519/src/compact_wipe.c +12 -0
- package/external/libedhoc/externals/compact25519/src/compact_wipe.h +14 -0
- package/external/libedhoc/externals/compact25519/src/compact_x25519.c +68 -0
- package/external/libedhoc/externals/compact25519/src/compact_x25519.h +101 -0
- package/external/libedhoc/externals/compact25519/test/pcg_random.h +25 -0
- package/external/libedhoc/externals/compact25519/test/run-all.c +178 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/Hacl_Curve25519.h +21 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/everest.h +234 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlib/FStar_UInt128.h +124 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlib/FStar_UInt64_FStar_UInt32_FStar_UInt16_FStar_UInt8.h +280 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlib.h +29 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/c_endianness.h +204 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/builtin.h +16 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/callconv.h +46 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/compat.h +34 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/debug.h +57 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/target.h +102 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/types.h +61 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/kremlin/internal/wasmsupport.h +5 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/vs2013/Hacl_Curve25519.h +21 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/vs2013/inttypes.h +36 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/vs2013/stdbool.h +31 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/include/everest/x25519.h +190 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/Hacl_Curve25519.c +760 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/Hacl_Curve25519_joined.c +50 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/everest.c +102 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/kremlib/FStar_UInt128_extracted.c +413 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/kremlib/FStar_UInt64_FStar_UInt32_FStar_UInt16_FStar_UInt8.c +100 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/legacy/Hacl_Curve25519.c +805 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/everest/library/x25519.c +186 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/p256-m/p256-m/p256-m.c +1514 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/p256-m/p256-m/p256-m.h +135 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/p256-m/p256-m_driver_entrypoints.c +312 -0
- package/external/libedhoc/externals/mbedtls/3rdparty/p256-m/p256-m_driver_entrypoints.h +219 -0
- package/external/libedhoc/externals/mbedtls/configs/config-ccm-psk-dtls1_2.h +92 -0
- package/external/libedhoc/externals/mbedtls/configs/config-ccm-psk-tls1_2.h +83 -0
- package/external/libedhoc/externals/mbedtls/configs/config-no-entropy.h +73 -0
- package/external/libedhoc/externals/mbedtls/configs/config-suite-b.h +106 -0
- package/external/libedhoc/externals/mbedtls/configs/config-symmetric-only.h +77 -0
- package/external/libedhoc/externals/mbedtls/configs/config-thread.h +76 -0
- package/external/libedhoc/externals/mbedtls/configs/crypto-config-ccm-aes-sha256.h +25 -0
- package/external/libedhoc/externals/mbedtls/configs/crypto_config_profile_medium.h +136 -0
- package/external/libedhoc/externals/mbedtls/configs/tfm_mbedcrypto_config_profile_medium.h +609 -0
- package/external/libedhoc/externals/mbedtls/doxygen/input/doc_encdec.h +54 -0
- package/external/libedhoc/externals/mbedtls/doxygen/input/doc_hashing.h +30 -0
- package/external/libedhoc/externals/mbedtls/doxygen/input/doc_mainpage.h +19 -0
- package/external/libedhoc/externals/mbedtls/doxygen/input/doc_rng.h +27 -0
- package/external/libedhoc/externals/mbedtls/doxygen/input/doc_ssltls.h +37 -0
- package/external/libedhoc/externals/mbedtls/doxygen/input/doc_tcpip.h +32 -0
- package/external/libedhoc/externals/mbedtls/doxygen/input/doc_x509.h +31 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/aes.h +627 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/aria.h +341 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/asn1.h +641 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/asn1write.h +389 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/base64.h +82 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/bignum.h +1084 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/build_info.h +146 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/camellia.h +303 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ccm.h +518 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/chacha20.h +202 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/chachapoly.h +342 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/check_config.h +1206 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/cipher.h +1183 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/cmac.h +246 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/compat-2.x.h +46 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_legacy_crypto.h +183 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_legacy_from_psa.h +877 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_psa_from_legacy.h +334 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_psa_superset_legacy.h +142 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_ssl.h +76 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/config_adjust_x509.h +25 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/config_psa.h +55 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/constant_time.h +36 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ctr_drbg.h +564 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/debug.h +308 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/des.h +385 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/dhm.h +972 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ecdh.h +441 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ecdsa.h +671 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ecjpake.h +298 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ecp.h +1362 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/entropy.h +273 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/error.h +201 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/gcm.h +370 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/hkdf.h +124 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/hmac_drbg.h +434 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/lms.h +440 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/mbedtls_config.h +4116 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/md.h +640 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/md5.h +190 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/memory_buffer_alloc.h +142 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/net_sockets.h +299 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/nist_kw.h +166 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/oid.h +722 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/pem.h +160 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/pk.h +1091 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/pkcs12.h +186 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/pkcs5.h +197 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/pkcs7.h +241 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/platform.h +485 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/platform_time.h +79 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/platform_util.h +201 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/poly1305.h +168 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/private_access.h +20 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/psa_util.h +104 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ripemd160.h +136 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/rsa.h +1143 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/sha1.h +219 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/sha256.h +198 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/sha3.h +172 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/sha512.h +208 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ssl.h +5369 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ssl_cache.h +187 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ssl_ciphersuites.h +616 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ssl_cookie.h +106 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/ssl_ticket.h +181 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/threading.h +105 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/timing.h +94 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/version.h +78 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/x509.h +550 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/x509_crl.h +184 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/x509_crt.h +1196 -0
- package/external/libedhoc/externals/mbedtls/include/mbedtls/x509_csr.h +319 -0
- package/external/libedhoc/externals/mbedtls/include/psa/build_info.h +20 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto.h +4685 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_adjust_auto_enabled.h +21 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_adjust_config_key_pair_types.h +91 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_adjust_config_synonyms.h +45 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_builtin_composites.h +210 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_builtin_key_derivation.h +118 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_builtin_primitives.h +114 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_compat.h +153 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_config.h +153 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_driver_common.h +44 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_driver_contexts_composites.h +151 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_driver_contexts_key_derivation.h +52 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_driver_contexts_primitives.h +105 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_extra.h +2064 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_legacy.h +88 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_platform.h +92 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_se_driver.h +1383 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_sizes.h +1282 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_struct.h +460 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_types.h +453 -0
- package/external/libedhoc/externals/mbedtls/include/psa/crypto_values.h +2756 -0
- package/external/libedhoc/externals/mbedtls/library/aes.c +2315 -0
- package/external/libedhoc/externals/mbedtls/library/aesce.c +503 -0
- package/external/libedhoc/externals/mbedtls/library/aesce.h +121 -0
- package/external/libedhoc/externals/mbedtls/library/aesni.c +802 -0
- package/external/libedhoc/externals/mbedtls/library/aesni.h +158 -0
- package/external/libedhoc/externals/mbedtls/library/alignment.h +509 -0
- package/external/libedhoc/externals/mbedtls/library/aria.c +991 -0
- package/external/libedhoc/externals/mbedtls/library/asn1parse.c +467 -0
- package/external/libedhoc/externals/mbedtls/library/asn1write.c +436 -0
- package/external/libedhoc/externals/mbedtls/library/base64.c +299 -0
- package/external/libedhoc/externals/mbedtls/library/base64_internal.h +45 -0
- package/external/libedhoc/externals/mbedtls/library/bignum.c +2806 -0
- package/external/libedhoc/externals/mbedtls/library/bignum_core.c +894 -0
- package/external/libedhoc/externals/mbedtls/library/bignum_core.h +763 -0
- package/external/libedhoc/externals/mbedtls/library/bignum_mod.c +394 -0
- package/external/libedhoc/externals/mbedtls/library/bignum_mod.h +452 -0
- package/external/libedhoc/externals/mbedtls/library/bignum_mod_raw.c +276 -0
- package/external/libedhoc/externals/mbedtls/library/bignum_mod_raw.h +416 -0
- package/external/libedhoc/externals/mbedtls/library/bignum_mod_raw_invasive.h +34 -0
- package/external/libedhoc/externals/mbedtls/library/bn_mul.h +1094 -0
- package/external/libedhoc/externals/mbedtls/library/camellia.c +1044 -0
- package/external/libedhoc/externals/mbedtls/library/ccm.c +712 -0
- package/external/libedhoc/externals/mbedtls/library/chacha20.c +497 -0
- package/external/libedhoc/externals/mbedtls/library/chachapoly.c +478 -0
- package/external/libedhoc/externals/mbedtls/library/check_crypto_config.h +141 -0
- package/external/libedhoc/externals/mbedtls/library/cipher.c +1664 -0
- package/external/libedhoc/externals/mbedtls/library/cipher_wrap.c +2422 -0
- package/external/libedhoc/externals/mbedtls/library/cipher_wrap.h +132 -0
- package/external/libedhoc/externals/mbedtls/library/cmac.c +1067 -0
- package/external/libedhoc/externals/mbedtls/library/common.h +325 -0
- package/external/libedhoc/externals/mbedtls/library/constant_time.c +261 -0
- package/external/libedhoc/externals/mbedtls/library/constant_time_impl.h +554 -0
- package/external/libedhoc/externals/mbedtls/library/constant_time_internal.h +579 -0
- package/external/libedhoc/externals/mbedtls/library/ctr_drbg.c +881 -0
- package/external/libedhoc/externals/mbedtls/library/debug.c +465 -0
- package/external/libedhoc/externals/mbedtls/library/des.c +1042 -0
- package/external/libedhoc/externals/mbedtls/library/dhm.c +712 -0
- package/external/libedhoc/externals/mbedtls/library/ecdh.c +685 -0
- package/external/libedhoc/externals/mbedtls/library/ecdsa.c +867 -0
- package/external/libedhoc/externals/mbedtls/library/ecjpake.c +1216 -0
- package/external/libedhoc/externals/mbedtls/library/ecp.c +3631 -0
- package/external/libedhoc/externals/mbedtls/library/ecp_curves.c +5467 -0
- package/external/libedhoc/externals/mbedtls/library/ecp_curves_new.c +6043 -0
- package/external/libedhoc/externals/mbedtls/library/ecp_internal_alt.h +287 -0
- package/external/libedhoc/externals/mbedtls/library/ecp_invasive.h +325 -0
- package/external/libedhoc/externals/mbedtls/library/entropy.c +676 -0
- package/external/libedhoc/externals/mbedtls/library/entropy_poll.c +229 -0
- package/external/libedhoc/externals/mbedtls/library/entropy_poll.h +64 -0
- package/external/libedhoc/externals/mbedtls/library/error.c +878 -0
- package/external/libedhoc/externals/mbedtls/library/gcm.c +1168 -0
- package/external/libedhoc/externals/mbedtls/library/hkdf.c +161 -0
- package/external/libedhoc/externals/mbedtls/library/hmac_drbg.c +633 -0
- package/external/libedhoc/externals/mbedtls/library/lmots.c +821 -0
- package/external/libedhoc/externals/mbedtls/library/lmots.h +311 -0
- package/external/libedhoc/externals/mbedtls/library/lms.c +779 -0
- package/external/libedhoc/externals/mbedtls/library/md.c +1108 -0
- package/external/libedhoc/externals/mbedtls/library/md5.c +426 -0
- package/external/libedhoc/externals/mbedtls/library/md_psa.h +63 -0
- package/external/libedhoc/externals/mbedtls/library/md_wrap.h +46 -0
- package/external/libedhoc/externals/mbedtls/library/memory_buffer_alloc.c +745 -0
- package/external/libedhoc/externals/mbedtls/library/mps_common.h +181 -0
- package/external/libedhoc/externals/mbedtls/library/mps_error.h +89 -0
- package/external/libedhoc/externals/mbedtls/library/mps_reader.c +538 -0
- package/external/libedhoc/externals/mbedtls/library/mps_reader.h +366 -0
- package/external/libedhoc/externals/mbedtls/library/mps_trace.c +112 -0
- package/external/libedhoc/externals/mbedtls/library/mps_trace.h +154 -0
- package/external/libedhoc/externals/mbedtls/library/net_sockets.c +696 -0
- package/external/libedhoc/externals/mbedtls/library/nist_kw.c +725 -0
- package/external/libedhoc/externals/mbedtls/library/oid.c +1154 -0
- package/external/libedhoc/externals/mbedtls/library/padlock.c +155 -0
- package/external/libedhoc/externals/mbedtls/library/padlock.h +111 -0
- package/external/libedhoc/externals/mbedtls/library/pem.c +520 -0
- package/external/libedhoc/externals/mbedtls/library/pk.c +970 -0
- package/external/libedhoc/externals/mbedtls/library/pk_internal.h +118 -0
- package/external/libedhoc/externals/mbedtls/library/pk_wrap.c +1834 -0
- package/external/libedhoc/externals/mbedtls/library/pk_wrap.h +156 -0
- package/external/libedhoc/externals/mbedtls/library/pkcs12.c +447 -0
- package/external/libedhoc/externals/mbedtls/library/pkcs5.c +496 -0
- package/external/libedhoc/externals/mbedtls/library/pkcs7.c +773 -0
- package/external/libedhoc/externals/mbedtls/library/pkparse.c +1845 -0
- package/external/libedhoc/externals/mbedtls/library/pkwrite.c +836 -0
- package/external/libedhoc/externals/mbedtls/library/pkwrite.h +112 -0
- package/external/libedhoc/externals/mbedtls/library/platform.c +402 -0
- package/external/libedhoc/externals/mbedtls/library/platform_util.c +285 -0
- package/external/libedhoc/externals/mbedtls/library/poly1305.c +492 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto.c +8432 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_aead.c +653 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_aead.h +499 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_cipher.c +590 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_cipher.h +293 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_client.c +67 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_core.h +838 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_core_common.h +52 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_driver_wrappers.h +2871 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_driver_wrappers_no_static.c +256 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_driver_wrappers_no_static.h +31 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_ecp.c +561 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_ecp.h +267 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_ffdh.c +295 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_ffdh.h +132 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_hash.c +470 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_hash.h +211 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_invasive.h +70 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_its.h +131 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_mac.c +496 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_mac.h +264 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_pake.c +571 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_pake.h +159 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_random_impl.h +192 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_rsa.c +727 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_rsa.h +317 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_se.c +373 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_se.h +185 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_slot_management.c +559 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_slot_management.h +213 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_storage.c +481 -0
- package/external/libedhoc/externals/mbedtls/library/psa_crypto_storage.h +384 -0
- package/external/libedhoc/externals/mbedtls/library/psa_its_file.c +259 -0
- package/external/libedhoc/externals/mbedtls/library/psa_util.c +160 -0
- package/external/libedhoc/externals/mbedtls/library/psa_util_internal.h +96 -0
- package/external/libedhoc/externals/mbedtls/library/ripemd160.c +490 -0
- package/external/libedhoc/externals/mbedtls/library/rsa.c +2640 -0
- package/external/libedhoc/externals/mbedtls/library/rsa_alt_helpers.c +447 -0
- package/external/libedhoc/externals/mbedtls/library/rsa_alt_helpers.h +208 -0
- package/external/libedhoc/externals/mbedtls/library/sha1.c +480 -0
- package/external/libedhoc/externals/mbedtls/library/sha256.c +946 -0
- package/external/libedhoc/externals/mbedtls/library/sha3.c +626 -0
- package/external/libedhoc/externals/mbedtls/library/sha512.c +1111 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_cache.c +410 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_ciphersuites.c +2050 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_client.c +1017 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_client.h +22 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_cookie.c +380 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_debug_helpers.h +78 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_debug_helpers_generated.c +234 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_misc.h +2847 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_msg.c +6155 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_ticket.c +540 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_tls.c +9577 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_tls12_client.c +3607 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_tls12_server.c +4403 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_tls13_client.c +3046 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_tls13_generic.c +1740 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_tls13_invasive.h +23 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_tls13_keys.c +1897 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_tls13_keys.h +651 -0
- package/external/libedhoc/externals/mbedtls/library/ssl_tls13_server.c +3146 -0
- package/external/libedhoc/externals/mbedtls/library/threading.c +181 -0
- package/external/libedhoc/externals/mbedtls/library/timing.c +154 -0
- package/external/libedhoc/externals/mbedtls/library/version.c +32 -0
- package/external/libedhoc/externals/mbedtls/library/version_features.c +826 -0
- package/external/libedhoc/externals/mbedtls/library/x509.c +1776 -0
- package/external/libedhoc/externals/mbedtls/library/x509_create.c +557 -0
- package/external/libedhoc/externals/mbedtls/library/x509_crl.c +712 -0
- package/external/libedhoc/externals/mbedtls/library/x509_crt.c +3292 -0
- package/external/libedhoc/externals/mbedtls/library/x509_csr.c +574 -0
- package/external/libedhoc/externals/mbedtls/library/x509write.c +174 -0
- package/external/libedhoc/externals/mbedtls/library/x509write_crt.c +681 -0
- package/external/libedhoc/externals/mbedtls/library/x509write_csr.c +331 -0
- package/external/libedhoc/externals/mbedtls/programs/aes/crypt_and_hash.c +573 -0
- package/external/libedhoc/externals/mbedtls/programs/cipher/cipher_aead_demo.c +259 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/common.c +105 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/common.h +25 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_client.c +195 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_dtlsclient.c +138 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_dtlsserver.c +183 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_pkcs7.c +20 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_privkey.c +106 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_pubkey.c +86 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_server.c +218 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_x509crl.c +41 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_x509crt.c +41 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/fuzz_x509csr.c +41 -0
- package/external/libedhoc/externals/mbedtls/programs/fuzz/onefile.c +69 -0
- package/external/libedhoc/externals/mbedtls/programs/hash/generic_sum.c +209 -0
- package/external/libedhoc/externals/mbedtls/programs/hash/hello.c +45 -0
- package/external/libedhoc/externals/mbedtls/programs/hash/md_hmac_demo.c +136 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/dh_client.c +274 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/dh_genprime.c +161 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/dh_server.c +296 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/ecdh_curve25519.c +189 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/ecdsa.c +217 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/gen_key.c +419 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/key_app.c +316 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/key_app_writer.c +435 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/mpi_demo.c +84 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/pk_decrypt.c +153 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/pk_encrypt.c +154 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/pk_sign.c +155 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/pk_verify.c +128 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_decrypt.c +172 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_encrypt.c +149 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_genkey.c +141 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_sign.c +155 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_sign_pss.c +161 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_verify.c +131 -0
- package/external/libedhoc/externals/mbedtls/programs/pkey/rsa_verify_pss.c +136 -0
- package/external/libedhoc/externals/mbedtls/programs/psa/aead_demo.c +281 -0
- package/external/libedhoc/externals/mbedtls/programs/psa/crypto_examples.c +321 -0
- package/external/libedhoc/externals/mbedtls/programs/psa/hmac_demo.c +159 -0
- package/external/libedhoc/externals/mbedtls/programs/psa/key_ladder_demo.c +691 -0
- package/external/libedhoc/externals/mbedtls/programs/psa/psa_constant_names.c +310 -0
- package/external/libedhoc/externals/mbedtls/programs/psa/psa_constant_names_generated.c +474 -0
- package/external/libedhoc/externals/mbedtls/programs/random/gen_entropy.c +75 -0
- package/external/libedhoc/externals/mbedtls/programs/random/gen_random_ctr_drbg.c +107 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/dtls_client.c +342 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/dtls_server.c +408 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/mini_client.c +274 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_client1.c +288 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_client2.c +3118 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_context_info.c +1009 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_fork_server.c +381 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_mail_client.c +804 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_pthread_server.c +489 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_server.c +362 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_server2.c +4268 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_test_common_source.c +375 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_test_lib.c +601 -0
- package/external/libedhoc/externals/mbedtls/programs/ssl/ssl_test_lib.h +306 -0
- package/external/libedhoc/externals/mbedtls/programs/test/benchmark.c +1284 -0
- package/external/libedhoc/externals/mbedtls/programs/test/cmake_package/cmake_package.c +27 -0
- package/external/libedhoc/externals/mbedtls/programs/test/cmake_package_install/cmake_package_install.c +28 -0
- package/external/libedhoc/externals/mbedtls/programs/test/cmake_subproject/cmake_subproject.c +28 -0
- package/external/libedhoc/externals/mbedtls/programs/test/dlopen.c +92 -0
- package/external/libedhoc/externals/mbedtls/programs/test/query_compile_time_config.c +66 -0
- package/external/libedhoc/externals/mbedtls/programs/test/query_config.c +5137 -0
- package/external/libedhoc/externals/mbedtls/programs/test/query_config.h +34 -0
- package/external/libedhoc/externals/mbedtls/programs/test/query_included_headers.c +29 -0
- package/external/libedhoc/externals/mbedtls/programs/test/selftest.c +583 -0
- package/external/libedhoc/externals/mbedtls/programs/test/udp_proxy.c +967 -0
- package/external/libedhoc/externals/mbedtls/programs/test/zeroize.c +72 -0
- package/external/libedhoc/externals/mbedtls/programs/util/pem2der.c +265 -0
- package/external/libedhoc/externals/mbedtls/programs/util/strerror.c +61 -0
- package/external/libedhoc/externals/mbedtls/programs/wince_main.c +31 -0
- package/external/libedhoc/externals/mbedtls/programs/x509/cert_app.c +456 -0
- package/external/libedhoc/externals/mbedtls/programs/x509/cert_req.c +509 -0
- package/external/libedhoc/externals/mbedtls/programs/x509/cert_write.c +1012 -0
- package/external/libedhoc/externals/mbedtls/programs/x509/crl_app.c +132 -0
- package/external/libedhoc/externals/mbedtls/programs/x509/load_roots.c +165 -0
- package/external/libedhoc/externals/mbedtls/programs/x509/req_app.c +132 -0
- package/external/libedhoc/externals/mbedtls/tests/configs/tls13-only.h +31 -0
- package/external/libedhoc/externals/mbedtls/tests/configs/user-config-for-test.h +89 -0
- package/external/libedhoc/externals/mbedtls/tests/configs/user-config-malloc-0-null.h +22 -0
- package/external/libedhoc/externals/mbedtls/tests/configs/user-config-zeroize-memset.h +17 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/aes_alt.h +23 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/aria_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/camellia_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/ccm_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/chacha20_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/chachapoly_alt.h +18 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/cmac_alt.h +15 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/des_alt.h +22 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/dhm_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/ecjpake_alt.h +15 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/ecp_alt.h +22 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/gcm_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/md5_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/nist_kw_alt.h +15 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/platform_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/poly1305_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/ripemd160_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/rsa_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/sha1_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/sha256_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/sha512_alt.h +16 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/threading_alt.h +14 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-dummy/timing_alt.h +19 -0
- package/external/libedhoc/externals/mbedtls/tests/include/alt-extra/psa/crypto.h +7 -0
- package/external/libedhoc/externals/mbedtls/tests/include/baremetal-override/time.h +6 -0
- package/external/libedhoc/externals/mbedtls/tests/include/spe/crypto_spe.h +131 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/arguments.h +26 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/asn1_helpers.h +38 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/bignum_helpers.h +106 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/certs.h +234 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/constant_flow.h +71 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/aead.h +121 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/asymmetric_encryption.h +67 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/cipher.h +130 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/config_test_driver.h +44 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/crypto_config_test_driver_extension.h +430 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/hash.h +64 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/key_agreement.h +62 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/key_management.h +123 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/mac.h +125 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/pake.h +75 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/signature.h +112 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/drivers/test_driver.h +32 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/fake_external_rng_for_test.h +40 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/helpers.h +268 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/macros.h +250 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/psa_crypto_helpers.h +398 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/psa_exercise_key.h +223 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/psa_helpers.h +24 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/random.h +91 -0
- package/external/libedhoc/externals/mbedtls/tests/include/test/ssl_helpers.h +628 -0
- package/external/libedhoc/externals/mbedtls/tests/src/asn1_helpers.c +62 -0
- package/external/libedhoc/externals/mbedtls/tests/src/bignum_helpers.c +145 -0
- package/external/libedhoc/externals/mbedtls/tests/src/certs.c +480 -0
- package/external/libedhoc/externals/mbedtls/tests/src/drivers/hash.c +199 -0
- package/external/libedhoc/externals/mbedtls/tests/src/drivers/platform_builtin_keys.c +78 -0
- package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_aead.c +462 -0
- package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_asymmetric_encryption.c +151 -0
- package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_cipher.c +424 -0
- package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_key_agreement.c +147 -0
- package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_key_management.c +783 -0
- package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_mac.c +422 -0
- package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_pake.c +202 -0
- package/external/libedhoc/externals/mbedtls/tests/src/drivers/test_driver_signature.c +405 -0
- package/external/libedhoc/externals/mbedtls/tests/src/fake_external_rng_for_test.c +45 -0
- package/external/libedhoc/externals/mbedtls/tests/src/helpers.c +353 -0
- package/external/libedhoc/externals/mbedtls/tests/src/psa_crypto_helpers.c +196 -0
- package/external/libedhoc/externals/mbedtls/tests/src/psa_exercise_key.c +989 -0
- package/external/libedhoc/externals/mbedtls/tests/src/random.c +136 -0
- package/external/libedhoc/externals/mbedtls/tests/src/test_certs.h +1226 -0
- package/external/libedhoc/externals/mbedtls/tests/src/test_helpers/ssl_helpers.c +2292 -0
- package/external/libedhoc/externals/mbedtls/tests/src/threading_helpers.c +210 -0
- package/external/libedhoc/externals/zcbor/include/zcbor_common.h +422 -0
- package/external/libedhoc/externals/zcbor/include/zcbor_debug.h +69 -0
- package/external/libedhoc/externals/zcbor/include/zcbor_decode.h +358 -0
- package/external/libedhoc/externals/zcbor/include/zcbor_encode.h +296 -0
- package/external/libedhoc/externals/zcbor/include/zcbor_tags.h +94 -0
- package/external/libedhoc/externals/zcbor/samples/hello_world/src/main.c +41 -0
- package/external/libedhoc/externals/zcbor/samples/pet/include/pet_decode.h +39 -0
- package/external/libedhoc/externals/zcbor/samples/pet/include/pet_encode.h +39 -0
- package/external/libedhoc/externals/zcbor/samples/pet/include/pet_types.h +47 -0
- package/external/libedhoc/externals/zcbor/samples/pet/src/main.c +128 -0
- package/external/libedhoc/externals/zcbor/samples/pet/src/pet_decode.c +69 -0
- package/external/libedhoc/externals/zcbor/samples/pet/src/pet_encode.c +70 -0
- package/external/libedhoc/externals/zcbor/src/zcbor_common.c +257 -0
- package/external/libedhoc/externals/zcbor/src/zcbor_decode.c +1107 -0
- package/external/libedhoc/externals/zcbor/src/zcbor_encode.c +722 -0
- package/external/libedhoc/externals/zcbor/tests/decode/test1_suit_old_formats/src/main.c +368 -0
- package/external/libedhoc/externals/zcbor/tests/decode/test2_suit/src/main.c +189 -0
- package/external/libedhoc/externals/zcbor/tests/decode/test3_simple/src/main.c +529 -0
- package/external/libedhoc/externals/zcbor/tests/decode/test5_corner_cases/src/main.c +2010 -0
- package/external/libedhoc/externals/zcbor/tests/decode/test7_suit9_simple/src/main.c +134 -0
- package/external/libedhoc/externals/zcbor/tests/decode/test8_suit12/src/main.c +863 -0
- package/external/libedhoc/externals/zcbor/tests/decode/test9_manifest14/src/main.c +364 -0
- package/external/libedhoc/externals/zcbor/tests/encode/test1_suit/src/main.c +453 -0
- package/external/libedhoc/externals/zcbor/tests/encode/test2_simple/src/main.c +123 -0
- package/external/libedhoc/externals/zcbor/tests/encode/test3_corner_cases/src/main.c +1527 -0
- package/external/libedhoc/externals/zcbor/tests/encode/test4_senml/src/main.c +66 -0
- package/external/libedhoc/externals/zcbor/tests/fuzz/fuzz_manifest12.c +136 -0
- package/external/libedhoc/externals/zcbor/tests/fuzz/fuzz_pet.c +12 -0
- package/external/libedhoc/externals/zcbor/tests/fuzz/main_entry.c +60 -0
- package/external/libedhoc/externals/zcbor/tests/fuzz/main_entry.h +5 -0
- package/external/libedhoc/externals/zcbor/tests/unit/test1_unit_tests/src/main.c +1044 -0
- package/external/libedhoc/externals/zcbor/tests/unit/test3_float16/src/main.c +202 -0
- package/external/libedhoc/include/edhoc.h +393 -0
- package/external/libedhoc/include/edhoc_context.h +318 -0
- package/external/libedhoc/include/edhoc_credentials.h +217 -0
- package/external/libedhoc/include/edhoc_crypto.h +331 -0
- package/external/libedhoc/include/edhoc_ead.h +99 -0
- package/external/libedhoc/include/edhoc_macros.h +51 -0
- package/external/libedhoc/include/edhoc_values.h +181 -0
- package/external/libedhoc/library/edhoc.c +219 -0
- package/external/libedhoc/library/edhoc_exporter.c +543 -0
- package/external/libedhoc/library/edhoc_message_1.c +439 -0
- package/external/libedhoc/library/edhoc_message_2.c +2994 -0
- package/external/libedhoc/library/edhoc_message_3.c +2658 -0
- package/external/libedhoc/library/edhoc_message_4.c +826 -0
- package/external/libedhoc/library/edhoc_message_error.c +238 -0
- package/external/libedhoc/tests/include/cipher_suite_negotiation/test_edhoc_cipher_suite_negotiation.h +37 -0
- package/external/libedhoc/tests/include/cipher_suites/cipher_suite_0.h +134 -0
- package/external/libedhoc/tests/include/cipher_suites/cipher_suite_2.h +140 -0
- package/external/libedhoc/tests/include/cipher_suites/test_cipher_suite_0.h +48 -0
- package/external/libedhoc/tests/include/cipher_suites/test_cipher_suite_2.h +48 -0
- package/external/libedhoc/tests/include/edhoc_trace_1/authentication_credentials_1.h +60 -0
- package/external/libedhoc/tests/include/edhoc_trace_1/test_edhoc_handshake_1.h +208 -0
- package/external/libedhoc/tests/include/edhoc_trace_1/test_edhoc_handshake_ead_1.h +59 -0
- package/external/libedhoc/tests/include/edhoc_trace_1/test_vector_1.h +738 -0
- package/external/libedhoc/tests/include/edhoc_trace_2/authentication_credentials_2.h +60 -0
- package/external/libedhoc/tests/include/edhoc_trace_2/test_edhoc_handshake_2.h +199 -0
- package/external/libedhoc/tests/include/edhoc_trace_2/test_vector_2.h +525 -0
- package/external/libedhoc/tests/include/error_message/test_edhoc_error_message.h +48 -0
- package/external/libedhoc/tests/include/x509_chain_cs_0/authentication_credentials_x5chain_cs_0.h +92 -0
- package/external/libedhoc/tests/include/x509_chain_cs_0/test_edhoc_handshake_x5chain_cs_0.h +96 -0
- package/external/libedhoc/tests/include/x509_chain_cs_0/test_vector_x5chain_cs_0.h +140 -0
- package/external/libedhoc/tests/include/x509_chain_cs_2/authentication_credentials_x5chain_cs_2.h +58 -0
- package/external/libedhoc/tests/include/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2.h +56 -0
- package/external/libedhoc/tests/include/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2_ead.h +57 -0
- package/external/libedhoc/tests/include/x509_chain_cs_2/test_vector_x5chain_cs_2.h +169 -0
- package/external/libedhoc/tests/include/x509_chain_cs_2_static_dh/authentication_credentials_x5chain_cs_2_static_dh.h +59 -0
- package/external/libedhoc/tests/include/x509_chain_cs_2_static_dh/test_edhoc_handshake_x5chain_cs_2_static_dh_ead.h +57 -0
- package/external/libedhoc/tests/include/x509_chain_cs_2_static_dh/test_vector_x5chain_cs_2_static_dh.h +163 -0
- package/external/libedhoc/tests/include/x509_hash_cs_2/authentication_credentials_x5t_cs_2.h +60 -0
- package/external/libedhoc/tests/include/x509_hash_cs_2/test_edhoc_handshake_x5t_cs_2_ead.h +57 -0
- package/external/libedhoc/tests/include/x509_hash_cs_2/test_vector_x5t_cs_2.h +181 -0
- package/external/libedhoc/tests/src/cipher_suite_negotiation/test_edhoc_cipher_suite_negotiation.c +544 -0
- package/external/libedhoc/tests/src/cipher_suites/cipher_suite_0.c +447 -0
- package/external/libedhoc/tests/src/cipher_suites/cipher_suite_2.c +600 -0
- package/external/libedhoc/tests/src/cipher_suites/test_cipher_suite_0.c +475 -0
- package/external/libedhoc/tests/src/cipher_suites/test_cipher_suite_2.c +473 -0
- package/external/libedhoc/tests/src/edhoc_trace_1/authentication_credentials_1.c +252 -0
- package/external/libedhoc/tests/src/edhoc_trace_1/test_edhoc_handshake_1.c +1829 -0
- package/external/libedhoc/tests/src/edhoc_trace_1/test_edhoc_handshake_ead_1.c +1247 -0
- package/external/libedhoc/tests/src/edhoc_trace_2/authentication_credentials_2.c +170 -0
- package/external/libedhoc/tests/src/edhoc_trace_2/test_edhoc_handshake_2.c +1783 -0
- package/external/libedhoc/tests/src/error_message/test_edhoc_error_message.c +226 -0
- package/external/libedhoc/tests/src/tests.c +228 -0
- package/external/libedhoc/tests/src/x509_chain_cs_0/authentication_credentials_x5chain_cs_0.c +332 -0
- package/external/libedhoc/tests/src/x509_chain_cs_0/test_edhoc_handshake_x5chain_cs_0.c +936 -0
- package/external/libedhoc/tests/src/x509_chain_cs_2/authentication_credentials_x5chain_cs_2.c +166 -0
- package/external/libedhoc/tests/src/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2.c +587 -0
- package/external/libedhoc/tests/src/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2_ead.c +917 -0
- package/external/libedhoc/tests/src/x509_chain_cs_2_static_dh/authentication_credentials_x5chain_cs_2_static_dh.c +186 -0
- package/external/libedhoc/tests/src/x509_chain_cs_2_static_dh/test_edhoc_handshake_x5chain_cs_2_static_dh_ead.c +743 -0
- package/external/libedhoc/tests/src/x509_hash_cs_2/authentication_credentials_x5t_cs_2.c +261 -0
- package/external/libedhoc/tests/src/x509_hash_cs_2/test_edhoc_handshake_x5t_cs_2_ead.c +854 -0
- package/include/EdhocComposeAsyncWorker.h +61 -0
- package/include/EdhocCredentialManager.h +100 -0
- package/include/EdhocCryptoManager.h +504 -0
- package/include/EdhocEadManager.h +151 -0
- package/include/EdhocExportAsyncWorker.h +71 -0
- package/include/EdhocProcessAsyncWorker.h +76 -0
- package/include/LibEDHOC.h +304 -0
- package/include/Suites.h +27 -0
- package/include/UserContext.h +79 -0
- package/include/Utils.h +110 -0
- package/package.json +1 -1
- package/prebuilds/darwin-arm64/edhoc.node +0 -0
- package/prebuilds/win32-ia32/edhoc.node +0 -0
- package/prebuilds/win32-x64/edhoc.node +0 -0
- package/src/EdhocComposeAsyncWorker.cpp +88 -0
- package/src/EdhocCredentialManager.cpp +360 -0
- package/src/EdhocCryptoManager.cpp +967 -0
- package/src/EdhocEadManager.cpp +156 -0
- package/src/EdhocExportAsyncWorker.cpp +82 -0
- package/src/EdhocProcessAsyncWorker.cpp +74 -0
- package/src/LibEDHOC.cpp +369 -0
- package/src/Suites.cpp +153 -0
- package/src/Utils.cpp +115 -0
- /package/prebuilds/{darwin-x64+arm64 → darwin-x64}/edhoc.node +0 -0
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* \file psa_crypto_invasive.h
|
|
3
|
+
*
|
|
4
|
+
* \brief PSA cryptography module: invasive interfaces for test only.
|
|
5
|
+
*
|
|
6
|
+
* The interfaces in this file are intended for testing purposes only.
|
|
7
|
+
* They MUST NOT be made available to clients over IPC in integrations
|
|
8
|
+
* with isolation, and they SHOULD NOT be made available in library
|
|
9
|
+
* integrations except when building the library for testing.
|
|
10
|
+
*/
|
|
11
|
+
/*
|
|
12
|
+
* Copyright The Mbed TLS Contributors
|
|
13
|
+
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
#ifndef PSA_CRYPTO_INVASIVE_H
|
|
17
|
+
#define PSA_CRYPTO_INVASIVE_H
|
|
18
|
+
|
|
19
|
+
#include "mbedtls/build_info.h"
|
|
20
|
+
|
|
21
|
+
#include "psa/crypto.h"
|
|
22
|
+
#include "common.h"
|
|
23
|
+
|
|
24
|
+
#include "mbedtls/entropy.h"
|
|
25
|
+
|
|
26
|
+
#if !defined(MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG)
|
|
27
|
+
/** \brief Configure entropy sources.
|
|
28
|
+
*
|
|
29
|
+
* This function may only be called before a call to psa_crypto_init(),
|
|
30
|
+
* or after a call to mbedtls_psa_crypto_free() and before any
|
|
31
|
+
* subsequent call to psa_crypto_init().
|
|
32
|
+
*
|
|
33
|
+
* This function is only intended for test purposes. The functionality
|
|
34
|
+
* it provides is also useful for system integrators, but
|
|
35
|
+
* system integrators should configure entropy drivers instead of
|
|
36
|
+
* breaking through to the Mbed TLS API.
|
|
37
|
+
*
|
|
38
|
+
* \param entropy_init Function to initialize the entropy context
|
|
39
|
+
* and set up the desired entropy sources.
|
|
40
|
+
* It is called by psa_crypto_init().
|
|
41
|
+
* By default this is mbedtls_entropy_init().
|
|
42
|
+
* This function cannot report failures directly.
|
|
43
|
+
* To indicate a failure, set the entropy context
|
|
44
|
+
* to a state where mbedtls_entropy_func() will
|
|
45
|
+
* return an error.
|
|
46
|
+
* \param entropy_free Function to free the entropy context
|
|
47
|
+
* and associated resources.
|
|
48
|
+
* It is called by mbedtls_psa_crypto_free().
|
|
49
|
+
* By default this is mbedtls_entropy_free().
|
|
50
|
+
*
|
|
51
|
+
* \retval #PSA_SUCCESS
|
|
52
|
+
* Success.
|
|
53
|
+
* \retval #PSA_ERROR_NOT_PERMITTED
|
|
54
|
+
* The caller does not have the permission to configure
|
|
55
|
+
* entropy sources.
|
|
56
|
+
* \retval #PSA_ERROR_BAD_STATE
|
|
57
|
+
* The library has already been initialized.
|
|
58
|
+
*/
|
|
59
|
+
psa_status_t mbedtls_psa_crypto_configure_entropy_sources(
|
|
60
|
+
void (* entropy_init)(mbedtls_entropy_context *ctx),
|
|
61
|
+
void (* entropy_free)(mbedtls_entropy_context *ctx));
|
|
62
|
+
#endif /* !defined(MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG) */
|
|
63
|
+
|
|
64
|
+
#if defined(MBEDTLS_TEST_HOOKS) && defined(MBEDTLS_PSA_CRYPTO_C)
|
|
65
|
+
psa_status_t psa_mac_key_can_do(
|
|
66
|
+
psa_algorithm_t algorithm,
|
|
67
|
+
psa_key_type_t key_type);
|
|
68
|
+
#endif /* MBEDTLS_TEST_HOOKS && MBEDTLS_PSA_CRYPTO_C */
|
|
69
|
+
|
|
70
|
+
#endif /* PSA_CRYPTO_INVASIVE_H */
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/** \file psa_crypto_its.h
|
|
2
|
+
* \brief Interface of trusted storage that crypto is built on.
|
|
3
|
+
*/
|
|
4
|
+
/*
|
|
5
|
+
* Copyright The Mbed TLS Contributors
|
|
6
|
+
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
#ifndef PSA_CRYPTO_ITS_H
|
|
10
|
+
#define PSA_CRYPTO_ITS_H
|
|
11
|
+
|
|
12
|
+
#include <stddef.h>
|
|
13
|
+
#include <stdint.h>
|
|
14
|
+
|
|
15
|
+
#include <psa/crypto_types.h>
|
|
16
|
+
#include <psa/crypto_values.h>
|
|
17
|
+
|
|
18
|
+
#ifdef __cplusplus
|
|
19
|
+
extern "C" {
|
|
20
|
+
#endif
|
|
21
|
+
|
|
22
|
+
/** \brief Flags used when creating a data entry
|
|
23
|
+
*/
|
|
24
|
+
typedef uint32_t psa_storage_create_flags_t;
|
|
25
|
+
|
|
26
|
+
/** \brief A type for UIDs used for identifying data
|
|
27
|
+
*/
|
|
28
|
+
typedef uint64_t psa_storage_uid_t;
|
|
29
|
+
|
|
30
|
+
#define PSA_STORAGE_FLAG_NONE 0 /**< No flags to pass */
|
|
31
|
+
#define PSA_STORAGE_FLAG_WRITE_ONCE (1 << 0) /**< The data associated with the uid will not be able to be modified or deleted. Intended to be used to set bits in `psa_storage_create_flags_t`*/
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* \brief A container for metadata associated with a specific uid
|
|
35
|
+
*/
|
|
36
|
+
struct psa_storage_info_t {
|
|
37
|
+
uint32_t size; /**< The size of the data associated with a uid **/
|
|
38
|
+
psa_storage_create_flags_t flags; /**< The flags set when the uid was created **/
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
/** Flag indicating that \ref psa_storage_create and \ref psa_storage_set_extended are supported */
|
|
42
|
+
#define PSA_STORAGE_SUPPORT_SET_EXTENDED (1 << 0)
|
|
43
|
+
|
|
44
|
+
#define PSA_ITS_API_VERSION_MAJOR 1 /**< The major version number of the PSA ITS API. It will be incremented on significant updates that may include breaking changes */
|
|
45
|
+
#define PSA_ITS_API_VERSION_MINOR 1 /**< The minor version number of the PSA ITS API. It will be incremented in small updates that are unlikely to include breaking changes */
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* \brief create a new or modify an existing uid/value pair
|
|
49
|
+
*
|
|
50
|
+
* \param[in] uid the identifier for the data
|
|
51
|
+
* \param[in] data_length The size in bytes of the data in `p_data`
|
|
52
|
+
* \param[in] p_data A buffer containing the data
|
|
53
|
+
* \param[in] create_flags The flags that the data will be stored with
|
|
54
|
+
*
|
|
55
|
+
* \return A status indicating the success/failure of the operation
|
|
56
|
+
*
|
|
57
|
+
* \retval #PSA_SUCCESS The operation completed successfully
|
|
58
|
+
* \retval #PSA_ERROR_NOT_PERMITTED The operation failed because the provided `uid` value was already created with PSA_STORAGE_FLAG_WRITE_ONCE
|
|
59
|
+
* \retval #PSA_ERROR_NOT_SUPPORTED The operation failed because one or more of the flags provided in `create_flags` is not supported or is not valid
|
|
60
|
+
* \retval #PSA_ERROR_INSUFFICIENT_STORAGE The operation failed because there was insufficient space on the storage medium
|
|
61
|
+
* \retval #PSA_ERROR_STORAGE_FAILURE The operation failed because the physical storage has failed (Fatal error)
|
|
62
|
+
* \retval #PSA_ERROR_INVALID_ARGUMENT The operation failed because one of the provided pointers(`p_data`)
|
|
63
|
+
* is invalid, for example is `NULL` or references memory the caller cannot access
|
|
64
|
+
*/
|
|
65
|
+
psa_status_t psa_its_set(psa_storage_uid_t uid,
|
|
66
|
+
uint32_t data_length,
|
|
67
|
+
const void *p_data,
|
|
68
|
+
psa_storage_create_flags_t create_flags);
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* \brief Retrieve the value associated with a provided uid
|
|
72
|
+
*
|
|
73
|
+
* \param[in] uid The uid value
|
|
74
|
+
* \param[in] data_offset The starting offset of the data requested
|
|
75
|
+
* \param[in] data_length the amount of data requested (and the minimum allocated size of the `p_data` buffer)
|
|
76
|
+
* \param[out] p_data The buffer where the data will be placed upon successful completion
|
|
77
|
+
* \param[out] p_data_length The amount of data returned in the p_data buffer
|
|
78
|
+
*
|
|
79
|
+
*
|
|
80
|
+
* \return A status indicating the success/failure of the operation
|
|
81
|
+
*
|
|
82
|
+
* \retval #PSA_SUCCESS The operation completed successfully
|
|
83
|
+
* \retval #PSA_ERROR_DOES_NOT_EXIST The operation failed because the provided `uid` value was not found in the storage
|
|
84
|
+
* \retval #PSA_ERROR_STORAGE_FAILURE The operation failed because the physical storage has failed (Fatal error)
|
|
85
|
+
* \retval #PSA_ERROR_DATA_CORRUPT The operation failed because stored data has been corrupted
|
|
86
|
+
* \retval #PSA_ERROR_INVALID_ARGUMENT The operation failed because one of the provided pointers(`p_data`, `p_data_length`)
|
|
87
|
+
* is invalid. For example is `NULL` or references memory the caller cannot access.
|
|
88
|
+
* In addition, this can also happen if an invalid offset was provided.
|
|
89
|
+
*/
|
|
90
|
+
psa_status_t psa_its_get(psa_storage_uid_t uid,
|
|
91
|
+
uint32_t data_offset,
|
|
92
|
+
uint32_t data_length,
|
|
93
|
+
void *p_data,
|
|
94
|
+
size_t *p_data_length);
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* \brief Retrieve the metadata about the provided uid
|
|
98
|
+
*
|
|
99
|
+
* \param[in] uid The uid value
|
|
100
|
+
* \param[out] p_info A pointer to the `psa_storage_info_t` struct that will be populated with the metadata
|
|
101
|
+
*
|
|
102
|
+
* \return A status indicating the success/failure of the operation
|
|
103
|
+
*
|
|
104
|
+
* \retval #PSA_SUCCESS The operation completed successfully
|
|
105
|
+
* \retval #PSA_ERROR_DOES_NOT_EXIST The operation failed because the provided uid value was not found in the storage
|
|
106
|
+
* \retval #PSA_ERROR_DATA_CORRUPT The operation failed because stored data has been corrupted
|
|
107
|
+
* \retval #PSA_ERROR_INVALID_ARGUMENT The operation failed because one of the provided pointers(`p_info`)
|
|
108
|
+
* is invalid, for example is `NULL` or references memory the caller cannot access
|
|
109
|
+
*/
|
|
110
|
+
psa_status_t psa_its_get_info(psa_storage_uid_t uid,
|
|
111
|
+
struct psa_storage_info_t *p_info);
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* \brief Remove the provided key and its associated data from the storage
|
|
115
|
+
*
|
|
116
|
+
* \param[in] uid The uid value
|
|
117
|
+
*
|
|
118
|
+
* \return A status indicating the success/failure of the operation
|
|
119
|
+
*
|
|
120
|
+
* \retval #PSA_SUCCESS The operation completed successfully
|
|
121
|
+
* \retval #PSA_ERROR_DOES_NOT_EXIST The operation failed because the provided key value was not found in the storage
|
|
122
|
+
* \retval #PSA_ERROR_NOT_PERMITTED The operation failed because the provided key value was created with PSA_STORAGE_FLAG_WRITE_ONCE
|
|
123
|
+
* \retval #PSA_ERROR_STORAGE_FAILURE The operation failed because the physical storage has failed (Fatal error)
|
|
124
|
+
*/
|
|
125
|
+
psa_status_t psa_its_remove(psa_storage_uid_t uid);
|
|
126
|
+
|
|
127
|
+
#ifdef __cplusplus
|
|
128
|
+
}
|
|
129
|
+
#endif
|
|
130
|
+
|
|
131
|
+
#endif /* PSA_CRYPTO_ITS_H */
|
|
@@ -0,0 +1,496 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* PSA MAC layer on top of Mbed TLS software crypto
|
|
3
|
+
*/
|
|
4
|
+
/*
|
|
5
|
+
* Copyright The Mbed TLS Contributors
|
|
6
|
+
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
#include "common.h"
|
|
10
|
+
|
|
11
|
+
#if defined(MBEDTLS_PSA_CRYPTO_C)
|
|
12
|
+
|
|
13
|
+
#include <psa/crypto.h>
|
|
14
|
+
#include "psa_crypto_core.h"
|
|
15
|
+
#include "psa_crypto_cipher.h"
|
|
16
|
+
#include "psa_crypto_mac.h"
|
|
17
|
+
#include <mbedtls/md.h>
|
|
18
|
+
|
|
19
|
+
#include <mbedtls/error.h>
|
|
20
|
+
#include "mbedtls/constant_time.h"
|
|
21
|
+
#include <string.h>
|
|
22
|
+
|
|
23
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_HMAC)
|
|
24
|
+
static psa_status_t psa_hmac_abort_internal(
|
|
25
|
+
mbedtls_psa_hmac_operation_t *hmac)
|
|
26
|
+
{
|
|
27
|
+
mbedtls_platform_zeroize(hmac->opad, sizeof(hmac->opad));
|
|
28
|
+
return psa_hash_abort(&hmac->hash_ctx);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
static psa_status_t psa_hmac_setup_internal(
|
|
32
|
+
mbedtls_psa_hmac_operation_t *hmac,
|
|
33
|
+
const uint8_t *key,
|
|
34
|
+
size_t key_length,
|
|
35
|
+
psa_algorithm_t hash_alg)
|
|
36
|
+
{
|
|
37
|
+
uint8_t ipad[PSA_HMAC_MAX_HASH_BLOCK_SIZE];
|
|
38
|
+
size_t i;
|
|
39
|
+
size_t hash_size = PSA_HASH_LENGTH(hash_alg);
|
|
40
|
+
size_t block_size = PSA_HASH_BLOCK_LENGTH(hash_alg);
|
|
41
|
+
psa_status_t status;
|
|
42
|
+
|
|
43
|
+
hmac->alg = hash_alg;
|
|
44
|
+
|
|
45
|
+
/* Sanity checks on block_size, to guarantee that there won't be a buffer
|
|
46
|
+
* overflow below. This should never trigger if the hash algorithm
|
|
47
|
+
* is implemented correctly. */
|
|
48
|
+
/* The size checks against the ipad and opad buffers cannot be written
|
|
49
|
+
* `block_size > sizeof( ipad ) || block_size > sizeof( hmac->opad )`
|
|
50
|
+
* because that triggers -Wlogical-op on GCC 7.3. */
|
|
51
|
+
if (block_size > sizeof(ipad)) {
|
|
52
|
+
return PSA_ERROR_NOT_SUPPORTED;
|
|
53
|
+
}
|
|
54
|
+
if (block_size > sizeof(hmac->opad)) {
|
|
55
|
+
return PSA_ERROR_NOT_SUPPORTED;
|
|
56
|
+
}
|
|
57
|
+
if (block_size < hash_size) {
|
|
58
|
+
return PSA_ERROR_NOT_SUPPORTED;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
if (key_length > block_size) {
|
|
62
|
+
status = psa_hash_compute(hash_alg, key, key_length,
|
|
63
|
+
ipad, sizeof(ipad), &key_length);
|
|
64
|
+
if (status != PSA_SUCCESS) {
|
|
65
|
+
goto cleanup;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/* A 0-length key is not commonly used in HMAC when used as a MAC,
|
|
69
|
+
* but it is permitted. It is common when HMAC is used in HKDF, for
|
|
70
|
+
* example. Don't call `memcpy` in the 0-length because `key` could be
|
|
71
|
+
* an invalid pointer which would make the behavior undefined. */
|
|
72
|
+
else if (key_length != 0) {
|
|
73
|
+
memcpy(ipad, key, key_length);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/* ipad contains the key followed by garbage. Xor and fill with 0x36
|
|
77
|
+
* to create the ipad value. */
|
|
78
|
+
for (i = 0; i < key_length; i++) {
|
|
79
|
+
ipad[i] ^= 0x36;
|
|
80
|
+
}
|
|
81
|
+
memset(ipad + key_length, 0x36, block_size - key_length);
|
|
82
|
+
|
|
83
|
+
/* Copy the key material from ipad to opad, flipping the requisite bits,
|
|
84
|
+
* and filling the rest of opad with the requisite constant. */
|
|
85
|
+
for (i = 0; i < key_length; i++) {
|
|
86
|
+
hmac->opad[i] = ipad[i] ^ 0x36 ^ 0x5C;
|
|
87
|
+
}
|
|
88
|
+
memset(hmac->opad + key_length, 0x5C, block_size - key_length);
|
|
89
|
+
|
|
90
|
+
status = psa_hash_setup(&hmac->hash_ctx, hash_alg);
|
|
91
|
+
if (status != PSA_SUCCESS) {
|
|
92
|
+
goto cleanup;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
status = psa_hash_update(&hmac->hash_ctx, ipad, block_size);
|
|
96
|
+
|
|
97
|
+
cleanup:
|
|
98
|
+
mbedtls_platform_zeroize(ipad, sizeof(ipad));
|
|
99
|
+
|
|
100
|
+
return status;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
static psa_status_t psa_hmac_update_internal(
|
|
104
|
+
mbedtls_psa_hmac_operation_t *hmac,
|
|
105
|
+
const uint8_t *data,
|
|
106
|
+
size_t data_length)
|
|
107
|
+
{
|
|
108
|
+
return psa_hash_update(&hmac->hash_ctx, data, data_length);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
static psa_status_t psa_hmac_finish_internal(
|
|
112
|
+
mbedtls_psa_hmac_operation_t *hmac,
|
|
113
|
+
uint8_t *mac,
|
|
114
|
+
size_t mac_size)
|
|
115
|
+
{
|
|
116
|
+
uint8_t tmp[PSA_HASH_MAX_SIZE];
|
|
117
|
+
psa_algorithm_t hash_alg = hmac->alg;
|
|
118
|
+
size_t hash_size = 0;
|
|
119
|
+
size_t block_size = PSA_HASH_BLOCK_LENGTH(hash_alg);
|
|
120
|
+
psa_status_t status;
|
|
121
|
+
|
|
122
|
+
status = psa_hash_finish(&hmac->hash_ctx, tmp, sizeof(tmp), &hash_size);
|
|
123
|
+
if (status != PSA_SUCCESS) {
|
|
124
|
+
return status;
|
|
125
|
+
}
|
|
126
|
+
/* From here on, tmp needs to be wiped. */
|
|
127
|
+
|
|
128
|
+
status = psa_hash_setup(&hmac->hash_ctx, hash_alg);
|
|
129
|
+
if (status != PSA_SUCCESS) {
|
|
130
|
+
goto exit;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
status = psa_hash_update(&hmac->hash_ctx, hmac->opad, block_size);
|
|
134
|
+
if (status != PSA_SUCCESS) {
|
|
135
|
+
goto exit;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
status = psa_hash_update(&hmac->hash_ctx, tmp, hash_size);
|
|
139
|
+
if (status != PSA_SUCCESS) {
|
|
140
|
+
goto exit;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
status = psa_hash_finish(&hmac->hash_ctx, tmp, sizeof(tmp), &hash_size);
|
|
144
|
+
if (status != PSA_SUCCESS) {
|
|
145
|
+
goto exit;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
memcpy(mac, tmp, mac_size);
|
|
149
|
+
|
|
150
|
+
exit:
|
|
151
|
+
mbedtls_platform_zeroize(tmp, hash_size);
|
|
152
|
+
return status;
|
|
153
|
+
}
|
|
154
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_HMAC */
|
|
155
|
+
|
|
156
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_CMAC)
|
|
157
|
+
static psa_status_t cmac_setup(mbedtls_psa_mac_operation_t *operation,
|
|
158
|
+
const psa_key_attributes_t *attributes,
|
|
159
|
+
const uint8_t *key_buffer)
|
|
160
|
+
{
|
|
161
|
+
int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED;
|
|
162
|
+
|
|
163
|
+
#if defined(PSA_WANT_KEY_TYPE_DES)
|
|
164
|
+
/* Mbed TLS CMAC does not accept 3DES with only two keys, nor does it accept
|
|
165
|
+
* to do CMAC with pure DES, so return NOT_SUPPORTED here. */
|
|
166
|
+
if (psa_get_key_type(attributes) == PSA_KEY_TYPE_DES &&
|
|
167
|
+
(psa_get_key_bits(attributes) == 64 ||
|
|
168
|
+
psa_get_key_bits(attributes) == 128)) {
|
|
169
|
+
return PSA_ERROR_NOT_SUPPORTED;
|
|
170
|
+
}
|
|
171
|
+
#endif
|
|
172
|
+
|
|
173
|
+
const mbedtls_cipher_info_t *cipher_info =
|
|
174
|
+
mbedtls_cipher_info_from_psa(
|
|
175
|
+
PSA_ALG_CMAC,
|
|
176
|
+
psa_get_key_type(attributes),
|
|
177
|
+
psa_get_key_bits(attributes),
|
|
178
|
+
NULL);
|
|
179
|
+
|
|
180
|
+
if (cipher_info == NULL) {
|
|
181
|
+
return PSA_ERROR_NOT_SUPPORTED;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
ret = mbedtls_cipher_setup(&operation->ctx.cmac, cipher_info);
|
|
185
|
+
if (ret != 0) {
|
|
186
|
+
goto exit;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
ret = mbedtls_cipher_cmac_starts(&operation->ctx.cmac,
|
|
190
|
+
key_buffer,
|
|
191
|
+
psa_get_key_bits(attributes));
|
|
192
|
+
exit:
|
|
193
|
+
return mbedtls_to_psa_error(ret);
|
|
194
|
+
}
|
|
195
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_CMAC */
|
|
196
|
+
|
|
197
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_HMAC) || \
|
|
198
|
+
defined(MBEDTLS_PSA_BUILTIN_ALG_CMAC)
|
|
199
|
+
|
|
200
|
+
/* Initialize this driver's MAC operation structure. Once this function has been
|
|
201
|
+
* called, mbedtls_psa_mac_abort can run and will do the right thing. */
|
|
202
|
+
static psa_status_t mac_init(
|
|
203
|
+
mbedtls_psa_mac_operation_t *operation,
|
|
204
|
+
psa_algorithm_t alg)
|
|
205
|
+
{
|
|
206
|
+
psa_status_t status = PSA_ERROR_CORRUPTION_DETECTED;
|
|
207
|
+
|
|
208
|
+
operation->alg = alg;
|
|
209
|
+
|
|
210
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_CMAC)
|
|
211
|
+
if (PSA_ALG_FULL_LENGTH_MAC(operation->alg) == PSA_ALG_CMAC) {
|
|
212
|
+
mbedtls_cipher_init(&operation->ctx.cmac);
|
|
213
|
+
status = PSA_SUCCESS;
|
|
214
|
+
} else
|
|
215
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_CMAC */
|
|
216
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_HMAC)
|
|
217
|
+
if (PSA_ALG_IS_HMAC(operation->alg)) {
|
|
218
|
+
/* We'll set up the hash operation later in psa_hmac_setup_internal. */
|
|
219
|
+
operation->ctx.hmac.alg = 0;
|
|
220
|
+
status = PSA_SUCCESS;
|
|
221
|
+
} else
|
|
222
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_HMAC */
|
|
223
|
+
{
|
|
224
|
+
(void) operation;
|
|
225
|
+
status = PSA_ERROR_NOT_SUPPORTED;
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
if (status != PSA_SUCCESS) {
|
|
229
|
+
memset(operation, 0, sizeof(*operation));
|
|
230
|
+
}
|
|
231
|
+
return status;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
psa_status_t mbedtls_psa_mac_abort(mbedtls_psa_mac_operation_t *operation)
|
|
235
|
+
{
|
|
236
|
+
if (operation->alg == 0) {
|
|
237
|
+
/* The object has (apparently) been initialized but it is not
|
|
238
|
+
* in use. It's ok to call abort on such an object, and there's
|
|
239
|
+
* nothing to do. */
|
|
240
|
+
return PSA_SUCCESS;
|
|
241
|
+
} else
|
|
242
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_CMAC)
|
|
243
|
+
if (PSA_ALG_FULL_LENGTH_MAC(operation->alg) == PSA_ALG_CMAC) {
|
|
244
|
+
mbedtls_cipher_free(&operation->ctx.cmac);
|
|
245
|
+
} else
|
|
246
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_CMAC */
|
|
247
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_HMAC)
|
|
248
|
+
if (PSA_ALG_IS_HMAC(operation->alg)) {
|
|
249
|
+
psa_hmac_abort_internal(&operation->ctx.hmac);
|
|
250
|
+
} else
|
|
251
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_HMAC */
|
|
252
|
+
{
|
|
253
|
+
/* Sanity check (shouldn't happen: operation->alg should
|
|
254
|
+
* always have been initialized to a valid value). */
|
|
255
|
+
goto bad_state;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
operation->alg = 0;
|
|
259
|
+
|
|
260
|
+
return PSA_SUCCESS;
|
|
261
|
+
|
|
262
|
+
bad_state:
|
|
263
|
+
/* If abort is called on an uninitialized object, we can't trust
|
|
264
|
+
* anything. Wipe the object in case it contains confidential data.
|
|
265
|
+
* This may result in a memory leak if a pointer gets overwritten,
|
|
266
|
+
* but it's too late to do anything about this. */
|
|
267
|
+
memset(operation, 0, sizeof(*operation));
|
|
268
|
+
return PSA_ERROR_BAD_STATE;
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
static psa_status_t psa_mac_setup(mbedtls_psa_mac_operation_t *operation,
|
|
272
|
+
const psa_key_attributes_t *attributes,
|
|
273
|
+
const uint8_t *key_buffer,
|
|
274
|
+
size_t key_buffer_size,
|
|
275
|
+
psa_algorithm_t alg)
|
|
276
|
+
{
|
|
277
|
+
psa_status_t status = PSA_ERROR_CORRUPTION_DETECTED;
|
|
278
|
+
|
|
279
|
+
/* A context must be freshly initialized before it can be set up. */
|
|
280
|
+
if (operation->alg != 0) {
|
|
281
|
+
return PSA_ERROR_BAD_STATE;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
status = mac_init(operation, alg);
|
|
285
|
+
if (status != PSA_SUCCESS) {
|
|
286
|
+
return status;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_CMAC)
|
|
290
|
+
if (PSA_ALG_FULL_LENGTH_MAC(alg) == PSA_ALG_CMAC) {
|
|
291
|
+
/* Key buffer size for CMAC is dictated by the key bits set on the
|
|
292
|
+
* attributes, and previously validated by the core on key import. */
|
|
293
|
+
(void) key_buffer_size;
|
|
294
|
+
status = cmac_setup(operation, attributes, key_buffer);
|
|
295
|
+
} else
|
|
296
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_CMAC */
|
|
297
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_HMAC)
|
|
298
|
+
if (PSA_ALG_IS_HMAC(alg)) {
|
|
299
|
+
status = psa_hmac_setup_internal(&operation->ctx.hmac,
|
|
300
|
+
key_buffer,
|
|
301
|
+
key_buffer_size,
|
|
302
|
+
PSA_ALG_HMAC_GET_HASH(alg));
|
|
303
|
+
} else
|
|
304
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_HMAC */
|
|
305
|
+
{
|
|
306
|
+
(void) attributes;
|
|
307
|
+
(void) key_buffer;
|
|
308
|
+
(void) key_buffer_size;
|
|
309
|
+
status = PSA_ERROR_NOT_SUPPORTED;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
if (status != PSA_SUCCESS) {
|
|
313
|
+
mbedtls_psa_mac_abort(operation);
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
return status;
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
psa_status_t mbedtls_psa_mac_sign_setup(
|
|
320
|
+
mbedtls_psa_mac_operation_t *operation,
|
|
321
|
+
const psa_key_attributes_t *attributes,
|
|
322
|
+
const uint8_t *key_buffer,
|
|
323
|
+
size_t key_buffer_size,
|
|
324
|
+
psa_algorithm_t alg)
|
|
325
|
+
{
|
|
326
|
+
return psa_mac_setup(operation, attributes,
|
|
327
|
+
key_buffer, key_buffer_size, alg);
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
psa_status_t mbedtls_psa_mac_verify_setup(
|
|
331
|
+
mbedtls_psa_mac_operation_t *operation,
|
|
332
|
+
const psa_key_attributes_t *attributes,
|
|
333
|
+
const uint8_t *key_buffer,
|
|
334
|
+
size_t key_buffer_size,
|
|
335
|
+
psa_algorithm_t alg)
|
|
336
|
+
{
|
|
337
|
+
return psa_mac_setup(operation, attributes,
|
|
338
|
+
key_buffer, key_buffer_size, alg);
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
psa_status_t mbedtls_psa_mac_update(
|
|
342
|
+
mbedtls_psa_mac_operation_t *operation,
|
|
343
|
+
const uint8_t *input,
|
|
344
|
+
size_t input_length)
|
|
345
|
+
{
|
|
346
|
+
if (operation->alg == 0) {
|
|
347
|
+
return PSA_ERROR_BAD_STATE;
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_CMAC)
|
|
351
|
+
if (PSA_ALG_FULL_LENGTH_MAC(operation->alg) == PSA_ALG_CMAC) {
|
|
352
|
+
return mbedtls_to_psa_error(
|
|
353
|
+
mbedtls_cipher_cmac_update(&operation->ctx.cmac,
|
|
354
|
+
input, input_length));
|
|
355
|
+
} else
|
|
356
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_CMAC */
|
|
357
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_HMAC)
|
|
358
|
+
if (PSA_ALG_IS_HMAC(operation->alg)) {
|
|
359
|
+
return psa_hmac_update_internal(&operation->ctx.hmac,
|
|
360
|
+
input, input_length);
|
|
361
|
+
} else
|
|
362
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_HMAC */
|
|
363
|
+
{
|
|
364
|
+
/* This shouldn't happen if `operation` was initialized by
|
|
365
|
+
* a setup function. */
|
|
366
|
+
(void) input;
|
|
367
|
+
(void) input_length;
|
|
368
|
+
return PSA_ERROR_BAD_STATE;
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
static psa_status_t psa_mac_finish_internal(
|
|
373
|
+
mbedtls_psa_mac_operation_t *operation,
|
|
374
|
+
uint8_t *mac, size_t mac_size)
|
|
375
|
+
{
|
|
376
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_CMAC)
|
|
377
|
+
if (PSA_ALG_FULL_LENGTH_MAC(operation->alg) == PSA_ALG_CMAC) {
|
|
378
|
+
uint8_t tmp[PSA_BLOCK_CIPHER_BLOCK_MAX_SIZE];
|
|
379
|
+
int ret = mbedtls_cipher_cmac_finish(&operation->ctx.cmac, tmp);
|
|
380
|
+
if (ret == 0) {
|
|
381
|
+
memcpy(mac, tmp, mac_size);
|
|
382
|
+
}
|
|
383
|
+
mbedtls_platform_zeroize(tmp, sizeof(tmp));
|
|
384
|
+
return mbedtls_to_psa_error(ret);
|
|
385
|
+
} else
|
|
386
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_CMAC */
|
|
387
|
+
#if defined(MBEDTLS_PSA_BUILTIN_ALG_HMAC)
|
|
388
|
+
if (PSA_ALG_IS_HMAC(operation->alg)) {
|
|
389
|
+
return psa_hmac_finish_internal(&operation->ctx.hmac,
|
|
390
|
+
mac, mac_size);
|
|
391
|
+
} else
|
|
392
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_HMAC */
|
|
393
|
+
{
|
|
394
|
+
/* This shouldn't happen if `operation` was initialized by
|
|
395
|
+
* a setup function. */
|
|
396
|
+
(void) operation;
|
|
397
|
+
(void) mac;
|
|
398
|
+
(void) mac_size;
|
|
399
|
+
return PSA_ERROR_BAD_STATE;
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
psa_status_t mbedtls_psa_mac_sign_finish(
|
|
404
|
+
mbedtls_psa_mac_operation_t *operation,
|
|
405
|
+
uint8_t *mac,
|
|
406
|
+
size_t mac_size,
|
|
407
|
+
size_t *mac_length)
|
|
408
|
+
{
|
|
409
|
+
psa_status_t status = PSA_ERROR_CORRUPTION_DETECTED;
|
|
410
|
+
|
|
411
|
+
if (operation->alg == 0) {
|
|
412
|
+
return PSA_ERROR_BAD_STATE;
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
status = psa_mac_finish_internal(operation, mac, mac_size);
|
|
416
|
+
if (status == PSA_SUCCESS) {
|
|
417
|
+
*mac_length = mac_size;
|
|
418
|
+
}
|
|
419
|
+
|
|
420
|
+
return status;
|
|
421
|
+
}
|
|
422
|
+
|
|
423
|
+
psa_status_t mbedtls_psa_mac_verify_finish(
|
|
424
|
+
mbedtls_psa_mac_operation_t *operation,
|
|
425
|
+
const uint8_t *mac,
|
|
426
|
+
size_t mac_length)
|
|
427
|
+
{
|
|
428
|
+
uint8_t actual_mac[PSA_MAC_MAX_SIZE];
|
|
429
|
+
psa_status_t status = PSA_ERROR_CORRUPTION_DETECTED;
|
|
430
|
+
|
|
431
|
+
if (operation->alg == 0) {
|
|
432
|
+
return PSA_ERROR_BAD_STATE;
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
/* Consistency check: requested MAC length fits our local buffer */
|
|
436
|
+
if (mac_length > sizeof(actual_mac)) {
|
|
437
|
+
return PSA_ERROR_INVALID_ARGUMENT;
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
status = psa_mac_finish_internal(operation, actual_mac, mac_length);
|
|
441
|
+
if (status != PSA_SUCCESS) {
|
|
442
|
+
goto cleanup;
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
if (mbedtls_ct_memcmp(mac, actual_mac, mac_length) != 0) {
|
|
446
|
+
status = PSA_ERROR_INVALID_SIGNATURE;
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
cleanup:
|
|
450
|
+
mbedtls_platform_zeroize(actual_mac, sizeof(actual_mac));
|
|
451
|
+
|
|
452
|
+
return status;
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
psa_status_t mbedtls_psa_mac_compute(
|
|
456
|
+
const psa_key_attributes_t *attributes,
|
|
457
|
+
const uint8_t *key_buffer,
|
|
458
|
+
size_t key_buffer_size,
|
|
459
|
+
psa_algorithm_t alg,
|
|
460
|
+
const uint8_t *input,
|
|
461
|
+
size_t input_length,
|
|
462
|
+
uint8_t *mac,
|
|
463
|
+
size_t mac_size,
|
|
464
|
+
size_t *mac_length)
|
|
465
|
+
{
|
|
466
|
+
psa_status_t status = PSA_ERROR_CORRUPTION_DETECTED;
|
|
467
|
+
mbedtls_psa_mac_operation_t operation = MBEDTLS_PSA_MAC_OPERATION_INIT;
|
|
468
|
+
|
|
469
|
+
status = psa_mac_setup(&operation,
|
|
470
|
+
attributes, key_buffer, key_buffer_size,
|
|
471
|
+
alg);
|
|
472
|
+
if (status != PSA_SUCCESS) {
|
|
473
|
+
goto exit;
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
if (input_length > 0) {
|
|
477
|
+
status = mbedtls_psa_mac_update(&operation, input, input_length);
|
|
478
|
+
if (status != PSA_SUCCESS) {
|
|
479
|
+
goto exit;
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
|
|
483
|
+
status = psa_mac_finish_internal(&operation, mac, mac_size);
|
|
484
|
+
if (status == PSA_SUCCESS) {
|
|
485
|
+
*mac_length = mac_size;
|
|
486
|
+
}
|
|
487
|
+
|
|
488
|
+
exit:
|
|
489
|
+
mbedtls_psa_mac_abort(&operation);
|
|
490
|
+
|
|
491
|
+
return status;
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
#endif /* MBEDTLS_PSA_BUILTIN_ALG_HMAC || MBEDTLS_PSA_BUILTIN_ALG_CMAC */
|
|
495
|
+
|
|
496
|
+
#endif /* MBEDTLS_PSA_CRYPTO_C */
|