nl:: Weave:: Profiles:: Security:: Passcodes
Esse namespace inclui todas as interfaces do Weave para a biblioteca de senhas do Weave dentro do perfil de segurança do Weave.
Resumo
Enumerações |
|
---|---|
@278{
|
enum Criar tipos de configuração de criptografia de senha. |
@279{
|
enum Tamanhos de parâmetros do protocolo de criptografia de senha do Weave. |
Variáveis |
|
---|---|
kPasscodeEncKeyDiversifier = { 0x1A, 0x65, 0x5D, 0x96 }[]
|
const uint8_t
Diversificador de chaves usado para derivação de chaves de criptografia de senha do Weave.
|
kPasscodeFingerprintKeyDiversifier = { 0xD1, 0xA1, 0xD9, 0x6C }[]
|
const uint8_t
Diversificador de chaves usado para derivação de chaves de criptografia de senha do Weave.
|
Funções |
|
---|---|
DecryptPasscode(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen, GroupKeyStoreBase *groupKeyStore)
|
Descriptografe uma senha que foi criptografada usando o esquema de criptografia de senha Nest.
|
DecryptPasscode(const uint8_t *encPasscode, size_t encPasscodeLen, const uint8_t *encKey, const uint8_t *authKey, const uint8_t *fingerprintKey, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen)
|
Descriptografe uma senha que foi criptografada usando o esquema de criptografia de senha Nest.
|
EncryptPasscode(uint8_t config, uint32_t keyId, uint32_t nonce, const uint8_t *passcode, size_t passcodeLen, uint8_t *encPasscode, size_t encPasscodeBufSize, size_t & encPasscodeLen, GroupKeyStoreBase *groupKeyStore)
|
Criptografe uma senha usando o esquema de criptografia de senha Nest.
|
EncryptPasscode(uint8_t config, uint32_t keyId, uint32_t nonce, const uint8_t *passcode, size_t passcodeLen, const uint8_t *encKey, const uint8_t *authKey, const uint8_t *fingerprintKey, uint8_t *encPasscode, size_t encPasscodeBufSize, size_t & encPasscodeLen)
|
Criptografe uma senha usando o esquema de criptografia de senha Nest.
|
GetEncryptedPasscodeConfig(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t & config)
|
Descubra o tipo de configuração de uma senha criptografada.
|
GetEncryptedPasscodeFingerprint(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *fingerprintBuf, size_t fingerprintBufSize, size_t & fingerprintLen)
|
Descubra o valor da impressão digital associado a uma senha criptografada.
|
GetEncryptedPasscodeKeyId(const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & keyId)
|
Encontre o ID da chave usada para criptografar uma senha criptografada.
|
GetEncryptedPasscodeNonce(const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce)
|
Confira o valor de uso único associado a uma senha criptografada.
|
IsSupportedPasscodeEncryptionConfig(uint8_t config)
|
bool
Retorna verdadeiro se a configuração de criptografia da senha fornecida for compatível com as APIs de criptografia/descriptografia de senha.
|
Estruturas |
|
---|---|
nl:: |
Enumerações
@278
@278
Criar tipos de configuração de criptografia de senha.
Propriedades | |
---|---|
kPasscodeConfig1_KeyId
|
ID da chave fictícia usada para a configuração da senha de teste no 1. |
kPasscode_Config1_TEST_ONLY
|
A configuração de criptografia de senha 1 não está usando criptografia e chaves secretas para autenticar e usar a impressão digital. Esta configuração DEVE ser usada apenas para TESTES. |
kPasscode_Config2
|
A configuração de criptografia de senha 2 usa a criptografia AES-128-ECB com integridade HMAC-SHA-1 de 8 bytes e impressão digital HMAC-SHA-1 de 8 bytes. |
@279
@279
Tamanhos de parâmetros do protocolo de criptografia de senha do Weave.
Propriedades | |
---|---|
kPasscodeAuthenticationKeyLen
|
Comprimento da chave de autenticação por senha (SHA-1). |
kPasscodeAuthenticatorLen
|
Comprimento do autenticador de senha. |
kPasscodeEncKeyDiversifierSize
|
Tamanho do diversificador da chave de aplicativo de criptografia de senha. |
kPasscodeEncryptionKeyLen
|
Comprimento da chave de criptografia de senha (AES-128). |
kPasscodeFingerprintKeyDiversifierSize
|
Tamanho do diversificador da chave de impressão digital da senha. |
kPasscodeFingerprintKeyLen
|
Comprimento da chave da impressão digital de senha (SHA-1). |
kPasscodeFingerprintLen
|
Comprimento da impressão digital da senha. |
kPasscodeMaxEncryptedLen
|
Tamanho máximo da senha criptografada. |
kPasscodeMaxLen
|
Tamanho máximo da senha descriptografada. |
kPasscodePaddedLen
|
Comprimento da senha (preenchido com o comprimento do bloco AES-128). |
kPasscodeTotalDerivedKeyLen
|
Comprimento total da chave (criptografia e integridade) da senha. |
Variáveis
kPasscodeEncKeyDiversifier
const uint8_t kPasscodeEncKeyDiversifier[] = { 0x1A, 0x65, 0x5D, 0x96 }
Diversificador de chaves usado para derivação de chaves de criptografia de senha do Weave.
Esse valor representa os primeiros 4 bytes do SHA-1 HASH de "Nest Passcode EK and AK" frase
kPasscodeFingerprintKeyDiversifier
const uint8_t kPasscodeFingerprintKeyDiversifier[] = { 0xD1, 0xA1, 0xD9, 0x6C }
Diversificador de chaves usado para derivação de chaves de criptografia de senha do Weave.
Esse valor representa os primeiros 4 bytes do SHA-1 HASH de "Nest Passcode EK and AK" frase
Funções
DecryptPasscode
WEAVE_ERROR DecryptPasscode( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen, GroupKeyStoreBase *groupKeyStore )
Descriptografe uma senha que foi criptografada usando o esquema de criptografia de senha Nest.
Detalhes | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||||||
Valores de retorno |
|
DecryptPasscode
WEAVE_ERROR DecryptPasscode( const uint8_t *encPasscode, size_t encPasscodeLen, const uint8_t *encKey, const uint8_t *authKey, const uint8_t *fingerprintKey, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen )
Descriptografe uma senha que foi criptografada usando o esquema de criptografia de senha Nest.
Detalhes | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||||||
Valores de retorno |
|
EncryptPasscode
WEAVE_ERROR EncryptPasscode( uint8_t config, uint32_t keyId, uint32_t nonce, const uint8_t *passcode, size_t passcodeLen, uint8_t *encPasscode, size_t encPasscodeBufSize, size_t & encPasscodeLen, GroupKeyStoreBase *groupKeyStore )
Criptografe uma senha usando o esquema de criptografia de senha Nest.
Detalhes | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||||||||
Valores de retorno |
|
EncryptPasscode
WEAVE_ERROR EncryptPasscode( uint8_t config, uint32_t keyId, uint32_t nonce, const uint8_t *passcode, size_t passcodeLen, const uint8_t *encKey, const uint8_t *authKey, const uint8_t *fingerprintKey, uint8_t *encPasscode, size_t encPasscodeBufSize, size_t & encPasscodeLen )
Criptografe uma senha usando o esquema de criptografia de senha Nest.
Detalhes | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||||||||||||
Valores de retorno |
|
GetEncryptedPasscodeConfig
WEAVE_ERROR GetEncryptedPasscodeConfig( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t & config )
Descubra o tipo de configuração de uma senha criptografada.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
GetEncryptedPasscodeFingerprint
WEAVE_ERROR GetEncryptedPasscodeFingerprint( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *fingerprintBuf, size_t fingerprintBufSize, size_t & fingerprintLen )
Descubra o valor da impressão digital associado a uma senha criptografada.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
GetEncryptedPasscodeKeyId
WEAVE_ERROR GetEncryptedPasscodeKeyId( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & keyId )
Encontre o ID da chave usada para criptografar uma senha criptografada.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
GetEncryptedPasscodeNonce
WEAVE_ERROR GetEncryptedPasscodeNonce( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce )
Confira o valor de uso único associado a uma senha criptografada.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
IsSupportedPasscodeEncryptionConfig
bool IsSupportedPasscodeEncryptionConfig( uint8_t config )
Retorna verdadeiro se a configuração de criptografia da senha fornecida for compatível com as APIs de criptografia/descriptografia de senha.