3

TLS 関連の問題をデバッグしようとしています。TLS は、クライアント A とサーバー B の 2 つのアプリケーション間でセットアップされます。A と B の両方で証明書が交換され、証明書に適切な拡張子があり、ルート CA で正常に検証されていることを確認しました。リーフ証明書のルート CA がアップロードされ、アプリケーションのトラスト ストアで利用できるようになります。Wireshark での TLS 中に、次のメッセージ フローが表示されます。

CLIENT : Client Hello 
SERVER : Server Hello , Certificate , Certificate request , Server Hello Done
CLIENT : Certificate , Client key exchange 
CLIENT : Certificate Verify , Change Cipher spec , Encrypted Handshake Message 
SERVER : Alert : Level Fatal, Description : Decrypt Error )

また、TLS ログには次のように表示されます。

TLS protocol error(ssl reason
code=block type is not 01 [106]),lib=rsa routines
[4],fun=RSA_padding_check_PKCS1_type_1 [112], errno=12 for
192956|<CLID::StandAloneCluster><NID::xxx.xxx.xxx.xxx><CT::0,0,0,0.0><IP::>
192956|<DE
V::><LVL::Error><MASK::0800>

サーバー側で復号化エラーを引き起こしている可能性のあるポインタはありますか? TLS での交換中の証明書は問題なく、ルート証明書まで適切にチェーンできます。

どんなポインタでも大いに役立ちます!

前もって感謝します!

4

2 に答える 2

2

明らかに起こっていることは、サーバーが、クライアントによって指定された暗号スイートによって暗号化および検証される必要がある、クライアントによって彼に宛てられた最初の暗号化されたメッセージを復号化できないことです (変更暗号仕様の後の「終了」)。暗号仕様」-メッセージ。

これは、たとえばサーバーが、証明書などでクライアントに提供した公開鍵からの秘密鍵を実際には所有していないことを意味します。

于 2013-11-07T17:03:32.643 に答える