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 )
ดึงข้อมูลคีย์แอปพลิเคชัน
ระบบรองรับคีย์แอปพลิเคชัน 3 ประเภท ได้แก่ คีย์แอปพลิเคชันปัจจุบัน คีย์แอปพลิเคชันแบบหมุนเวียน และคีย์แอปพลิเคชันแบบคงที่ เมื่อมีการขอคีย์แอปพลิเคชันปัจจุบัน ฟังก์ชันจะค้นหาและใช้คีย์อีพอคปัจจุบันตามเวลาของระบบปัจจุบันและพารามิเตอร์เวลาเริ่มต้นของคีย์อีพอคแต่ละรายการ
รายละเอียด | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||||||||
ค่าที่แสดงผล |
|
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 )
ส่งคืนรหัสคีย์ปัจจุบัน
ค้นหาคีย์อีพอคปัจจุบันตามเวลาของระบบปัจจุบันและพารามิเตอร์เวลาเริ่มต้นของคีย์อีพอคแต่ละรายการ หากระบบไม่มีเวลาที่ถูกต้อง ระบบจะแสดงรหัสคีย์ของยุคที่ใช้ล่าสุด
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
ผลลัพธ์ |
|
GetCurrentUTCTime
virtual WEAVE_ERROR GetCurrentUTCTime( uint32_t & utcTime )
รับเวลา UTC ของแพลตฟอร์มปัจจุบันเป็นวินาที
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
ผลลัพธ์ |
|
GetGroupKey
WEAVE_ERROR GetGroupKey( uint32_t keyId, WeaveGroupKey & groupKey )
รับคีย์กลุ่มแอปพลิเคชัน
ฟังก์ชันนี้จะดึงข้อมูลหรือเรียกข้อมูลคีย์กลุ่มแอปพลิเคชัน ฟังก์ชันนี้รองรับคีย์ประเภทต่อไปนี้ ข้อมูลลับ Fabric, คีย์รูท, คีย์ยุคสมัย, คีย์หลักของกลุ่ม และคีย์กลาง
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
ค่าที่แสดงผล |
|
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 )
แสดงผลรหัสคีย์ปัจจุบัน
ตั้งค่าตัวแปรสมาชิกที่เชื่อมโยงกับคีย์ Epoch ให้เป็นค่าเริ่มต้นเมื่อมีการเปลี่ยนแปลง (ลบหรือจัดเก็บ) เกิดขึ้นกับชุดคีย์ Epoch ของแอปพลิเคชัน คลาสย่อยที่ใช้ฟังก์ชัน StoreGroupKey(), DeleteGroupKey() และ DeleteGroupKeysOfAType() มีหน้าที่เรียกใช้เมธอดนี้