Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.
Trang này được dịch bởi Cloud Translation API.
Switch to English

nl :: Dệt :: WeaveKeyId

#include <src/lib/core/WeaveKeyIds.h>

Định nghĩa của mã định danh Weave Key.

Tóm lược

Lớp này chứa các loại khóa, cờ khóa, định nghĩa trường ID khóa và các hàm API.

Các loại công khai

@52 {
kType_None = 0x00000000,
kType_General = 0x00001000,
kType_Session = 0x00002000,
kType_AppStaticKey = 0x00004000,
kType_AppRotatingKey = kType_AppStaticKey | kTypeModifier_IncorporatesEpochKey,
kType_AppRootKey = 0x00010000,
kType_AppEpochKey = 0x00020000 | kTypeModifier_IncorporatesEpochKey,
kType_AppGroupMasterKey = 0x00030000,
kType_AppIntermediateKey = kType_AppRootKey | kTypeModifier_IncorporatesEpochKey,
kNone = kType_None | 0x0000,
kFabricSecret = kType_General | 0x0001,
kFabricRootKey = kType_AppRootKey | (0 << kShift_RootKeyNumber),
kClientRootKey = kType_AppRootKey | (1 << kShift_RootKeyNumber),
kServiceRootKey = kType_AppRootKey | (2 << kShift_RootKeyNumber),
kKeyNumber_Max = kMask_KeyNumber
}
enum
Các trường, cờ và loại khóa ID của Public Weave.

Chức năng tĩnh công khai

