Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

nl::Weave::Profile::Sicherheit::AppKeys

Dieser Namespace enthält alle Schnittstellen in Weave für die Weave-Anwendungsschlüsselbibliothek im Weave-Sicherheitsprofil.

Fazit

Aufzählungen

@220{
  kWeaveAppGroupKeySize = 32,
  kWeaveAppRootKeySize = kWeaveAppGroupKeySize,
  kWeaveAppEpochKeySize = kWeaveAppGroupKeySize,
  kWeaveAppGroupMasterKeySize = kWeaveAppGroupKeySize,
  kWeaveAppIntermediateKeySize = kWeaveAppGroupKeySize,
  kWeaveFabricSecretSize = 36,
  kWeaveAppFabricRootKeyDiversifierSize = sizeof(kWeaveAppFabricRootKeyDiversifier),
  kWeaveAppClientRootKeyDiversifierSize = sizeof(kWeaveAppClientRootKeyDiversifier),
  kWeaveAppIntermediateKeyDiversifierSize = sizeof(kWeaveAppIntermediateKeyDiversifier)
}
enum
Weben Sie die Definitionen der Parameter der Anwendungsschlüssel.
WeaveAppGroupGlobalId{
  kWeaveAppGroupGlobalId_Unspecified = 0,
  kWeaveAppGroupGlobalId_NestPhysicalAccess = (kWeaveVendor_NestLabs << 16) | 0x0001,
  kWeaveAppGroupGlobalId_NestStructureSecurity = (kWeaveVendor_NestLabs << 16) | 0x0002,
  kWeaveAppGroupGlobalId_NestHVAC = (kWeaveVendor_NestLabs << 16) | 0x0003,
  kWeaveAppGroupGlobalId_NestSecurityControl = (kWeaveVendor_NestLabs << 16) | 0x0004
}
enum
Weave Application Group Global IDs (AGGID)

Variablen

kWeaveAppClientRootKeyDiversifier = { 0x53, 0xE3, 0xFF, 0xE5 }[]
const uint8_t
Schlüsseldiversator, der zur Ableitung des Weave-Clientschlüssels verwendet wird.
kWeaveAppFabricRootKeyDiversifier = { 0x21, 0xFA, 0x8F, 0x6A }[]
const uint8_t
Schlüsseldiversifizierer, der für die Ableitung eines Weave-Stoffschlüssels verwendet wird.
kWeaveAppIntermediateKeyDiversifier = { 0xBC, 0xAA, 0x95, 0xAD }[]
const uint8_t
Schlüsseldiversierer, der zum Ableiten von Weave-Schlüsseln verwendet wird.

Funktionen

GetAppGroupMasterKeyId(uint32_t groupGlobalId, GroupKeyStoreBase *groupKeyStore, uint32_t & groupMasterKeyId)
Rufen Sie die ID des Masterschlüssels der Anwendungsgruppe für die globale ID der Anwendungsgruppe ab.
LogGroupKeys(GroupKeyStoreBase *groupKeyStore)

Klassen

nl::Weave::Profile::Sicherheit::AppKeys::DummyGroupKeyStore
nl::Weave::Profile::Sicherheit::AppKeys::GroupKeyStoreBase

Die Definition der Weave-Gruppenschlüsselspeicherklasse.

nl::Weave::Profile::Sicherheit::AppKeys::WeaveGroupKey

Enthält Informationen zu Weave-Anwendungsgruppenschlüsseln.

Aufzählungen

@220

 @220

Weben Sie die Definitionen der Parameter der Anwendungsschlüssel.

Attribute
kWeaveAppClientRootKeyDiversifierSize

Diversifier-Größe des Client-Stammschlüssels.

kWeaveAppEpochKeySize

Weave-Schlüsselgröße der Anwendung.

kWeaveAppFabricRootKeyDiversifierSize

Diversizer-Größe des Stammschlüssels des Stoffs.

kWeaveAppGroupKeySize

Größe der einzelnen Gruppenschlüssel.

kWeaveAppGroupMasterKeySize

Größe des Webaste-Masterschlüssels der Anwendung.

kWeaveAppIntermediateKeyDiversifierSize

Größe des Diversifiers des Zwischenschlüssels.

kWeaveAppIntermediateKeySize

