ESP8266 下 mbedTLS 和 wolfSSL 内存对比分析

1. 摘要

本文主要列举实际测试的 mbedTLS 和 wolfSSL 的内存开销对比。

2. 测试版本

wolfSSL 版本: https://github.com/wolfSSL/wolfssl/releases/tag/v3.12.2-stable

ESP8266 SDK 版本:ESP8266_RTOS_SDK - c7b64043

3. 测试数据

本章主要列举各种配置参数和具体测试数据,由于 wolfSSL 宏观上不需要用户自己配置 fragment,所以也就不做相关的对比了,而且默认支持最大 RSA4096 计算,所以也就不做秘钥大于4096的对比。
wolfSSL内部会自动分配 fragment,所以为了相对公平起见,我们测试的时候会对 fragment 进行适配。

Mode: ESP8266 模式,作为 server 或 client。

Verification: ESP8266 校验方式。

Key size: 生成证书的 key 大小。

Reduction: mbedtls 所消耗的内存 - wolfSSL 所消耗的内存。

Ration: mbedtls 所消耗的内存/wolfSSL 所消耗的内存。

3.1 mbedTLS 与 wolfSSL 在握手建立后消耗内存对比

ModeVerificationKey sizembedTLSwolfSSLReductionRatio
ServerNone2048155211044850731.49
ServerNone3072186551169669591.59
ServerBi-directional20482111010848102621.95
ClientBi-directional204816522677697462.44
ClientBi-directional3072227257880148452.88
ClientCA204813321382494973.48
ClientCA3072198553952159035.02
ClientCA4096202224088161344.95
ClientNone204810620341672043.11
ClientNone3072160713416126554.7
ClientNone4096219031875634161.17

3.2 mbedTLS 与 wolfSSL 在握手过程中最大消耗内存对比

ModeVerificationKey sizembedTLSwolfSSLReductionRatio
ServerNone20482283123264-4330.98
ServerNone3072299152824016751.06
ServerBi-directional2048291312364854831.23
ClientBi-directional20481954225128-55860.78
ClientBi-directional30722635330688-43350.86
ClientCA20481620516712-5070.97
ClientCA3072215221900025221.13
ClientCA4096243112161626951.12
ClientNone20481451615568-10520.93
ClientNone30721752618208-6820.96
ClientNone4096219032085610471.05
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值