ConvertToCurrentAppKeyId (uint32_t keyId)
uint32_t
Chuyển đổi ID khóa nhóm ứng dụng thành ID khóa hiện tại của ứng dụng.
ConvertToStaticAppKeyId (uint32_t keyId)
uint32_t
Chuyển đổi ID khóa ứng dụng thành ID khóa tĩnh của ứng dụng.
DescribeKey (uint32_t keyId)
const char *
Giải mã mã nhận dạng khóa Weave bằng chuỗi mô tả.
GetAppGroupLocalNumber (uint32_t keyId)
uint8_t
Nhận số cục bộ của nhóm ứng dụng đã được sử dụng để lấy khóa ứng dụng được chỉ định.
GetAppGroupMasterKeyId (uint32_t keyId)
uint32_t
Nhận ID khóa chính của nhóm ứng dụng đã được sử dụng để lấy khóa ứng dụng được chỉ định.
GetEpochKeyId (uint32_t keyId)
uint32_t
Nhận ID khóa kỷ nguyên của nhóm ứng dụng đã được sử dụng để lấy khóa ứng dụng được chỉ định.
GetEpochKeyNumber (uint32_t keyId)
uint8_t
Nhận số khóa kỷ nguyên của nhóm ứng dụng đã được sử dụng để lấy khóa ứng dụng đã chỉ định.
GetRootKeyId (uint32_t keyId)
uint32_t
Nhận ID khóa gốc của nhóm ứng dụng đã được sử dụng để lấy khóa ứng dụng được chỉ định.
GetRootKeyNumber (uint32_t keyId)
uint8_t
Nhận số khóa gốc của nhóm ứng dụng đã được sử dụng để lấy khóa ứng dụng đã chỉ định.
GetType (uint32_t keyId)
uint32_t
Nhận loại khóa Weave của ID khóa được chỉ định.
IncorporatesAppGroupMasterKey (uint32_t keyId)
bool
Xác định xem ID khóa nhóm ứng dụng đã chỉ định có kết hợp khóa chính nhóm hay không.
IncorporatesEpochKey (uint32_t keyId)
bool
Xác định xem ID khóa nhóm ứng dụng được chỉ định có kết hợp khóa kỷ nguyên hay không.
IncorporatesRootKey (uint32_t keyId)
bool
Xác định xem ID khóa nhóm ứng dụng được chỉ định có kết hợp khóa gốc hay không.
IsAppEpochKey (uint32_t keyId)
bool
Xác định xem ID khóa được chỉ định có thuộc loại khóa kỷ nguyên ứng dụng hay không.
IsAppGroupKey (uint32_t keyId)
bool
Xác định xem ID khóa được chỉ định có thuộc một trong các loại khóa của nhóm ứng dụng (tĩnh hoặc xoay) hay không.
IsAppGroupMasterKey (uint32_t keyId)
bool
Xác định xem ID khóa được chỉ định có thuộc loại khóa chính của nhóm ứng dụng hay không.
IsAppRootKey (uint32_t keyId)
bool
Xác định xem ID khóa được chỉ định có thuộc loại khóa gốc của ứng dụng hay không.
IsAppRotatingKey (uint32_t keyId)
bool
Xác định xem ID khóa được chỉ định có thuộc loại xoay ứng dụng hay không.
IsAppStaticKey (uint32_t keyId)
bool
Xác định xem ID khóa được chỉ định có thuộc loại tĩnh ứng dụng hay không.
IsGeneralKey (uint32_t keyId)
bool
Xác định xem ID khóa được chỉ định có thuộc loại chung hay không.
IsMessageEncryptionKeyId (uint32_t keyId, bool allowLogicalKeys)
bool
Xác định xem một ID khóa nhất định có xác định khóa phù hợp với mã hóa tin nhắn Weave hay không.
IsSameKeyOrGroup (uint32_t keyId1, uint32_t keyId2)
bool
Xác định xem hai ID khóa có xác định cùng một khóa hay trong trường hợp khóa xoay, cùng một nhóm khóa độc lập với bất kỳ kỷ nguyên cụ thể nào.
IsSessionKey (uint32_t keyId)
bool
Xác định xem ID khóa được chỉ định có thuộc loại phiên hay không.
IsValidKeyId (uint32_t keyId)
bool
Xác định xem từ định danh khóa có giá trị hợp lệ (hợp pháp) hay không.
MakeAppGroupMasterKeyId (uint8_t appGroupLocalNumber)
uint32_t
Xây dựng ID khóa chính của nhóm ứng dụng đã cho số cục bộ của nhóm ứng dụng.
MakeAppIntermediateKeyId (uint32_t rootKeyId, uint32_t epochKeyId, bool useCurrentEpochKey)
uint32_t
Xây dựng ID khóa trung gian của ứng dụng đã cho các ID khóa cấu thành.
MakeAppKeyId (uint32_t keyType, uint32_t rootKeyId, uint32_t epochKeyId, uint32_t appGroupMasterKeyId, bool useCurrentEpochKey)
uint32_t
Xây dựng ID khóa của nhóm ứng dụng đã cung cấp các ID khóa cấu thành và thông tin khác.
MakeAppRotatingKeyId (uint32_t rootKeyId, uint32_t epochKeyId, uint32_t appGroupMasterKeyId, bool useCurrentEpochKey)
uint32_t
Xây dựng ID khóa xoay ứng dụng đã cung cấp ID khóa cấu thành và thông tin khác.
MakeAppStaticKeyId (uint32_t rootKeyId, uint32_t appGroupMasterKeyId)
uint32_t
Xây dựng ID khóa tĩnh của ứng dụng đã cho các ID khóa cấu thành.
MakeEpochKeyId (uint8_t epochKeyNumber)
uint32_t
Xây dựng ID khóa gốc của nhóm ứng dụng đã cho số khóa kỷ nguyên.
MakeGeneralKeyId (uint16_t generalKeyNumber)
uint16_t
Tạo ID khóa chung cho số khóa chung.
MakeRootKeyId (uint8_t rootKeyNumber)
uint32_t
Xây dựng ID khóa gốc của nhóm ứng dụng đã cho số khóa gốc.
MakeSessionKeyId (uint16_t sessionKeyNumber)
uint16_t
Tạo ID khóa phiên đã cho số khóa phiên.
UpdateEpochKeyId (uint32_t keyId, uint32_t epochKeyId)
uint32_t
Cập nhật ID khóa nhóm ứng dụng với số khóa kỷ nguyên mới.
UsesCurrentEpochKey (uint32_t keyId)
bool
Xác định xem ID khóa nhóm ứng dụng được chỉ định có sử dụng khóa kỷ nguyên "hiện tại" hay không.

Các loại công khai

@ 52

 @52

Các trường, cờ và loại khóa ID của Public Weave.

Tính chất
kClientRootKey

ID khóa gốc của ứng dụng khách.

kFabricRootKey

