nl:: Weave:: Profiles:: Security:: Passcodes
Este espacio de nombres incluye todas las interfaces de Weave para la biblioteca de contraseñas de Weave dentro del perfil de seguridad de Weave.
Resumen
Enumeraciones |
|
---|---|
@278{
|
enum Tipos de configuración de encriptación de contraseñas de Weave. |
@279{
|
enum Teje los tamaños de los parámetros del protocolo de encriptación de contraseñas. |
Variables |
|
---|---|
kPasscodeEncKeyDiversifier = { 0x1A, 0x65, 0x5D, 0x96 }[]
|
const uint8_t
Diversificador de claves que se usa para la derivación de claves de encriptación de contraseñas de Weave.
|
kPasscodeFingerprintKeyDiversifier = { 0xD1, 0xA1, 0xD9, 0x6C }[]
|
const uint8_t
Diversificador de claves que se usa para la derivación de claves de encriptación de contraseñas de Weave.
|
Funciones |
|
---|---|
DecryptPasscode(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen, GroupKeyStoreBase *groupKeyStore)
|
Desencriptar una contraseña que se encriptó con el esquema de encriptación de contraseñas de 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)
|
Desencriptar una contraseña que se encriptó con el esquema de encriptación de contraseñas de 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)
|
Para encriptar una contraseña, usa el esquema de encriptación de contraseñas de 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)
|
Para encriptar una contraseña, usa el esquema de encriptación de contraseñas de Nest.
|
GetEncryptedPasscodeConfig(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t & config)
|
Obtén el tipo de configuración de una contraseña encriptada.
|
GetEncryptedPasscodeFingerprint(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *fingerprintBuf, size_t fingerprintBufSize, size_t & fingerprintLen)
|
Obtén el valor de la huella digital asociado con una contraseña encriptada.
|
GetEncryptedPasscodeKeyId(const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & keyId)
|
Obtén el ID de la clave que se usó para encriptar una contraseña encriptada.
|
GetEncryptedPasscodeNonce(const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce)
|
Obtiene el valor del nonce asociado con una contraseña encriptada.
|
IsSupportedPasscodeEncryptionConfig(uint8_t config)
|
bool
Muestra el valor true si la configuración de encriptación de contraseñas proporcionada es compatible con las APIs de encriptación/desencriptación de contraseñas.
|
Structs |
|
---|---|
nl:: |
Enumeraciones
@278
@278
Tipos de configuración de encriptación de contraseñas de Weave.
Propiedades | |
---|---|
kPasscodeConfig1_KeyId
|
ID de la clave ficticia utilizada para probar la configuración de la contraseña #1. |
kPasscode_Config1_TEST_ONLY
|
La configuración de encriptación de contraseña n.o 1 no utiliza encriptación ni claves secretas para realizar la autenticación y la contraseña de huella digital. Esta configuración SE DEBE utilizar únicamente para realizar PRUEBAs. |
kPasscode_Config2
|
La configuración de encriptación de contraseña #2 usa encriptación AES-128-ECB con integridad HMAC-SHA-1 de 8 bytes y huella digital HMAC-SHA-1 de 8 bytes. |
@279
@279
Teje los tamaños de los parámetros del protocolo de encriptación de contraseñas.
Propiedades | |
---|---|
kPasscodeAuthenticationKeyLen
|
Longitud de la clave de autenticación de contraseña (SHA-1). |
kPasscodeAuthenticatorLen
|
Longitud del autenticador de la contraseña. |
kPasscodeEncKeyDiversifierSize
|
Tamaño del multiplicador de claves de la aplicación de encriptación de contraseñas. |
kPasscodeEncryptionKeyLen
|
Longitud de la clave de encriptación de contraseña (AES-128). |
kPasscodeFingerprintKeyDiversifierSize
|
Tamaño del diversificador de la clave de huella digital de la contraseña. |
kPasscodeFingerprintKeyLen
|
Longitud de la clave de la huella digital de la contraseña (SHA-1). |
kPasscodeFingerprintLen
|
Longitud de la huella digital de la contraseña. |
kPasscodeMaxEncryptedLen
|
Longitud máxima de la contraseña encriptada. |
kPasscodeMaxLen
|
Longitud máxima de la contraseña sin encriptación. |
kPasscodePaddedLen
|
Longitud de la contraseña (rellenada al largo del bloque AES-128). |
kPasscodeTotalDerivedKeyLen
|
Longitud total de la clave de la contraseña (integridad y encriptación). |
Variables
kPasscodeEncKeyDiversifier
const uint8_t kPasscodeEncKeyDiversifier[] = { 0x1A, 0x65, 0x5D, 0x96 }
Diversificador de claves que se usa para la derivación de claves de encriptación de contraseñas de Weave.
Este valor representa los primeros 4 bytes del HASH SHA-1 del "código de acceso de Nest EK y AK". frase.
kPasscodeFingerprintKeyDiversifier
const uint8_t kPasscodeFingerprintKeyDiversifier[] = { 0xD1, 0xA1, 0xD9, 0x6C }
Diversificador de claves que se usa para la derivación de claves de encriptación de contraseñas de Weave.
Este valor representa los primeros 4 bytes del HASH SHA-1 del "código de acceso de Nest EK y AK". frase.
Funciones
DecryptPasscode
WEAVE_ERROR DecryptPasscode( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen, GroupKeyStoreBase *groupKeyStore )
Desencriptar una contraseña que se encriptó con el esquema de encriptación de contraseñas de Nest
Detalles | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
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 )
Desencriptar una contraseña que se encriptó con el esquema de encriptación de contraseñas de Nest
Detalles | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
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 )
Para encriptar una contraseña, usa el esquema de encriptación de contraseñas de Nest.
Detalles | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
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 )
Para encriptar una contraseña, usa el esquema de encriptación de contraseñas de Nest.
Detalles | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||||||||||||||
Valores de retorno |
|
GetEncryptedPasscodeConfig
WEAVE_ERROR GetEncryptedPasscodeConfig( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t & config )
Obtén el tipo de configuración de una contraseña encriptada.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
GetEncryptedPasscodeFingerprint
WEAVE_ERROR GetEncryptedPasscodeFingerprint( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *fingerprintBuf, size_t fingerprintBufSize, size_t & fingerprintLen )
Obtén el valor de la huella digital asociado con una contraseña encriptada.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
GetEncryptedPasscodeKeyId
WEAVE_ERROR GetEncryptedPasscodeKeyId( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & keyId )
Obtén el ID de la clave que se usó para encriptar una contraseña encriptada.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
GetEncryptedPasscodeNonce
WEAVE_ERROR GetEncryptedPasscodeNonce( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce )
Obtiene el valor del nonce asociado con una contraseña encriptada.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
IsSupportedPasscodeEncryptionConfig
bool IsSupportedPasscodeEncryptionConfig( uint8_t config )
Muestra el valor true si la configuración de encriptación de contraseña proporcionada es compatible con las APIs de encriptación/desencriptación de contraseñas.