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)
}
enum
वेब ऐप्लिकेशन कुंजियों के प्रोटोकॉल पैरामीटर की परिभाषाएं.
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::Weave::Profiles::Security::AppKeys::DummyGroupKeyStore
nl::Weave::Profiles::Security::AppKeys::GroupKeyStoreBase

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

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

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

गिनती

@220

 @220

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

प्रॉपर्टी
kWeaveAppClientRootKeyDiversifierSize

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

kWeaveAppEpochKeySize

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

kWeaveAppFabricRootKeyDiversifierSize

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

kWeaveAppGroupKeySize

मूल समूह कुंजी का आकार बुनें.

kWeaveAppGroupMasterKeySize

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

kWeaveAppIntermediateKeyDiversifierSize

इंटरमीडिएट की डाइवर्सिफ़ायर साइज़.

kWeaveAppIntermediateKeySize

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

kWeaveAppRootKeySize

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

kWeaveFabricSecretSize

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

WeaveAppGroupGlobalId

 WeaveAppGroupGlobalId

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

प्रॉपर्टी
kWeaveAppGroupGlobalId_NestHVAC

Nest एचवीएसी ग्रुप.

kWeaveAppGroupGlobalId_NestPhysicalAccess

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

ध्यान दें: इन वैल्यू को खुद बांटने की कोशिश न करें. इन वैल्यू को 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

ऐप्लिकेशन ग्रुप ग्लोबल आईडी की जानकारी नहीं दी गई है.

वैरिएबल

kWeaveAppClientRootKeyDiversifier

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

Weave क्लाइंट रूट की डेरिवेशन के लिए इस्तेमाल किया जाने वाला की डाइवर्सीफ़ायर.

यह वैल्यू, "Client Root Key" वाक्यांश के 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 }

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
)