nl:: Weave:: Profiles:: Security:: Passcodes
Dieser Namespace umfasst alle Schnittstellen in Weave für die Weave-Sicherheitscode-Bibliothek im Weave-Sicherheitsprofil.
Zusammenfassung
Aufzählungen |
|
---|---|
@278{
|
enum Weave-Konfigurationstypen für die Verschlüsselung von Sicherheitscodes. |
@279{
|
enum Weave-Parametergrößen für das Verschlüsselungsprotokoll für Sicherheitscodes. |
Variablen |
|
---|---|
kPasscodeEncKeyDiversifier = { 0x1A, 0x65, 0x5D, 0x96 }[]
|
const uint8_t
Schlüsseldiversifikator, der zur Ableitung des Weave-Sicherheitsschlüssels für den Verschlüsselungsschlüssel verwendet wird.
|
kPasscodeFingerprintKeyDiversifier = { 0xD1, 0xA1, 0xD9, 0x6C }[]
|
const uint8_t
Schlüsseldiversifikator, der zur Ableitung des Weave-Sicherheitsschlüssels für den Verschlüsselungsschlüssel verwendet wird.
|
Funktionen |
|
---|---|
DecryptPasscode(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen, GroupKeyStoreBase *groupKeyStore)
|
Entschlüsseln Sie einen Sicherheitscode, der mit dem Nest Passcode-Verschlüsselungsschema verschlüsselt wurde.
|
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)
|
Entschlüsseln Sie einen Sicherheitscode, der mit dem Nest Passcode-Verschlüsselungsschema verschlüsselt wurde.
|
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)
|
Verschlüssele einen Sicherheitscode mithilfe des Nest Passcode-Verschlüsselungsschemas.
|
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)
|
Verschlüssele einen Sicherheitscode mithilfe des Nest Passcode-Verschlüsselungsschemas.
|
GetEncryptedPasscodeConfig(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t & config)
|
Rufen Sie den Konfigurationstyp eines verschlüsselten Sicherheitscodes ab.
|
GetEncryptedPasscodeFingerprint(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *fingerprintBuf, size_t fingerprintBufSize, size_t & fingerprintLen)
|
Ruft den Fingerabdruckwert ab, der mit einem verschlüsselten Sicherheitscode verknüpft ist.
|
GetEncryptedPasscodeKeyId(const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & keyId)
|
Die ID des Schlüssels abrufen, der zur Verschlüsselung eines verschlüsselten Sicherheitscodes verwendet wird.
|
GetEncryptedPasscodeNonce(const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce)
|
Ruft den Nonce-Wert ab, der mit einem verschlüsselten Sicherheitscode verknüpft ist.
|
IsSupportedPasscodeEncryptionConfig(uint8_t config)
|
bool
Gibt "true" zurück, wenn die bereitgestellte Konfiguration für die Sicherheitscodeverschlüsselung von den APIs zur Verschlüsselung/Entschlüsselung von Sicherheitscodes unterstützt wird.
|
Strukturen |
|
---|---|
nl:: |
Aufzählungen
@278
@278
Weave-Konfigurationstypen für die Verschlüsselung von Sicherheitscodes.
Attribute | |
---|---|
kPasscodeConfig1_KeyId
|
Dummy-Schlüssel-ID, die für die Test-Sicherheitscodekonfiguration Nr. 1 verwendet wird. |
kPasscode_Config1_TEST_ONLY
|
In der Passcode-Verschlüsselungskonfiguration 1 werden weder Verschlüsselung noch geheime Schlüssel zur Authentifizierung und zum Fingerabdruck-Sicherheitscode verwendet. Diese Konfiguration sollte nur zu Testzwecken verwendet werden. |
kPasscode_Config2
|
Die Passcode-Verschlüsselungskonfiguration 2 verwendet die AES-128-ECB-Verschlüsselung mit einer 8-Byte-HMAC-SHA-1-Integrität und einem 8-Byte-HMAC-SHA-1-Fingerabdruck. |
@279
@279
Weave-Parametergrößen für das Verschlüsselungsprotokoll für Sicherheitscodes.
Attribute | |
---|---|
kPasscodeAuthenticationKeyLen
|
Länge des Schlüssels für die Passcode-Authentifizierung (SHA-1). |
kPasscodeAuthenticatorLen
|
Länge der Authentifizierungs-ID des Sicherheitscodes. |
kPasscodeEncKeyDiversifierSize
|
Diversifiergröße des Anwendungsschlüssels für die Passcode-Verschlüsselung. |
kPasscodeEncryptionKeyLen
|
Schlüssellänge der Passcode-Verschlüsselung (AES-128). |
kPasscodeFingerprintKeyDiversifierSize
|
Diversifier-Größe für Sicherheitscode-Fingerabdruckschlüssel. |
kPasscodeFingerprintKeyLen
|
Länge des Sicherheitscode-Fingerabdruckschlüssels (SHA-1). |
kPasscodeFingerprintLen
|
Länge des Sicherheitscode-Fingerabdrucks. |
kPasscodeMaxEncryptedLen
|
Maximale Länge des verschlüsselten Sicherheitscodes. |
kPasscodeMaxLen
|
Maximale Länge des nicht verschlüsselten Sicherheitscodes. |
kPasscodePaddedLen
|
Sicherheitscodelänge (aufgefüllt auf die AES-128-Blocklänge). |
kPasscodeTotalDerivedKeyLen
|
Gesamtlänge des Sicherheitscodes (Verschlüsselung und Integrität). |
Variablen
kPasscodeEncKeyDiversifier
const uint8_t kPasscodeEncKeyDiversifier[] = { 0x1A, 0x65, 0x5D, 0x96 }
Schlüsseldiversifikator, der zur Ableitung des Weave-Sicherheitsschlüssel-Verschlüsselungsschlüssels verwendet wird.
Dieser Wert stellt die ersten 4 Byte des SHA-1 HASH von „Nest Passcode EK und AK“ dar. Wortgruppe.
kPasscodeFingerprintKeyDiversifier
const uint8_t kPasscodeFingerprintKeyDiversifier[] = { 0xD1, 0xA1, 0xD9, 0x6C }
Schlüsseldiversifikator, der zur Ableitung des Weave-Sicherheitsschlüssels für den Verschlüsselungsschlüssel verwendet wird.
Dieser Wert stellt die ersten 4 Byte des SHA-1 HASH von „Nest Passcode EK und AK“ dar. Wortgruppe.
Funktionen
DecryptPasscode
WEAVE_ERROR DecryptPasscode( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen, GroupKeyStoreBase *groupKeyStore )
Entschlüsseln Sie einen Sicherheitscode, der mit dem Nest Passcode-Verschlüsselungsschema verschlüsselt wurde.
Details | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||||||
Rückgabewerte |
|
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 )
Entschlüsseln Sie einen Sicherheitscode, der mit dem Nest Passcode-Verschlüsselungsschema verschlüsselt wurde.
Details | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||||||
Rückgabewerte |
|
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 )
Verschlüssele einen Sicherheitscode mithilfe des Nest Passcode-Verschlüsselungsschemas.
Details | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||||||||
Rückgabewerte |
|
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 )
Verschlüssele einen Sicherheitscode mithilfe des Nest Passcode-Verschlüsselungsschemas.
Details | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||||||||||||
Rückgabewerte |
|
GetEncryptedPasscodeConfig
WEAVE_ERROR GetEncryptedPasscodeConfig( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t & config )
Rufen Sie den Konfigurationstyp eines verschlüsselten Sicherheitscodes ab.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
GetEncryptedPasscodeFingerprint
WEAVE_ERROR GetEncryptedPasscodeFingerprint( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *fingerprintBuf, size_t fingerprintBufSize, size_t & fingerprintLen )
Ruft den Fingerabdruckwert ab, der mit einem verschlüsselten Sicherheitscode verknüpft ist.
Details | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
GetEncryptedPasscodeKeyId
WEAVE_ERROR GetEncryptedPasscodeKeyId( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & keyId )
Die ID des Schlüssels abrufen, der zur Verschlüsselung eines verschlüsselten Sicherheitscodes verwendet wird.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
GetEncryptedPasscodeNonce
WEAVE_ERROR GetEncryptedPasscodeNonce( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce )
Ruft den Nonce-Wert ab, der mit einem verschlüsselten Sicherheitscode verknüpft ist.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
IsSupportedPasscodeEncryptionConfig
bool IsSupportedPasscodeEncryptionConfig( uint8_t config )
Gibt "true" zurück, wenn die bereitgestellte Konfiguration für die Sicherheitscodeverschlüsselung von den APIs zur Verschlüsselung/Entschlüsselung von Sicherheitscodes unterstützt wird.