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
מגביל מפתחות המשמש לנגזרת שורש של מפתח בד Weave.
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

גודל מפתח של פרק זמן של יישום Weave.

kWeaveAppFabricRootKeyDiversifierSize

גודל משתנה מפתח הבסיס של הבד.

kWeaveAppGroupKeySize

שקלל את גודל המפתח של הקבוצה.

kWeaveAppGroupMasterKeySize

גודל מפתח מאסטר של קבוצת אפליקציות ב-Weave.

kWeaveAppIntermediateKeyDiversifierSize

גודל משתנה המפתחות הבינוני.

kWeaveAppIntermediateKeySize

גודל מפתח ביניים של אפליקציית Weave.

kWeaveAppRootKeySize

גודל מפתח בסיס של אפליקציה ב-Weave.

kWeaveFabricSecretSize

הגודל הסודי של בד האריגים.

WeaveAppGroupGlobalId

 WeaveAppGroupGlobalId

מזהים גלובליים של קבוצת אפליקציות ב-Weave (AGGID).

תכונות
kWeaveAppGroupGlobalId_NestHVAC

קבוצת Nest HVAC.

kWeaveAppGroupGlobalId_NestPhysicalAccess

מזהים גלובליים של קבוצת האפליקציות של Nest Labs.

הערה: אין לנסות להקצות את הערכים האלה בעצמכם. הערכים האלה מנוהלים על ידי Nest Labs. צריך להגיש בקשה רשמית באמצעות "Nest Weave: Nest Application Group Global ID Registry" https://docs.google.com/document/d/1xHLAcTvLZg2YGoJfbUb2nbPIvaCNuoygmdiNwC-PJHI.Nest Pharmaceutical Access Group.

kWeaveAppGroupGlobalId_NestSecurityControl

קבוצת בקרת אבטחה של Nest.

kWeaveAppGroupGlobalId_NestStructureSecurity

קבוצת האבטחה של Nest Structure.

kWeaveAppGroupGlobalId_Unspecified

לא צוין מזהה גלובלי של קבוצת אפליקציות.

משתנים

kWeaveAppClientRootKeyDiversifier

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

מגדיר מפתחות המשמש לנגזרת בסיס של מפתח לקוח ב-Weave.

הערך הזה מייצג את 4 הבייטים הראשונים של הביטוי SHA-1 HASH של הביטוי Client Root Key.

kWeaveAppFabricRootKeyDiversifier

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

מגביל מפתחות המשמש לנגזרת שורש של מפתח בד Weave.

הערך הזה מייצג את 4 הבייטים הראשונים של הביטוי SHA-1 HASH של הביטוי Fabric Root Key.

kWeaveAppIntermediateKeyDiversifier

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

מגדיר מפתח המשמש לגזירה של מפתח ביניים ב-Weave.

הערך הזה מייצג את 4 הבייטים הראשונים של הביטוי SHA-1 HASH של הביטוי "Intermediate Key" [מפתח ביניים].

פונקציות

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
שגיאות אחרות שספציפיות לפלטפורמה שהוחזרו על ידי ממשקי ה-API של מאגר המפתחות של הפלטפורמה.

LogGroupKeys

WEAVE_ERROR LogGroupKeys(
  GroupKeyStoreBase *groupKeyStore
)