PasscodeEncryptionSupport

public final class PasscodeEncryptionSupport extends Object

Métodos utilitários para criptografar e descriptografar senhas usando o esquema de criptografia de senha do Nest.

Resumo da constante

int kPasscodeEncryptionConfig1_TEST_ONLY Configuração de criptografia de senha 1 (SOMENTE PARA TESTES) Observação: essa configuração de criptografia é apenas para testes e não oferece integridade nem confidencialidade.
int kPasscodeEncryptionConfig2 Configuração de criptografia de senha 2

Resumo dos campos

public static final byte[] kPasscodeEncKeyDiversifier Diversificador de chaves usado na derivação das chaves de criptografia e autenticação de senha.
public static final byte[] kPasscodeFingerprintKeyDiversifier Diversificador de chaves usado na derivação da chave de impressão digital da senha.

Resumo do construtor público

Resumo do método público

static String
decryptPasscode(byte[] encryptedPasscode, byte[] encKey, byte[] authKey, byte[] fingerprintKey)
Descriptografa uma senha criptografada usando o esquema de criptografia de senha do Nest.
static byte[]
encryptPasscode(int config, int keyId, long nonce, String passcode, byte[] encKey, byte[] authKey, byte[] fingerprintKey)
Criptografar uma senha usando o esquema de criptografia de senha do Nest.
static int
getEncryptedPasscodeConfig(byte[] encryptedPasscode)
Extraia o tipo de configuração de uma senha criptografada.
static byte[]
getEncryptedPasscodeFingerprint(byte[] encryptedPasscode)
Extraia a impressão digital de uma senha criptografada.
static int
getEncryptedPasscodeKeyId(byte[] encryptedPasscode)
Extraia o ID da chave de uma senha criptografada.
static long
getEncryptedPasscodeNonce(byte[] encryptedPasscode)
Extrai o valor de uso único de uma senha criptografada.
static boolean
isSupportedPasscodeEncryptionConfig(int config)
Determina se a configuração de criptografia de senha especificada é compatível.

Resumo do método herdado

Constantes

public static final int kPasscodeEncryptionConfig1_TEST_ONLY

Configuração 1 de criptografia de senha (SOMENTE PARA TESTE). Observação: essa configuração de criptografia é apenas para teste e não oferece integridade nem confidencialidade. A configuração 1 está disponível apenas em builds de desenvolvimento.

Valor da constante:1

public static final int kPasscodeEncryptionConfig2

Configuração de criptografia de senha 2

Valor da constante:2

Campos

public static final byte[] kPasscodeEncKeyDiversifier

Diversificador de chaves usado na derivação das chaves de criptografia e autenticação de senha.

public static final byte[] kPasscodeFingerprintKeyDiversifier

Diversificador de chaves usado na derivação da chave de impressão digital da senha.

Construtores públicos

public PasscodeEncryptionSupport ()

Métodos públicos

public static String decryptPasscode (byte[] encryptedPasscode, byte[] encKey, byte[] authKey, byte[] fingerprintKey)

Descriptografar uma senha criptografada usando o esquema de criptografia de senha do Nest.

Parâmetros
encryptedPasscode
encKey
authKey
fingerprintKey

public static byte[] encryptPasscode (int config, int keyId, long nonce, String passcode, byte[] encKey, byte[] authKey, byte[] fingerprintKey)

Criptografar uma senha usando o esquema de criptografia de senha do Nest.

Parâmetros
config
keyId
valor de uso único
senha
encKey
authKey
fingerprintKey

public static int getEncryptedPasscodeConfig (byte[] encryptedPasscode)

Extraia o tipo de configuração de uma senha criptografada.

Parâmetros
encryptedPasscode

public static byte[] getEncryptedPasscodeFingerprint (byte[] encryptedPasscode)

Extraia a impressão digital de uma senha criptografada.

Parâmetros
encryptedPasscode

public static int getEncryptedPasscodeKeyId (byte[] encryptedPasscode)

Extraia o ID da chave de uma senha criptografada.

Parâmetros
encryptedPasscode

public static long getEncryptedPasscodeNonce (byte[] encryptedPasscode)

Extrai o valor de uso único de uma senha criptografada.

Parâmetros
encryptedPasscode

public static boolean isSupportedPasscodeEncryptionConfig (int config)

Determina se a configuração de criptografia de senha especificada é compatível.

Parâmetros
config