透過集合功能整理內容 你可以依據偏好儲存及分類內容。

nl::Weave::設定檔::安全性::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)
}
列舉
應用程式金鑰通訊協定通訊協定參數定義。
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
}
列舉
編織應用程式群組全域 ID (AGGID)。

變數

kWeaveAppClientRootKeyDiversifier = { 0x53, 0xE3, 0xFF, 0xE5 }[]
const uint8_t
用於 Weave 用戶端根金鑰衍生的金鑰分割工具。
kWeaveAppFabricRootKeyDiversifier = { 0x21, 0xFA, 0x8F, 0x6A }[]
const uint8_t
用於編織布料根衍生金鑰的索引鍵分割工具。
kWeaveAppIntermediateKeyDiversifier = { 0xBC, 0xAA, 0x95, 0xAD }[]
const uint8_t
用於切換 Weveve 中繼金鑰衍生的金鑰分割工具。

函式

GetAppGroupMasterKeyId(uint32_t groupGlobalId, GroupKeyStoreBase *groupKeyStore, uint32_t & groupMasterKeyId)
取得應用程式群組主金鑰 ID (指定應用程式群組全域 ID)。
LogGroupKeys(GroupKeyStoreBase *groupKeyStore)

類別

nl::Weave::Profiles::安全性::AppKeys::DummyGroupKeyStore
nl::Weave::Profiles::安全性::AppKeys::GroupKeyStoreBase

Weave 群組金鑰存放區類別的定義。

nl::Weave::Profiles::安全性::AppKeys::WeaveGroupKey

內含 Weave 應用程式群組金鑰的相關資訊。

列舉

@220

 @220

應用程式金鑰通訊協定通訊協定參數定義。

屬性
kWeaveAppClientRootKeyDiversifierSize

用戶端根金鑰分隔符號大小。

kWeaveAppEpochKeySize

編織應用程式紀元金鑰大小。

kWeaveAppFabricRootKeyDiversifierSize

布料根索引鍵分隔符號大小。

kWeaveAppGroupKeySize

組成組金鑰大小。

kWeaveAppGroupMasterKeySize

編織應用程式群組主金鑰大小。

kWeaveAppIntermediateKeyDiversifierSize

中級金鑰多樣性。

kWeaveAppIntermediateKeySize

編織應用程式中繼金鑰的大小。

kWeaveAppRootKeySize

應用程式根金鑰大小。

kWeaveFabricSecretSize

編織布料秘密尺寸。

WeaveAppGroup 全域 ID

 WeaveAppGroupGlobalId

編織應用程式群組全域 ID (AGGID)。

屬性
kWeaveAppGroupGlobalId_NestHVAC

Nest HVAC 集團。

kWeaveAppGroupGlobalId_NestPhysicalAccess

Nest Labs 應用程式群組全域 ID。

注意事項:請勿嘗試自行分配這些值。這些值是由 Nest Labs 負責管理。請使用「Nest Weave: Nest Application Group Global ID Registry」提交正式要求。https://docs.google.com/document/d/1xHLAcTvLZg2YGoJfbUb2nbPIvaCNuoygmdiNwC-PJHI.Nest 物理存取群組。

kWeaveAppGroupGlobalId_NestSecurityControl

Nest 安全性控制群組。

kWeaveAppGroupGlobalId_NestStructureSecurity

Nest 結構安全性群組。

kWeaveAppGroupGlobalId_Unspecified

未指定應用程式群組全域 ID。

變數

kWeaveAppClientRootKeyDiversifier

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

用於 Weave 用戶端根金鑰衍生的金鑰分割工具。

這個值代表「用戶端根金鑰」的 SHA-1 HASH 的前 4 個位元組。詞組。

kWeaveAppFabricRootKeyDiversifier

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

用於編織布料根衍生金鑰的索引鍵分割工具。

這個值代表「Fabric Root Key」的 SHA-1 HASH 前 4 個位元組。詞組。

kWeaveAppIntermediateKeyDiversifier

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

用於切換 Weveve 中繼金鑰衍生的金鑰分割工具。

這個值代表「中級金鑰」SHA-1 HASH 的前 4 位元組。詞組。

函式

取得應用程式群組主鍵 ID

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

取得應用程式群組主金鑰 ID (指定應用程式群組全域 ID)。

詳細資料
參數
[in] groupGlobalId
應用程式群組的全域 ID。
[in] groupKeyStore
指向群組金鑰儲存物件的指標。
[out] groupMasterKeyId
應用程式群組的主金鑰 ID。
傳回值
WEAVE_NO_ERROR
成功。
WEAVE_ERROR_INVALID_ARGUMENT
如未提供指向群組金鑰存放區的指標。
WEAVE_ERROR_UNSUPPORTED_WEAVE_FEATURE
如果 FabricState 物件並未使用功能完整的群組金鑰儲存庫進行初始化,
WEAVE_ERROR_KEY_NOT_FOUND
如果平台金鑰存放區中找不到含有指定全域 ID 的群組金鑰。
other
平台金鑰存放區 API 傳回的其他平台特定錯誤。

記錄檔群組鍵

WEAVE_ERROR LogGroupKeys(
  GroupKeyStoreBase *groupKeyStore
)