0

モノサービスを使用して、Ubuntu 14 で Windows サービスを実行しています。

サービスが SSL 接続で接続しようとすると、次の例外がスローされます。

The authentication or decryption has failed.
at Mono.Security.Protocol.Tls.SslStreamBase.AsyncHandshakeCallback (IAsyncResult asyncResult) [0x00000] in <filename unknown>:0

次の投稿の解決策を試し、例外を無視しようとしましたが、私の場合はどれも役に立ちませんでした:

Mono https webrequest が「認証または復号化に失敗しました」で失敗する

c# - 「認証または復号化に失敗しました。」モノラルでtwitterizerを使用中にエラーが発生しました

認証または復号化に失敗しました。

SSL を使用して GMail にメールを送信するときに、認証または復号化に失敗しました

編集:これは私の接続コードです:

 ServicePointManager.ServerCertificateValidationCallback += CertificateValidationCallBack;
 csGlobal.m_tcp_client = new TcpClient(csGlobal.m_hostname, csGlobal.m_port);

 var ssl_stream = new SslStream(csGlobal.m_tcp_client.GetStream(), false, (sender, certificate, chain, ssl_policy_errors) => ssl_policy_errors == SslPolicyErrors.None);

 var ssl_reader = new StreamReader(csGlobal.m_tcp_client.GetStream());
 ssl_stream.AuthenticateAsClient(csGlobal.m_hostname);
 ssl_stream.ReadTimeout = (int)csGlobal.READ_TIMEOUT.TotalMilliseconds;

 csGlobal.m_ssl_stream = ssl_stream;

csGlobal必要な変数を含むグローバル クラスです。

サーバーに接続できません。しかし、このサーバーを Windows で起動すると、問題なく動作します。XMLメッセージをバイトとして送受信することになっています。

何を指示してるんですか?

4

1 に答える 1

1

この行を置き換えてみてください:

 var ssl_stream = new SslStream(csGlobal.m_tcp_client.GetStream(), false, (sender, certificate, chain, ssl_policy_errors) => ssl_policy_errors == SslPolicyErrors.None);

これとともに:

 var ssl_stream = new SslStream(csGlobal.m_tcp_client.GetStream());
于 2014-11-04T05:55:32.623 に答える