nl::Weave::Profiles::Security::CertProvisioning::WeaveNodeOpAuthDelegate

Đâ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 hành động cụ thể của nền tảng được uỷ quyền trong quá trình xác thực hoạt động của nút Weave.

Tóm tắt

Hàm công khai

EncodeOpCert(TLVWriter & writer, uint64_t tag)=0
virtual WEAVE_ERROR
Mã hoá chứng chỉ hoạt động của Weave cho nút cục bộ.
EncodeOpRelatedCerts(TLVWriter & writer, uint64_t tag)=0
virtual WEAVE_ERROR
Mã hoá mảng chứng chỉ liên quan đến chứng chỉ hoạt động của nút.
GenerateAndEncodeOpSig(const uint8_t *hash, uint8_t hashLen, TLVWriter & writer, uint64_t tag)=0
virtual WEAVE_ERROR
Tạo và mã hoá chữ ký hoạt động bằng khoá riêng tư hoạt động của nút cục bộ.

Hàm công khai

EncodeOpCert

virtual WEAVE_ERROR EncodeOpCert(
  TLVWriter & writer,
  uint64_t tag
)=0

Mã hoá chứng chỉ hoạt động của Weave cho nút cục bộ.

Khi được gọi, quá trình triển khai phải ghi một chứng chỉ hoạt động của nút cục bộ. Sau đó, bạn nên viết chứng chỉ hoạt động ở dạng cấu trúc WeaveCertificate cho trình ghi TLV được cung cấp bằng cách sử dụng thẻ đã chỉ định.

EncodeOpRelatedCerts

virtual WEAVE_ERROR EncodeOpRelatedCerts(
  TLVWriter & writer,
  uint64_t tag
)=0

Mã hoá mảng chứng chỉ liên quan đến chứng chỉ hoạt động của nút.

Khi được gọi, quá trình triển khai sẽ ghi các chứng chỉ liên quan đến chứng chỉ hoạt động của nút cục bộ. Sau đó, các chứng chỉ liên quan sẽ được ghi dưới dạng một mảng cấu trúc WeaveCertificate vào trình ghi TLV được cung cấp bằng cách sử dụng thẻ đã chỉ định.

GenerateAndEncodeOpSig

virtual WEAVE_ERROR GenerateAndEncodeOpSig(
  const uint8_t *hash,
  uint8_t hashLen,
  TLVWriter & writer,
  uint64_t tag
)=0

Tạo và mã hoá chữ ký hoạt động bằng khoá riêng tư hoạt động của nút cục bộ.

Khi được gọi, các phương thức triển khai phải tính toán chữ ký trên giá trị băm đã cho bằng khoá riêng tư hoạt động của nút. Sau đó, chữ ký đã tạo phải được viết dưới dạng cấu trúc ECDSASignature cho người ghi TLV đã cung cấp bằng thẻ được 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.