ID khóa gốc của vải.

kFabricSecret

Dệt vải ID bí mật.

kKeyNumber_Max

Giá trị tối đa cho các trường con ID chính.

kNone

Tạo ID khóa toàn cầu.

ID khóa Weave không xác định.

kServiceRootKey

ID khóa gốc của dịch vụ.

kType_AppEpochKey

Loại khóa kỷ nguyên nhóm ứng dụng.

kType_AppGroupMasterKey

Loại khóa chính của nhóm ứng dụng.

kType_AppIntermediateKey

Nhóm ứng dụng loại khóa trung gian.

kType_AppRootKey

Weave các loại khóa (khác với các loại mã hóa tin nhắn Weave).

kType_AppRotatingKey

Loại phím xoay ứng dụng.

kType_AppStaticKey

Loại khóa tĩnh ứng dụng.

kType_General

Loại khóa chung.

kType_None

Loại khóa Weave được sử dụng để mã hóa tin nhắn Weave.

kType_Session

Loại khóa phiên.

Chức năng tĩnh công khai

ConvertToCurrentAppKeyId

uint32_t ConvertToCurrentAppKeyId(
  uint32_t keyId
)

Chuyển đổi ID khóa nhóm ứng dụng thành ID khóa hiện tại của ứng dụng.

Chi tiết
Thông số
[in] keyId
ID khóa ứng dụng.
Lợi nhuận
ID khóa hiện tại của ứng dụng.

ConvertToStaticAppKeyId

uint32_t ConvertToStaticAppKeyId(
  uint32_t keyId
)

Chuyển đổi ID khóa ứng dụng thành ID khóa tĩnh của ứng dụng.

Chi tiết
Thông số
[in] keyId
ID khóa ứng dụng.
Lợi nhuận
ID khóa tĩnh của ứng dụng.

DescribeKey

const char * DescribeKey(
  uint32_t keyId
)

Giải mã mã nhận dạng khóa Weave bằng chuỗi mô tả.

Chi tiết
Thông số
[in] keyId
Tạo ID khóa để giải mã và để trả về chuỗi mô tả.
Lợi nhuận
Một con trỏ đến một chuỗi được kết thúc bằng NULL mô tả ID khóa được chỉ định.

GetAppGroupLocalNumber

uint8_t GetAppGroupLocalNumber(
  uint32_t keyId
)

Nhận số cục bộ của nhóm ứng dụng đã được sử dụng để lấy khóa ứng dụng được chỉ định.

Chi tiết
Thông số
[in] keyId
Dệt mã nhận dạng khóa của nhóm ứng dụng.
Lợi nhuận
số địa phương của nhóm ứng dụng.

GetAppGroupMasterKeyId

uint32_t GetAppGroupMasterKeyId(
  uint32_t keyId
)

Nhận ID khóa chính của nhóm ứng dụng được sử dụng để lấy khóa ứng dụng được chỉ định.

Chi tiết
Thông số
[in] keyId
Dệt mã nhận dạng khóa của nhóm ứng dụng.
Lợi nhuận
ID khóa chính của nhóm ứng dụng.

GetEpochKeyId

uint32_t GetEpochKeyId(
  uint32_t keyId
)

Nhận ID khóa kỷ nguyên của nhóm ứng dụng được sử dụng để lấy khóa ứng dụng được chỉ định.

Chi tiết
Thông số
[in] keyId
Dệt mã nhận dạng khóa của nhóm ứng dụng.
Lợi nhuận
ID khóa kỷ nguyên.

GetEpochKeyNumber

uint8_t GetEpochKeyNumber(
  uint32_t keyId
)

Nhận số khóa kỷ nguyên của nhóm ứng dụng đã được sử dụng để lấy khóa ứng dụng đã chỉ định.

Chi tiết
Thông số
[in] keyId
Dệt mã nhận dạng khóa của nhóm ứng dụng.
Lợi nhuận
số khóa kỷ nguyên.

GetRootKeyId

uint32_t GetRootKeyId(
  uint32_t keyId
)

Nhận ID khóa gốc của nhóm ứng dụng đã được sử dụng để lấy khóa ứng dụng được chỉ định.

Chi tiết
Thông số
[in] keyId
Dệt mã nhận dạng khóa của nhóm ứng dụng.
Lợi nhuận
ID khóa gốc.

