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 証明書を、必要な場合は証明書セットに読み込む必要があります。

指定された検証コンテキストは、一連のデフォルトの検証基準で初期化されます。この基準は実装によって必要に応じて変更される可能性があります。実装では、EffectiveTime フィールドを設定するか、適切な検証フラグを設定して証明書の有効期間の検証を抑制する必要があります。

この実装では、対応する EndCertValidation() が呼び出されるまで、BeginCertValidation() の間に割り当てられたリソースを維持する必要があります。実装では、BeginCertValidation() の呼び出しが成功するたびに EndCertValidation() が 1 回だけ呼び出されることが保証されます。

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

署名なし鍵のエクスポート メッセージのセキュリティを検証します。

ノードが署名されていない鍵エクスポート メッセージを受信したときに呼び出されます。このメソッドは、通信のコンテキストに基づいて、署名なし鍵のエクスポート メッセージのセキュリティを検証することが想定されています。たとえば、セキュリティ・セッションの属性を介してアクセスします。

応答するノードの場合、このメソッドでは、要求された鍵をエクスポートするイニシエータの権限を検証することが期待されます。

開始ノードの場合、このメソッドは、鍵エクスポート要求が送信されたピアから正当に発信されたメッセージを検証することが期待されます。