nl:: Weave:: Profiles:: Security:: CertProvisioning:: WeaveNodeMfrAttestDelegate
Đây là một lớp trừu tượng.
#include <src/lib/profiles/security/WeaveCertProvisioning.h>
Giao diện trừu tượng mà các thao tác cụ thể của nền tảng được uỷ quyền trong quá trình chứng thực nhà sản xuất nút Weave.
Tóm tắt
Hàm công khai |
|
---|---|
EncodeMAInfo(TLVWriter & writer)=0
|
virtual WEAVE_ERROR
Mã hoá thông tin chứng thực của nhà sản xuất Weave cho nút cục bộ.
|
GenerateAndEncodeMASig(const uint8_t *data, uint16_t dataLen, TLVWriter & writer)=0
|
virtual WEAVE_ERROR
Tạo và mã hoá chữ ký chứng thực nhà sản xuất bằng khoá riêng tư chứng thực nhà sản xuất của nút cục bộ.
|
Hàm công khai
EncodeMAInfo
virtual WEAVE_ERROR EncodeMAInfo( TLVWriter & writer )=0
Mã hoá thông tin chứng thực nhà sản xuất Weave cho nút cục bộ.
Khi được gọi, quy trình triển khai phải ghi một cấu trúc có chứa thông tin dùng để chứng thực nhà sản xuất của nút. Thông tin chứng thực của nhà sản xuất phải được ghi ở dạng cấu trúc TLV cho trình ghi TLV được cung cấp bằng cách sử dụng thẻ dành riêng cho Hồ sơ bảo mật.
GenerateAndEncodeMASig
virtual WEAVE_ERROR GenerateAndEncodeMASig( const uint8_t *data, uint16_t dataLen, TLVWriter & writer )=0
Tạo và mã hoá chữ ký chứng thực nhà sản xuất bằng khoá riêng tư chứng thực nhà sản xuất của nút cục bộ.
Khi được gọi, các quy trình triển khai phải tính toán chữ ký trên giá trị hàm băm đã cho bằng cách sử dụng khoá riêng tư chứng thực của nhà sản xuất của nút.
Trước tiên, giá trị được liệt kê xác định thuật toán chữ ký chứng thực của nhà sản xuất phải được ghi dưới dạng số nguyên chưa ký vào trình ghi TLV được cung cấp bằng cách sử dụng thẻ sau: kTag_GetCertReqMsg_MfrAttestSigAlgo Các giá trị được liệt kê hợp pháp được lấy từ không gian tên hằng số kOID_SigAlgo_*.
Sau đó, chữ ký được tạo sẽ được ghi dưới dạng ECDSASignature, RSASignature, HMACSignature hoặc cấu trúc tuỳ chỉnh vào trình ghi TLV được cung cấp bằng một trong các thẻ sau: kTag_GetCertReqMsg_MfrAttestSig_ECDSA kTag_GetCertReqMsg_MfrAttestSig_RSA kTag_GetCertReqMsg_MfrAttestSig_HMAC thẻ cụ thể cho hồ sơ bảo mật tuỳ chỉnh
Lưu ý: trong trường hợp khoá riêng tư Elliptic Curve tương ứng của nút được lưu giữ trong vùng đệm cục bộ, thì hàm tiện ích GenerateAndEncodeWeaveECDSASignature() có thể hữu ích để triển khai phương thức này.