Google is committed to advancing racial equity for Black communities. See how.
Cette page a été traduite par l'API Cloud Translation.
Switch to English

Crypto

Ce module comprend des fonctions cryptographiques.

Sommaire

Typedefs

otCryptoSha256Hash typedef
Cette structure représente un hachage SHA-256.

Variables

OT_TOOL_PACKED_END

Les fonctions

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
Cette méthode effectue le calcul AES CCM.
otCryptoEcdsaSign (uint8_t *aOutput, uint16_t *aOutputLength, const uint8_t *aInputHash, uint16_t aInputHashLength, const uint8_t *aPrivateKey, uint16_t aPrivateKeyLength)
Cette méthode crée le signe ECDSA.
otCryptoHmacSha256 (const uint8_t *aKey, uint16_t aKeyLength, const uint8_t *aBuf, uint16_t aBufLength, otCryptoSha256Hash *aHash)
void
Cette fonction effectue le calcul HMAC.

Structs

otCryptoSha256Hash

Cette structure représente un hachage SHA-256.

Typedefs

otCryptoSha256Hash

struct otCryptoSha256Hash otCryptoSha256Hash

Cette structure représente un hachage SHA-256.

Variables

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otCryptoSha256Hash OT_TOOL_PACKED_END

Les fonctions

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
)

Cette méthode effectue le calcul AES CCM.

Détails
Paramètres
[in] aKey
Un pointeur vers la clé.
[in] aKeyLength
Longueur de la clé en octets.
[in] aTagLength
Longueur de la balise en octets.
[in] aNonce
Un pointeur vers le nonce.
[in] aNonceLength
Longueur du nonce en octets.
[in] aHeader
Un pointeur vers l'en-tête.
[in] aHeaderLength
Longueur de l'en-tête en octets.
[in,out] aPlainText
Un pointeur vers le texte en clair.
[in,out] aCipherText
Un pointeur vers le texte chiffré.
[in] aLength
Longueur du texte en octets.
[in] aEncrypt
true lors du chiffrement et false lors du déchiffrement.
[out] aTag
Un pointeur vers la balise.

otCryptoEcdsaSign

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

Cette méthode crée le signe ECDSA.

Détails
Paramètres
[out] aOutput
Un tampon de sortie où le signe ECDSA doit être stocké.
[in,out] aOutputLength
La longueur du tampon aOutput .
[in] aInputHash
Un hachage d'entrée.
[in] aInputHashLength
La longueur du tampon aClaims .
[in] aPrivateKey
Une clé privée au format PEM.
[in] aPrivateKeyLength
La longueur du tampon aPrivateKey .
Valeurs de retour
OT_ERROR_NONE
Le signe ECDSA a été créé avec succès.
OT_ERROR_NO_BUFS
Le tampon de sortie est trop petit.
OT_ERROR_INVALID_ARGS
La clé privée n'est pas une clé privée EC valide.
OT_ERROR_FAILED
Erreur lors de la signature.

otCryptoHmacSha256

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

Cette fonction effectue le calcul HMAC.

Détails
Paramètres
[in] aKey
Un pointeur vers la clé.
[in] aKeyLength
La longueur de la clé en octets.
[in] aBuf
Un pointeur vers le tampon d'entrée.
[in] aBufLength
La longueur de aBuf en octets.
[out] aHash
Un pointeur vers une structure otCryptoSha256Hash pour afficher la valeur de hachage.

Macros

OT_CRYPTO_SHA256_HASH_SIZE

 OT_CRYPTO_SHA256_HASH_SIZE 32

Longueur du hachage SHA256 (en octets).