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

Kripto

Modul ini mencakup fungsi kriptografi.

Ringkasan

Typedefs

otCryptoSha256Hash typedef
Struktur ini mewakili 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 melakukan 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 melakukan perhitungan HMAC.

Struktur

otCryptoSha256Hash

Struktur ini mewakili hash SHA-256.

Typedefs

otCryptoSha256Hash

struct otCryptoSha256Hash otCryptoSha256Hash

Struktur ini mewakili hash SHA-256.

Variabel

OT_TOOL_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 melakukan komputasi AES CCM.

rincian
Parameter
[in] aKey
Sebuah pointer ke kunci.
[in] aTagLength
Panjang tag dalam byte.
[in] aNonce
Sebuah penunjuk ke nonce.
[in] aNonceLength
Panjang nonce dalam byte.
[in] aHeader
Sebuah pointer ke header.
[in] aHeaderLength
Panjang header dalam byte.
[in,out] aPlainText
Sebuah pointer ke plaintext.
[in,out] aCipherText
Sebuah pointer ke ciphertext.
[in] aLength
Panjang plaintext dalam byte.
[in] aEncrypt
true pada mengenkripsi dan false di mendekripsi.
[out] aTag
Sebuah 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.

rincian
Parameter
[out] aOutput
Buffer keluaran tempat tanda ECDSA harus disimpan.
[in,out] aOutputLength
Panjang aOutput penyangga.
[in] aInputHash
Sebuah hash masukan.
[in] aInputHashLength
Panjang aInputHash penyangga.
[in] aPrivateKey
Kunci pribadi dalam format PEM.
[in] aPrivateKeyLength
Panjang aPrivateKey penyangga.
Mengembalikan Nilai
OT_ERROR_NONE
Tanda ECDSA telah berhasil dibuat.
OT_ERROR_NO_BUFS
Buffer keluaran terlalu kecil.
OT_ERROR_INVALID_ARGS
Kunci pribadi bukan Kunci Pribadi EC yang valid.
OT_ERROR_FAILED
Kesalahan saat penandatanganan.

otCryptoHmacSha256

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

Fungsi ini melakukan perhitungan HMAC.

rincian
Parameter
[in] aKey
Sebuah pointer ke kunci.
[in] aBuf
Sebuah pointer ke buffer input.
[in] aBufLength
Panjang aBuf dalam bytes.
[out] aHash
Sebuah pointer ke otCryptoSha256Hash struktur untuk output nilai hash.

makro

OT_CRYPTO_SHA256_HASH_SIZE

 OT_CRYPTO_SHA256_HASH_SIZE 32

Panjang hash SHA256 (dalam byte).