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