[Mono-bugs] [Bug 69805][Nor] Changed - SslClientStream - Server Certificate Validation

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Wed, 24 Nov 2004 11:43:08 -0500 (EST)


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by meddochat@zonnet.nl.

http://bugzilla.ximian.com/show_bug.cgi?id=69805

--- shadow/69805	2004-11-24 03:42:59.000000000 -0500
+++ shadow/69805.tmp.31019	2004-11-24 11:43:08.000000000 -0500
@@ -113,6 +113,61 @@
 also, when using tlstest --stream https://sourceforge.net, i get the 
 same exception.
 
 i also tested with www.swreg.org, but then i get an error #0
 
 what to do?
+
+------- Additional Comments From meddochat@zonnet.nl  2004-11-24 11:43 -------
+After some more investigation, i now know that the error is produced 
+due to the size of the certificate. call stack of exception:
+
+System.IO.IOException: The authentication or decryption has failed. --
+-> System.Security.Cryptography.CryptographicException: Specified key 
+is not a valid size for this algorithm.
+   at System.Security.Cryptography.AsymmetricAlgorithm.set_KeySize
+(Int32 value)
+   at System.Security.Cryptography.RSACryptoServiceProvider..ctor
+(Int32 dwKeySize, CspParameters parameters, Boolean useDefaultKeySize)
+   at System.Security.Cryptography.RSACryptoServiceProvider..ctor
+(Int32 dwKeySize)
+   at Mono.Security.X509.X509Certificate.get_RSA() in 
+e:\mcs\class\Mono.Security\Mono.Security.X509\X509Certificate.cs:line 
+334
+   at 
+Mono.Security.Protocol.Tls.TlsServerSettings.UpdateCertificateRSA() 
+in 
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\TlsServerSetting
+s.cs:line 119
+   at 
+Mono.Security.Protocol.Tls.Handshake.Client.TlsServerCertificate.Updat
+e() in 
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls.Handshake.Client
+\TlsServerCertificate.cs:line 62
+   at 
+Mono.Security.Protocol.Tls.ClientRecordProtocol.ProcessHandshakeMessag
+e(TlsStream handMsg) in 
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\ClientRecordProt
+ocol.cs:line 100
+   at Mono.Security.Protocol.Tls.RecordProtocol.ReceiveRecord() in 
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\RecordProtocol.c
+s:line 133
+   at Mono.Security.Protocol.Tls.SslClientStream.NegotiateHandshake() 
+in 
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\SslClientStream.
+cs:line 706
+   --- End of inner exception stack trace ---
+   at Mono.Security.Protocol.Tls.SslClientStream.NegotiateHandshake() 
+in 
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\SslClientStream.
+cs:line 754
+   at Mono.Security.Protocol.Tls.SslClientStream.BeginRead(Byte[] 
+buffer, Int32 offset, Int32 count, AsyncCallback callback, Object 
+state) in 
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\SslClientStream.
+cs:line 429
+   at Mono.Security.Protocol.Tls.SslClientStream.Read(Byte[] buffer, 
+Int32 offset, Int32 count) in 
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\SslClientStream.
+cs:line 615
+   at Indy.Sockets.Tls.IOHandlerTls.SetPassThrough(Boolean AValue)
+