9个不稳定版本 (3个重大变更)
0.4.0 | 2024年6月9日 |
---|---|
0.3.0 | 2023年10月2日 |
0.2.0 | 2023年8月6日 |
0.1.3 | 2022年8月7日 |
0.1.0-alpha.0 | 2022年3月20日 |
#528 in 嵌入式开发
用于 w5500-mqtt
275KB
4.5K SLoC
w5500-tls
Wiznet W5500 SPI互联网卸载芯片的TLS v1.3客户端。
这需要一个大约19k的闪存空间,用于带有 thumbv7em-none-eabi
目标、启用调试断言和 p256-cm4
功能的 -O3
。启用所有日志记录需要额外的 ~40k 闪存空间。
警告
⚠️ 这处于早期alpha状态 ⚠️
所有常规安全免责声明均适用于此处,请阅读许可证,如果使用此软件,您的仓鼠可能会爆炸,请不要在生产环境中使用此代码等。
此外,这无法抵御侧信道攻击。
- 加密可能直接在套接字缓冲区中发生,任何可以访问物理SPI总线或SPI设备寄存器的实体都可以轻松截获数据。
- 为了在套接字缓冲区中不恰当地实现加密,有一个简陋的AES实现,几乎没有考虑到恒定时间评估。
限制
目前这仅支持预共享密钥。这不会适用于大多数Web(HTTPS)应用程序。
- 需要与套接字缓冲区大小相等的本地缓冲区。
- TLS记录分片使得实现套接字缓冲区流变得不切实际。
- 加密支持有限
- 加密方式:
TLS_AES_128_GCM_SHA256
- 密钥交换:
secp256r1
- 加密方式:
- 不支持证书验证
- 不支持客户端证书(双向TLS)
- 不支持早期数据
- 不支持提供TLS
功能标志
默认情况下禁用所有功能。
依赖关系
~3.5MB
~71K SLoC