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

Bu, soyut bir sınıftır.

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

Anahtar dışa aktarma sırasında kimlik doğrulamayla ilgili çeşitli işlemleri gerçekleştirmek için KeyExport motoru tarafından çağrılan soyut yetki sınıfı.

Özet

Devralma

Doğrudan Bilinen Alt Sınıflar: nl::Weave::Profiles::Security::KeyExport::WeaveStandAloneKeyExportClient

Herkese açık işlevler

BeginCertValidation(WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet)=0
virtual WEAVE_ERROR
Eşin sertifikasını doğrulamak için hazırlanın.
EndCertValidation(WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet)=0
virtual WEAVE_ERROR
Eş sertifika doğrulamasıyla ilişkili kaynakları serbest bırakın.
GenerateNodeSignature(WeaveKeyExport *keyExport, const uint8_t *msgHash, uint8_t msgHashLen, TLVWriter & writer)=0
virtual WEAVE_ERROR
Anahtar dışa aktarma iletisi için imza oluşturun.
GetNodeCertSet(WeaveKeyExport *keyExport, WeaveCertificateSet & certSet)=0
virtual WEAVE_ERROR
Yerel düğüm için anahtar dışa aktarma sertifikasını alın.
HandleCertValidationResult(WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet, uint32_t requestedKeyId)=0
virtual WEAVE_ERROR
Eşin sertifikasını doğrulamanın sonuçlarını işleyin.
ReleaseNodeCertSet(WeaveKeyExport *keyExport, WeaveCertificateSet & certSet)=0
virtual WEAVE_ERROR
Düğümün sertifika grubunu yayınlayın.
ValidateUnsignedKeyExportMessage(WeaveKeyExport *keyExport, uint32_t requestedKeyId)=0
virtual WEAVE_ERROR
İmzalanmamış anahtar dışa aktarma mesajının güvenliğini doğrulayın.

Herkese açık işlevler

BeginCertValidation

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

Eşin sertifikasını doğrulamak için hazırlanın.

Sertifika doğrulamasının başında çağrılır. Bu yöntem, eş düğümün sertifikasının doğrulanmasında kullanılmak üzere sağlanan sertifika kümesini ve doğrulama bağlamını hazırlamaktan sorumludur. Uygulamaların, sağlanan WeaveCertificateSet nesnesini yaklaşan sertifika doğrulamasını işlemek için yeterli kaynakla başlatması gerekir. Uygulama, gerekli tüm güvenilir kök veya CA sertifikalarını da sertifika kümesine yüklemelidir.

Sağlanan doğrulama bağlamı, bir dizi varsayılan doğrulama ölçütüyle başlatılır. Bu ölçütler, uygulama gerektiğinde değişebilir. Uygulama, EffectiveTime alanını veya sertifika ömür boyu doğrulamasını engellemek için uygun doğrulama işaretlerini ayarlamalıdır.

Uygulama, BeginCertValidation() sırasında ayrılan kaynakların, karşılık gelen EndCertValidation() işlevi çağrılana kadar devam ettirilene kadar korunması için gereklidir. Uygulamalarda, BeginCertValidation() için yapılan her başarılı çağrı için EndCertValidation() yönteminin tam olarak bir kez çağrılacağı garanti edilir.

EndCertValidation

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

Eş sertifika doğrulamasıyla ilişkili kaynakları serbest bırakın.

Eş sertifikası doğrulaması ve istek doğrulaması tamamlandığında çağrılır.

GenerateNodeSignature

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

Anahtar dışa aktarma iletisi için imza oluşturun.

Bu yöntem, yerel düğümün özel anahtarını kullanarak belirtilen karma değerinin imzasının hesaplanmasından ve bir WeaveSignature TLV yapısı olarak sağlanan TLV yazarına imzanın yazılmasından sorumludur.

GetNodeCertSet

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

Yerel düğüm için anahtar dışa aktarma sertifikasını alın.

Anahtar dışa aktarma motoru, bir anahtar dışa aktarma mesajını imzalamaya hazırlanırken çağrılır. Bu yöntem, sertifika grubunun başlatılmasından ve iletinin imzasında yer alacak veya başvurulacak tüm sertifikaların yüklenmesinden sorumludur. Yüklenen son sertifika, imza sertifikası olmalıdır.

HandleCertValidationResult

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

Eşin sertifikasını doğrulamanın sonuçlarını işleyin.

Eş düğümün sertifikasının doğrulanması tamamlandığında çağrılır. Bu yöntem yalnızca sertifika doğrulama işlemi başarıyla tamamlanırsa çağrılır. Uygulamalar, doğrulama sonuçlarını incelemek ve muhtemelen sonucu bir hatayla geçersiz kılmak için bu çağrıyı kullanabilir.

Yanıt veren bir düğüm için yöntemin, istekte bulunanın istenen anahtarı dışa aktarma yetkisini doğrulaması beklenir.

Başlangıç düğümünde yöntemin, doğrulanan sertifikanın anahtar dışa aktarma isteğinin gönderildiği eşi düzgün şekilde tanımladığını doğrulaması beklenir.

ReleaseNodeCertSet

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

Düğümün sertifika grubunu yayınlayın.

Anahtar dışa aktarma motoru, GetNodeCertSet() tarafından döndürülen sertifika grubuyla tamamlandığında çağrılır.

ValidateUnsignedKeyExportMessage

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

İmzalanmamış anahtar dışa aktarma mesajının güvenliğini doğrulayın.

Düğüm, imzalanmamış bir anahtar dışa aktarma mesajı aldığında çağrılır. Bu yöntemin, imzasız bir anahtar dışa aktarma mesajının güvenliğini, iletişimin bağlamına göre (ör. güvenlik oturumunun özellikleri aracılığıyla gönderilir.

Cevap veren bir düğüm için yöntemin, başlatanın istenen anahtarı dışa aktarma yetkisini doğrulaması beklenir.

Başlangıç düğümü için yöntemin, mesajın anahtar dışa aktarma isteğinin gönderildiği eşden meşru bir şekilde geldiğini doğrulaması beklenir.