2004-02-10 Carlos Guzm��n ��lvarez <carlosga@telefonica.net>
[mono.git] / mcs / class / Mono.Security / ChangeLog
1 2004-02-10 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
2
3     * Mono.Security.Cryptography/PKCS1.cs:
4
5         - Added little change for allow the class to be used with
6         hash implementations that doesn't have an oid like the MD5SHA1 hash.
7
8     * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
9
10         - Throw exception if the Private Key is null.
11
12     * Mono.Security.Protocol.Tls/SslServerStream.cs:
13
14         - Ssl Server class without implementation ( methods signatures only )
15         That matches the described in the .NET 1.2 documentation.
16
17 2004-02-09  Sebastien Pouliot  <sebastien@ximian.com>
18
19         * Mono.Security_test.dll.sources Added Mono.Math BigInteger unit test
20         to the build (as they cannot be executed with corlib).
21
22 2004-02-09 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
23
24     * Changed the license header to all the sources files
25     to remove accents.
26
27     * Mono.Security.Protocol.Tls/TlsSessionState.cs:
28
29         - Removed old file.
30
31         * Mono.Security.Protocol.Tls/SslClientStream.cs:
32
33                 - Try to improve record reading.
34
35         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:
36
37                 - Send always the first certificate.
38
39         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
40
41                 - Added changes for correct verification of the signed data sent 
42                 by the server.
43
44         * Mono.Security.Cryptography/PKCS1.cs:
45
46                 - Added change to Encode_v15 method for allow correct
47                 encoding of hash algorithms that doesn't have an OID
48                 like the MD5SHA1 hash used in SSL/TLS protocols.
49
50         * Added files from mono:: project that are going to be needed
51         for client authentication:
52
53                 Mono.Math/*
54
55                 Mono.Math.Prime/*
56
57                 Mono.Math.Prime.Generator/*
58
59                 Mono.Security.Cryptography/RSAManaged.cs
60
61         * Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:
62
63                 - Create RSA as an RSAManaged instance.
64                 
65         * Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:
66         * Mono.Security.Protocol.Tls/RSASslSignatureDeformatter.cs:
67                 
68                 - Changed key field to be of RSA type.
69
70         * Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:
71         * Mono.Security.Protocol.Tls/RSASslSignatureDeformatter.cs:
72
73                 - Added new classes for implement in the future RSA-SSL signatures.
74
75         * Changed #region names in all source files.
76
77         * Mono.Security.Protocol.Handshake.Client/TlsServerCertificate.cs:
78                 
79                 - Fixed message (but not working yet - we need RSA signing 
80                 capabilitites with MD5SHA1 hash).       
81
82         * Mono.Security.Protocol.Handshake.Client/TlsServerCertificate.cs:
83         
84                 - Retrict certificate validation to the first validation.
85                 ( real validation needs to be made using a chain )
86                 
87                 - Improved domain validation by making a IP checking between
88                 the target host IP and the certificate domain IP.
89
90                 - Fixed error list handling on certificate validation.  
91
92         * Mono.Security.Protocol.Tls/SslClientStream.cs:
93
94                 - Added new exceptions.
95
96
97 2004-02-06  Sebastien Pouliot  <sebastien@ximian.com>
98
99         * Mono.Security.dll.sources: Added KeyPairPersistence and it's 
100         dependencies in Mono.Xml (MiniParser and SecurityParser). Also 
101         added CryptoTools and SymmetricTransforms in Mono.Sec.Crypt.
102         * Mono.Security_test.dll.sources: Added unit tests for 
103         KeyPairPersistence.
104
105 2003-12-07  Sebastien Pouliot  <spouliot@videotron.ca>
106
107         * Mono.Security.dll.sources: Added PKCS#12 support for X.509 certificates.
108         * Mono.Security_test.dll.sources: Added unit tests for PKCS#12.
109
110 2003-12-01  Sebastien Pouliot  <spouliot@videotron.ca>
111
112         * Mono.Security.dll.sources: Added Mono.Security.Protocol.Ntlm namespace
113         * Mono.Security_test.dll.sources: Added Mono.Security.Protocol.Ntlm unit
114         tests.
115
116 2003-11-27  Sebastien Pouliot  <spouliot@videotron.ca>
117
118         * Mono.Security.dll.sources: Added MD4, MD4Managed and PKCS8 to build.
119         * Mono.Security_test.dll.sources: Added unit tests for MD4, MD4Managed
120         and PKCS8.
121         
122 2003-11-22 Carlos Guzman Alvarez <carlosga@telefonica.net>
123
124         * Changed line endings to unix format in SSL/TLS sources.
125         
126         * Mono.Security.CryptographyoHMD5SHA1CryptoServiceProvider.cs:
127         
128             - Removed file (now it's called MD5SHA1.cs)
129         
130         * Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:
131         
132             - Removed comments from AES ciphersuites.
133
134
135 2003-11-17 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
136
137         * Mono.Security.Protocol.Tls/SslClientStream.cs:
138
139                 Removed ReadByte method, use innerStream.ReadByte() method instead.
140
141 2003-11-13 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
142
143         * Added implementation of an SslClientStream class similar to the MS .NET Framework 1.2 documentation.
144
145                 The next files are no more needed:
146
147                         - TlsSession.cs
148
149                         - TlsNetworkStream.cs
150
151                         - TlsSocket.cs
152
153                         - TlsSessionState.cs
154
155                 The next files are renamed:
156
157                         - TlsSessionSettings.cs -> TlsClientSettings.cs
158
159                         - TlsSessionContext.cs -> TlsContext.cs
160
161                 The next files are new:
162
163                         - SslClientStream.cs ( the name is non definitive yet )
164
165                 The next files where changed to reflect the new canges:
166
167                         - TlsHandshakeMessage.cs
168
169                         - TlsClientCertificate.cs
170
171                         - TlsClientCertificateVerify.cs
172
173                         - TlsClientFinished.cs
174
175                         - TlsClientHello.cs
176
177                         - TlsClientKeyExchange.cs
178
179                         - TlsServerCertificate.cs
180
181                         - TlsServerCertificateRequest.cs
182
183                         - TlsServerFinished.cs
184
185                         - TlsServerHello.cs
186
187                         - TlsServerHelloDone.cs
188
189                         - TlsServerKeyExchange.cs
190
191                         - TlsAlert.cs
192
193                         - TlsCloseNotifyAlert.cs
194
195                 
196 2003-11-12 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
197
198         * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
199         
200                 - Changes for give full error message only in debug mode ( Thanks to Sebastién Pouliot. )
201                 
202         * Mono.Security.Protocol.Tls/TlsProtocol.cs:
203         
204                 - Renamed to SecurityProtocolType.cs ( for match .NET 1.2 )
205         
206         * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
207         
208                 - Renamed to MD5SHA1.cs ( Thanks to Sebastién Pouliot. )
209                 
210         * Mono.Security.Cryptography/TlsCompressionMethod.cs:
211         
212                 - Renamed to SecurityCompressionType.
213                 
214         * Mono.Security.Protocol.Tls/CipherAlgorithmType.cs:
215         * Mono.Security.Protocol.Tls/HashAlgorithmType.cs:
216         * Mono.Security.Protocol.Tls/ExchangeAlgorithmType.cs:
217         
218                 - New enumerations that matches .NET 1.2 definitions with some minor differences.
219         
220         * Mono.Security.Protocol.Tls/CipherSuite.cs:
221         * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
222         * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
223         * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
224         
225                 - Added changes for make use of new enumerations.
226         
227         * Mono.Security.Protocol.Tls/TlsClientStream.cs:
228         
229                 - Added new informative properties that matches .NET 1.2 SslClientStream
230                 ( Not all the properties are implemented yet ).
231
232
233 2003-11-10 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
234
235         * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
236
237                 - Fixed invalid alert message.
238
239         * Mono.Security.Protocol.Tls/CipherSuite.cs:
240         * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
241         * Mono.Security.Cryptography/HMAC.cs:
242         * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
243         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
244
245                 - Changed ( Thanks to Sebastién Pouliot for his feedback )
246
247                         SHA1CryptoServiceProvider sha = new SHA1CryptoServiceProvider();
248                         MD5CryptoServiceProvider sha = new MD5CryptoServiceProvider();
249
250                         to
251
252                         HashAlgorithm sha = SHA1.Create();
253                         HashAlgorithm md5 = MD5.Create(); 
254
255
256 2003-11-04 Carlos Guzmán Álvarez <carlosga@telefonica.net>
257
258         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
259
260                 - Commented server certificate signature verification.
261
262         * Mono.Security.Protocol.Tls/TlsServerSettings.cs:
263
264                 - Renamed ServerCertificates property to Certificates.
265
266
267 2003-11-04 Carlos Guzmán Álvarez (carlosga@telefonica.net)
268
269         * Updated SSL/TLS implementation files with unix like line endings.
270
271 2003-11-04 Carlos Guzmán Álvarez <carlosga@telefonica.net>
272
273         * Mono.Security.Protocol.Tls/CipherSuite.cs:
274
275                 - Added custom padding for record encryption.
276
277
278 2003-11-03 Carlos Guzmán Álvarez <carlosga@telefonica.net>
279
280         * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessages.cs:
281         
282                 - Removed file.
283
284         * Mono.Security.Protocol.Tls/TlsSslHandshakeHash.cs:
285         
286                 - New class for handshake hashes calculation on SSL3 protocol.
287
288         * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
289         
290                 - Fixed mac keys clearing for SSL3 protocol.
291
292         * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
293         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:
294         
295                 - Added changes for make use of new TlsSslHandshakeHash class.
296         
297         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
298         
299                 - Added initial implementation for SSL3 protocol.
300         
301         * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
302         
303                 - New class for md5-sha hash calculation.
304                                                         
305         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:
306         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
307         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
308         * Mono.Security.Protocol.Tls.Handshake.Client/TlsHandshakeMessage.cs:
309         
310                 - Make use of new MD5SHA1CryptoServiceProvider class.
311                 
312         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
313         
314                 - Added initial implementation (not finished).
315                         
316         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
317         
318                 - Minor change to message processing.
319
320                 - Changed verify method name to verifySignature.
321                         
322         * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
323         
324                 - Changed handshakeHashes member to be an TlsStream.
325
326 2003-10-28 Carlos Guzmán Álvarez <carlosga@telefonica.net>
327
328         * Mono.Security.Protocol.Tls/CipherSuite.cs:
329         * Mono.Security.Protocol.Tls/TlsSessionSettings.cs:
330         * Mono.Security.Protocol.Tls/TlsServerSettings.cs:
331         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
332         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientKeyExchange.cs:
333         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
334         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
335
336                 - Added changes for make use of X509 classes from mono.
337
338 2003-10-23 Carlos Guzmán Álvarez <carlosga@telefonica.net>
339
340         * Added partial implementation of SSL3 protocol ( not finished yet ) to the TLS sources.
341
342 2003-10-20  Sebastien Pouliot  <spouliot@videotron.ca>
343
344         * Mono.Security.dll.sources: Removed AssemblyInfo.cs from build.
345         This file is for TLS not for the complete Mono.Security assembly.
346
347 2003-10-20  Duncan Mak  <duncan@ximian.com>
348
349         * Mono.Security.dll.sources: Added TlsAbstractCipherSuite.cs,
350         TlsCipherSuiteFactory.cs and TlsCompressMethod.cs. This fixes the
351         build.
352
353 2003-10-20  Carlos Guzmán Álvarez  <carlosga@telefonica.net>
354
355         * Mono.Security.dll.sources: Added references for new Tls files.
356
357 2003-10-20  Pedro Martínez Juliá  <yoros@wanadoo.es>
358
359         * Mono.Security.dll.sources: Added references for Tls files.
360
361 2003-09-05  Sebastien Pouliot  <spouliot@videotron.ca>
362
363         * KeyAttributesExtension.cs: New. Added for WSE.
364
365 2003-09-01  Sebastien Pouliot  <spouliot@videotron.ca>
366
367         * Mono.Security.dll.sources: Added support for Authenticode(tm)
368         signatures.
369
370 2003-07-30  Sebastien Pouliot  <spouliot@videotron.ca>
371
372         * Mono.Security.dll.sources: Added ExtendedKeyUsageExtension.cs 
373         certificate extension (so MakeCert can now create SSL certificates).
374
375 2003-07-28  Sebastien Pouliot  <spouliot@videotron.ca>
376
377         * Mono.Security.dll.sources: Added missing SubjectAltNameExtension.cs
378
379 2003-06-14  Sebastien Pouliot  <spouliot@videotron.ca>
380
381         * list.unix. Added SubjectAltNameExtension.cs
382
383 2003-03-06  Sebastien Pouliot  <spouliot@videotron.ca>
384
385         * list.unix: New. All C# files required to build the assembly.
386         * makefile.gnu: New. Makefile to build the assembly under Linux.
387         * Mono.Security.build: New. NAnt build file. 
388