Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Kripto - Tumpukan Rangkaian Pesan

Modul ini mencakup fungsi kriptografi.

Ringkasan

Typedef

otCryptoSha256Hash typedef
Struktur ini merepresentasikan hash SHA-256.

Variabel

OT_TOOL_PACKED_END

Fungsi

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
Metode ini menjalankan komputasi AES CCM.
otCryptoEcdsaSign(uint8_t *aOutput, uint16_t *aOutputLength, const uint8_t *aInputHash, uint16_t aInputHashLength, const uint8_t *aPrivateKey, uint16_t aPrivateKeyLength)
Metode ini membuat tanda ECDSA.
otCryptoHmacSha256(const otCryptoKey *aKey, const uint8_t *aBuf, uint16_t aBufLength, otCryptoSha256Hash *aHash)
void
Fungsi ini menjalankan komputasi HMAC.

Struct

otCryptoSha256Hash

Struktur ini merepresentasikan hash SHA-256.

Typedef

otCryptoSha256Hash

struct otCryptoSha256Hash otCryptoSha256Hash

Struktur ini merepresentasikan hash SHA-256.

Variabel

OT_ALAT_PACKED_END

OT_TOOL_PACKED_BEGIN struct otCryptoSha256Hash OT_TOOL_PACKED_END

Fungsi

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
)

Metode ini menjalankan komputasi AES CCM.

Detail
Parameter
[in] aKey
Pointer ke kunci.
[in] aTagLength
Panjang tag dalam byte.
[in] aNonce
Pointer ke nonce.
[in] aNonceLength
Panjang nonce dalam byte.
[in] aHeader
Pointer ke header.
[in] aHeaderLength
Panjang header dalam byte.
[in,out] aPlainText
Pointer ke teks biasa.
[in,out] aCipherText
Pointer ke ciphertext.
[in] aLength
Panjang teks biasa dalam byte.
[in] aEncrypt
true pada enkripsi dan false pada dekripsi.
[out] aTag
Pointer ke tag.

otCryptoEcdsaTanda

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

Metode ini membuat tanda ECDSA.

Detail
Parameter
[out] aOutput
Buffer output tempat tanda ECDSA harus disimpan.
[in,out] aOutputLength
Panjang buffer aOutput.
[in] aInputHash
Hash input.
[in] aInputHashLength
Panjang buffer aInputHash.
[in] aPrivateKey
Kunci pribadi dalam format PEM.
[in] aPrivateKeyLength
Panjang buffer aPrivateKey.
Nilai yang Ditampilkan
OT_ERROR_NONE
Tanda ECDSA berhasil dibuat.
OT_ERROR_NO_BUFS
Buffer output terlalu kecil.
OT_ERROR_INVALID_ARGS
Kunci pribadi bukan Kunci Pribadi EC yang valid.
OT_ERROR_FAILED
Terjadi error selama penandatanganan.

otCryptoHmacSha256

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

Fungsi ini menjalankan komputasi HMAC.

Detail
Parameter
[in] aKey
Pointer ke kunci.
[in] aBuf
Pointer ke buffer input.
[in] aBufLength
Panjang aBuf dalam byte.
[out] aHash
Pointer ke struktur otCryptoSha256Hash untuk menghasilkan nilai hash.

Makro

OT_CRYPTO_SHA256_HASH_SIZE

 OT_CRYPTO_SHA256_HASH_SIZE 32

Panjang hash SHA256 (dalam byte).

Resource

Topik Referensi OpenThread API berasal dari kode sumber, yang tersedia di GitHub. Untuk informasi selengkapnya, atau untuk memberikan kontribusi pada dokumentasi kami, lihat Referensi.