一 STM32加密库软件架构
1 加密库不是使用硬件的外设(如:AES),使用硬件外设要使用HAL库
2 加密库在RSA操作要使用crc硬件外设,并且我们不通过cubemx修改参数(只能使用默认参数).如果要使用其它crc模式的话,做RSA操作前先使用cubemx产生默认的初始化参数(不能使用HAL库中的de_init函数),再调该初始化参数后再使用RSA加解密,否则加密和解密数据会不一样。做完RSA操作后再初始化为其它模式。
3 加密库支持stm32的所有系统
4 每种加密算法可合适单独的内存管理方法和运行速度优化方法
二 STM32加密库文件结构
1 STM32CubeExpansion_Crypto_V3.1.0包括两个部分:
AccHw_Crypto: The STM32 crypto hardware acceleration library package
Fw_Crypto :The STM32 crypto firmware library package
和运行时间
参考STM32CubeExpansion_Crypto_V3.1.0\Fw_Crypto\STM32XY\Documentation”
XY 表示 STM32 系列
四 STM32加密库RSA使用要点
- 1 STM32加密库RSA算法使用了crc
做RSA操作前先调用使用cubemx产生默认的初始化参数(不能使用HAL库中的de_init函数),再调该初始化参数后再使用RSA加解密,否则加密和解密数据会不一样。做完RSA操作后再初始化为其它模式
- 2 STM32加密库RSA算法使用rom和ram较多,还有调用时需要的栈空间比较多