主题中讨论的其他器件: UNIFLASH
您好!
我想在 CC3235SF 上生成 ES256签名。 我在这里阅读过此帖子:
我想使用第0个预编程的恒定私有 ECC 密钥来实现这一目的。 我已验证我的 SHA256是否有效。 我是否遗漏了某种东西:
uint16_t ecc_signature_length = 0;
slNetUtilCryptoCmdSignAttrib_t signAttrib;
uint8_t SHA256_hash-32];
uint8_t ecc_buffer[512];
/*用于 b64url (header).b64url (payload)散列的 SHA256散列的初始加密*/
memset (&HMAC_params、0、sizeof (CryptoCC32XX_HmacParams));
if (cryptoCC32XX_handle == NULL)
{
CryptoCC32XX_init();
cryptoCC32XX_handle = CryptoCC32XX_open (0、CryptoCC32XX_HMAC);
}
/*清除散列内存*/
memset (&SHA256_hash-[0]、0、sizeof (SHA256_hash));
CryptoCC32XX_HmacParams_init (&HMAC_params);
HMAC_params.MoreData = 0;
/*生成散列*/
CryptoCC32XX_SIGN (cryptoCC32XX_Handle、
CryptoCC32XX_HMAC_SHA256、
已编码报头和已编码有效载荷[0]、
strlen (&enceded_header_and_enced_payload[0])、
SHA256_hash-[0]、
HMAC_params (&H);
/*计算哈希的 ECC 签名*/
signAttrib.Flags = 0;
signAttrib.Objid = 0;
signAttrib.SigType = SL_NETUTIL_Crypto_SIG_SHA256wECDSA;
ecc_signature_length = 255;
memset (&ecc_buffer[0]、0、sizeof (ecc_buffer));
SL_NetUtilCmd (SL_NETUTIL_crypto_CMD_sign_MSG、
(uint8_t *) signAttrib、
sizeof (slNetUtilCryptoCmdSignAttrib_t)、
SHA256_hash-[0]、
sizeof (SHA256_hash)、
&ECC_buffer[0]、
&ECC_signature_length);
