2004-02-16 Carlos Guzm��n ��lvarez <carlosga@telefonica.net>
[mono.git] / mcs / class / Mono.Security / Mono.Security.Protocol.Tls / ChangeLog
1 2004-02-16 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
2
3         * Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:
4
5         - Changed ciphersuites order of preference ( Thanks to Sebastien Pouliot for his feedback ).
6
7 2004-02-15 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
8  
9         * Mono.Security.Protocol.Tls/SslClientStream.cs:
10  
11                 - Added specific control od available data for Network Streams
12                 on Read ( Thanks to Francisco Figueiredo Jr. for his feedback ).
13  
14                 - Removed test code.
15
16 2004-02-14 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
17
18     * Mono.Security.Protocol.Tls/SslClientStream.cs:
19
20         - Removed test code.
21
22 2003-11-17 Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
23 \r
24         * Mono.Security.Protocol.Tls/SslClientStream.cs:\r
25 \r
26                 Removed ReadByte method, use innerStream.ReadByte() method instead.\r
27 \r
28 2003-11-13 Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
29 \r
30         * Added implementation of an SslClientStream class similar to the MS .NET Framework 1.2 documentation.\r
31 \r
32                 The next files are no more needed:\r
33 \r
34                         - TlsSession.cs\r
35 \r
36                         - TlsNetworkStream.cs\r
37 \r
38                         - TlsSocket.cs\r
39 \r
40                         - TlsSessionState.cs\r
41 \r
42                 The next files are renamed:\r
43 \r
44                         - TlsSessionSettings.cs -> TlsClientSettings.cs\r
45 \r
46                         - TlsSessionContext.cs -> TlsContext.cs\r
47 \r
48                 The next files are new:\r
49 \r
50                         - SslClientStream.cs ( the name is non definitive yet )\r
51 \r
52                 The next files where changed to reflect the new canges:\r
53 \r
54                         - TlsHandshakeMessage.cs\r
55 \r
56                         - TlsClientCertificate.cs\r
57 \r
58                         - TlsClientCertificateVerify.cs\r
59 \r
60                         - TlsClientFinished.cs\r
61 \r
62                         - TlsClientHello.cs\r
63 \r
64                         - TlsClientKeyExchange.cs\r
65 \r
66                         - TlsServerCertificate.cs\r
67 \r
68                         - TlsServerCertificateRequest.cs\r
69 \r
70                         - TlsServerFinished.cs\r
71 \r
72                         - TlsServerHello.cs\r
73 \r
74                         - TlsServerHelloDone.cs\r
75 \r
76                         - TlsServerKeyExchange.cs\r
77 \r
78                         - TlsAlert.cs\r
79 \r
80                         - TlsCloseNotifyAlert.cs\r
81 \r
82                 \r
83 2003-11-12 Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
84 \r
85         * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:\r
86         \r
87                 - Changes for give full error message only in debug mode ( Thanks to Sebastién Pouliot. )\r
88                 \r
89         * Mono.Security.Protocol.Tls/TlsProtocol.cs:\r
90         \r
91                 - Renamed to SecurityProtocolType.cs ( for match .NET 1.2 )\r
92         \r
93         * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:\r
94         \r
95                 - Renamed to MD5SHA1.cs ( Thanks to Sebastién Pouliot. )\r
96                 \r
97         * Mono.Security.Cryptography/TlsCompressionMethod.cs:\r
98         \r
99                 - Renamed to SecurityCompressionType.\r
100                 \r
101         * Mono.Security.Protocol.Tls/CipherAlgorithmType.cs:\r
102         * Mono.Security.Protocol.Tls/HashAlgorithmType.cs:\r
103         * Mono.Security.Protocol.Tls/ExchangeAlgorithmType.cs:\r
104         \r
105                 - New enumerations that matches .NET 1.2 definitions with some minor differences.\r
106         \r
107         * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
108         * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:\r
109         * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:\r
110         * Mono.Security.Protocol.Tls/TlsSessionContext.cs:\r
111         \r
112                 - Added changes for make use of new enumerations.\r
113         \r
114         * Mono.Security.Protocol.Tls/TlsClientStream.cs:\r
115         \r
116                 - Added new informative properties that matches .NET 1.2 SslClientStream\r
117                 ( Not all the properties are implemented yet ).\r
118 \r
119 \r
120 2003-11-10 Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
121 \r
122         * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:\r
123 \r
124                 - Fixed invalid alert message.\r
125 \r
126         * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
127         * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:\r
128         * Mono.Security.Cryptography/HMAC.cs:\r
129         * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:\r
130         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:\r
131 \r
132                 - Changed ( Thanks to Sebastién Pouliot for his feedback )\r
133 \r
134                         SHA1CryptoServiceProvider sha = new SHA1CryptoServiceProvider();\r
135                         MD5CryptoServiceProvider sha = new MD5CryptoServiceProvider();\r
136 \r
137                         to\r
138 \r
139                         HashAlgorithm sha = SHA1.Create();\r
140                         HashAlgorithm md5 = MD5.Create(); \r
141
142 2003-11-04 Carlos Guzmán Álvarez <carlosga@telefonica.net>\r
143 \r
144         * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
145 \r
146                 - Added custom padding for record encryption.\r
147 \r
148 \r
149 2003-11-03 Carlos Guzmán Álvarez <carlosga@telefonica.net>\r
150 \r
151         * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessages.cs:\r
152         \r
153                 - Removed file.\r
154 \r
155         * Mono.Security.Protocol.Tls/TlsSslHandshakeHash.cs:\r
156         \r
157                 - New class for handshake hashes calculation on SSL3 protocol.\r
158 \r
159         * Mono.Security.Protocol.Tls/TlsSessionContext.cs:\r
160         \r
161                 - Fixed mac keys clearing for SSL3 protocol.\r
162 \r
163         * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:\r
164         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:\r
165         \r
166                 - Added changes for make use of new TlsSslHandshakeHash class.\r
167         \r
168         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:\r
169         \r
170                 - Added initial implementation for SSL3 protocol.\r
171         \r
172         * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:\r
173         \r
174                 - New class for md5-sha hash calculation.\r
175                                                         \r
176         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:\r
177         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:\r
178         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:\r
179         * Mono.Security.Protocol.Tls.Handshake.Client/TlsHandshakeMessage.cs:\r
180         \r
181                 - Make use of new MD5SHA1CryptoServiceProvider class.\r
182                 \r
183         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:\r
184         \r
185                 - Added initial implementation (not finished).\r
186                         \r
187         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:\r
188         \r
189                 - Minor change to message processing.\r
190 \r
191                 - Changed verify method name to verifySignature.\r
192                         \r
193         * Mono.Security.Protocol.Tls/TlsSessionContext.cs:\r
194         \r
195                 - Changed handshakeHashes member to be an TlsStream.\r
196 \r
197 2003-10-28 Carlos Guzmán Álvarez <carlosga@telefonica.net>\r
198 \r
199         * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
200         * Mono.Security.Protocol.Tls/TlsSessionSettings.cs:\r
201         * Mono.Security.Protocol.Tls/TlsServerSettings.cs:\r
202         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:\r
203         * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientKeyExchange.cs:\r
204         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:\r
205         * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:\r
206 \r
207                 - Added changes for make use of X509 classes from mono.\r
208 \r
209 2003-10-23 Carlos Guzmán Álvarez <carlosga@telefonica.net>\r
210 \r
211         * Added partial implementation of SSL3 protocol ( not finished yet ).\r
212 \r
213         * TlsAbstractCipherSuite.cs: Renamed to CipherSuite.cs.\r
214 \r
215         * Removed AssemblyInfo.cs file.\r
216 \r
217 2003-10-21 Carlos Guzmán Álvarez <carlosga@telefonica.net>\r
218 \r
219         TlsCipherSuiteFactory.cs: Changed names of private methods.\r
220 \r
221         TlsSslCipherSuite.cs: Replaced implementations of key generation methods with a throw new NotSupportedException().\r
222 \r
223 \r
224 2003-10-20  Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
225 \r
226         TlsCupherSuite.cs: Fixed padding length calculation on record encryption.\r
227         \r
228         TlsSessionContext.cs:   Added new CompressionMethod property.\r
229                                         Added new MAX_FRAGMENT_SIZE constant.\r
230 \r
231         TlsSession.cs: Removed MaxFragmentSize property.\r
232 \r
233         TlsSocket.cs: Replaced use of TlsSesison.MaxFragmentSize by TlsSessionContext.MAX_FAGMENT_SIZE\r
234         \r
235         TlsSessionSettings.cs: Added new CompressionMethod property.\r
236 \r
237         * Abstracted CipherSuite classes for allow work with other protocol versions.\r
238 \r
239         * Added new files :\r
240 \r
241                 TlsAbstractCipherSuite.cs \r
242                         \r
243                 TlsSslCipherSuite.cs\r
244 \r
245                 TlsCipherSuiteFactory.cs\r
246 \r
247                 TlsCompressionMethod.cs\r
248 \r
249         * Added new cipher suites definitions based on RFC3268 - (http://www.ietf.org/rfc/rfc3268.txt)\r
250 \r
251         * Added two new supported ciphersuites for TLS protocol:\r
252 \r
253                 TLS_RSA_WITH_AES_256_CBC_SHA\r
254 \r
255                 TLS_RSA_WITH_AES_128_CBC_SHA\r
256 \r
257         * Moved key generation stuff to specific cipher suite classes.\r
258 \r
259 2003-10-20  Pedro Martínez Juliá  <yoros@wanadoo.es>\r
260 \r
261         * AssemblyInfo.cs: commented out KeyFile reference.\r
262 \r
263         * TlsSession.cs: changed Math.Pow for System.Math.Pow because of MCS\r
264         bug with namespace resolving.\r
265 \r