nl::Weave::Profiles::Security::AppKeys

Bu ad alanı, Weave güvenlik profilindeki Weave uygulama anahtarları kitaplığı için Weave'deki tüm arayüzleri içerir.

Özet

Numaralandırmalar

@220{
  kWeaveAppGroupKeySize = 32,
  kWeaveAppRootKeySize = kWeaveAppGroupKeySize,
  kWeaveAppEpochKeySize = kWeaveAppGroupKeySize,
  kWeaveAppGroupMasterKeySize = kWeaveAppGroupKeySize,
  kWeaveAppIntermediateKeySize = kWeaveAppGroupKeySize,
  kWeaveFabricSecretSize = 36,
  kWeaveAppFabricRootKeyDiversifierSize = sizeof(kWeaveAppFabricRootKeyDiversifier),
  kWeaveAppClientRootKeyDiversifierSize = sizeof(kWeaveAppClientRootKeyDiversifier),
  kWeaveAppIntermediateKeyDiversifierSize = sizeof(kWeaveAppIntermediateKeyDiversifier)
}
enum
Uygulama anahtarları protokolü parametresi tanımlarını örgütleyin.
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).

Değişkenler

kWeaveAppClientRootKeyDiversifier = { 0x53, 0xE3, 0xFF, 0xE5 }[]
const uint8_t
Weave istemcisi kök anahtarı türevi için kullanılan anahtar çeşitleyici.
kWeaveAppFabricRootKeyDiversifier = { 0x21, 0xFA, 0x8F, 0x6A }[]
const uint8_t
Weave kumaş kök anahtarı türevi için kullanılan anahtar çeşitleyici.
kWeaveAppIntermediateKeyDiversifier = { 0xBC, 0xAA, 0x95, 0xAD }[]
const uint8_t
Weave ara anahtar türevi için kullanılan anahtar çeşitleyici.

İşlevler

GetAppGroupMasterKeyId(uint32_t groupGlobalId, GroupKeyStoreBase *groupKeyStore, uint32_t & groupMasterKeyId)
Uygulama grubu genel kimliği ile belirtilen uygulama grubu ana anahtar kimliğini alın.
LogGroupKeys(GroupKeyStoreBase *groupKeyStore)

Sınıflar

nl::Weave::Profiles::Security::AppKeys::DummyGroupKeyStore
nl::Weave::Profiles::Security::AppKeys::GroupKeyStoreBase

Weave grubu anahtar deposu sınıfının tanımı.

nl::Weave::Profiles::Security::AppKeys::WeaveGroupKey

Weave uygulama grubu anahtarları hakkında bilgiler içerir.

Numaralandırmalar

@220

 @220

Uygulama anahtarları protokolü parametresi tanımlarını örgütleyin.

Özellikler
kWeaveAppClientRootKeyDiversifierSize

İstemci kök anahtarı çeşitleyici boyutu.

kWeaveAppEpochKeySize

Weave uygulama dönem anahtar boyutu.

kWeaveAppFabricRootKeyDiversifierSize

Kumaş kök anahtarı değiştirici boyutu.

kWeaveAppGroupKeySize

Bileşen grubu anahtar boyutunu örgüleyin.

kWeaveAppGroupMasterKeySize

Örgü uygulama grubu ana anahtar boyutu.

kWeaveAppIntermediateKeyDiversifierSize

Ara anahtar çeşitleyici boyutu.

kWeaveAppIntermediateKeySize

Örgü uygulama ara anahtar boyutu.

kWeaveAppRootKeySize

Örgü uygulama kök anahtarı boyutu.

kWeaveFabricSecretSize

Örgü kumaş gizli beden.

WeaveAppGroupGlobalId

 WeaveAppGroupGlobalId

Weave Application Group Global IDs (AGGID).

Özellikler
kWeaveAppGroupGlobalId_NestHVAC

Nest HVAC Grubu.

kWeaveAppGroupGlobalId_NestPhysicalAccess

Nest Labs Uygulama Grubu Genel Kimlikleri.

Not: Bu değerleri kendiniz ayırmaya çalışmayın. Bu değerler Nest Labs tarafından yönetilmektedir. Lütfen "Nest Weave: Nest Application Group"u kullanarak resmi bir istekte bulunun Genel Kimlik Kaydı" https://docs.google.com/document/d/1xHLAcTvLZg2YGoJfbUb2nbPIvaCNuoygmdiNwC-PJHI.Nest Fiziksel Erişim Grubu.

kWeaveAppGroupGlobalId_NestSecurityControl

Nest Güvenlik Kontrol Grubu.

kWeaveAppGroupGlobalId_NestStructureSecurity

Nest Yapısı Güvenlik Grubu.

kWeaveAppGroupGlobalId_Unspecified

Uygulama Grubu Genel Kimliği belirtilmedi.

Değişkenler

kWeaveAppClientRootKeyDiversifier

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

Weave istemcisi kök anahtarı türevi için kullanılan anahtar çeşitleyici.

Bu değer, "İstemci Kök Anahtarı"nın SHA-1 HASH'sinin ilk 4 baytını temsil eder kelime öbeğini ekleyin.

kWeaveAppFabricRootKeyDiversifier

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

Weave kumaş kök anahtarı türevi için kullanılan anahtar çeşitleyici.

Bu değer, "Fabric Kök Anahtarı"nın SHA-1 HASH'sinin ilk 4 baytını temsil eder kelime öbeğini ekleyin.

kWeaveAppIntermediateKeyDiversifier

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

Weave ara anahtar türevi için kullanılan anahtar çeşitleyici.

Bu değer, "Ara Anahtar"ın SHA-1 HASH'sinin ilk 4 baytını temsil eder kelime öbeğini ekleyin.

İşlevler

GetAppGroupMasterKeyId

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

Uygulama grubu genel kimliği ile belirtilen uygulama grubu ana anahtar kimliğini alın.

Ayrıntılar
Parametreler
[in] groupGlobalId
Uygulama grubu genel kimliği.
[in] groupKeyStore
Grup anahtarı deposu nesnesinin işaretçisi.
[out] groupMasterKeyId
Uygulama grubu ana anahtar kimliği.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.
WEAVE_ERROR_INVALID_ARGUMENT
Grup anahtarı deposunun işaretçisi sağlanmazsa.
WEAVE_ERROR_UNSUPPORTED_WEAVE_FEATURE
FabricState nesnesi tamamen işlevsel grup anahtarı deposuyla başlatılmadıysa.
WEAVE_ERROR_KEY_NOT_FOUND
Belirtilen global kimliğe sahip bir grup anahtarı, platform anahtarı deposunda bulunamazsa.
other
Platform anahtarı deposu API'leri tarafından döndürülen, platforma özgü diğer hatalar.

LogGroupKeys

WEAVE_ERROR LogGroupKeys(
  GroupKeyStoreBase *groupKeyStore
)