Google is committed to advancing racial equity for Black communities. See how.
Esta página foi traduzida pela API Cloud Translation.
Switch to English

Crypto

Este módulo inclui funções criptográficas.

Resumo

Funções

otCryptoAesCcm (const uint8_t *aKey, uint16_t aKeyLength, uint8_t aTagLength, const void *aNonce, uint8_t aNonceLength, const void *aHeader, uint32_t aHeaderLength, void *aPlainText, void *aCipherText, uint32_t aLength, bool aEncrypt, void *aTag)
void
Este método executa o cálculo do AES CCM.
otCryptoEcdsaSign (uint8_t *aOutput, uint16_t *aOutputLength, const uint8_t *aInputHash, uint16_t aInputHashLength, const uint8_t *aPrivateKey, uint16_t aPrivateKeyLength)
Este método cria sinal ECDSA.
otCryptoHmacSha256 (const uint8_t *aKey, uint16_t aKeyLength, const uint8_t *aBuf, uint16_t aBufLength, uint8_t *aHash)
void
Esta função executa computação HMAC.

Funções

otCryptoAesCcm

void otCryptoAesCcm(
  const uint8_t *aKey,
  uint16_t aKeyLength,
  uint8_t aTagLength,
  const void *aNonce,
  uint8_t aNonceLength,
  const void *aHeader,
  uint32_t aHeaderLength,
  void *aPlainText,
  void *aCipherText,
  uint32_t aLength,
  bool aEncrypt,
  void *aTag
)

Este método executa o cálculo do AES CCM.

Detalhes
Parâmetros
[in] aKey
Um ponteiro para a chave.
[in] aKeyLength
Comprimento da chave em bytes.
[in] aTagLength
Comprimento da tag em bytes.
[in] aNonce
Um ponteiro para o nonce.
[in] aNonceLength
Comprimento de nonce em bytes.
[in] aHeader
Um ponteiro para o cabeçalho.
[in] aHeaderLength
Comprimento do cabeçalho em bytes.
[in,out] aPlainText
Um ponteiro para o texto simples.
[in,out] aCipherText
Um ponteiro para o texto cifrado.
[in] aLength
Comprimento de texto sem formatação em bytes.
[in] aEncrypt
true ao criptografar e false ao descriptografar.
[out] aTag
Um ponteiro para a tag.

otCryptoEcdsaSign

 otError otCryptoEcdsaSign(
  uint8_t *aOutput,
  uint16_t *aOutputLength,
  const uint8_t *aInputHash,
  uint16_t aInputHashLength,
  const uint8_t *aPrivateKey,
  uint16_t aPrivateKeyLength
)

Este método cria sinal ECDSA.

Detalhes
Parâmetros
[out] aOutput
Um buffer de saída em que o sinal ECDSA deve ser armazenado.
[in,out] aOutputLength
O comprimento do buffer aOutput .
[in] aInputHash
Um hash de entrada.
[in] aInputHashLength
O comprimento do buffer aClaims .
[in] aPrivateKey
Uma chave privada no formato PEM.
[in] aPrivateKeyLength
O comprimento do buffer aPrivateKey .
Retornar valores
OT_ERROR_NONE
O sinal ECDSA foi criado com sucesso.
OT_ERROR_NO_BUFS
O buffer de saída é muito pequeno.
OT_ERROR_INVALID_ARGS
A chave privada não é válida.
OT_ERROR_FAILED
Erro durante a assinatura.

otCryptoHmacSha256

void otCryptoHmacSha256(
  const uint8_t *aKey,
  uint16_t aKeyLength,
  const uint8_t *aBuf,
  uint16_t aBufLength,
  uint8_t *aHash
)

Esta função executa computação HMAC.

Detalhes
Parâmetros
[in] aKey
Um ponteiro para a chave.
[in] aKeyLength
O comprimento da chave em bytes.
[in] aBuf
Um ponteiro para o buffer de entrada.
[in] aBufLength
O comprimento de aBuf em bytes.
[out] aHash
Um ponteiro para o buffer de hash de saída.

Macros

OT_CRYPTO_HMAC_SHA_HASH_SIZE

 OT_CRYPTO_HMAC_SHA_HASH_SIZE 32

Comprimento do HMAC SHA (em bytes).