GetRootKeyNumber

uint8_t GetRootKeyNumber(
  uint32_t keyId
)

Nhận số khóa gốc của nhóm ứng dụng đã được sử dụng để lấy khóa ứng dụng đã chỉ định.

Chi tiết
Thông số
[in] keyId
Dệt mã nhận dạng khóa của nhóm ứng dụng.
Lợi nhuận
số khóa gốc.

GetType

uint32_t GetType(
  uint32_t keyId
)

Nhận loại khóa Weave của ID khóa được chỉ định.

Chi tiết
Thông số
[in] keyId
Tạo mã định danh chính.
Lợi nhuận
loại ID khóa.

Hợp nhấtAppGroupMasterKey

bool IncorporatesAppGroupMasterKey(
  uint32_t keyId
)

Xác định xem ID khóa nhóm ứng dụng đã chỉ định có kết hợp khóa chính nhóm hay không.

Chi tiết
Thông số
[in] keyId
Dệt mã nhận dạng khóa của nhóm ứng dụng.
Lợi nhuận
true nếu keyId kết hợp khóa chính của nhóm.

Hợp nhấtEpochKey

bool IncorporatesEpochKey(
  uint32_t keyId
)

Xác định xem ID khóa nhóm ứng dụng được chỉ định có kết hợp khóa kỷ nguyên hay không.

Chi tiết
Thông số
[in] keyId
Dệt mã nhận dạng khóa của nhóm ứng dụng.
Lợi nhuận
true nếu keyId kết hợp phím kỷ nguyên.

Kết hợpRootKey

bool IncorporatesRootKey(
  uint32_t keyId
)

Xác định xem ID khóa nhóm ứng dụng được chỉ định có kết hợp khóa gốc hay không.

Chi tiết
Thông số
[in] keyId
Dệt mã nhận dạng khóa của nhóm ứng dụng.
Lợi nhuận
true nếu keyId kết hợp khóa gốc.

IsAppEpochKey

bool IsAppEpochKey(
  uint32_t keyId
)

Xác định xem ID khóa được chỉ định có thuộc loại khóa kỷ nguyên ứng dụng hay không.

Chi tiết
Thông số
[in] keyId
Tạo mã định danh chính.
Lợi nhuận
true nếu keyId của loại khóa kỷ nguyên ứng dụng.

IsAppGroupKey

bool IsAppGroupKey(
  uint32_t keyId
)

Xác định xem ID khóa được chỉ định có thuộc một trong các loại khóa của nhóm ứng dụng (tĩnh hoặc xoay) hay không.

Chi tiết
Thông số
[in] keyId
Tạo mã định danh chính.
Lợi nhuận
true nếu keyId thuộc loại phím xoay hoặc phím tĩnh.

IsAppGroupMasterKey

bool IsAppGroupMasterKey(
  uint32_t keyId
)

Xác định xem ID khóa được chỉ định có thuộc loại khóa chính của nhóm ứng dụng hay không.

Chi tiết
Thông số
[in] keyId
Tạo mã định danh chính.
Lợi nhuận
true nếu keyId của loại khóa chính nhóm ứng dụng.

IsAppRootKey

bool IsAppRootKey(
  uint32_t keyId
)

Xác định xem ID khóa được chỉ định có thuộc loại khóa gốc của ứng dụng hay không.

Chi tiết
Thông số
[in] keyId
Tạo mã định danh chính.
Lợi nhuận
true nếu keyId của loại khóa gốc ứng dụng.

IsAppRotatingKey

bool IsAppRotatingKey(
  uint32_t keyId
)

Xác định xem ID khóa được chỉ định có thuộc loại xoay ứng dụng hay không.

Chi tiết
Thông số
[in] keyId
Tạo mã định danh chính.
Lợi nhuận
true nếu keyId của một loại ứng dụng xoay vòng.

IsAppStaticKey

bool IsAppStaticKey(
  uint32_t keyId
)

Xác định xem ID khóa được chỉ định có thuộc loại tĩnh ứng dụng hay không.

Chi tiết
Thông số
[in] keyId
Tạo mã định danh chính.
Lợi nhuận
true nếu keyId của một ứng dụng kiểu tĩnh.

