第 1 章 - Azure RTOS NetX Crypto 简介

Azure RTOS NetX Crypto 可以高性能水平实时实现加密算法,旨在提供数据加密和身份验证服务。 NetX Crypto 是为插入 NetX Secure TLS、DTLS 和 IPsec 模块设计而成。 应用程序亦可将 NetX Crypto 用作网络安全之外的独立模块。

NetX Crypto 独特功能

NetX Crypto 以标准 C 语言 (C99) 实现而成,可兼容几乎所有 C/C++ 编译器。 借助 NetX Crypto 的模块化设计,应用程序可仅链接其需要使用的加密算法,从而充分缩小代码规模。 该实现对大多数 32 位微处理器有效,并且仅使用基本的数学运算(加法、减法、乘法、除法、逻辑 AND、OR、NOR 和移位运算)。 所有这些运算均可在 32 位下进行,因此,NetX Crypto 可在大多数 32 位微处理器之间移植。 该实现经过专门优化,可针对深度嵌入式应用程序,在资源受限的微处理器上运行。

NetX Crypto 支持的算法

NetX Crypto 支持以下加密算法。 NetX Crypto 遵循实时操作系统和平台约束(占用内存少且执行效率高)之下的所有常规建议和基本要求。

算法 密钥长度(位)
AES(CBC、CTR) 128、192、256
AES (XCBC) 128
AES-CCM 8 128
3DES (CBC) 192
HMAC-SHA1 任意长度
HMAC-SHA224 任意长度
HMAC-SHA256 任意长度
HMAC-SHA384 任意长度
HMAC-SHA512 任意长度
HMAC-SHA512/224 任意长度
HMAC-SHA512/256 任意长度
HMAC-MD5 任意长度
RSA 1024、2048、3072、4096
算法 摘要长度(位) 块大小(位)
SHA1 160 512
SHA224 224 512
SHA256 256 512
SHA384 384 1024
SHA512 512 1024
MD5 128 512
HMAC-SHA1 160 512
HMAC-SHA224 224 512
HMAC-SHA256 256 512
HMAC-SHA384 384 1024
HMAC-SHA512 512 1024
HMAC-SHA512/224 224 1024
HMAC-SHA512/256 256 1024
HMAC-MD5 128 512
椭圆曲线 P192/224/256/384/521

NetX Crypto 要求

TBD:内存需求。 中断/重入是否安全? 需要讨论

NetX Crypto 约束

无。