تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

nl::Weave::الملفات الشخصية::الأمان::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
التحقُّق من أمان رسالة تصدير مفتاح غير موقَّعة

وظائف عامة

الصِحّة المبدوءة

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

التحضير للتحقّق من صحة شهادة الزملاء.

تم استدعاء في بداية التحقق من الشهادة. وتكون هذه الطريقة مسؤولة عن إعداد مجموعة الشهادات المُقدَّمة وسياق التحقُّق بغرض استخدامها في التحقُّق من صحة عقدة الزملاء، يجب أن تؤدي عمليات التنفيذ إلى إعداد العنصر WeaveCertificateSet المُقدَّم مع موارد كافية لمعالجة التحقق من صحة الشهادة القادمة. ويجب أن يحمّل التنفيذ أيضًا أي شهادات جذر أو شهادات CA ضرورية إلى مجموعة الشهادات.

سيتم إعداد سياق التحقّق من الصحة المزوّد بمجموعة من معايير التحقّق التلقائية، وقد يتغير التنفيذ حسب الضرورة. يجب أن يحدد التنفيذ حقل effectiveTime، أو تعيين علامات التحقق المناسبة لإيقاف التحقق من صلاحية الشهادة مدى الحياة.

ويتطلّب التنفيذ الاحتفاظ بأي موارد مُخصَّصة أثناء StartCertCertation() حتى يتم استدعاء EndCertvalidation(). تضمن عمليات التنفيذ أن استدعاء EndCertvalidation() مرة واحدة فقط لكل استدعاء ناجح إلى StartCertValidation().

مرات نهاية التحقق

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

إنشاء توقيع لرسالة تصدير أساسية.

هذه الطريقة مسؤولة عن احتساب توقيع لقيمة التجزئة المحدّدة باستخدام المفتاح الخاص للعقدة المحلية وكتابة التوقيع إلى كاتب TLV المرفق كبنية TLV لـ WeaveSignature.

GetNodeCertSet

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

يمكنك الحصول على شهادة تصدير المفتاح التي تم ضبطها للعقدة المحلية.

يتم الاتصال عندما يستعد محرك تصدير المفاتيح لتوقيع رسالة تصدير المفتاح. تكون هذه الطريقة مسؤولة عن إعداد مجموعة الشهادات وتحميل جميع الشهادات التي سيتم تضمينها أو الإشارة إليها في توقيع الرسالة. يجب أن تكون آخر شهادة تم تحميلها هي شهادة التوقيع.

نتيجة HandleCertValidation

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().

التحقّق من صحة رسالة موقعة موقّعة

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

التحقُّق من أمان رسالة تصدير مفتاح غير موقَّعة

يتم طلب ذلك عندما تتلقّى العقدة رسالة تصدير رئيسية غير موقّعة. من المتوقع أن تتحقَّق الطريقة من أمان رسالة تصدير مفتاح غير موقَّعة استنادًا إلى سياق تواصلها، مثلاً من خلال سمات جلسة الأمان المُستخدَمة في إرسال الرسالة.

بالنسبة إلى عقدة الاستجابة، من المتوقع أن تتحقَّق الطريقة من صلاحية أداة البدء على تصدير المفتاح المطلوب.

بالنسبة إلى عقدة البداية، من المتوقع أن تتحقق الطريقة من صحة الرسالة التي نشأت من نظيراتها التي تم إرسال طلب التصدير الرئيسي إليها.