nl:: Weave:: Profiles:: Security:: AppKeys:: GroupKeyStoreBase
Esta es una clase abstracta.
#include <src/lib/profiles/security/WeaveApplicationKeys.h>
Es la definición de la clase de almacén de claves del grupo de Weave.
Resumen
Las funciones de esta clase se llaman para administrar claves de grupo de aplicaciones.
Herencia
Subclases directas conocidas:nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
nl::Weave::DeviceLayer::Interno::GroupKeyStoreImpl
nl::Weave::DeviceLayer::Internal::GroupKeyStoreImpl
nl::Weave::DeviceLayer::Inter primera:GroupStore1{/nl:Weave1:nl::Weave::DeviceLayer::Internal::GroupKeyStoreImplnl::Weave::Profiles::Security::AppKeys::DummyGroupKeyStore
Atributos protegidos |
|
---|---|
LastUsedEpochKeyId
|
uint32_t
|
NextEpochKeyStartTime
|
uint32_t
|
Funciones públicas |
|
---|---|
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)
|
Deriva la clave de la aplicación.
|
EnumerateGroupKeys(uint32_t keyType, uint32_t *keyIds, uint8_t keyIdsArraySize, uint8_t & keyCount)=0
|
virtual WEAVE_ERROR
|
GetCurrentAppKeyId(uint32_t keyId, uint32_t & curKeyId)
|
Muestra el ID de la clave actual.
|
GetCurrentUTCTime(uint32_t & utcTime)
|
virtual WEAVE_ERROR
Obtén la hora UTC actual de la plataforma en segundos.
|
GetGroupKey(uint32_t keyId, WeaveGroupKey & groupKey)
|
Obtén la clave del grupo de aplicaciones.
|
RetrieveGroupKey(uint32_t keyId, WeaveGroupKey & key)=0
|
virtual WEAVE_ERROR
|
StoreGroupKey(const WeaveGroupKey & key)=0
|
virtual WEAVE_ERROR
|
Funciones protegidas |
|
---|---|
Init(void)
|
void
Inicializa los parámetros del almacén de claves del grupo local.
|
OnEpochKeysChange(void)
|
void
Muestra el ID de la clave actual.
|
RetrieveLastUsedEpochKeyId(void)=0
|
virtual WEAVE_ERROR
|
StoreLastUsedEpochKeyId(void)=0
|
virtual WEAVE_ERROR
|
Atributos protegidos
LastUsedEpochKeyId
uint32_t LastUsedEpochKeyId
NextEpochKeyStartTime
uint32_t NextEpochKeyStartTime
Funciones públicas
Borrar
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 )
Deriva la clave de la aplicación.
Se admiten tres tipos de claves de aplicación: la actual, la clave de aplicación rotativa y la clave de aplicación estática. Cuando se solicita la clave de la aplicación actual, la función encuentra y usa la clave de época actual según la hora actual del sistema y el parámetro de hora de inicio de cada clave de ciclo de entrenamiento.
Detalles | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||||||||||
Valores que se muestran |
|
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 )
Muestra el ID de la clave actual.
Encuentra la clave de época actual según la hora actual del sistema y el parámetro de hora de inicio de cada clave de época. Si el sistema no tiene una hora válida y precisa, se mostrará el ID de la clave de época que se usó por última vez.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||
Valores que se muestran |
|
GetCurrentUTCTime
virtual WEAVE_ERROR GetCurrentUTCTime( uint32_t & utcTime )
Obtén la hora UTC actual de la plataforma en segundos.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||
Valores que se muestran |
|
GetGroupKey
WEAVE_ERROR GetGroupKey( uint32_t keyId, WeaveGroupKey & groupKey )
Obtén la clave del grupo de aplicaciones.
Esta función deriva o recupera claves de grupos de aplicaciones. Los tipos de claves que admite esta función son los siguientes: secreto de estructura, clave raíz, clave de ciclo de entrenamiento, clave maestra de grupo y clave intermedia.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||
Valores que se muestran |
|
RetrieveGroupKey
virtual WEAVE_ERROR RetrieveGroupKey( uint32_t keyId, WeaveGroupKey & key )=0
StoreGroupKey
virtual WEAVE_ERROR StoreGroupKey( const WeaveGroupKey & key )=0
Funciones protegidas
Init
void Init( void )
Inicializa los parámetros del almacén de claves del grupo local.
OnEpochKeysChange
void OnEpochKeysChange( void )
Muestra el ID de la clave actual.
Establece las variables de miembro asociadas con las claves de época en los valores predeterminados cuando se produce algún cambio (eliminación o almacenamiento) en el conjunto de claves de época de la aplicación. Es responsabilidad de la subclase que implementa las funciones StoreGroupKey(), DeleteGroupKey() y DeleteGroupKeysOfAType() llamar a este método.