问题描述
我正在研究用于嵌入式设备的不同 SSL/TLS 库。
我想知道人们认为每个库的优缺点是什么,以及这些库是否有特定的用例。
解决方法
首先,所有三个库都将完成相同的事情,只有一个可能更适合您的用例。这三个都是开源的,将在嵌入式系统上运行,并且除了 Mbed TLS 之外,都支持 TLS 1.3。
OpenSSL
- 支持 TLS 1.3
- 在更高端的嵌入式系统上运行,但具有更大的代码库,并且在设计时并未考虑到嵌入式系统。根据平台的不同,可能需要进行一些移植。
Mbed TLS
- 不支持 TLS 1.3
- 有很好的文档,比 OpenSSL 更直观。
- 易于理解和使用 API。
wolfSSL
- 支持 TLS 1.3
- 适用于嵌入式系统,因此代码库要小得多。
- 包含适用于各种平台的预构建示例的出色文档。
- 最新项目,不断更新和安全修复。