2017-08-30 7 views
0

2台のデスクトップマシン(ウィンドウ7)があります。 1つは私の開発マシンで、もう1つはテストマシンです。私はデスクトップアプリケーションを作った。 Webリクエストを使用してサーバに接続しています。私は接続にTLS1.2を使用しており、HTTPClient(C#)はコードレベルで使用されています。TLS 1.2のクライアントマシンでCypher Suiteを使用できません

私の問題は、サーバーがTLS1.2接続を予期していて、サイファースーツTLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384しか許可しないということです。今では私の開発マシン(同じオペレーティングシステムWindows 7と同じ.Netフレームワーク4.6.1もあります)はうまく動作していますが、私のテストマシンはうまく動作しません。

さらに詳しく調べるには、wiresharkからログを収集しました.1台のマシンで、「クライアントのhello」と「サーバーのhello」の後に見ることができますが、テストマシンでは発生しませんが、 。

私はまた、サイファースーツのリストを見ようとしましたが、このスイートは両方のマシンで利用できるようです。しかし、私のテストマシンでは、サイファースーツの数は少なくなります(自動更新が不足している可能性があります)。私はここにすべてのスクリーンショットを添付しました。ここで間違っていることを教えてください。機械を操作するための

スクリーンショットは次のとおりです。 - For working machine

Cypher suit list for woking machine

答えて

0

TLS 1.2が必要なサービスに接続しようとすると、おそらく同様の問題に遭遇しました。私の記憶は霧がかかっていますが、私の開発マシンでは問題はないと思います。私は意図的にレジストリのTLS 1.2以外のすべてを無効にしました。しかし、別のマシンからは、HTTPClientがデフォルトでssl3を使用しようとしていたため、接続しませんでした。私はこれを最初にしなければならなかった:

System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;

関連する問題