• 物联网工程师开发服务平台

MiCO Algorithm APIs

MiCO 提供算法包括安全和校验两种。校验算法用来保证数据传输的正确性,完整性和可靠性。安全算法用来保证网络数据传输的安全可信赖性。

数据校验:

安全加密:

本文仅梳理 MiCO 算法的主要 API 框架及部分示例。更详细说明及实现,可参考完整的 doxygen 文档,或查阅 MiCO Demos

CRC8

用于系统数据传输时的 CRC8 校验功能实现。

CRC16

用于系统数据传输时的 CRC16 校验功能实现。

MD5

用于系统数据传输时的 MD5 哈希值的生成功能。

SHA

用于系统数据传输时的 SHA 哈希值的生成,包括 4 种: SHA1,SHA 256,SHA384,SHA512。

  • USHAReset:初始化一个SHAContext, 准备计算一个新的SHA消息摘要。
  • USHAInput:将八位的字节数组作为消息的下一部分
  • USHAFinalBits:添加消息的任意最终位
  • USHAResult:返回具有适当位数的消息摘要,至回调函数的数组
  • USHABlockSize:返回给定的SHA算法的块大小
  • USHAHashSize:返回给定的SHA算法的哈希大小
  • USHAHashSizeBits:返回给定的SHA算法的哈希大小,以位表示
  • USHAHashName:返回SHA算法名称的字符串

HMAC MD5

用于系统数据传输时 HMAC_MD5 摘要值的生成。

HMAC SHA

用于系统数据传输时 HMAC_SHA 摘要值的生成。

  • hmacReset: 初始化一个存放新的HMAC消息摘要值的结构体
  • hmacInput: 接受一个八位字节数组作为下一个部分的消息
  • hmacResult: 返回N个字节的消息摘要 至 调用函数定义的数组中

DES

用于加密或解密 DES 的密钥。

64位密钥的DES加密

192位密钥的DES加密

AES

用于实现 AES 加密或解密功能。

cbc模式

cbc模式的PKCS#5填充AES加密

ecb模式

ARC4

用于实现 ARC4 的加解密功能。

  • Arc4SetKey:Arc4 扩展外部密钥为一个较长的字符串
  • Arc4Process:ARC4 加密或解密过程

Rabbit

用于实现 Rabbit 的加解密功能。

RSA

用于实现 RSA 的加密和解密功能。

文本导读目录