nl::Weave::Profiles::Security::KeyExport::WeaveKeyExportDelegate

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

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

कुंजी एक्सपोर्ट करने के दौरान पुष्टि करने से जुड़ी अलग-अलग कार्रवाइयां करने के लिए, KeyExport इंजन की मदद से कॉल की जाने वाली ऐब्सट्रैक्ट डेलिगेट क्लास.

खास जानकारी

इनहेरिटेंस

सीधे तौर पर मालूम सब-क्लास: nl::Weave::Profiles::Security::KeyExport::WeaveStandAloneKeyExportClient

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

BeginCertValidation(WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet)=0
virtual WEAVE_ERROR
मिलते-जुलते ऐप्लिकेशन के सर्टिफ़िकेट की पुष्टि करने की तैयारी करें.
EndCertValidation(WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet)=0
virtual WEAVE_ERROR
साथी ऐप्लिकेशन के सर्टिफ़िकेट की पुष्टि करने से जुड़े संसाधन रिलीज़ करें.
GenerateNodeSignature(WeaveKeyExport *keyExport, const uint8_t *msgHash, uint8_t msgHashLen, TLVWriter & writer)=0
virtual WEAVE_ERROR
कुंजी एक्सपोर्ट मैसेज के लिए हस्ताक्षर जनरेट करें.
GetNodeCertSet(WeaveKeyExport *keyExport, WeaveCertificateSet & certSet)=0
virtual WEAVE_ERROR
लोकल नोड के लिए कुंजी एक्सपोर्ट सर्टिफ़िकेट का सेट पाएं.
HandleCertValidationResult(WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet, uint32_t requestedKeyId)=0
virtual WEAVE_ERROR
मिलते-जुलते ऐप्लिकेशन के सर्टिफ़िकेट की पुष्टि करने के नतीजों को प्रोसेस करें.
ReleaseNodeCertSet(WeaveKeyExport *keyExport, WeaveCertificateSet & certSet)=0
virtual WEAVE_ERROR
नोड का सर्टिफ़िकेट सेट रिलीज़ करें.
ValidateUnsignedKeyExportMessage(WeaveKeyExport *keyExport, uint32_t requestedKeyId)=0
virtual WEAVE_ERROR
साइन नहीं किए गए 'की' एक्सपोर्ट मैसेज की सुरक्षा की पुष्टि करें.

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

BeginCertValidation

virtual WEAVE_ERROR BeginCertValidation(
  WeaveKeyExport *keyExport,
  ValidationContext & validCtx,
  WeaveCertificateSet & certSet
)=0

मिलते-जुलते ऐप्लिकेशन के सर्टिफ़िकेट की पुष्टि करने की तैयारी करें.

सर्टिफ़िकेट की पुष्टि की शुरुआत में कॉल किया जाता है. यह तरीका, दिए गए सर्टिफ़िकेट के सेट और उसकी पुष्टि करने के कॉन्टेक्स्ट को तैयार करता है, ताकि पीयर नोड के सर्टिफ़िकेट की पुष्टि की जा सके. लागू करने के लिए, दिए गए WeaveCertificateSet ऑब्जेक्ट को शुरू करना ज़रूरी होता है. इसमें, आने वाले समय में होने वाले सर्टिफ़िकेट की पुष्टि को मैनेज करने के लिए, ज़रूरी संसाधन उपलब्ध होते हैं. लागू करने के तरीके को, सर्टिफ़िकेट सेट में सभी ज़रूरी भरोसेमंद रूट या CA सर्टिफ़िकेट भी लोड करने होंगे.

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

यह लागू करने की ज़रूरत होती है, ताकि BeginCertValidation() के दौरान बांटे गए सभी संसाधनों को तब तक बनाए रखा जा सके, जब तक कि EndCertValidation() को कॉल नहीं किया जाता. लागू करने की इस बात की गारंटी दी जाती है कि BeginCertValidation() पर किए गए हर सफल कॉल के लिए, EndCertValidation() को सिर्फ़ एक बार कॉल किया जाएगा.

EndCertValidation

virtual WEAVE_ERROR EndCertValidation(
  WeaveKeyExport *keyExport,
  ValidationContext & validCtx,
  WeaveCertificateSet & certSet
)=0

