Google is committed to advancing racial equity for Black communities. See how.
Esta página se ha traducido con Cloud Translation API.
Switch to English

Crypto

Este módulo incluye funciones criptográficas.

Resumen

funciones

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 realiza AES CCM cálculo.
otCryptoEcdsaSign (uint8_t *aOutput, uint16_t *aOutputLength, const uint8_t *aInputHash, uint16_t aInputHashLength, const uint8_t *aPrivateKey, uint16_t aPrivateKeyLength)
Este método crea ECDSA señal.
otCryptoHmacSha256 (const uint8_t *aKey, uint16_t aKeyLength, const uint8_t *aBuf, uint16_t aBufLength, uint8_t *aHash)
void
Esta función realiza el cálculo HMAC.

funciones

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 realiza AES CCM cálculo.

detalles
parámetros
[in] aKey
Un puntero a la tecla.
[in] aKeyLength
Longitud de la clave en bytes.
[in] aTagLength
Longitud de la etiqueta en bytes.
[in] aNonce
Un puntero al valor de uso único.
[in] aNonceLength
Duración del nonce en bytes.
[in] aHeader
Un puntero a la cabecera.
[in] aHeaderLength
Longitud del encabezado en bytes.
[in,out] aPlainText
Un puntero al texto plano.
[in,out] aCipherText
Un puntero al texto cifrado.
[in] aLength
longitud Plaintext en bytes.
[in] aEncrypt
true en cifrar y false de descifrar.
[out] aTag
Un puntero a la etiqueta.

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 crea ECDSA señal.

detalles
parámetros
[out] aOutput
Un búfer de salida, donde se debe almacenar ECDSA señal.
[in,out] aOutputLength
La longitud de la aOutput buffer.
[in] aInputHash
Un hash de entrada.
[in] aInputHashLength
La longitud de los aClaims buffer.
[in] aPrivateKey
Una clave privada en formato PEM.
[in] aPrivateKeyLength
La longitud de la aPrivateKey buffer.
Valores devueltos
OT_ERROR_NONE
ECDSA signo ha sido creada con éxito.
OT_ERROR_NO_BUFS
búfer de salida es demasiado pequeño.
OT_ERROR_INVALID_ARGS
clave privada no es válida CE clave privada.
OT_ERROR_FAILED
Error durante la firma.

otCryptoHmacSha256

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

Esta función realiza el cálculo HMAC.

detalles
parámetros
[in] aKey
Un puntero a la tecla.
[in] aKeyLength
La longitud de la clave en bytes.
[in] aBuf
Un puntero a la memoria intermedia de entrada.
[in] aBufLength
La longitud de aBuf en bytes.
[out] aHash
Un puntero a la memoria intermedia de hash salida.

macros

OT_CRYPTO_HMAC_SHA_HASH_SIZE

 OT_CRYPTO_HMAC_SHA_HASH_SIZE 32

Longitud del HMAC SHA (en bytes).