nl:: Weave:: Hồ sơ:: Bảo mật:: AppKeys:: GroupKeyStoreBase
Đây là một lớp trừu tượng.
#include <src/lib/profiles/security/WeaveApplicationKeys.h>
Định nghĩa của lớp cửa hàng khóa Weave group.
Tóm tắt
Các hàm trong lớp này được gọi để quản lý khoá nhóm ứng dụng.
Tính kế thừa
Các lớp con đã biết trực tiếp:nl::Weave::DeviceOverlay::internal::GroupKeyStoreImpl
nl::Weave::Devicelayer::GroupKey::GroupKeyStoreImpl
nl::Weave::DeviceClass::GroupKeyStoreimpl{/10:Wenl:We:
Thuộc tính được bảo vệ |
|
---|---|
LastUsedEpochKeyId
|
uint32_t
|
NextEpochKeyStartTime
|
uint32_t
|
Hàm công khai |
|
---|---|
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)
|
Khóa ứng dụng phái sinh.
|
EnumerateGroupKeys(uint32_t keyType, uint32_t *keyIds, uint8_t keyIdsArraySize, uint8_t & keyCount)=0
|
virtual WEAVE_ERROR
|
GetCurrentAppKeyId(uint32_t keyId, uint32_t & curKeyId)
|
Trả về mã khoá hiện tại.
|
GetCurrentUTCTime(uint32_t & utcTime)
|
virtual WEAVE_ERROR
Nhận thời gian hiện tại theo nền tảng UTC là giây.
|
GetGroupKey(uint32_t keyId, WeaveGroupKey & groupKey)
|
Nhận khóa nhóm ứng dụng.
|
RetrieveGroupKey(uint32_t keyId, WeaveGroupKey & key)=0
|
virtual WEAVE_ERROR
|
StoreGroupKey(const WeaveGroupKey & key)=0
|
virtual WEAVE_ERROR
|
Hàm được bảo vệ |
|
---|---|
Init(void)
|
void
Khởi tạo thông số cửa hàng chính của nhóm cục bộ.
|
OnEpochKeysChange(void)
|
void
Trả về mã khoá hiện tại.
|
RetrieveLastUsedEpochKeyId(void)=0
|
virtual WEAVE_ERROR
|
StoreLastUsedEpochKeyId(void)=0
|
virtual WEAVE_ERROR
|
Thuộc tính được bảo vệ
Đã sử dụng EpochKeyId
uint32_t LastUsedEpochKeyId
Thời gian bắt đầu khóa tiếp theo
uint32_t NextEpochKeyStartTime
Hàm công khai
Quang đãng
virtual WEAVE_ERROR Clear( void )=0
Khóa nhóm
virtual WEAVE_ERROR DeleteGroupKey( uint32_t keyId )=0
DeleteGroupKeysOfAType
virtual WEAVE_ERROR DeleteGroupKeysOfAType( uint32_t keyType )=0
Khóa ứng dụng Derive
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 )
Khóa ứng dụng phái sinh.
Có ba loại khoá ứng dụng: khoá ứng dụng hiện tại, khoá ứng dụng xoay và khoá ứng dụng tĩnh. Khi yêu cầu khóa ứng dụng hiện tại, hàm tìm thấy và sử dụng khóa epoch hiện tại dựa trên thời gian hệ thống hiện tại và thông số thời gian bắt đầu của mỗi khóa kỷ nguyên.
Thông tin chi tiết | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Các thông số |
|
||||||||||||||||||
Giá trị trả về |
|
Khoá EnumerateGroup
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 )
Trả về mã khoá hiện tại.
Tìm khóa Epoch hiện tại dựa trên thời gian hệ thống hiện tại và thông số thời gian bắt đầu của mỗi khóa epoch. Nếu hệ thống không có thời gian chính xác hợp lệ thì mã khóa epoch đã sử dụng gần đây nhất sẽ được trả về.
Thông tin chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Các thông số |
|
||||||||
Giá trị trả về |
|
Thời gian nhận UTC
virtual WEAVE_ERROR GetCurrentUTCTime( uint32_t & utcTime )
Nhận thời gian hiện tại theo nền tảng UTC là giây.
Thông tin chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Các thông số |
|
||||||||
Giá trị trả về |
|
Nhận nhóm
WEAVE_ERROR GetGroupKey( uint32_t keyId, WeaveGroupKey & groupKey )
Nhận khóa nhóm ứng dụng.
Hàm này lấy hoặc truy xuất khóa nhóm ứng dụng. Các loại khóa được chức năng này hỗ trợ là: khóa bí mật, khóa gốc, khóa epoch, khóa chính của nhóm và khóa trung gian.
Thông tin chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Các thông số |
|
||||||||
Giá trị trả về |
|
Khóa truy xuất
virtual WEAVE_ERROR RetrieveGroupKey( uint32_t keyId, WeaveGroupKey & key )=0
Khóa nhóm cửa hàng
virtual WEAVE_ERROR StoreGroupKey( const WeaveGroupKey & key )=0
Hàm được bảo vệ
Số nguyên
void Init( void )
Khởi tạo thông số cửa hàng chính của nhóm cục bộ.
OnEpochKeysChange
void OnEpochKeysChange( void )
Trả về mã khoá hiện tại.
Đặt các biến thành phần được liên kết với các khóa epoch về giá trị mặc định khi có bất kỳ thay đổi nào (xóa hoặc lưu trữ) xảy ra với tập hợp các khóa epoch của ứng dụng. Lớp con triển khai các hàm StoreGroupKey(), DeleteGroupKey() và DeleteGroupKeysOfAType() để đảm bảo trách nhiệm của lớp này sẽ gọi phương thức này.