Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기

암호화

이 모듈에는 암호화 기능이 포함되어 있습니다.

요약

형식 정의

otCryptoSha256Hash 형식 정의
이 구조는 SHA-256 해시를 나타냅니다.

변수

OT_TOOL_PACKED_END

기능

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
이 방법은 AES CCM 계산을 수행합니다.
otCryptoEcdsaSign (uint8_t *aOutput, uint16_t *aOutputLength, const uint8_t *aInputHash, uint16_t aInputHashLength, const uint8_t *aPrivateKey, uint16_t aPrivateKeyLength)
이 방법은 ECDSA 기호를 생성합니다.
otCryptoHmacSha256 (const otCryptoKey *aKey, const uint8_t *aBuf, uint16_t aBufLength, otCryptoSha256Hash *aHash)
void
이 함수는 HMAC 계산을 수행합니다.

구조체

otCryptoSha256Hash

이 구조는 SHA-256 해시를 나타냅니다.

형식 정의

otCryptoSha256Hash

struct otCryptoSha256Hash otCryptoSha256Hash

이 구조는 SHA-256 해시를 나타냅니다.

변수

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otCryptoSha256Hash OT_TOOL_PACKED_END

기능

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
)

이 방법은 AES CCM 계산을 수행합니다.

세부
매개변수
[in] aKey
키에 대한 포인터입니다.
[in] aTagLength
태그의 길이(바이트)입니다.
[in] aNonce
nonce에 대한 포인터입니다.
[in] aNonceLength
nonce의 길이(바이트)입니다.
[in] aHeader
헤더에 대한 포인터입니다.
[in] aHeaderLength
헤더의 길이(바이트)입니다.
[in,out] aPlainText
일반 텍스트에 대한 포인터입니다.
[in,out] aCipherText
암호문에 대한 포인터입니다.
[in] aLength
바이트 단위의 일반 텍스트 길이입니다.
[in] aEncrypt
true 암호화에와 false 해독합니다.
[out] aTag
태그에 대한 포인터입니다.

otCryptoEcdsaSign

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

이 방법은 ECDSA 기호를 생성합니다.

세부
매개변수
[out] aOutput
ECDSA 기호가 저장되어야 하는 출력 버퍼입니다.
[in,out] aOutputLength
의 길이 aOutput 버퍼.
[in] aInputHash
입력 해시입니다.
[in] aInputHashLength
의 길이 aInputHash 버퍼.
[in] aPrivateKey
PEM 형식의 개인 키입니다.
[in] aPrivateKeyLength
의 길이 aPrivateKey 버퍼.
반환 값
OT_ERROR_NONE
ECDSA 기호가 성공적으로 생성되었습니다.
OT_ERROR_NO_BUFS
출력 버퍼가 너무 작습니다.
OT_ERROR_INVALID_ARGS
개인 키는 유효한 EC 개인 키가 아닙니다.
OT_ERROR_FAILED
서명하는 동안 오류가 발생했습니다.

otCryptoHmacSha256

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

이 함수는 HMAC 계산을 수행합니다.

세부
매개변수
[in] aKey
키에 대한 포인터입니다.
[in] aBuf
입력 버퍼에 대한 포인터입니다.
[in] aBufLength
의 길이 aBuf 바이트입니다.
[out] aHash
(A)에 대한 포인터 otCryptoSha256Hash 출력 구조 해시 값.

매크로

OT_CRYPTO_SHA256_HASH_SIZE

 OT_CRYPTO_SHA256_HASH_SIZE 32

SHA256 해시의 길이(바이트)입니다.