nl:: Weave:: Profiles:: Security:: AppKeys:: GroupKeyStoreBase
זוהי כיתה מופשטת.
#include <src/lib/profiles/security/WeaveApplicationKeys.h>
ההגדרה של הכיתה של מאגר המפתחות של קבוצת Weave.
סיכום
פונקציות מהקלאס הזה נקראות כדי לנהל מפתחות של קבוצות אפליקציות.
ירושה
ישויות משנה ידועות ישירות:nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
nl::Weave::Profiles::Security::AppKeys::DummyGroupKeyStore
מאפיינים מוגנים |
|
---|---|
LastUsedEpochKeyId
|
uint32_t
|
NextEpochKeyStartTime
|
uint32_t
|
פונקציות ציבוריות |
|
---|---|
Clear(void)=0
|
virtual WEAVE_ERROR
|
DeleteGroupKey(uint32_t keyId)=0
|
virtual WEAVE_ERROR
|
DeleteGroupKeysOfAType(uint32_t keyType)=0
|
virtual WEAVE_ERROR
|
DeriveApplicationKey(uint32_t & appKeyId, const uint8_t *keySalt, uint8_t saltLen, const uint8_t *keyDiversifier, uint8_t diversifierLen, uint8_t *appKey, uint8_t keyBufSize, uint8_t keyLen, uint32_t & appGroupGlobalId)
|
הפקת מַפְתח אפליקציה.
|
EnumerateGroupKeys(uint32_t keyType, uint32_t *keyIds, uint8_t keyIdsArraySize, uint8_t & keyCount)=0
|
virtual WEAVE_ERROR
|
GetCurrentAppKeyId(uint32_t keyId, uint32_t & curKeyId)
|
הפונקציה מחזירה את מזהה המפתח הנוכחי.
|
GetCurrentUTCTime(uint32_t & utcTime)
|
virtual WEAVE_ERROR
הצגת השעה הנוכחית בפלטפורמה לפי שעון UTC בשניות.
|
GetGroupKey(uint32_t keyId, WeaveGroupKey & groupKey)
|
קבלת מפתח של קבוצת אפליקציות.
|
RetrieveGroupKey(uint32_t keyId, WeaveGroupKey & key)=0
|
virtual WEAVE_ERROR
|
StoreGroupKey(const WeaveGroupKey & key)=0
|
virtual WEAVE_ERROR
|
פונקציות מוגנות |
|
---|---|
Init(void)
|
void
הפעלת הפרמטרים של מאגר המפתחות של הקבוצה המקומית.
|
OnEpochKeysChange(void)
|
void
הפונקציה מחזירה את מזהה המפתח הנוכחי.
|
RetrieveLastUsedEpochKeyId(void)=0
|
virtual WEAVE_ERROR
|
StoreLastUsedEpochKeyId(void)=0
|
virtual WEAVE_ERROR
|
מאפיינים מוגנים
LastUsedEpochKeyId
uint32_t LastUsedEpochKeyId
NextEpochKeyStartTime
uint32_t NextEpochKeyStartTime
פונקציות ציבוריות
ניקוי
virtual WEAVE_ERROR Clear( void )=0
DeleteGroupKey
virtual WEAVE_ERROR DeleteGroupKey( uint32_t keyId )=0
DeleteGroupKeysOfAType
virtual WEAVE_ERROR DeleteGroupKeysOfAType( uint32_t keyType )=0
DeriveApplicationKey
WEAVE_ERROR DeriveApplicationKey( uint32_t & appKeyId, const uint8_t *keySalt, uint8_t saltLen, const uint8_t *keyDiversifier, uint8_t diversifierLen, uint8_t *appKey, uint8_t keyBufSize, uint8_t keyLen, uint32_t & appGroupGlobalId )
הפקת מַפְתח אפליקציה.
יש תמיכה בשלושה סוגים של מפתחות אפליקציה: מפתח אפליקציה נוכחי, מפתח אפליקציה בסבב רוטציה ומפתח אפליקציה סטטי. כשנשלחת בקשה למפתח האפליקציה הנוכחי, הפונקציה מוצאת את מפתח התקופה הנוכחית ומשתמש בו על סמך זמן המערכת הנוכחי ופרמטר שעת ההתחלה של כל מפתח תקופה של זמן מערכת.
פרטים | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||||||||||||
ערכים מוחזרים |
|
EnumerateGroupKeys
virtual WEAVE_ERROR EnumerateGroupKeys( uint32_t keyType, uint32_t *keyIds, uint8_t keyIdsArraySize, uint8_t & keyCount )=0
GetCurrentAppKeyId
WEAVE_ERROR GetCurrentAppKeyId( uint32_t keyId, uint32_t & curKeyId )
הפונקציה מחזירה את מזהה המפתח הנוכחי.
חיפוש מפתח האפוק המעודכן על סמך שעון המערכת הנוכחי ופרמטר שעת ההתחלה של כל מפתח אפוק. אם למערכת אין זמן תקף ומדויק, המערכת מחזירה את מזהה מפתח ה-epoch שנעשה בו שימוש לאחרונה.
פרטים | |||||||||
---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||
ערכים שמוחזרים |
|
GetCurrentUTCTime
virtual WEAVE_ERROR GetCurrentUTCTime( uint32_t & utcTime )
הצגת השעה הנוכחית בפלטפורמה לפי שעון UTC בשניות.
פרטים | |||||||||
---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||
ערכים מוחזרים |
|
GetGroupKey
WEAVE_ERROR GetGroupKey( uint32_t keyId, WeaveGroupKey & groupKey )
קבלת מפתח של קבוצת אפליקציות.
הפונקציה הזו מייצרת או מאחזרת מפתחות של קבוצות אפליקציות. סוגי המפתחות שנתמכים בפונקציה הזו הם: fabric secret, root key, epoch key, group master key ו-intermediate key.
פרטים | |||||||||
---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||
ערכים שמוחזרים |
|
RetrieveGroupKey
virtual WEAVE_ERROR RetrieveGroupKey( uint32_t keyId, WeaveGroupKey & key )=0
StoreGroupKey
virtual WEAVE_ERROR StoreGroupKey( const WeaveGroupKey & key )=0
פונקציות מוגנות
Init
void Init( void )
איפוס הפרמטרים של מאגר המפתחות של הקבוצה המקומית.
OnEpochKeysChange
void OnEpochKeysChange( void )
הפונקציה מחזירה את מזהה המפתח הנוכחי.
מגדיר את משתני החבר המשויכים למפתחות של תקופת הזמן הראשונית לערכי ברירת המחדל בכל פעם ששינוי כלשהו (מחיקה או אחסון) מתרחש בקבוצת מפתחות התקופה של האפליקציה. הקריאה למתודה הזו היא באחריות תת-הסוג שמטמיע את הפונקציות StoreGroupKey(), DeleteGroupKey() ו-DeleteGroupKeysOfAType().