IsGeneralKey

bool IsGeneralKey(
  uint32_t keyId
)

Xác định xem ID khóa được chỉ định có thuộc loại chung hay không.

Chi tiết
Thông số
[in] keyId
Tạo mã định danh chính.
Lợi nhuận
true nếu keyId có kiểu Chung.

IsMessageEncryptionKeyId

bool IsMessageEncryptionKeyId(
  uint32_t keyId,
  bool allowLogicalKeys
)

Xác định xem một ID khóa nhất định có xác định khóa phù hợp với mã hóa tin nhắn Weave hay không.

Chi tiết
Thông số
[in] keyId
Dệt mã khóa.
[in] allowLogicalKeys
Chỉ định xem ID khóa logic (chẳng hạn như khóa xoay "hiện tại") có được coi là phù hợp để mã hóa tin nhắn hay không.
Lợi nhuận
true Nếu khóa được xác định có thể được sử dụng để mã hóa tin nhắn Weave.

IsSameKeyOrGroup

bool IsSameKeyOrGroup(
  uint32_t keyId1,
  uint32_t keyId2
)

Xác định xem hai ID khóa xác định cùng một khóa hay trong trường hợp khóa xoay, cùng một nhóm khóa độc lập với bất kỳ kỷ nguyên cụ thể nào.

Chi tiết
Thông số
[in] keyId1
ID khóa đầu tiên để kiểm tra.
[in] keyId2
ID khóa thứ hai để kiểm tra.
Lợi nhuận
Đúng nếu ID khóa đại diện cho cùng một khóa.

IsSessionKey

bool IsSessionKey(
  uint32_t keyId
)

Xác định xem ID khóa được chỉ định có thuộc loại phiên hay không.

Chi tiết
Thông số
[in] keyId
Tạo mã định danh chính.
Lợi nhuận
true nếu keyId của một loại phiên.

IsValidKeyId

bool IsValidKeyId(
  uint32_t keyId
)

Xác định xem từ định danh khóa có giá trị hợp lệ (hợp pháp) hay không.

Chi tiết
Thông số
[in] keyId
Dệt mã khóa.
Lợi nhuận
true nếu giá trị ID khóa hợp lệ.

MakeAppGroupMasterKeyId

uint32_t MakeAppGroupMasterKeyId(
  uint8_t appGroupLocalNumber
)

Xây dựng ID khóa chính của nhóm ứng dụng đã cho số cục bộ của nhóm ứng dụng.

Chi tiết
Thông số
[in] appGroupLocalNumber
Số địa phương của nhóm ứng dụng.
Lợi nhuận
ID khóa chính của nhóm ứng dụng.

MakeAppInter InstantKeyId

uint32_t MakeAppIntermediateKeyId(
  uint32_t rootKeyId,
  uint32_t epochKeyId,
  bool useCurrentEpochKey
)

Xây dựng ID khóa trung gian của ứng dụng đã cho các ID khóa cấu thành.

Chi tiết
Thông số
[in] rootKeyId
ID khóa gốc được sử dụng để lấy khóa trung gian của ứng dụng.
[in] epochKeyId
ID khóa Epoch được sử dụng để lấy khóa trung gian của ứng dụng.
[in] useCurrentEpochKey
Cờ boolean cho biết liệu khóa có nên được bắt nguồn bằng khóa kỷ nguyên "hiện tại" hay không.
Lợi nhuận
ID khóa trung gian của ứng dụng.

MakeAppKeyId

uint32_t MakeAppKeyId(
  uint32_t keyType,
  uint32_t rootKeyId,
  uint32_t epochKeyId,
  uint32_t appGroupMasterKeyId,
  bool useCurrentEpochKey
)

Tạo ID khóa của nhóm ứng dụng đã cho các ID khóa cấu thành và thông tin khác.

Chi tiết
Thông số
[in] keyType
Loại khóa nhóm ứng dụng có nguồn gốc.
[in] rootKeyId
ID khóa gốc được sử dụng để lấy khóa nhóm ứng dụng.
[in] epochKeyId
ID khóa Epoch được sử dụng để lấy khóa nhóm ứng dụng.
[in] appGroupMasterKeyId
ID khóa chính của nhóm ứng dụng được sử dụng để lấy khóa nhóm ứng dụng.
[in] useCurrentEpochKey
Cờ boolean cho biết liệu khóa có nên được bắt nguồn bằng khóa kỷ nguyên "hiện tại" hay không.
Lợi nhuận
ID khóa nhóm ứng dụng.

