如何配置Mbed TLS

Mbed TLS应该能够在各种平台上即时构建。但是,您可能需要调整一些特定于平台的设置,或者想要自定义将要构建的功能集。您可以在一个配置文件中完成所有这些工作。

配置文件

默认配置文件位于include/mbedtls/mbedtls_config.h (include/mbedtls/config.h Mbed TLS 2.28)。它是完整记录并包含以下部分:

  • 根据中的平台选择选项系统支持:你的编译器支持内联汇编吗,你的libc/网络栈提供IPv6吗,等等。

  • 选择要为中的相应模块启用的功能Mbed TLS功能支持:支持哪个TLS版本,交换哪些密钥,特定的椭圆曲线等等。

  • 选择要内置的模块Mbed TLS模块。例如,如果您不需要RSA或MD5,您可以完全禁用它们。

  • 在中为每个模块设置特定的选项,例如多精度整数的最大大小,或者SSL的内部I/O缓冲区的大小模块配置选项。所有这些选项都有默认值。

配置脚本

您可以使用自己选择的文本编辑器手动编辑配置文件。但是,在某些情况下,以更程序化的方式设置选项可能会很有用。我们提供一个Python脚本scripts/config.py为此:    scripts/config.py unset <name>     scripts/config.py set <name> [<value>]    config.py脚本自动找到mbedtls_config.h文件,当它从Mbed TLS的根目录以这种方式运行时。如果您想从另一个目录或在另一个配置文件上运行它(见下文),您需要使用-f选项。

替代配置文件

您可能希望将应用程序的自定义配置文件保存在Mbed TLS源树之外。您可以通过定义宏来做到这一点MBEDTLS_CONFIG_FILE在编译时获得所需的文件名(包括引号或尖括号)。例如,使用makeCFLAGS="-Ipath/to/config - DMBEDTLS_CONFIG_FILE='<my_config.h>'" make 或者,使用Cmake:

  • 如果不是第一次运行,运行前:清除其缓存

    find . -iname '*cmake*' -not -name CMakeLists.txt -exec rm -rf {} +
    CFLAGS="-Ipath/to/config -DMBEDTLS_CONFIG_FILE='<my_config.h>'" cmake .
    make

仅Mbed TLS 2.2x:我们提供一个check_config.h检查配置文件一致性的文件。我们强烈建议include它位于自定义配置文件的末尾。如果您使用上述设置,您可能需要调整include指令取决于您的编译器。(从Mbed TLS 3.0开始,check_config.h是自动包含的。)

示例配置

我们在中提供了配置示例configs目录。这些通常是特定目标的最低配置,例如支持NSA suite B TLS侧写。它们通常还包括以下设置减少资源使用.

原文

How to configure Mbed TLS — Mbed TLS documentation

猜你喜欢

转载自blog.csdn.net/yunqian09/article/details/130049266
TLS