nl:: Tenun:: Profil:: Keamanan:: AppKeys:: GroupKeyStoreBase
Ini adalah class abstrak.
#include <src/lib/profiles/security/WeaveApplicationKeys.h>
Definisi class penyimpanan kunci grup Weave.
Ringkasan
Fungsi di class ini dipanggil untuk mengelola kunci grup aplikasi.
Warisan
Subclass Langsung yang Diketahui:nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
nl::Weave::DeviceLayer::Internal::GroupKeyStoreWes}:::
Atribut yang dilindungi |
|
---|---|
LastUsedEpochKeyId
|
uint32_t
|
NextEpochKeyStartTime
|
uint32_t
|
Fungsi publik |
|
---|---|
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)
|
Memperoleh kunci aplikasi.
|
EnumerateGroupKeys(uint32_t keyType, uint32_t *keyIds, uint8_t keyIdsArraySize, uint8_t & keyCount)=0
|
virtual WEAVE_ERROR
|
GetCurrentAppKeyId(uint32_t keyId, uint32_t & curKeyId)
|
Menampilkan ID kunci saat ini.
|
GetCurrentUTCTime(uint32_t & utcTime)
|
virtual WEAVE_ERROR
Dapatkan waktu UTC platform saat ini dalam detik.
|
GetGroupKey(uint32_t keyId, WeaveGroupKey & groupKey)
|
Dapatkan kunci grup aplikasi.
|
RetrieveGroupKey(uint32_t keyId, WeaveGroupKey & key)=0
|
virtual WEAVE_ERROR
|
StoreGroupKey(const WeaveGroupKey & key)=0
|
virtual WEAVE_ERROR
|
Fungsi yang dilindungi |
|
---|---|
Init(void)
|
void
Menginisialisasi parameter penyimpanan kunci grup lokal.
|
OnEpochKeysChange(void)
|
void
Menampilkan ID kunci saat ini.
|
RetrieveLastUsedEpochKeyId(void)=0
|
virtual WEAVE_ERROR
|
StoreLastUsedEpochKeyId(void)=0
|
virtual WEAVE_ERROR
|
Atribut yang dilindungi
LastUsedEpochKeyId
uint32_t LastUsedEpochKeyId
WaktuEpochKeyStartTime
uint32_t NextEpochKeyStartTime
Fungsi publik
Hapus
virtual WEAVE_ERROR Clear( void )=0
HapusKunciGrup
virtual WEAVE_ERROR DeleteGroupKey( uint32_t keyId )=0
MenghapusGroupKeysOfAType
virtual WEAVE_ERROR DeleteGroupKeysOfAType( uint32_t keyType )=0
KunciAplikasiDerive
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 )
Memperoleh kunci aplikasi.
Ada tiga jenis kunci aplikasi yang didukung: kunci aplikasi saat ini, kunci aplikasi berputar, dan kunci aplikasi statis. Jika kunci aplikasi saat ini diminta, fungsi tersebut akan menemukan dan menggunakan kunci epoch saat ini berdasarkan waktu sistem saat ini dan parameter waktu mulai dari setiap kunci epoch.
Detail | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||||||||
Nilai yang Ditampilkan |
|
EnumerateGroupKey
virtual WEAVE_ERROR EnumerateGroupKeys( uint32_t keyType, uint32_t *keyIds, uint8_t keyIdsArraySize, uint8_t & keyCount )=0
ID GetCurrentAppKey
WEAVE_ERROR GetCurrentAppKeyId( uint32_t keyId, uint32_t & curKeyId )
Menampilkan ID kunci saat ini.
Menemukan kunci epoch saat ini berdasarkan waktu sistem saat ini dan parameter waktu mulai dari setiap kunci epoch. Jika sistem tidak memiliki waktu yang valid dan akurat, maka ID kunci epoch yang terakhir digunakan akan ditampilkan.
Detail | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Nilai yang Ditampilkan |
|
GetCurrentUTC
virtual WEAVE_ERROR GetCurrentUTCTime( uint32_t & utcTime )
Dapatkan waktu UTC platform saat ini dalam detik.
Detail | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Nilai yang Ditampilkan |
|
MendapatkanKunciGrup
WEAVE_ERROR GetGroupKey( uint32_t keyId, WeaveGroupKey & groupKey )
Dapatkan kunci grup aplikasi.
Fungsi ini memperoleh atau mengambil kunci grup aplikasi. Jenis kunci yang didukung oleh fungsi ini adalah: rahasia kain, kunci root, kunci epoch, kunci master grup, dan kunci perantara.
Detail | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Nilai yang Ditampilkan |
|
AmbilGrupKunci
virtual WEAVE_ERROR RetrieveGroupKey( uint32_t keyId, WeaveGroupKey & key )=0
StoreGroupKey
virtual WEAVE_ERROR StoreGroupKey( const WeaveGroupKey & key )=0
Fungsi yang dilindungi
Init
void Init( void )
Menginisialisasi parameter penyimpanan kunci grup lokal.
OnEpochKeysChange
void OnEpochKeysChange( void )
Menampilkan ID kunci saat ini.
Menetapkan variabel anggota yang terkait dengan kunci epoch ke nilai default saat terjadi perubahan (hapus atau simpan) pada kumpulan kunci epoch aplikasi. Ini adalah tanggung jawab subclass yang mengimplementasikan fungsi StoreGroupKey(), DeleteGroupKey(), dan DeleteGroupKeysOfAType() untuk memanggil metode ini.