現在、非同期 (IOCP) ベースのサーバーで SChannel を使用しています。ほとんどの機能は正常に動作していますが、再ネゴシエーションに問題があります。具体的には、ピア A がピア B に再ネゴシエーションの要求を送信し、ピア B が TLS1NO RENEGOTIATION
アラートで応答した場合、ピア A はどのように続行しますか? 応答を受け取った時点で無効なコンテキストがあるようで、SEC_I_NO_RENEGOTIATION
これによりストリームを使用し続けることができなくなります...
更新しましたさらにテストを行ったところ、無効なコンテキストではないようですがSEC_E_ENCRYPT_FAILURE
、次の暗号化呼び出しから得られます...
再交渉の要求は実際に拒否できますか? それともNO RENEGOTIATION
アラートは、接続が役に立たないことを意味する単に有益なエラー メッセージですか? もしそうなら、なぜ「エラー」ではなく「警告」とコメントされているのですか?? いいえ; TLS RFC (5246) は、再ネゴシエーション アラートの後で続行できるかどうかを決定するのはピア次第であると明確に述べています...
更新されました...を使用してTLSアラートを送信しても違いはありません...ApplyControlToken()
or if I send it using EncryptMessage()
with SECQOP_WRAP_OOB_DATA