mbedtls学习1.mbedtsl是什么?

1、介绍

mbedTLS(前身 PolarSSL)是一个由 ARM 公司开源和维护的 SSL/TLS 算法库。其使用 C 编程语言以最小的编码占用空间实现了 SSL/TLS 功能及各种加密算法,易于理解、使用、集成和扩展,方便开发人员轻松地在嵌入式产品中使用 SSL/TLS 功能。

mbedtls 软件包是 RT-Thread 基于 ARMmbed/mbedtls 开源库 v2.6.0 版本移植的.

1.1提供功能

mbedTLS** 软件包提供了如下的能力:

  • 完整的 SSL v3TLS v1.0TLS v1.1TLS v1.2 协议实现
  • X.509 证书处理
  • 基于 TCP 的 TLS 传输加密
  • 基于 UDP 的 DTLS(Datagram TLS)传输加密
  • 其它加解密库实现

有关 mbedTLS 的更多信息,请参阅 https://tls.mbed.org

1.2关键框架图

mbedTLS 软件包提供了一组可以单独使用和编译的加密组件,各组件及其可能的依赖关系如下图所示:
在这里插入图片描述

1.3 目录结构

名称说明
certsCA 证书存放目录
docs文档目录
mbedtlsARM mbedtls 源码
ports移植文件目录
samples示例文件目录
LICENSE许可证文件
README.md软件包使用说明
SConscriptRT-Thread 默认的构建脚本

1.4 许可证

Apache License Version 2.0 协议许可。

2、获取软件包

在使用的 BSP 目录下,使用 ENV 工具打开 menuconfig 来获取软件包。

  • 配置软件包并使能示例
RT-Thread online packages --->
    security packages  --->
            Select Root Certificate  --->      # 选择证书文件
        [*] mbedtls: An portable and flexible SSL/TLS library  ---  # 打开 mbedtls 软件包
        [*]   Store the AES tables in ROM      # 将 AES 表存储在 ROM 中,优化内存占用
        (2)   Maximum window size used         # 用于点乘的最大“窗口”大小(2-7,该值越小内存占用也越小)
        (3584) Maxium fragment length in bytes # 配置数据帧大小(0x7200 错误可尝试增加该大小)
        [*]   Enable a mbedtls client example  # 开启 mbedtls 测试例程
        [ ]   Enable Debug log output          # 开启调试 log 输出
              version (latest)  --->           # 选择软件包版本,默认为最新版本

   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 选择证书文件
RT-Thread online packages --->
    security packages  --->
        [*] mbedtls: An portable and flexible SSL/TLS library  ---  # 打开 mbedtls 软件包
                Select Root Certificate  --->                       # 选择证书文件
                    [ ] Using all default CA(Use preset CA certificates. Take up more memory)
                    [ ] Using user CA(copy your Root CA file to mbedtls package "certs" directory)
                    [*] Using Digital Signature Trust Root CA       # 测试例程需要使用的证书

   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
- `Using all default CA` 配置选项会将 `certs/default` 目录下的所有预置证书加入编译,将占用很大的内存
- `Using user CA` 配置选项允许用户将自己需要的证书文件加入编译,需要用户将证书文件拷贝到 `certs` 根目录
- 更多使用说明请参阅 [软件包详细介绍](docs/introduction.md)

   
   
  • 1
  • 2
  • 3
  • 使用 pkgs --update 命令下载软件包

3、参考资料

  • mbedTLS官方网站:https://tls.mbed.org/
  • ARMmbed GitHub:[mbedtls
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值