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

鍵のエクスポート メッセージの署名を生成します。

このメソッドは、ローカルノードの秘密鍵を使用して指定されたハッシュ値の署名を計算し、その署名を WeaveSignature TLV 構造として指定された 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

署名されていない鍵のエクスポート メッセージのセキュリティを確認します。

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

応答ノードの場合、このメソッドは、リクエストされたキーをエクスポートするイニシエータの権限を検証します。

開始ノードの場合、メソッドは、鍵のエクスポート リクエストが送信されたピアからメッセージが正当に発信されたことを確認することが想定されます。