我正在寻找RSA签名验证的裸机C实现。如果可能,我需要一个没有动态分配的实现。目标是STM32H753。
我知道有一个来自STMicro的加密库提供了RSA,但是源代码是不可用的,而且它似乎不适用于STM32H7。
我在github上看过,但很难评估项目的质量。
编辑:根据STMicro支持,有一个可以在STM32H7上使用它的加密补丁
发布于 2019-06-25 01:02:38
看看ARM Mbed TLS:https://tls.mbed.org/kb/how-to/encrypt-and-decrypt-with-rsa
源代码:https://github.com/ARMmbed/mbedtls
License file显示它是开源的Apache2.0。
我以前在STM32 mcu (使用Mbed的withOUT--毕竟它只是一个库)上使用过这个库进行SHA-256散列,它工作得很好。(4个做SHA-256散列的例子:https://os.mbed.com/teams/mbed-os-examples/code/mbed-os-example-tls-hashing/file/c68a6dc8d494/main.cpp/)
发布于 2019-06-24 14:46:32
STM32不支持硬件RSA (只支持DES和AES),但任何纯C软件实现都可以。如果您不确定某个库的质量,Information Security SE可能是一个询问特定库的更好地方。
有一个硬件随机数生成器,你可以用它来代替rand()
库函数。请注意《参考手册》熵源验证章节中推荐的时钟设置。
https://stackoverflow.com/questions/56730803
复制相似问题