nl:: Weave:: Profiles:: Security:: AppKeys:: GroupKeyStoreBase
Bu, soyut bir sınıftır.
#include <src/lib/profiles/security/WeaveApplicationKeys.h>
Weave grubu anahtar deposu sınıfının tanımı.
Özet
Bu sınıftaki işlevler, uygulama grubu anahtarlarını yönetmek için çağrılır.
Devralma
Doğrudan Bilinen Alt Sınıflar:nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
nl::Weave::Profiles::Security::AppKeys::DummyGroupKeyStore
Korunan özellikler |
|
---|---|
LastUsedEpochKeyId
|
uint32_t
|
NextEpochKeyStartTime
|
uint32_t
|
Herkese açık işlevler |
|
---|---|
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)
|
Uygulama anahtarı türetir.
|
EnumerateGroupKeys(uint32_t keyType, uint32_t *keyIds, uint8_t keyIdsArraySize, uint8_t & keyCount)=0
|
virtual WEAVE_ERROR
|
GetCurrentAppKeyId(uint32_t keyId, uint32_t & curKeyId)
|
Geçerli anahtar kimliğini döndürür.
|
GetCurrentUTCTime(uint32_t & utcTime)
|
virtual WEAVE_ERROR
Platformun geçerli UTC saatini saniye cinsinden alın.
|
GetGroupKey(uint32_t keyId, WeaveGroupKey & groupKey)
|
Uygulama grup anahtarını alın.
|
RetrieveGroupKey(uint32_t keyId, WeaveGroupKey & key)=0
|
virtual WEAVE_ERROR
|
StoreGroupKey(const WeaveGroupKey & key)=0
|
virtual WEAVE_ERROR
|
Korunan işlevler |
|
---|---|
Init(void)
|
void
Yerel grup anahtar deposu parametrelerini başlatın.
|
OnEpochKeysChange(void)
|
void
Geçerli anahtar kimliğini döndürür.
|
RetrieveLastUsedEpochKeyId(void)=0
|
virtual WEAVE_ERROR
|
StoreLastUsedEpochKeyId(void)=0
|
virtual WEAVE_ERROR
|
Korunan özellikler
LastUsedEpochKeyId
uint32_t LastUsedEpochKeyId
NextEpochKeyStartTime
uint32_t NextEpochKeyStartTime
Herkese açık işlevler
Temizle
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 )
Uygulama anahtarı türetir.
Üç tür uygulama anahtarı desteklenir: geçerli uygulama anahtarı, dönen uygulama anahtarı ve statik uygulama anahtarı. Geçerli uygulama anahtarı istendiğinde, işlev geçerli sistem saatine ve her bir dönem anahtarının başlangıç zamanı parametresine göre geçerli epoch anahtarını bulup kullanır.
Ayrıntılar | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametreler |
|
||||||||||||||||||
Değerleri Döndür |
|
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 )
Geçerli anahtar kimliğini döndürür.
Geçerli sistem saatine ve her dönem anahtarının başlangıç zamanı parametresine göre geçerli dönem anahtarını bulur. Sistemin geçerli ve doğru bir zamanı yoksa son kullanılan dönem anahtarı kimliği döndürülür.
Ayrıntılar | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametreler |
|
||||||||
Değerleri Döndür |
|
GetCurrentUTCTime
virtual WEAVE_ERROR GetCurrentUTCTime( uint32_t & utcTime )
Platformun geçerli UTC saatini saniye cinsinden alın.
Ayrıntılar | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametreler |
|
||||||||
Değerleri Döndür |
|
GetGroupKey
WEAVE_ERROR GetGroupKey( uint32_t keyId, WeaveGroupKey & groupKey )
Uygulama grup anahtarını alın.
Bu işlev, uygulama grubu anahtarlarını türetir veya alır. Bu işlev tarafından desteklenen anahtar türleri şunlardır: yapı gizli anahtarı, kök anahtarı, dönem anahtarı, grup ana anahtarı ve ara anahtar.
Ayrıntılar | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametreler |
|
||||||||
Değerleri Döndür |
|
RetrieveGroupKey
virtual WEAVE_ERROR RetrieveGroupKey( uint32_t keyId, WeaveGroupKey & key )=0
StoreGroupKey
virtual WEAVE_ERROR StoreGroupKey( const WeaveGroupKey & key )=0
Korunan işlevler
Init
void Init( void )
Yerel grup anahtar deposu parametrelerini başlatın.
OnEpochKeysChange
void OnEpochKeysChange( void )
Geçerli anahtar kimliğini döndürür.
Uygulama dönem anahtarları grubunda herhangi bir değişiklik (silme veya depolama) gerçekleştiğinde, dönem anahtarlarıyla ilişkili üye değişkenlerini varsayılan değerlere ayarlar. Bu yöntemi çağırmak StoreGroupKey(), DeleteGroupKey() ve DeleteGroupKeysOfAType() işlevlerini uygulayan alt sınıfın sorumluluğundadır.