nl::Weave::Profiles::Security::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 Application Group Global ID(AGGID)。

Variables

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 中間鍵の導出に使用される鍵の多様性。

Functions

GetAppGroupMasterKeyId(uint32_t groupGlobalId, GroupKeyStoreBase *groupKeyStore, uint32_t & groupMasterKeyId)
アプリケーション グループのグローバル ID を指定して、アプリケーション グループのマスター鍵 ID を取得します。
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 アプリケーション キー プロトコルのパラメータ定義です。

Properties
kWeaveAppClientRootKeyDiversifierSize

クライアント ルートキーの多様化ツールのサイズ。

kWeaveAppEpochKeySize

アプリケーションのエポックキーのサイズを調整します。

kWeaveAppFabricRootKeyDiversifierSize

ファブリック ルートキーの多様化サイズ。

kWeaveAppGroupKeySize

構成要素グループのキーサイズを織り込んでいます。

kWeaveAppGroupMasterKeySize

Weave アプリケーション グループのマスター鍵のサイズ。

kWeaveAppIntermediateKeyDiversifierSize

中間の多角形サイズ。

kWeaveAppIntermediateKeySize

アプリケーションの中間鍵のサイズ。

kWeaveAppRootKeySize

アプリケーションのルートキーのサイズを確認します。

kWeaveFabricSecretSize

織物のシークレット サイズ。

WeaveAppGroupGlobalId

 WeaveAppGroupGlobalId

Weave Application Group Global ID(AGGID)。

Properties
kWeaveAppGroupGlobalId_NestHVAC

Nest HVAC Group。

kWeaveAppGroupGlobalId_NestPhysicalAccess

Nest Labs Application Group のグローバル 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 ストラクチャ Security グループ。

kWeaveAppGroupGlobalId_Unspecified

アプリケーション グループのグローバル ID が指定されていません。

Variables

kWeaveAppClientRootKeyDivDivifier

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

Weave クライアント ルート鍵の導出に使用される鍵の多様性。

この値は、「クライアント ルートキー」フレーズの SHA-1 HASH の最初の 4 バイトを表します。

kWeaveAppFabricRootKeyDiversifier

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

Weave ファブリックのルート鍵の導出に使用される鍵の多様性。

この値は、「Fabric Root Key」フレーズの SHA-1 HASH の最初の 4 バイトを表します。

kWeaveAppIntermediateKeyDiversifier

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

Weave 中間鍵の導出に使用される鍵の多様性。

この値は、「中間鍵」句の SHA-1 HASH の最初の 4 バイトを表します。

Functions

GetAppGroupMasterKeyId

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 から返される、その他のプラットフォーム固有のエラー。

LogGroupKeys

WEAVE_ERROR LogGroupKeys(
  GroupKeyStoreBase *groupKeyStore
)