MakeAppRotatingKeyId

uint32_t MakeAppRotatingKeyId(
  uint32_t rootKeyId,
  uint32_t epochKeyId,
  uint32_t appGroupMasterKeyId,
  bool useCurrentEpochKey
)

Xây dựng ID khóa xoay ứng dụng cho các ID khóa cấu thành và thông tin khác.

Chi tiết
Thông số
[in] rootKeyId
ID khóa gốc được sử dụng để lấy khóa xoay ứng dụng.
[in] epochKeyId
ID khóa Epoch được sử dụng để lấy khóa xoay ứng dụng.
[in] appGroupMasterKeyId
ID khóa chính của nhóm ứng dụng được sử dụng để lấy khóa xoay ứng dụng.
[in] useCurrentEpochKey
Cờ boolean cho biết liệu khóa có nên được bắt nguồn bằng khóa kỷ nguyên "hiện tại" hay không.
Lợi nhuận
ID phím xoay ứng dụng.

MakeAppStaticKeyId

uint32_t MakeAppStaticKeyId(
  uint32_t rootKeyId,
  uint32_t appGroupMasterKeyId
)

Xây dựng ID khóa tĩnh ứng dụng đã cho các ID khóa cấu thành.

Chi tiết
Thông số
[in] rootKeyId
ID khóa gốc được sử dụng để lấy khóa tĩnh của ứng dụng.
[in] appGroupMasterKeyId
ID khóa chính của nhóm ứng dụng được sử dụng để lấy khóa tĩnh của ứng dụng.
Lợi nhuận
ID khóa tĩnh của ứng dụng.

MakeEpochKeyId

uint32_t MakeEpochKeyId(
  uint8_t epochKeyNumber
)

Xây dựng ID khóa gốc của nhóm ứng dụng đã cho số khóa kỷ nguyên.

Chi tiết
Thông số
[in] epochKeyNumber
Số khóa kỷ nguyên.
Lợi nhuận
ID khóa kỷ nguyên.

MakeGeneralKeyId

uint16_t MakeGeneralKeyId(
  uint16_t generalKeyNumber
)

Tạo ID khóa chung cho số khóa chung.

Chi tiết
Thông số
[in] generalKeyNumber
Số khóa chung.
Lợi nhuận
ID khóa chung.

MakeRootKeyId

uint32_t MakeRootKeyId(
  uint8_t rootKeyNumber
)

Xây dựng ID khóa gốc của nhóm ứng dụng đã cho số khóa gốc.

Chi tiết
Thông số
[in] rootKeyNumber
Số khóa gốc.
Lợi nhuận
ID khóa gốc.

MakeSessionKeyId

uint16_t MakeSessionKeyId(
  uint16_t sessionKeyNumber
)

Tạo ID khóa phiên đã cho số khóa phiên.

Chi tiết
Thông số
[in] sessionKeyNumber
Số khóa phiên.
Lợi nhuận
ID khóa phiên.

UpdateEpochKeyId

uint32_t UpdateEpochKeyId(
  uint32_t keyId,
  uint32_t epochKeyId
)

Cập nhật ID khóa nhóm ứng dụng với số khóa kỷ nguyên mới.

Chi tiết
Thông số
[in] keyId
ID khóa ứng dụng.
[in] epochKeyId
ID khóa Epoch, sẽ được sử dụng để xây dựng ID khóa ứng dụng được cập nhật.
Lợi nhuận
ID khóa ứng dụng.

UseCurrentEpochKey

bool UsesCurrentEpochKey(
  uint32_t keyId
)

Xác định xem ID khóa nhóm ứng dụng được chỉ định có sử dụng khóa kỷ nguyên "hiện tại" hay không.

Chi tiết
Thông số
[in] keyId
Dệt mã nhận dạng khóa của nhóm ứng dụng.
Lợi nhuận
true nếu keyId cho biết việc sử dụng khóa kỷ nguyên hiện tại.