Krypto – Thread-Stack

Dieses Modul enthält kryptografische Funktionen.

Zusammenfassung

Typedefs

otCryptoSha256Hash typedef
Stellt einen SHA-256-Hash dar.

Funktionen

otCryptoAesCcm(const otCryptoKey *aKey, 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
Führt AES-CCM-Berechnungen durch.
otCryptoHmacSha256(const otCryptoKey *aKey, const uint8_t *aBuf, uint16_t aBufLength, otCryptoSha256Hash *aHash)
void
Führt eine HMAC-Berechnung durch.

Typedefs

otCryptoSha256Hash

otPlatCryptoSha256Hash otCryptoSha256Hash

Stellt einen SHA-256-Hash dar.

Funktionen

otCryptoAesCcm

void otCryptoAesCcm(
  const otCryptoKey *aKey,
  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
)

Führt AES-CCM-Berechnungen durch.

Details
Parameter
[in] aKey
Ein Zeiger auf den Schlüssel.
[in] aTagLength
Tag-Länge in Byte.
[in] aNonce
Ein Zeiger auf die Nonce.
[in] aNonceLength
Länge der Nonce in Byte.
[in] aHeader
Ein Zeiger auf die Kopfzeile.
[in] aHeaderLength
Länge des Headers in Byte.
[in,out] aPlainText
Ein Zeiger auf den Klartext.
[in,out] aCipherText
Ein Zeiger auf den Geheimtext.
[in] aLength
Klartextlänge in Byte.
[in] aEncrypt
true beim Verschlüsseln und false beim Entschlüsseln.
[out] aTag
Ein Zeiger auf das Tag.

otCryptoHmacSha256

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

Führt eine HMAC-Berechnung durch.

Details
Parameter
[in] aKey
Ein Zeiger auf den Schlüssel.
[in] aBuf
Ein Zeiger auf den Eingabepuffer.
[in] aBufLength
Die Länge von aBuf in Byte.
[out] aHash
Ein Verweis auf eine otCryptoSha256Hash-Struktur, um den Hashwert auszugeben.

Ressourcen

OpenThread API-Referenzthemen stammen aus dem Quellcode, der auf GitHub verfügbar ist. Weitere Informationen finden Sie unter Ressourcen. Dort können Sie auch einen Beitrag zu unserer Dokumentation leisten.