1

我知道 wolfSSL 是 yaSSL 的继承者。但我想知道 wolfSSL/yaSSL 的基础层是从什么开发的。

wolfSSL 是否在嵌入式系统(FreeRTOS、ARM)内部使用 openSSL 或 LwIP 功能?

最好的问候,伊亚普斯。

4

1 回答 1

0

我知道 wolfSSL 是 yaSSL 的继承者。但我想知道 wolfSSL/yaSSL 的基础层是从什么开发的。

好问题!

yaSSL(又一个 SSL)是一个用 C++ 从头开始​​(无基础)编写的用于 mySQL 的库,由 mySQL 委托,因为当时 OpenSSL 许可不适用于 mySQL 使用的 Apache 许可。该库由 wolfSSL Inc. 的现任 CTO 和联合创始人于 2004 年从头开始编写。

在 yaSSL 出现一段时间后,市场对嵌入式 C 实现的需求出现了。为了优化代码的可移植性和足迹,wolfSSL CTO 第二次穿上他的工作靴,并从头开始用 C 完全重写了同一个库。这被称为“另一个用 C 编写的 SSL”或 CyaSSL简而言之。这是在 2006 年。

wolfSSL Inc. 成立不久,CyaSSL 在 2014/2015 年更名为 wolfSSL。

长话短说,没有“基础”,一切都是从头开始写的!

随着时间的推移,越来越多的用户希望将其应用程序中的 OpenSSL 替换为 wolfSSL,因为它由一家真正的公司提供支持,由专业人士编写,提供支持和维护以及商业许可选项,并且总而言之更加专注和专注以保护最终客户。

为此,wolfSSL 编写了一个“兼容层”,以便可以重新编译用于链接到 OpenSSL 的应用程序,以便现在链接到 wolfSSL,而无需更改 API 接口。OpenSSL API 只是映射到 wolfSSL 内部 API。

这有帮助吗?

wolfSSL 是否在嵌入式系统(FreeRTOS、ARM)内部使用 openSSL 或 LwIP 功能?

wolfSSL 支持多种 TCP/IP 实现,但不依赖于任何一种。事实上,wolfSSL 使用自定义的“I/O 回调”解决方案,并设置了一些默认回调,以便在使用 LWIP 或 BSD 套接字等进行构建时使用。但是,如果用户想通过 RFID 在两个应用程序之间建立 TLS 连接。 . 这完全有可能!wolfSSL 的项目涉及通过蓝牙、USB 串行、内存中的 TLS 连接、同一台 PC 上的两个应用程序之间、通过 SPI 接口等等!用户可以编写和注册他们自己的自定义 I/O 回调,或者他们可以使用 wolfSSL 提供的默认回调之一,因为它适合用户的需要。总而言之,可以说“如果它可以发送和接收数据,wolfSSL 可以通过它进行 TLS 连接”。

温暖的问候,

  • ķ
于 2021-01-22T17:20:04.730 回答