nl:: बुना::प्रोफ़ाइलें::सुरक्षा::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)
}
enum
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
}
enum
Weave ऐप्लिकेशन ग्रुप ग्लोबल आईडी (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
Weave इंटरमीडिएट कुंजी के वितरण के लिए इस्तेमाल किए जाने वाले मुख्य विविधता.

फ़ंक्शन

GetAppGroupMasterKeyId(uint32_t groupGlobalId, GroupKeyStoreBase *groupKeyStore, uint32_t & groupMasterKeyId)
ऐप्लिकेशन ग्रुप ग्लोबल आईडी दें.
LogGroupKeys(GroupKeyStoreBase *groupKeyStore)

क्लास

nl:: बुनाई::प्रोफ़ाइल::सुरक्षा::AppKeys::DummyGroupKeyStore
nl:: बुनाई::प्रोफ़ाइल::सुरक्षा::AppKeys::GroupKeyStoreBase

Weave ग्रुप की स्टोर क्लास की परिभाषा.

nl:: बुनाई::प्रोफ़ाइल::सुरक्षा::AppKeys::WeaveGroupKey

में Weave ऐप्लिकेशन ग्रुप कुंजियों के बारे में जानकारी होती है.

गिनती

@220

 @220

Weave ऐप्लिकेशन कुंजी प्रोटोकॉल पैरामीटर की परिभाषाएं.

प्रॉपर्टी
kWeaveAppClientRootKeyDiversifierSize

क्लाइंट रूट कुंजी का विविधता आकार.

kWeaveAppEpochKeySize

Weave ऐप्लिकेशन epoch कुंजी का साइज़.

kWeaveAppFabricRootKeyDiversifierSize

फ़ैब्रिक रूट कुंजी का डाइवराइज़र साइज़.

kWeaveAppGroupKeySize

बुनाई के ग्रुप का मुख्य साइज़.

kWeaveAppGroupMasterKeySize

Weave ऐप्लिकेशन ग्रुप मास्टर कुंजी का साइज़.

kWeaveAppIntermediateKeyDiversifierSize

मध्यस्थ कुंजी का विविधता भरे आकार.

kWeaveAppIntermediateKeySize

Weave ऐप्लिकेशन का इंटरमीडिएट कुंजी का आकार.

kWeaveAppRootKeySize

Weave ऐप्लिकेशन रूट कुंजी का आकार.

kWeaveFabricSecretSize

बुनाई के कपड़े का सीक्रेट साइज़.

WeaveAppGroupGlobalId

 WeaveAppGroupGlobalId

Weave ऐप्लिकेशन ग्रुप ग्लोबल आईडी (AGGID).

प्रॉपर्टी
kWeaveAppGroupGlobalId_NestHVAC

Nest Renew Group.

kWeaveAppGroupGlobalId_NestPhysicalAccess

Nest Labs ऐप्लिकेशन ग्रुप ग्लोबल आईडी.

ध्यान दें: ये वैल्यू खुद तय करने की कोशिश न करें. Nest Labs, इन वैल्यू को एडमिन करता है. कृपया & &वाट, Nest Weave: Nest ऐप्लिकेशन ग्रुप ग्लोबल आईडी रजिस्ट्री&कोटेशन; https://docs.google.com/document/d/1xHLAcTvLZg2YGoJfbUb2nbPIwaCNuoygmdiNwC-PJHI.Nest फ़िज़िकल ऐक्सेस ग्रुप का इस्तेमाल करके औपचारिक अनुरोध करें.

kWeaveAppGroupGlobalId_NestSecurityControl

Nest का सुरक्षा कंट्रोल ग्रुप.

kWeaveAppGroupGlobalId_NestStructureSecurity

Nest संरचना सुरक्षा समूह.

kWeaveAppGroupGlobalId_Unspecified

ऐप्लिकेशन समूह ग्लोबल आईडी मौजूद नहीं है.

वैरिएबल

kWeaveAppClientरूटKeyDiversifier

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

Weave क्लाइंट रूट कुंजी के डेरिवेटिव के लिए उपयोग किए जाने वाले मुख्य विविधता.

यह मान &कोटेशन, क्लाइंट रूट कुंजी&कोटेशन के SHA-1 HASH के पहले 4 बाइट को दिखाता है.

kWeaveAppFabricरूटKeyDiversifier

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

बुनाई के कपड़े के लिए मुख्य बटन से निकलने के लिए, डाइवर कौन काम करता है.

यह वैल्यू, &fatic रूट रूट कुंजी&कोटेशन के SHA-1 HASH के पहले चार बाइट को दिखाती है.

kWeaveAppIntermediateKeyDiversifier

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

Weave इंटरमीडिएट कुंजी के वितरण के लिए इस्तेमाल किए जाने वाले मुख्य विविधता.

यह मान "इंटरमीडिएट कुंजी" वाक्यांश के SHA-1 HASH के पहले 4 बाइट दिखाता है.

फ़ंक्शन

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
प्लैटफ़ॉर्म के हिसाब से तय की गई दूसरी गड़बड़ियों को, प्लैटफ़ॉर्म कुंजी स्टोर एपीआई की मदद से दिखाया गया.

LogGroupKeys

WEAVE_ERROR LogGroupKeys(
  GroupKeyStoreBase *groupKeyStore
)