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

यह एक ऐब्सट्रैक्ट क्लास है.

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

ऐब्स्ट्रैक्ट इंटरफ़ेस जिसमें Weave नोड मैन्युफ़ैक्चरर की पुष्टि के दौरान, प्लैटफ़ॉर्म के हिसाब से कार्रवाइयां असाइन की जाती हैं.

खास जानकारी

सार्वजनिक फ़ंक्शन

EncodeMAInfo(TLVWriter & writer)=0
virtual WEAVE_ERROR
लोकल नोड के लिए Weave मैन्युफ़ैक्चरर के प्रमाणित करने से जुड़ी जानकारी को एन्कोड करें.
GenerateAndEncodeMASig(const uint8_t *data, uint16_t dataLen, TLVWriter & writer)=0
virtual WEAVE_ERROR
लोकल नोड मैन्युफ़ैक्चरर की पुष्टि करने वाली निजी कुंजी का इस्तेमाल करके, मैन्युफ़ैक्चरर के प्रमाणित करने का हस्ताक्षर जनरेट करें और उसे कोड में बदलें.

सार्वजनिक फ़ंक्शन

EncodeMAInfo

virtual WEAVE_ERROR EncodeMAInfo(
  TLVWriter & writer
)=0

लोकल नोड के लिए Weave मैन्युफ़ैक्चरर के प्रमाणित करने से जुड़ी जानकारी को एन्कोड करें.

लागू किए जाने पर, लागू करने की प्रोसेस को एक स्ट्रक्चर लिखना चाहिए, जिसमें नोड के मैन्युफ़ैक्चरर की पुष्टि करने के लिए इस्तेमाल की जाने वाली जानकारी शामिल हो. मैन्युफ़ैक्चरर की पुष्टि करने की जानकारी, सुरक्षा प्रोफ़ाइल से जुड़े टैग का इस्तेमाल करके, दिए गए TLV लेखक के लिए, TLV स्ट्रक्चर के तौर पर लिखी जानी चाहिए.

GenerateAndEncodeMASig

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

लोकल नोड मैन्युफ़ैक्चरर की पुष्टि करने वाली निजी कुंजी का इस्तेमाल करके, मैन्युफ़ैक्चरर के प्रमाणित करने का हस्ताक्षर जनरेट करें और उसे कोड में बदलें.

शुरू किए जाने पर, लागू करने के तरीके को नोड के निर्माता की पुष्टि करने वाली निजी कुंजी का इस्तेमाल करके दिए गए हैश मान पर हस्ताक्षर की गणना करनी चाहिए.

सबसे पहले, मैन्युफ़ैक्चरर के प्रमाणित करने से जुड़े हस्ताक्षर एल्गोरिदम की पहचान करने वाले इन्यूमरेटेड वैल्यू को, दिए गए TLV लेखक के लिए, बिना सिग्नेचर वाले पूर्णांक के तौर पर लिखा जाना चाहिए. इसके लिए, इस टैग का इस्तेमाल किया जाना चाहिए: kTag_GetCertReqMsg_MfrAttestSigAlgo कानूनी तय वैल्यू, kOID_SigAlgo_* कॉन्स्टेंट नेमस्पेस से ली जाती हैं.

इसके बाद, जनरेट किए गए हस्ताक्षर को TLV लेखक के लिए, ECDSASignature, आरएसए सिग्नेचर, HMACSignature या कस्टम स्ट्रक्चर के तौर पर लिखा जाना चाहिए. इसके लिए, इनमें से किसी एक टैग का इस्तेमाल किया जाना चाहिए: kTag_GetCertReqMsg_MfrAttestSig_ECDSA kTag_GetCertReqMsg_MfrAttestSig_RSA कस्टम

ध्यान दें: ऐसे मामलों में जहां नोड से जुड़े Elliptic Curve निजी कुंजी स्थानीय बफ़र में रखी जाती है वहां GenerateAndEncodeWeaveECDSASignature() सुविधा का इस्तेमाल इस तरीके को लागू करने में किया जा सकता है.