2005-12-05 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / Mono.Security / ChangeLog
index 9703894586b95a01bfe4f64d59650fa05208f5dc..039b1f1f8a5887094a06651dee393415a458ad56 100644 (file)
@@ -1,3 +1,950 @@
+2005-10-04  Zoltan Varga  <vargaz@freemail.hu>
+
+       * Makefile (LIBRARY_USE_INTERMEDIATE_FILE): Set this flag.
+
+2005-06-30  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security_test.dll.sources: Added Mono.Security.X509.X509CrlTest
+       to the build.
+
+2005-02-25  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security.dll.sources: Added GeneralNames to Mono.Security.X509.
+       Extensions to share code between existing extensions.
+
+2004-12-06  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security_test.dll.sources: Added Mono.Security.Cryptography.
+       RSAManagedTest to the build.
+
+2004-11-23  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security_test.dll.sources: Added Mono.Security.Cryptography.
+       PKCS1Test to the build.
+
+2004-10-19  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security_test.dll.sources: Added more unit tests BigInteger.
+
+2004-09-17  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security.dll.sources: Added support for SHA224 hash algorithm
+       in Mono.Security.Cryptography.
+       * Mono.Security_test.dll.sources: Added unit tests for SHA224 hash
+       algorithm.
+
+2004-09-07  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security_test.dll.sources: Added unit tests for Authenticode
+       Deformatter.
+
+2004-07-27 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientKeyExchange.cs:
+
+               - Fixed usage of the private key selection
+               delegate (Thanks to Matthijs ter Woord for his feedback)
+
+2004-05-11 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
+
+               - Added fix for better handling of exceptions when
+               building the X509 Certificate chain.
+
+2004-05-11  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security_test.dll.sources: Added unit tests for Mono.Security.
+       Protocol.Ntlm.MessabeBase and Mono.Security.ASN1Convert.
+
+2004-05-09 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/Alert.cs:
+       * Mono.Security.Protocol.Tls/CipherSuite.cs:
+       * Mono.Security.Protocol.Tls/CipherSuiteCollection.cs:
+       * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/Context.cs:
+       * Mono.Security.Protocol.Tls/RecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/SecurityCompressionType.cs:
+       * Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/SslServerStream.cs:
+       * Mono.Security.Protocol.Tls/TlsClientSettings.cs:
+
+               - Changes for fix FxCop Rules.
+
+               - Reworked CipherSuiteCollection class.
+
+       * Mono.Security.Protocol.Tls.Handshake/HandshakeMessage.cs:
+
+               - Changes for fix FxCop Rules.
+
+2004-04-21 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/DebugHelper.cs:
+
+               - New class.
+
+       * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/RecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/Context.cs:
+       * Mono.Security.Protocol.Tls/Context.cs:
+       * Mono.Security.Protocol.Tls/SslCipherSuite.cs:
+       * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+
+               - Added debug capabilities.
+
+       * Mono.Security.Protocol.Tls/ServerContext.cs:
+
+               - Added initialization of requested CertificateTypes and CA's
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerHello.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
+
+               - Modfied exception handling
+
+               - Added debug capabilities.
+
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificateRequest.cs:
+
+               - Modify SSL implementation.
+
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsServerCertificateRequest.cs:
+
+               - Initial implementation.
+
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientCertificateVerify.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientFinished.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientHello.cs:
+
+               - Modfied exception handling
+
+2004-04-20  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security.dll.sources: Added AssemblyInfo.cs, Locale.cs and
+       BitConverterLE.cs to build.
+
+2004-04-16 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/TlsException.cs:
+
+               - Make it public until npgsql people can fix their sources.
+
+2004-04-15 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+       * Mono.Security.Protocol.Tls/SslServerStream.cs:
+       * Mono.Security.Protocol.Tls/Alert.cs:
+       * Mono.Security.Protocol.Tls/RecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/Context.cs:
+       * Mono.Security.Protocol.Tls/TlsException.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerHello.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientCertificateVerify.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientFinished.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientHello.cs:
+
+               - Reworked Alert and Exception (TlsException) handling.
+
+       * Mono.Security.Protocol.Tls/TlsClientSettings.cs:
+
+               - Added new CertificateRSA property.
+
+       * Mono.Security.Protocol.Tls/SslHandshakeHash.cs:
+               
+               - Added two new methods: CreateSignature and VerifySignature.
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
+
+               - Added Ssl3 implementation.
+
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientCertificateVerify.cs:    
+
+               - Added initial implementation.
+
+2004-03-23  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security_test.dll.sources: Added unit tests for CryptoConvert.
+
+2004-03-19 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientHello.cs:
+
+               - Fixed cipher suite selection.
+
+       * Mono.Security.Protocol.Tls/TlsServerSettings.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientKeyExchange.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
+
+               - Added new CertificateRSA property.
+
+               - Added new UpdateCertfificateRSA method.
+
+       * Mono.Security.Protocol.Tls/CipherSuite.cs:
+
+               - Removed CertificateRSA() method.      
+
+2004-03-17 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientCertificate.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsServerKeyExchange.cs:
+
+               - Initial implementation.
+
+
+2004-03-16 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/SslCipherSuite.cs:
+
+               - Added changes for allow it to work as server or client.
+
+
+2004-03-15 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/TlsStream.cs:
+       * Mono.Security.Protocol.Tls/CipherSuite.cs:
+       * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
+       * Mono.Security.Protocol.Tls/SslHandshakeHash.cs:
+       * Mono.Security.Protocol.Tls/RecordProtocol.cs:
+       * Mono.Security.Cryptography/MD5SHA1.cs:
+
+               - Use Buffer.BlockCopy instead of System.Array.Copy
+
+2004-03-10 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificateRequest.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientCertificateVerify.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsServerCertificateRequest.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsServerFinished.cs:
+
+               - Fixed meesage type definition.
+
+       * Mono.Security.Protocol.Tls/Ciphersuite.cs:
+
+               - Added generation of the Server encryption algorithms.
+
+               - Modified encryption/decription methods for work
+               as client or server as needed.
+
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientKeyExchange.cs:
+
+               - Finished processing of the message contents.
+
+       * Mono.Security.Protocol.Tls/RecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:
+
+               - Added new ProcessChangeCipherSpec method.
+
+       * Mono.Security.Protocol.Tls/Context.cs:
+
+               - Added new PrintBuffer method ( for debug ).
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+       * Mono.Security.Protocol.Tls/SslServerStream.cs:
+
+               - Callback cleanup.
+
+2004-03-06 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientHello.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientKeyExchange.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsServerHello.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsServerHelloDone.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsServerCertificate.cs:
+
+               - Initial implementation ( not finished ) 
+
+       * Mono.Security.Protocol.Tls/SslServerStream.cs:
+
+               - Initial implementation of the doHandshake method.
+
+        - Added initial events implementation.
+
+       * Mono.Security.Protocol.Tls/Ciphersuite.cs:
+       * Mono.Security.Protocol.Tls/TlsCiphersuite.cs:
+       * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+       * Mono.Security.Protocol.Tls/TlsServerSettings.cs:
+       * Mono.Security.Protocol.Tls/TlsClientSettings.cs:
+       * Mono.Security.Protocol.Tls/ClientContext.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/*.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/*.cs:
+
+               - Changes for make use of the renamed classes and enums.
+
+       * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeType.cs:
+
+               - Renamed to HandshakeType.cs (Enum and file)
+
+       * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessage.cs:
+
+               - Renamed to HandshakeMessage.cs (Class and file)
+
+       * Mono.Security.Protocol.Tls.Handshake/TlsClientCertificateType.cs:
+
+               - Renamed to ClientCertificateType.cs (Enum and file)
+
+       * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
+
+               - Renamed to Alert (Class, enums and file)
+
+       * Mono.Security.Protocol.Tls/TlsContentType.cs:
+
+               - Renamed to ContentType.cs ( Enum and file )
+       * Mono.Security.Protocol.Tls/TlsCiphersuiteCollection.cs:
+
+               - Renamed to CiphersuiteCollection.cs ( Class and file )
+
+       * Mono.Security.Protocol.Tls/TlsCiphersuiteFactory.cs:
+
+               - Renamed to CiphersuiteCollection.cs ( Class and file )
+
+       * Mono.Security.Protocol.Tls/TlsSslHandshakeHash.cs:
+
+               - Renamed to SslHandshakeHash.cs ( Class and file )
+
+       * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
+
+               - Renamed to SslCipherSuite.cs ( Class and file )
+
+2004-03-04 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerHelloDone.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Server/TlsServerHelloDone.cs:
+
+        - Fixed message type.
+
+2004-02-26 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/HandshakeState.cs:
+
+               - New file.
+
+       * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
+
+               - Modified the level of some alerts according to the RFC.
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+       * Mono.Security.Protocol.Tls/SslServerStream.cs:
+       * Mono.Security.Protocol.Tls/Context.cs:
+       * Mono.Security.Protocol.Tls/ClientContext.cs:
+       * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
+
+               - Added changes for better handling of ClientHelloRequest messages.
+
+2004-02-25  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security.dll.sources: Added new internal class HttpsClientStream
+       in Mono.Security.Protocol.Tls to the build.
+
+2004-02-24 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Alerts/TlsCloseNotifyAlert.cs:
+
+               - Removed File.
+
+       * Mono.Security.Protocol.Tls.Alerts/TlsAlerts.cs:
+       * Mono.Security.Protocol.Tls/RecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+       * Mono.Security.Protocol.Tls/SslServerStream.cs:
+
+               - Reimplementation of TLS/SSL Alert Protocol.
+
+2004-02-23 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/TlsContext.cs:
+
+               - Removed file, implementation is now present in:
+
+                       Context.cs
+                       ClientContext.cs
+                       ServerContext.cs
+
+       * Mono.Security.Protocol.Tls/Context.cs:
+       * Mono.Security.Protocol.Tls/ClientContext.cs:
+       * Mono.Security.Protocol.Tls/ServerContext.cs:
+       * Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:
+
+                - New classes.
+
+       * Mono.Security.Protocol.Tls/SslServerStream.cs:
+
+               - Added implementation for properties, and read/write methods
+               as in SslClientStream.
+
+               - doHandshake method is not implemented yet.
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+       * Mono.Security.Protocol.Tls/RecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/Ciphersuite.cs:
+       * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
+       * Mono.Security.Protocol.Tls.Alerts/TlsCloseNotifyAlert.cs:
+       * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessage.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/*.cs:
+
+               - Added changes for make use of the new Context implementation.
+
+       * Mono.Security.Protocol.Tls.Handshake.Server/*.cs:
+
+        - New classes with method signatures only for the server handshake
+        implementation.
+
+2004-02-21  Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+    * TlsServerHello: Fix for handle SecurityProtocolType.Default.
+
+2004-02-20  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security.dll.sources: Added new file X509ChainStatusFlags in
+       Mono.Security.X509 namespace.
+
+2004-02-20 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+       * Mono.Security.Protocol.Tls/RecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/TlsContext.cs:
+
+               - Added changes for handle te SecurityProtocolType enum
+               as a Flags enum.
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientHello.cs:
+
+               - Let the Ssl3 message to be process in the same way as the Tls1.
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientHello.cs:
+               
+               - Added changes for use the Protocol version send by the server
+
+       * Mono.Security.Protocol.Tls/CipherSuite.cs:
+
+               - Compute the premaster secret using the protocol version sent in 
+               the ClientHello message instead of the actual protocol version.
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
+
+        - Commented the server cert validation.
+
+       * Mono.Security.Protocol.Tls.Alerts/TlsWarningEventAgrs.cs:
+
+               - Removed no more needed file.
+
+       * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
+
+               - Added 4 new properties:
+
+                       * Message
+
+                       * IsWarning
+
+                       * IsFatal
+
+                       * IsCloseNotify
+
+               - Return always the same message when working in release mode
+               (The authentication or decryption has failed.)
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+
+               - Changes to the sync code.
+
+               - Record protocol stuff moved to the new classes.
+
+               - Removed Warning event.
+
+               - Added control over the CloseNotify Alert
+               to BeginRead method.
+
+               - Return true in the server certificate validation method
+               if there are no errors.
+
+       * Mono.Security.Protocol.Tls/RecordProtocol.cs:
+       * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
+
+               - New classes for handle the SSL/TLS record protocol.
+
+2004-02-18 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+
+        - Implement CheckCertRevocationStatus ( not used yet )
+
+       * Mono.Security.Protocol.Tls/CipherAlgorithmType.cs:
+       * Mono.Security.Protocol.Tls/HashAlgorithmType.cs:
+       * Mono.Security.Protocol.Tls/ExchangeAlgorithmType.cs:
+
+               - Added Serializable attribute.
+
+       * Mono.Security.Protocol.Tls/CipherSuite.cs:
+       * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
+       * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
+       * Mono.Security.Protocol.Tls/TlsContext.cs:
+
+               - Added some optimizations proposed by Sebastien Pouliot.
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
+
+               - Changes on Common Name detection and certificate error handling ( Thanks to Sebastien Pouliot for his feedback ).
+
+2004-02-17 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+
+               - Added changes to security properties for check that the handshake is finished.
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:
+
+               - Raise the Client Certificate event.
+
+       * Mono.Security.Protocol.Tls/CipherSuite.cs:
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+       * Mono.Security.Protocol.Tls/SecurityProtocolType.cs:
+       * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
+       * Mono.Security.Protocol.Tls/TlsCipherSuiteCollection.cs:
+       * Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:
+       * Mono.Security.Protocol.Tls/TlsContext.cs:
+       * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessage.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientHello.cs:
+
+               - Change the SecurityProtocolType enum to mtch .NET 1.2 documentation definition.
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+
+               - Impement SelectedClientCertificate and ServerCertificate properties.
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+
+        - Added changes for bring async methods to work ( Thanks to Sebastien Pouliot )
+
+        - Reworked the record fragmentation.
+
+        - Fix for send the close notify alert in the Close method
+        only if the Handshake is fully negotiated.
+
+2004-02-16 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:
+
+        - Changed ciphersuites order of preference ( Thanks to Sebastien Pouliot for his feedback ).
+
+2004-02-15 Carlos Guzmán Álvarez  <carlosga@te...>
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+               - Added specific control od available data for Network Streams
+               on Read ( Thanks to Francisco Figueiredo Jr. for his feedback ).
+               - Removed test code.
+
+2004-02-14 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+    * Mono.Security.Protocol.Tls/SslClientStream.cs:
+
+        - Removed test code.
+
+    * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
+
+        - Removed test code.
+
+2004-02-13  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security.dll.sources: Added Diffie-Hellman contribution from
+       Pieter Philippaerts (mentalis.org) to Mono.Security.Cryptography.
+       * Mono.Security_test.dll.sources: Added Diffie-Hellman unit tests.
+
+2004-02-10 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+    * Mono.Security.Cryptography/PKCS1.cs:
+
+        - Added little change for allow the class to be used with
+        hash implementations that doesn't have an oid like the MD5SHA1 hash.
+
+    * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
+
+        - Throw exception if the Private Key is null.
+
+    * Mono.Security.Protocol.Tls/SslServerStream.cs:
+
+        - Ssl Server class without implementation ( methods signatures only )
+        That matches the described in the .NET 1.2 documentation.
+
+2004-02-09  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security_test.dll.sources Added Mono.Math BigInteger unit test
+       to the build (as they cannot be executed with corlib).
+
+2004-02-09 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+    * Changed the license header to all the sources files
+    to remove accents.
+
+    * Mono.Security.Protocol.Tls/TlsSessionState.cs:
+
+        - Removed old file.
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+
+               - Try to improve record reading.
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:
+
+               - Send always the first certificate.
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
+
+               - Added changes for correct verification of the signed data sent 
+               by the server.
+
+       * Mono.Security.Cryptography/PKCS1.cs:
+
+               - Added change to Encode_v15 method for allow correct
+               encoding of hash algorithms that doesn't have an OID
+               like the MD5SHA1 hash used in SSL/TLS protocols.
+
+       * Added files from mono:: project that are going to be needed
+       for client authentication:
+
+               Mono.Math/*
+
+               Mono.Math.Prime/*
+
+               Mono.Math.Prime.Generator/*
+
+               Mono.Security.Cryptography/RSAManaged.cs
+
+       * Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:
+
+               - Create RSA as an RSAManaged instance.
+               
+       * Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:
+       * Mono.Security.Protocol.Tls/RSASslSignatureDeformatter.cs:
+               
+               - Changed key field to be of RSA type.
+
+       * Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:
+       * Mono.Security.Protocol.Tls/RSASslSignatureDeformatter.cs:
+
+               - Added new classes for implement in the future RSA-SSL signatures.
+
+       * Changed #region names in all source files.
+
+       * Mono.Security.Protocol.Handshake.Client/TlsServerCertificate.cs:
+               
+               - Fixed message (but not working yet - we need RSA signing 
+               capabilitites with MD5SHA1 hash).       
+
+       * Mono.Security.Protocol.Handshake.Client/TlsServerCertificate.cs:
+       
+               - Retrict certificate validation to the first validation.
+               ( real validation needs to be made using a chain )
+               
+               - Improved domain validation by making a IP checking between
+               the target host IP and the certificate domain IP.
+
+               - Fixed error list handling on certificate validation.  
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+
+               - Added new exceptions.
+
+
+2004-02-06  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Mono.Security.dll.sources: Added KeyPairPersistence and it's 
+       dependencies in Mono.Xml (MiniParser and SecurityParser). Also 
+       added CryptoTools and SymmetricTransforms in Mono.Sec.Crypt.
+       * Mono.Security_test.dll.sources: Added unit tests for 
+       KeyPairPersistence.
+
+2003-12-07  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * Mono.Security.dll.sources: Added PKCS#12 support for X.509 certificates.
+       * Mono.Security_test.dll.sources: Added unit tests for PKCS#12.
+
+2003-12-01  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * Mono.Security.dll.sources: Added Mono.Security.Protocol.Ntlm namespace
+       * Mono.Security_test.dll.sources: Added Mono.Security.Protocol.Ntlm unit
+       tests.
+
+2003-11-27  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * Mono.Security.dll.sources: Added MD4, MD4Managed and PKCS8 to build.
+       * Mono.Security_test.dll.sources: Added unit tests for MD4, MD4Managed
+       and PKCS8.
+       
+2003-11-22 Carlos Guzman Alvarez <carlosga@telefonica.net>
+
+       * Changed line endings to unix format in SSL/TLS sources.
+       
+       * Mono.Security.CryptographyoHMD5SHA1CryptoServiceProvider.cs:
+       
+           - Removed file (now it's called MD5SHA1.cs)
+       
+       * Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:
+       
+           - Removed comments from AES ciphersuites.
+
+
+2003-11-17 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/SslClientStream.cs:
+
+               Removed ReadByte method, use innerStream.ReadByte() method instead.
+
+2003-11-13 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+       * Added implementation of an SslClientStream class similar to the MS .NET Framework 1.2 documentation.
+
+               The next files are no more needed:
+
+                       - TlsSession.cs
+
+                       - TlsNetworkStream.cs
+
+                       - TlsSocket.cs
+
+                       - TlsSessionState.cs
+
+               The next files are renamed:
+
+                       - TlsSessionSettings.cs -> TlsClientSettings.cs
+
+                       - TlsSessionContext.cs -> TlsContext.cs
+
+               The next files are new:
+
+                       - SslClientStream.cs ( the name is non definitive yet )
+
+               The next files where changed to reflect the new canges:
+
+                       - TlsHandshakeMessage.cs
+
+                       - TlsClientCertificate.cs
+
+                       - TlsClientCertificateVerify.cs
+
+                       - TlsClientFinished.cs
+
+                       - TlsClientHello.cs
+
+                       - TlsClientKeyExchange.cs
+
+                       - TlsServerCertificate.cs
+
+                       - TlsServerCertificateRequest.cs
+
+                       - TlsServerFinished.cs
+
+                       - TlsServerHello.cs
+
+                       - TlsServerHelloDone.cs
+
+                       - TlsServerKeyExchange.cs
+
+                       - TlsAlert.cs
+
+                       - TlsCloseNotifyAlert.cs
+
+               
+2003-11-12 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
+       
+               - Changes for give full error message only in debug mode ( Thanks to Sebastién Pouliot. )
+               
+       * Mono.Security.Protocol.Tls/TlsProtocol.cs:
+       
+               - Renamed to SecurityProtocolType.cs ( for match .NET 1.2 )
+       
+       * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
+       
+               - Renamed to MD5SHA1.cs ( Thanks to Sebastién Pouliot. )
+               
+       * Mono.Security.Cryptography/TlsCompressionMethod.cs:
+       
+               - Renamed to SecurityCompressionType.
+               
+       * Mono.Security.Protocol.Tls/CipherAlgorithmType.cs:
+       * Mono.Security.Protocol.Tls/HashAlgorithmType.cs:
+       * Mono.Security.Protocol.Tls/ExchangeAlgorithmType.cs:
+       
+               - New enumerations that matches .NET 1.2 definitions with some minor differences.
+       
+       * Mono.Security.Protocol.Tls/CipherSuite.cs:
+       * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
+       * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
+       * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
+       
+               - Added changes for make use of new enumerations.
+       
+       * Mono.Security.Protocol.Tls/TlsClientStream.cs:
+       
+               - Added new informative properties that matches .NET 1.2 SslClientStream
+               ( Not all the properties are implemented yet ).
+
+
+2003-11-10 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
+
+               - Fixed invalid alert message.
+
+       * Mono.Security.Protocol.Tls/CipherSuite.cs:
+       * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
+       * Mono.Security.Cryptography/HMAC.cs:
+       * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
+
+               - Changed ( Thanks to Sebastién Pouliot for his feedback )
+
+                       SHA1CryptoServiceProvider sha = new SHA1CryptoServiceProvider();
+                       MD5CryptoServiceProvider sha = new MD5CryptoServiceProvider();
+
+                       to
+
+                       HashAlgorithm sha = SHA1.Create();
+                       HashAlgorithm md5 = MD5.Create(); 
+
+
+2003-11-04 Carlos Guzmán Álvarez <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
+
+               - Commented server certificate signature verification.
+
+       * Mono.Security.Protocol.Tls/TlsServerSettings.cs:
+
+               - Renamed ServerCertificates property to Certificates.
+
+
+2003-11-04 Carlos Guzmán Álvarez (carlosga@telefonica.net)
+
+       * Updated SSL/TLS implementation files with unix like line endings.
+
+2003-11-04 Carlos Guzmán Álvarez <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/CipherSuite.cs:
+
+               - Added custom padding for record encryption.
+
+
+2003-11-03 Carlos Guzmán Álvarez <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessages.cs:
+       
+               - Removed file.
+
+       * Mono.Security.Protocol.Tls/TlsSslHandshakeHash.cs:
+       
+               - New class for handshake hashes calculation on SSL3 protocol.
+
+       * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
+       
+               - Fixed mac keys clearing for SSL3 protocol.
+
+       * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:
+       
+               - Added changes for make use of new TlsSslHandshakeHash class.
+       
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
+       
+               - Added initial implementation for SSL3 protocol.
+       
+       * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
+       
+               - New class for md5-sha hash calculation.
+                                                       
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsHandshakeMessage.cs:
+       
+               - Make use of new MD5SHA1CryptoServiceProvider class.
+               
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
+       
+               - Added initial implementation (not finished).
+                       
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
+       
+               - Minor change to message processing.
+
+               - Changed verify method name to verifySignature.
+                       
+       * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
+       
+               - Changed handshakeHashes member to be an TlsStream.
+
+2003-10-28 Carlos Guzmán Álvarez <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/CipherSuite.cs:
+       * Mono.Security.Protocol.Tls/TlsSessionSettings.cs:
+       * Mono.Security.Protocol.Tls/TlsServerSettings.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientKeyExchange.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
+       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
+
+               - Added changes for make use of X509 classes from mono.
+
+2003-10-23 Carlos Guzmán Álvarez <carlosga@telefonica.net>
+
+       * Added partial implementation of SSL3 protocol ( not finished yet ) to the TLS sources.
+
+2003-10-20  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * Mono.Security.dll.sources: Removed AssemblyInfo.cs from build.
+       This file is for TLS not for the complete Mono.Security assembly.
+
+2003-10-20  Duncan Mak  <duncan@ximian.com>
+
+       * Mono.Security.dll.sources: Added TlsAbstractCipherSuite.cs,
+       TlsCipherSuiteFactory.cs and TlsCompressMethod.cs. This fixes the
+       build.
+
+2003-10-20  Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.dll.sources: Added references for new Tls files.
+
+2003-10-20  Pedro Martínez Juliá  <yoros@wanadoo.es>
+
+       * Mono.Security.dll.sources: Added references for Tls files.
+
+2003-09-05  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * KeyAttributesExtension.cs: New. Added for WSE.
+
+2003-09-01  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * Mono.Security.dll.sources: Added support for Authenticode(tm)
+       signatures.
+
+2003-07-30  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * Mono.Security.dll.sources: Added ExtendedKeyUsageExtension.cs 
+       certificate extension (so MakeCert can now create SSL certificates).
+
+2003-07-28  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * Mono.Security.dll.sources: Added missing SubjectAltNameExtension.cs
+
 2003-06-14  Sebastien Pouliot  <spouliot@videotron.ca>
 
        * list.unix. Added SubjectAltNameExtension.cs