нл:: Переплетение:: Профили:: Безопасность:: AppKeys

Это пространство имен включает в себя все интерфейсы внутри Weave для библиотеки ключей приложения Weave в профиле безопасности Weave.

Краткое содержание

Перечисления

@220 {
kWeaveAppGroupKeySize = 32,
kWeaveAppRootKeySize = kWeaveAppGroupKeySize,
kWeaveAppEpochKeySize = kWeaveAppGroupKeySize,
kWeaveAppGroupMasterKeySize = kWeaveAppGroupKeySize,
kWeaveAppIntermediateKeySize = kWeaveAppGroupKeySize,
kWeaveFabricSecretSize = 36,
kWeaveAppFabricRootKeyDiversifierSize = sizeof(kWeaveAppFabricRootKeyDiversifier),
kWeaveAppClientRootKeyDiversifierSize = sizeof(kWeaveAppClientRootKeyDiversifier),
kWeaveAppIntermediateKeyDiversifierSize = sizeof(kWeaveAppIntermediateKeyDiversifier)
}
перечисление
Определения параметров протокола ключей приложений Weave.
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
}
перечисление
Глобальные идентификаторы группы приложений Weave (AGGID).

Переменные

kWeaveAppClientRootKeyDiversifier = { 0x53, 0xE3, 0xFF, 0xE5 }[]
const uint8_t
Диверсификатор ключей, используемый для получения корневого ключа клиента Weave.
kWeaveAppFabricRootKeyDiversifier = { 0x21, 0xFA, 0x8F, 0x6A }[]
const uint8_t
Диверсификатор ключей, используемый для получения корневого ключа ткани Weave.
kWeaveAppIntermediateKeyDiversifier = { 0xBC, 0xAA, 0x95, 0xAD }[]
const uint8_t
Диверсификатор ключа, используемый для получения промежуточного ключа Weave.

Функции

GetAppGroupMasterKeyId (uint32_t groupGlobalId, GroupKeyStoreBase *groupKeyStore, uint32_t & groupMasterKeyId)
Получите идентификатор главного ключа группы приложений с учетом глобального идентификатора группы приложений.
LogGroupKeys ( GroupKeyStoreBase *groupKeyStore)

Классы

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

Определение класса хранилища групповых ключей Weave.

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

Содержит информацию о ключах группы приложений Weave.

Перечисления

@220

 @220

Определения параметров протокола ключей приложений Weave.

Характеристики
kWeaveAppClientRootKeyDiversifierSize

Размер диверсификатора корневого ключа клиента.

kWeaveAppEpochKeySize

Размер ключа эпохи приложения Weave.

kWeaveAppFabricRootKeyDiversifierSize

Размер диверсификатора корневого ключа ткани.

kWeaveAppGroupKeySize

Размер ключа составной группы переплетения.

kWeaveAppGroupMasterKeySize

Размер главного ключа группы приложений Weave.

kWeaveAppIntermediateKeyDiversifierSize

Промежуточный ключевой размер диверсификатора.

kWeaveAppIntermediateKeySize

Промежуточный размер ключа приложения Weave.

kWeaveAppRootKeySize

Размер корневого ключа приложения Weave.

kWeaveFabricSecretSize

Плетение ткани секретного размера.

WeaveAppGroupGlobalId

 WeaveAppGroupGlobalId

Глобальные идентификаторы группы приложений Weave (AGGID).

Характеристики
kWeaveAppGroupGlobalId_NestHVAC

Группа компаний Nest HVAC.

kWeaveAppGroupGlobalId_NestPhysicalAccess

Глобальные идентификаторы группы приложений Nest Labs.

Примечание. Не пытайтесь распределить эти значения самостоятельно. Эти значения находятся под управлением Nest Labs. Сделайте официальный запрос, используя «Nest Weave: реестр глобальных идентификаторов группы приложений Nest» https://docs.google.com/document/d/1xHLAcTvLZg2YGoJfbUb2nbPIvaCNuoygmdiNwC-PJHI .Nest Physical Access Group.

kWeaveAppGroupGlobalId_NestSecurityControl

Группа контроля безопасности Nest.

kWeaveAppGroupGlobalId_NestStructureSecurity

Группа безопасности структуры гнезда.

kWeaveAppGroupGlobalId_Unspecified

Глобальный идентификатор группы приложений не указан.

Переменные

kweaveAppClientRootKeyDiversifier

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

Диверсификатор ключей, используемый для получения корневого ключа клиента Weave.

Это значение представляет собой первые 4 байта HASH SHA-1 фразы «Корневой ключ клиента».

kweaveAppFabricRootKeyDiversifier

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

Диверсификатор ключей, используемый для получения корневого ключа ткани Weave.

Это значение представляет собой первые 4 байта HASH SHA-1 фразы «Корневой ключ матрицы».

kweaveAppIntermediateKeyDiversifier

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

Диверсификатор ключа, используемый для получения промежуточного ключа Weave.

Это значение представляет собой первые 4 байта HASH SHA-1 фразы «Промежуточный ключ».

Функции

GetAppGroupMasterKeyId

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

Получите идентификатор главного ключа группы приложений с учетом глобального идентификатора группы приложений.

Подробности
Параметры
[in] groupGlobalId
Глобальный идентификатор группы приложений.
[in] groupKeyStore
Указатель на объект хранилища групповых ключей.
[out] groupMasterKeyId
Идентификатор главного ключа группы приложений.
Возвращаемые значения
WEAVE_NO_ERROR
Об успехе.
WEAVE_ERROR_INVALID_ARGUMENT
Если указатель на хранилище групповых ключей не указан.
WEAVE_ERROR_UNSUPPORTED_WEAVE_FEATURE
Если объект FabricState не был инициализирован с полнофункциональным хранилищем групповых ключей.
WEAVE_ERROR_KEY_NOT_FOUND
Если групповой ключ с указанным глобальным идентификатором не найден в хранилище ключей платформы.
other
Другие ошибки, специфичные для платформы, возвращаемые API хранилища ключей платформы.

LogGroupKeys

WEAVE_ERROR LogGroupKeys(
  GroupKeyStoreBase *groupKeyStore
)