साथी ऐप्लिकेशन के सर्टिफ़िकेट की पुष्टि करने से जुड़े संसाधन रिलीज़ करें.

यह कॉल तब कॉल किया जाता है, जब पीयर सर्टिफ़िकेट की पुष्टि और अनुरोध की पुष्टि की प्रक्रिया पूरी हो जाती है.

GenerateNodeSignature

virtual WEAVE_ERROR GenerateNodeSignature(
  WeaveKeyExport *keyExport,
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  TLVWriter & writer
)=0

कुंजी एक्सपोर्ट मैसेज के लिए हस्ताक्षर जनरेट करें.

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

GetNodeCertSet

virtual WEAVE_ERROR GetNodeCertSet(
  WeaveKeyExport *keyExport,
  WeaveCertificateSet & certSet
)=0

लोकल नोड के लिए कुंजी एक्सपोर्ट सर्टिफ़िकेट का सेट पाएं.

यह तब कॉल किया जाता है जब कुंजी एक्सपोर्ट इंजन, कुंजी एक्सपोर्ट मैसेज पर हस्ताक्षर करने की तैयारी कर रहा हो. इस तरीके की मदद से, सर्टिफ़िकेट सेट शुरू करने और उन सभी सर्टिफ़िकेट को लोड करने की ज़िम्मेदारी होती है जिन्हें मैसेज के हस्ताक्षर में शामिल किया जाएगा या जिसका रेफ़रंस दिया जाएगा. लोड किया गया आखिरी सर्टिफ़िकेट, साइनिंग सर्टिफ़िकेट होना चाहिए.

HandleCertValidationResult

virtual WEAVE_ERROR HandleCertValidationResult(
  WeaveKeyExport *keyExport,
  ValidationContext & validCtx,
  WeaveCertificateSet & certSet,
  uint32_t requestedKeyId
)=0

मिलते-जुलते ऐप्लिकेशन के सर्टिफ़िकेट की पुष्टि करने के नतीजों को प्रोसेस करें.

पीयर नोड के प्रमाणपत्र की पुष्टि हो जाने पर इसे कॉल किया जाता है. यह तरीका सिर्फ़ तब लागू होता है, जब सर्टिफ़िकेट की पुष्टि पूरी हो जाती है. लागू करने की प्रोसेस, इस कॉल का इस्तेमाल पुष्टि के नतीजों की जांच करने के लिए कर सकती है. इससे नतीजे में गड़बड़ी हो सकती है.

रिस्पॉन्स देने वाले नोड के लिए, इस तरीके से यह पुष्टि की जानी चाहिए कि अनुरोध करने वाले की अनुमति मिली है, ताकि अनुरोध की गई कुंजी एक्सपोर्ट की जा सके.

शुरुआती नोड के लिए, इस तरीके से यह पुष्टि की जानी चाहिए कि पुष्टि किए गए सर्टिफ़िकेट से उस पीयर की सही पहचान होती है जिसे कुंजी एक्सपोर्ट का अनुरोध भेजा गया था.

ReleaseNodeCertSet

virtual WEAVE_ERROR ReleaseNodeCertSet(
  WeaveKeyExport *keyExport,
  WeaveCertificateSet & certSet
)=0

नोड का सर्टिफ़िकेट सेट रिलीज़ करें.

यह तब कॉल किया जाता है जब कुंजी एक्सपोर्ट इंजन, GetNodeCertSet() से मिले सर्टिफ़िकेट के सेट की मदद से पूरा होता है.

ValidateUnsignedKeyExportMessage

virtual WEAVE_ERROR ValidateUnsignedKeyExportMessage(
  WeaveKeyExport *keyExport,
  uint32_t requestedKeyId
)=0

साइन नहीं किए गए 'की' एक्सपोर्ट मैसेज की सुरक्षा की पुष्टि करें.

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

रिस्पॉन्स देने वाले नोड के लिए, अनुरोध की गई कुंजी को एक्सपोर्ट करने का तरीका शुरू करने वाले के अधिकार की पुष्टि करना ज़रूरी है.

शुरुआती नोड के लिए, इस तरीके से इस बात की पुष्टि की जानी चाहिए कि मैसेज उस पीयर से सही तरीके से आया है जिसे कुंजी एक्सपोर्ट करने का अनुरोध भेजा गया था.