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

Esse namespace inclui todas as interfaces do Weave para a biblioteca de chaves de aplicativo Weave no perfil de segurança do Weave.

Resumo

Enumerações

@220{
  kWeaveAppGroupKeySize = 32,
  kWeaveAppRootKeySize = kWeaveAppGroupKeySize,
  kWeaveAppEpochKeySize = kWeaveAppGroupKeySize,
  kWeaveAppGroupMasterKeySize = kWeaveAppGroupKeySize,
  kWeaveAppIntermediateKeySize = kWeaveAppGroupKeySize,
  kWeaveFabricSecretSize = 36,
  kWeaveAppFabricRootKeyDiversifierSize = sizeof(kWeaveAppFabricRootKeyDiversifier),
  kWeaveAppClientRootKeyDiversifierSize = sizeof(kWeaveAppClientRootKeyDiversifier),
  kWeaveAppIntermediateKeyDiversifierSize = sizeof(kWeaveAppIntermediateKeyDiversifier)
}
enum
Crie definições de parâmetros de protocolo de chaves de aplicativo.
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
Entrelaçar IDs globais de grupos de aplicativos (AGGID).

Variáveis

kWeaveAppClientRootKeyDiversifier = { 0x53, 0xE3, 0xFF, 0xE5 }[]
const uint8_t
Diversificador de chaves usado para derivação de chave raiz do cliente do Weave.
kWeaveAppFabricRootKeyDiversifier = { 0x21, 0xFA, 0x8F, 0x6A }[]
const uint8_t
Diversificador de chaves usado para a derivação de chaves raiz do Weave.
kWeaveAppIntermediateKeyDiversifier = { 0xBC, 0xAA, 0x95, 0xAD }[]
const uint8_t
Diversificador de chaves usado para derivação de chaves intermediárias do Weave.

remotas

GetAppGroupMasterKeyId(uint32_t groupGlobalId, GroupKeyStoreBase *groupKeyStore, uint32_t & groupMasterKeyId)
Recebe o ID da chave mestra do grupo de aplicativos com o ID global do grupo de aplicativos.
LogGroupKeys(GroupKeyStoreBase *groupKeyStore)

Aulas

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

A definição da classe de armazenamento de chaves do grupo Weave.

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

Contém informações sobre as chaves de grupo de aplicativos do Weave.

Enumerações

@220

 @220

Crie definições de parâmetros de protocolo de chaves de aplicativo.

Propriedades
kWeaveAppClientRootKeyDiversifierSize

Tamanho do diversificador de chave raiz do cliente.

kWeaveAppEpochKeySize

Definir o tamanho da chave da época do aplicativo.

kWeaveAppFabricRootKeyDiversifierSize

Tamanho do diversificador de chave raiz do Fabric.

kWeaveAppGroupKeySize

Entrelaçar o tamanho da chave do grupo constituinte.

kWeaveAppGroupMasterKeySize

Tamanho da chave mestra do grupo de aplicativos do Weave.

kWeaveAppIntermediateKeyDiversifierSize

Tamanho do diversificador de chave intermediário.

kWeaveAppIntermediateKeySize

Insira o tamanho da chave intermediária do aplicativo.

kWeaveAppRootKeySize

Insira o tamanho da chave raiz do aplicativo.

kWeaveFabricSecretSize

Entrelaçar o tamanho secreto do tecido.

WeaveAppGroupGlobalId

 WeaveAppGroupGlobalId

Entrelaçar IDs globais de grupos de aplicativos (AGGID).

Propriedades
kWeaveAppGroupGlobalId_NestHVAC

Grupo de AVAC (aquecimento, ventilação e ar-condicionado) Nest.

kWeaveAppGroupGlobalId_NestPhysicalAccess

IDs globais dos grupos de aplicativos da Nest Labs.

Observação:não tente alocar esses valores por conta própria. Esses valores estão sob administração da Nest Labs. Faça uma solicitação formal usando o registro de ID global do "Nest Weave: grupo de aplicativos Nest" https://docs.google.com/document/d/1xHLAcTvLZg2YGoJfbUb2nbPIvaCNuoygmdiNwC-PJHI.Nest Physical Access Group.

kWeaveAppGroupGlobalId_NestSecurityControl

Grupo de controle de segurança Nest.

kWeaveAppGroupGlobalId_NestStructureSecurity

Grupo Segurança da estrutura Nest.

kWeaveAppGroupGlobalId_Unspecified

O ID global do grupo de aplicativos não está especificado.

Variáveis

kWeaveAppClientRootKeyDiversifier

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

Diversificador de chaves usado para derivação de chave raiz do cliente do Weave.

Esse valor representa os primeiros 4 bytes do SHA-1 HASH da frase "Chave raiz do cliente".

kWeaveAppFabricRootKeyDiversifier

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

Diversificador de chaves usado para a derivação de chaves raiz do Weave.

Esse valor representa os primeiros 4 bytes do SHA-1 HASH da frase "Fabric Root Key".

kWeaveAppIntermediateKeyDiversifier

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

Diversificador de chaves usado para derivação de chaves intermediárias do Weave.

Esse valor representa os primeiros 4 bytes do SHA-1 HASH da frase "Chave intermediária".

remotas

GetAppGroupMasterKeyId

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

Recebe o ID da chave mestra do grupo de aplicativos com o ID global do grupo de aplicativos.

Detalhes
Parâmetros
[in] groupGlobalId
O ID global do grupo de aplicativos.
[in] groupKeyStore
Um ponteiro para o objeto de armazenamento de chaves de grupo.
[out] groupMasterKeyId
O ID da chave mestra do grupo de aplicativos.
Valores de retorno
WEAVE_NO_ERROR
Se der certo.
WEAVE_ERROR_INVALID_ARGUMENT
Se o ponteiro para o armazenamento da chave de grupo não for fornecido.
WEAVE_ERROR_UNSUPPORTED_WEAVE_FEATURE
Se o objeto FabricState não tiver sido inicializado com o armazenamento de chaves de grupo totalmente funcional.
WEAVE_ERROR_KEY_NOT_FOUND
Se uma chave de grupo com o ID global especificado não for encontrada no repositório de chaves da plataforma.
other
Outros erros específicos da plataforma retornados pelas APIs do armazenamento da chave da plataforma.

LogGroupKeys

WEAVE_ERROR LogGroupKeys(
  GroupKeyStoreBase *groupKeyStore
)