nl::Weave::Profiles::Security::CertProvisioning::WeaveNodeMfrAttestDelegate

זו כיתה מופשטת.

#include <src/lib/profiles/security/WeaveCertProvisioning.h>

ממשק מופשט שאליו מועברות פעולות ספציפיות לפלטפורמה במהלך אימות (attestation) יצרן של צמתים ב-Weave.

סיכום

תפקידים ציבוריים

EncodeMAInfo(TLVWriter & writer)=0
virtual WEAVE_ERROR
קידוד פרטי האימות של יצרן Weave עבור הצומת המקומי.
GenerateAndEncodeMASig(const uint8_t *data, uint16_t dataLen, TLVWriter & writer)=0
virtual WEAVE_ERROR
יצירה וקידוד של חתימת האימות של היצרן באמצעות המפתח הפרטי לאימות (attestation) של היצרן של הצומת המקומי.

תפקידים ציבוריים

EncodeMAInfo

virtual WEAVE_ERROR EncodeMAInfo(
  TLVWriter & writer
)=0

קידוד פרטי האימות של יצרן Weave עבור הצומת המקומי.

כשההטמעה מופעלת, היא צריכה לכתוב מבנה שמכיל מידע שמשמש לאימות (attestation) של יצרן הצומת. את פרטי האימות של היצרן צריך לכתוב במבנה TLV לכותב ה-TLV שסופק, באמצעות התג הספציפי לפרופיל אבטחה.

GenerateAndEncodeMASig

virtual WEAVE_ERROR GenerateAndEncodeMASig(
  const uint8_t *data,
  uint16_t dataLen,
  TLVWriter & writer
)=0

יצירה וקידוד של חתימת האימות של היצרן באמצעות המפתח הפרטי לאימות (attestation) של היצרן של הצומת המקומי.

כשההטמעות מופעלות, הן חייבות לחשב חתימה בערך הגיבוב (hash) הנתון באמצעות המפתח הפרטי לאימות (attestation) של היצרן של הצומת.

תחילה, צריך לכתוב את הערך המספרי שמזהה את אלגוריתם חתימת האימות של היצרן בצורת מספר שלם לא מזוהה לכותב ה-TLV שסופק באמצעות התג הבא: kTag_GetCertReqMsg_MfrAttestSigAlgo Legal הערכים הנמדדים נלקחים ממרחב השמות הקבוע kOID_SigAlgo_*.

לאחר מכן צריך לכתוב את החתימה שנוצרה בצורה של ECDSASignature, RSASignature, HMACSignature או במבנה מותאם אישית בכותב ה-TLV שסופק, בעזרת אחד מהתגים הבאים: kTag_GetCertReqMsg_MfrAttestSig_ECDSA kTag_GetCertReqMsg_MfrAttestSig_MACer_Atigtests

הערה: במקרים שבהם המפתח הפרטי התואם ל-Eliptic Curve שמור במאגר נתונים זמני מקומי, פונקציית השירות GenerateAndEncodeWeaveECDSASignature() יכולה להיות שימושית ליישום השיטה הזו.