寻找 RSA C 裸机实现(用于 STM32)
Looking for RSA C bare-metal implementation (for STM32)
我正在寻找 RSA 签名验证的裸机 C 实现。如果可能的话,我需要一个没有动态分配的实现。目标是STM32H753。
我知道 STMicro 有一个提供 RSA 的加密库,但源代码不可用,而且它似乎不适用于 STM32H7。
我看过 github,但很难评估项目质量。
编辑:根据 STMicro 支持,有一个 cryptolib 补丁可以在 STM32H7 上使用它
STM32 不支持硬件 RSA(仅支持 DES 和 AES),但任何纯 C 软件实现都可以。如果您不确定图书馆的质量,Information Security SE 可能是询问 特定 图书馆的更好地方。
有一个硬件随机数生成器,您可以使用它,例如而不是 rand()
库函数。注意参考手册熵源验证章节中推荐的时钟设置。
看看 ARM Mbed TLS:https://tls.mbed.org/kb/how-to/encrypt-and-decrypt-with-rsa
源代码:https://github.com/ARMmbed/mbedtls
License file 表示它是开源的 Apache 2.0。
我之前在 STM32 mcu 上使用这个库进行 SHA-256 散列(没有使用 Mbed——它只是一个库 after-all)并且它工作得很好。 (执行 SHA-256 哈希的 4 个示例:https://os.mbed.com/teams/mbed-os-examples/code/mbed-os-example-tls-hashing/file/c68a6dc8d494/main.cpp/)
我正在寻找 RSA 签名验证的裸机 C 实现。如果可能的话,我需要一个没有动态分配的实现。目标是STM32H753。
我知道 STMicro 有一个提供 RSA 的加密库,但源代码不可用,而且它似乎不适用于 STM32H7。
我看过 github,但很难评估项目质量。
编辑:根据 STMicro 支持,有一个 cryptolib 补丁可以在 STM32H7 上使用它
STM32 不支持硬件 RSA(仅支持 DES 和 AES),但任何纯 C 软件实现都可以。如果您不确定图书馆的质量,Information Security SE 可能是询问 特定 图书馆的更好地方。
有一个硬件随机数生成器,您可以使用它,例如而不是 rand()
库函数。注意参考手册熵源验证章节中推荐的时钟设置。
看看 ARM Mbed TLS:https://tls.mbed.org/kb/how-to/encrypt-and-decrypt-with-rsa
源代码:https://github.com/ARMmbed/mbedtls
License file 表示它是开源的 Apache 2.0。
我之前在 STM32 mcu 上使用这个库进行 SHA-256 散列(没有使用 Mbed——它只是一个库 after-all)并且它工作得很好。 (执行 SHA-256 哈希的 4 个示例:https://os.mbed.com/teams/mbed-os-examples/code/mbed-os-example-tls-hashing/file/c68a6dc8d494/main.cpp/)