Weben Sie die Größe des Zwischenschlüssels.

kWeaveAppRootKeySize

Webt die Größe des Root-Schlüssels der Anwendung.

kWeaveFabricSecretSize

Webt geheime Größe des Stoffs.

WeaveAppGroupGlobalId

 WeaveAppGroupGlobalId

Weave Application Group Global IDs (AGGID)

Attribute
kWeaveAppGroupGlobalId_NestHVAC

Nest-HLK-Gruppe.

kWeaveAppGroupGlobalId_NestPhysicalAccess

Globale IDs der Nest Labs-Anwendungsgruppe.

Hinweis:Versuchen Sie nicht, diese Werte selbst zuzuweisen. Diese Werte werden von Nest Labs verwaltet. Bitte stellen Sie eine formelle Anfrage über die Nest Weave: Nest Application Group Global ID Registry" https://docs.google.com/document/d/1xHLAcTvLZg2YGoJfbUb2nbPIvaCNuoygmdiNwC-PJHI.Nest Physical Access Group.

kWeaveAppGroupGlobalId_NestSecurityControl

Nest Sicherheits-Kontrollgruppe.

kWeaveAppGroupGlobalId_NestStructureSecurity

Nest-Strukturgruppe Sicherheit

kWeaveAppGroupGlobalId_Unspecified

Globale ID der Anwendungsgruppe ist nicht angegeben.

Variablen

kWeaveAppClientRootKeyDiversifier

const uint8_t kWeaveAppClientRootKeyDiversifier[] = { 0x53, 0xE3, 0xFF, 0xE5 }

Schlüsseldiversator, der zur Ableitung des Weave-Clientschlüssels verwendet wird.

Dieser Wert stellt die ersten 4 Byte des SHA-1-Hashes der Root-Schlüssel des Clients dar.

kWeaveAppFabricRootKeyDiversifier

const uint8_t kWeaveAppFabricRootKeyDiversifier[] = { 0x21, 0xFA, 0x8F, 0x6A }

Schlüsseldiversifizierer, der für die Ableitung eines Weave-Stoffschlüssels verwendet wird.

Dieser Wert stellt die ersten 4 Bytes des SHA-1-Hashs der Fabric-Wortgruppe dar.

kWeaveAppIntermediateKeyDiversifier

const uint8_t kWeaveAppIntermediateKeyDiversifier[] = { 0xBC, 0xAA, 0x95, 0xAD }

Schlüsseldiversierer, der zum Ableiten von Weave-Schlüsseln verwendet wird.

Dieser Wert stellt die ersten 4 Byte des SHA-1-Hashs der Zwischenschlüsseltaste dar.

Funktionen

GetAppGroupMasterKeyId

WEAVE_ERROR GetAppGroupMasterKeyId(
  uint32_t groupGlobalId,
  GroupKeyStoreBase *groupKeyStore,
  uint32_t & groupMasterKeyId
)

Rufen Sie die ID des Masterschlüssels der Anwendungsgruppe für die globale ID der Anwendungsgruppe ab.

Details
Parameter
[in] groupGlobalId
Die globale ID der Anwendungsgruppe.
[in] groupKeyStore
Ein Zeiger auf den Gruppenschlüsselspeicherobjekt.
[out] groupMasterKeyId
Die Masterschlüssel-ID der Anwendungsgruppe.
Rückgabewerte
WEAVE_NO_ERROR
Erfolg.
WEAVE_ERROR_INVALID_ARGUMENT
Wenn der Mauszeiger auf den Gruppenschlüsselspeicher nicht verweist.
WEAVE_ERROR_UNSUPPORTED_WEAVE_FEATURE
Wenn das FabricState-Objekt mit einem voll funktionsfähigen Gruppenschlüsselspeicher initialisiert wurde.
WEAVE_ERROR_KEY_NOT_FOUND
Wenn ein Gruppenschlüssel mit der angegebenen globalen ID nicht im Plattformschlüsselspeicher gefunden wird.
other
Andere plattformspezifische Fehler, die von den Plattformschlüsselspeicher-APIs zurückgegeben werden.

LogGroupSchlüssel

WEAVE_ERROR LogGroupKeys(
  GroupKeyStoreBase *groupKeyStore
)