1 2004-02-26 Carlos Guzman Alvarez <carlosga@telefonica.net>
\r
3 * Mono.Security.Protocol.Tls/HandshakeState.cs:
\r
7 * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
\r
9 - Modified the level of some alerts according to the RFC.
\r
11 * Mono.Security.Protocol.Tls/SslClientStream.cs:
\r
12 * Mono.Security.Protocol.Tls/SslServerStream.cs:
\r
13 * Mono.Security.Protocol.Tls/Context.cs:
\r
14 * Mono.Security.Protocol.Tls/ClientContext.cs:
\r
15 * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
\r
16 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
\r
18 - Added changes for better handling of ClientHelloRequest messages.
20 2004-02-25 Sebastien Pouliot <sebastien@ximian.com>
22 * Mono.Security.dll.sources: Added new internal class HttpsClientStream
23 in Mono.Security.Protocol.Tls to the build.
25 2004-02-24 Carlos Guzman Alvarez <carlosga@telefonica.net>
\r
27 * Mono.Security.Protocol.Tls.Alerts/TlsCloseNotifyAlert.cs:
\r
31 * Mono.Security.Protocol.Tls.Alerts/TlsAlerts.cs:
\r
32 * Mono.Security.Protocol.Tls/RecordProtocol.cs:
\r
33 * Mono.Security.Protocol.Tls/SslClientStream.cs:
\r
34 * Mono.Security.Protocol.Tls/SslServerStream.cs:
\r
36 - Reimplementation of TLS/SSL Alert Protocol.
\r
38 2004-02-23 Carlos Guzman Alvarez <carlosga@telefonica.net>
40 * Mono.Security.Protocol.Tls/TlsContext.cs:
42 - Removed file, implementation is now present in:
48 * Mono.Security.Protocol.Tls/Context.cs:
49 * Mono.Security.Protocol.Tls/ClientContext.cs:
50 * Mono.Security.Protocol.Tls/ServerContext.cs:
51 * Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:
55 * Mono.Security.Protocol.Tls/SslServerStream.cs:
57 - Added implementation for properties, and read/write methods
58 as in SslClientStream.
60 - doHandshake method is not implemented yet.
62 * Mono.Security.Protocol.Tls/SslClientStream.cs:
63 * Mono.Security.Protocol.Tls/RecordProtocol.cs:
64 * Mono.Security.Protocol.Tls/Ciphersuite.cs:
65 * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
66 * Mono.Security.Protocol.Tls.Alerts/TlsCloseNotifyAlert.cs:
67 * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessage.cs:
68 * Mono.Security.Protocol.Tls.Handshake.Client/*.cs:
70 - Added changes for make use of the new Context implementation.
72 * Mono.Security.Protocol.Tls.Handshake.Server/*.cs:
74 - New classes with method signatures only for the server handshake
77 2004-02-21 Carlos Guzman Alvarez <carlosga@telefonica.net>
79 * TlsServerHello: Fix for handle SecurityProtocolType.Default.
81 2004-02-20 Sebastien Pouliot <sebastien@ximian.com>
83 * Mono.Security.dll.sources: Added new file X509ChainStatusFlags in
84 Mono.Security.X509 namespace.
86 2004-02-20 Carlos Guzmán Álvarez <carlosga@telefonica.net>
88 * Mono.Security.Protocol.Tls/SslClientStream.cs:
\r
89 * Mono.Security.Protocol.Tls/RecordProtocol.cs:
\r
90 * Mono.Security.Protocol.Tls/TlsContext.cs:
\r
92 - Added changes for handle te SecurityProtocolType enum
\r
95 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientHello.cs:
\r
97 - Let the Ssl3 message to be process in the same way as the Tls1.
\r
99 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientHello.cs:
\r
101 - Added changes for use the Protocol version send by the server
\r
103 * Mono.Security.Protocol.Tls/CipherSuite.cs:
\r
105 - Compute the premaster secret using the protocol version sent in
\r
106 the ClientHello message instead of the actual protocol version.
108 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
110 - Commented the server cert validation.
112 * Mono.Security.Protocol.Tls.Alerts/TlsWarningEventAgrs.cs:
114 - Removed no more needed file.
116 * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
118 - Added 4 new properties:
128 - Return always the same message when working in release mode
129 (The authentication or decryption has failed.)
131 * Mono.Security.Protocol.Tls/SslClientStream.cs:
133 - Changes to the sync code.
135 - Record protocol stuff moved to the new classes.
137 - Removed Warning event.
139 - Added control over the CloseNotify Alert
142 - Return true in the server certificate validation method
143 if there are no errors.
145 * Mono.Security.Protocol.Tls/RecordProtocol.cs:
146 * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
148 - New classes for handle the SSL/TLS record protocol.
150 2004-02-18 Carlos Guzmán Álvarez <carlosga@telefonica.net>
152 * Mono.Security.Protocol.Tls/SslClientStream.cs:
154 - Implement CheckCertRevocationStatus ( not used yet )
156 * Mono.Security.Protocol.Tls/CipherAlgorithmType.cs:
157 * Mono.Security.Protocol.Tls/HashAlgorithmType.cs:
158 * Mono.Security.Protocol.Tls/ExchangeAlgorithmType.cs:
160 - Added Serializable attribute.
162 * Mono.Security.Protocol.Tls/CipherSuite.cs:
163 * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
164 * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
165 * Mono.Security.Protocol.Tls/TlsContext.cs:
167 - Added some optimizations proposed by Sebastien Pouliot.
169 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
171 - Changes on Common Name detection and certificate error handling ( Thanks to Sebastien Pouliot for his feedback ).
173 2004-02-17 Carlos Guzmán Álvarez <carlosga@telefonica.net>
175 * Mono.Security.Protocol.Tls/SslClientStream.cs:
177 - Added changes to security properties for check that the handshake is finished.
179 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:
181 - Raise the Client Certificate event.
183 * Mono.Security.Protocol.Tls/CipherSuite.cs:
184 * Mono.Security.Protocol.Tls/SslClientStream.cs:
185 * Mono.Security.Protocol.Tls/SecurityProtocolType.cs:
186 * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
187 * Mono.Security.Protocol.Tls/TlsCipherSuiteCollection.cs:
188 * Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:
189 * Mono.Security.Protocol.Tls/TlsContext.cs:
190 * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessage.cs:
191 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientHello.cs:
193 - Change the SecurityProtocolType enum to mtch .NET 1.2 documentation definition.
195 * Mono.Security.Protocol.Tls/SslClientStream.cs:
197 - Impement SelectedClientCertificate and ServerCertificate properties.
199 * Mono.Security.Protocol.Tls/SslClientStream.cs:
201 - Added changes for bring async methods to work ( Thanks to Sebastien Pouliot )
203 - Reworked the record fragmentation.
205 - Fix for send the close notify alert in the Close method
206 only if the Handshake is fully negotiated.
208 2004-02-16 Carlos Guzmán Álvarez <carlosga@telefonica.net>
210 * Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:
212 - Changed ciphersuites order of preference ( Thanks to Sebastien Pouliot for his feedback ).
214 2004-02-15 Carlos Guzmán Álvarez <carlosga@te...>
216 * Mono.Security.Protocol.Tls/SslClientStream.cs:
218 - Added specific control od available data for Network Streams
219 on Read ( Thanks to Francisco Figueiredo Jr. for his feedback ).
223 2004-02-14 Carlos Guzmán Álvarez <carlosga@telefonica.net>
225 * Mono.Security.Protocol.Tls/SslClientStream.cs:
229 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
233 2004-02-13 Sebastien Pouliot <sebastien@ximian.com>
235 * Mono.Security.dll.sources: Added Diffie-Hellman contribution from
236 Pieter Philippaerts (mentalis.org) to Mono.Security.Cryptography.
237 * Mono.Security_test.dll.sources: Added Diffie-Hellman unit tests.
239 2004-02-10 Carlos Guzmán Álvarez <carlosga@telefonica.net>
241 * Mono.Security.Cryptography/PKCS1.cs:
243 - Added little change for allow the class to be used with
244 hash implementations that doesn't have an oid like the MD5SHA1 hash.
246 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
248 - Throw exception if the Private Key is null.
250 * Mono.Security.Protocol.Tls/SslServerStream.cs:
252 - Ssl Server class without implementation ( methods signatures only )
253 That matches the described in the .NET 1.2 documentation.
255 2004-02-09 Sebastien Pouliot <sebastien@ximian.com>
257 * Mono.Security_test.dll.sources Added Mono.Math BigInteger unit test
258 to the build (as they cannot be executed with corlib).
260 2004-02-09 Carlos Guzmán Álvarez <carlosga@telefonica.net>
262 * Changed the license header to all the sources files
265 * Mono.Security.Protocol.Tls/TlsSessionState.cs:
269 * Mono.Security.Protocol.Tls/SslClientStream.cs:
271 - Try to improve record reading.
273 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:
275 - Send always the first certificate.
277 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
279 - Added changes for correct verification of the signed data sent
282 * Mono.Security.Cryptography/PKCS1.cs:
284 - Added change to Encode_v15 method for allow correct
285 encoding of hash algorithms that doesn't have an OID
286 like the MD5SHA1 hash used in SSL/TLS protocols.
288 * Added files from mono:: project that are going to be needed
289 for client authentication:
295 Mono.Math.Prime.Generator/*
297 Mono.Security.Cryptography/RSAManaged.cs
299 * Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:
301 - Create RSA as an RSAManaged instance.
303 * Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:
304 * Mono.Security.Protocol.Tls/RSASslSignatureDeformatter.cs:
306 - Changed key field to be of RSA type.
308 * Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:
309 * Mono.Security.Protocol.Tls/RSASslSignatureDeformatter.cs:
311 - Added new classes for implement in the future RSA-SSL signatures.
313 * Changed #region names in all source files.
315 * Mono.Security.Protocol.Handshake.Client/TlsServerCertificate.cs:
317 - Fixed message (but not working yet - we need RSA signing
318 capabilitites with MD5SHA1 hash).
320 * Mono.Security.Protocol.Handshake.Client/TlsServerCertificate.cs:
322 - Retrict certificate validation to the first validation.
323 ( real validation needs to be made using a chain )
325 - Improved domain validation by making a IP checking between
326 the target host IP and the certificate domain IP.
328 - Fixed error list handling on certificate validation.
330 * Mono.Security.Protocol.Tls/SslClientStream.cs:
332 - Added new exceptions.
335 2004-02-06 Sebastien Pouliot <sebastien@ximian.com>
337 * Mono.Security.dll.sources: Added KeyPairPersistence and it's
338 dependencies in Mono.Xml (MiniParser and SecurityParser). Also
339 added CryptoTools and SymmetricTransforms in Mono.Sec.Crypt.
340 * Mono.Security_test.dll.sources: Added unit tests for
343 2003-12-07 Sebastien Pouliot <spouliot@videotron.ca>
345 * Mono.Security.dll.sources: Added PKCS#12 support for X.509 certificates.
346 * Mono.Security_test.dll.sources: Added unit tests for PKCS#12.
348 2003-12-01 Sebastien Pouliot <spouliot@videotron.ca>
350 * Mono.Security.dll.sources: Added Mono.Security.Protocol.Ntlm namespace
351 * Mono.Security_test.dll.sources: Added Mono.Security.Protocol.Ntlm unit
354 2003-11-27 Sebastien Pouliot <spouliot@videotron.ca>
356 * Mono.Security.dll.sources: Added MD4, MD4Managed and PKCS8 to build.
357 * Mono.Security_test.dll.sources: Added unit tests for MD4, MD4Managed
360 2003-11-22 Carlos Guzman Alvarez <carlosga@telefonica.net>
362 * Changed line endings to unix format in SSL/TLS sources.
364 * Mono.Security.CryptographyoHMD5SHA1CryptoServiceProvider.cs:
366 - Removed file (now it's called MD5SHA1.cs)
368 * Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:
370 - Removed comments from AES ciphersuites.
373 2003-11-17 Carlos Guzmán Álvarez <carlosga@telefonica.net>
375 * Mono.Security.Protocol.Tls/SslClientStream.cs:
377 Removed ReadByte method, use innerStream.ReadByte() method instead.
379 2003-11-13 Carlos Guzmán Álvarez <carlosga@telefonica.net>
381 * Added implementation of an SslClientStream class similar to the MS .NET Framework 1.2 documentation.
383 The next files are no more needed:
387 - TlsNetworkStream.cs
393 The next files are renamed:
395 - TlsSessionSettings.cs -> TlsClientSettings.cs
397 - TlsSessionContext.cs -> TlsContext.cs
399 The next files are new:
401 - SslClientStream.cs ( the name is non definitive yet )
403 The next files where changed to reflect the new canges:
405 - TlsHandshakeMessage.cs
407 - TlsClientCertificate.cs
409 - TlsClientCertificateVerify.cs
411 - TlsClientFinished.cs
415 - TlsClientKeyExchange.cs
417 - TlsServerCertificate.cs
419 - TlsServerCertificateRequest.cs
421 - TlsServerFinished.cs
425 - TlsServerHelloDone.cs
427 - TlsServerKeyExchange.cs
431 - TlsCloseNotifyAlert.cs
434 2003-11-12 Carlos Guzmán Álvarez <carlosga@telefonica.net>
436 * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
438 - Changes for give full error message only in debug mode ( Thanks to Sebastién Pouliot. )
440 * Mono.Security.Protocol.Tls/TlsProtocol.cs:
442 - Renamed to SecurityProtocolType.cs ( for match .NET 1.2 )
444 * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
446 - Renamed to MD5SHA1.cs ( Thanks to Sebastién Pouliot. )
448 * Mono.Security.Cryptography/TlsCompressionMethod.cs:
450 - Renamed to SecurityCompressionType.
452 * Mono.Security.Protocol.Tls/CipherAlgorithmType.cs:
453 * Mono.Security.Protocol.Tls/HashAlgorithmType.cs:
454 * Mono.Security.Protocol.Tls/ExchangeAlgorithmType.cs:
456 - New enumerations that matches .NET 1.2 definitions with some minor differences.
458 * Mono.Security.Protocol.Tls/CipherSuite.cs:
459 * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
460 * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
461 * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
463 - Added changes for make use of new enumerations.
465 * Mono.Security.Protocol.Tls/TlsClientStream.cs:
467 - Added new informative properties that matches .NET 1.2 SslClientStream
468 ( Not all the properties are implemented yet ).
471 2003-11-10 Carlos Guzmán Álvarez <carlosga@telefonica.net>
473 * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
475 - Fixed invalid alert message.
477 * Mono.Security.Protocol.Tls/CipherSuite.cs:
478 * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
479 * Mono.Security.Cryptography/HMAC.cs:
480 * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
481 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
483 - Changed ( Thanks to Sebastién Pouliot for his feedback )
485 SHA1CryptoServiceProvider sha = new SHA1CryptoServiceProvider();
486 MD5CryptoServiceProvider sha = new MD5CryptoServiceProvider();
490 HashAlgorithm sha = SHA1.Create();
491 HashAlgorithm md5 = MD5.Create();
494 2003-11-04 Carlos Guzmán Álvarez <carlosga@telefonica.net>
496 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
498 - Commented server certificate signature verification.
500 * Mono.Security.Protocol.Tls/TlsServerSettings.cs:
502 - Renamed ServerCertificates property to Certificates.
505 2003-11-04 Carlos Guzmán Álvarez (carlosga@telefonica.net)
507 * Updated SSL/TLS implementation files with unix like line endings.
509 2003-11-04 Carlos Guzmán Álvarez <carlosga@telefonica.net>
511 * Mono.Security.Protocol.Tls/CipherSuite.cs:
513 - Added custom padding for record encryption.
516 2003-11-03 Carlos Guzmán Álvarez <carlosga@telefonica.net>
518 * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessages.cs:
522 * Mono.Security.Protocol.Tls/TlsSslHandshakeHash.cs:
524 - New class for handshake hashes calculation on SSL3 protocol.
526 * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
528 - Fixed mac keys clearing for SSL3 protocol.
530 * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
531 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:
533 - Added changes for make use of new TlsSslHandshakeHash class.
535 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
537 - Added initial implementation for SSL3 protocol.
539 * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
541 - New class for md5-sha hash calculation.
543 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:
544 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
545 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
546 * Mono.Security.Protocol.Tls.Handshake.Client/TlsHandshakeMessage.cs:
548 - Make use of new MD5SHA1CryptoServiceProvider class.
550 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
552 - Added initial implementation (not finished).
554 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
556 - Minor change to message processing.
558 - Changed verify method name to verifySignature.
560 * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
562 - Changed handshakeHashes member to be an TlsStream.
564 2003-10-28 Carlos Guzmán Álvarez <carlosga@telefonica.net>
566 * Mono.Security.Protocol.Tls/CipherSuite.cs:
567 * Mono.Security.Protocol.Tls/TlsSessionSettings.cs:
568 * Mono.Security.Protocol.Tls/TlsServerSettings.cs:
569 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
570 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientKeyExchange.cs:
571 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
572 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
574 - Added changes for make use of X509 classes from mono.
576 2003-10-23 Carlos Guzmán Álvarez <carlosga@telefonica.net>
578 * Added partial implementation of SSL3 protocol ( not finished yet ) to the TLS sources.
580 2003-10-20 Sebastien Pouliot <spouliot@videotron.ca>
582 * Mono.Security.dll.sources: Removed AssemblyInfo.cs from build.
583 This file is for TLS not for the complete Mono.Security assembly.
585 2003-10-20 Duncan Mak <duncan@ximian.com>
587 * Mono.Security.dll.sources: Added TlsAbstractCipherSuite.cs,
588 TlsCipherSuiteFactory.cs and TlsCompressMethod.cs. This fixes the
591 2003-10-20 Carlos Guzmán Álvarez <carlosga@telefonica.net>
593 * Mono.Security.dll.sources: Added references for new Tls files.
595 2003-10-20 Pedro Martínez Juliá <yoros@wanadoo.es>
597 * Mono.Security.dll.sources: Added references for Tls files.
599 2003-09-05 Sebastien Pouliot <spouliot@videotron.ca>
601 * KeyAttributesExtension.cs: New. Added for WSE.
603 2003-09-01 Sebastien Pouliot <spouliot@videotron.ca>
605 * Mono.Security.dll.sources: Added support for Authenticode(tm)
608 2003-07-30 Sebastien Pouliot <spouliot@videotron.ca>
610 * Mono.Security.dll.sources: Added ExtendedKeyUsageExtension.cs
611 certificate extension (so MakeCert can now create SSL certificates).
613 2003-07-28 Sebastien Pouliot <spouliot@videotron.ca>
615 * Mono.Security.dll.sources: Added missing SubjectAltNameExtension.cs
617 2003-06-14 Sebastien Pouliot <spouliot@videotron.ca>
619 * list.unix. Added SubjectAltNameExtension.cs
621 2003-03-06 Sebastien Pouliot <spouliot@videotron.ca>
623 * list.unix: New. All C# files required to build the assembly.
624 * makefile.gnu: New. Makefile to build the assembly under Linux.
625 * Mono.Security.build: New. NAnt build file.