クライアントとサーバー間の安全なチャネルを取得するためにBotan::TLS::Callbacks
も使用しました。Botan::TLS::Client
Botan::TLS::Server
また、私が使用したデータを暗号化/復号化するために<botan/pubkeys.h>
<botan/pk_keys.h>
、Botan ライブラリのヘッダーを含めます。
私の質問は次のとおりです。
オブジェクトがServer_Hello_Messageの暗号スイート
Botan::PK_Encryptor_EME
として 2 つの側の間でネゴシエートされた暗号化アルゴリズムを取得しないのはなぜですか。公開鍵、乱数ジェネレーター、最適な暗号化パディング アルゴリズムを入力として取得するだけです。アルゴリズムが明らかで真のキーによって取得されていないことに注意してください(アルゴリズムとは、のような一括暗号化アルゴリズムを意味します)。AES-128
TLS チャネルはどのように保護されますか? ソースコードから発見したように
Botan::TLS::Callbacks tls_emit_data(const uint8_t[], size_t)
、安全なチャネルを介してデータを送信する機能があります! クライアントとサーバーが以前に非対称キーをネゴシエートして交換した場合でも、データは両側で合意された対称キーを使用して暗号化する必要があります。