1 2004-02-17 Carlos Guzmán Álvarez <carlosga@telefonica.net>
3 * Mono.Security.Protocol.Tls/SslClientStream.cs:
5 - Added changes for bring async methods to work ( Thanks to Sebastien Pouliot )
7 - Reworked the record fragmentation.
9 - Fix for send the close notify alert in the Close method
10 only if the Handshake is fully negotiated.
13 2004-02-16 Carlos Guzmán Álvarez <carlosga@telefonica.net>
15 * Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:
17 - Changed ciphersuites order of preference ( Thanks to Sebastien Pouliot for his feedback ).
19 2004-02-15 Carlos Guzmán Álvarez <carlosga@telefonica.net>
21 * Mono.Security.Protocol.Tls/SslClientStream.cs:
23 - Added specific control od available data for Network Streams
24 on Read ( Thanks to Francisco Figueiredo Jr. for his feedback ).
28 2004-02-14 Carlos Guzmán Álvarez <carlosga@telefonica.net>
30 * Mono.Security.Protocol.Tls/SslClientStream.cs:
34 2003-11-17 Carlos Guzmán Álvarez <carlosga@telefonica.net>
\r
36 * Mono.Security.Protocol.Tls/SslClientStream.cs:
\r
38 Removed ReadByte method, use innerStream.ReadByte() method instead.
\r
40 2003-11-13 Carlos Guzmán Álvarez <carlosga@telefonica.net>
\r
42 * Added implementation of an SslClientStream class similar to the MS .NET Framework 1.2 documentation.
\r
44 The next files are no more needed:
\r
48 - TlsNetworkStream.cs
\r
52 - TlsSessionState.cs
\r
54 The next files are renamed:
\r
56 - TlsSessionSettings.cs -> TlsClientSettings.cs
\r
58 - TlsSessionContext.cs -> TlsContext.cs
\r
60 The next files are new:
\r
62 - SslClientStream.cs ( the name is non definitive yet )
\r
64 The next files where changed to reflect the new canges:
\r
66 - TlsHandshakeMessage.cs
\r
68 - TlsClientCertificate.cs
\r
70 - TlsClientCertificateVerify.cs
\r
72 - TlsClientFinished.cs
\r
76 - TlsClientKeyExchange.cs
\r
78 - TlsServerCertificate.cs
\r
80 - TlsServerCertificateRequest.cs
\r
82 - TlsServerFinished.cs
\r
86 - TlsServerHelloDone.cs
\r
88 - TlsServerKeyExchange.cs
\r
92 - TlsCloseNotifyAlert.cs
\r
95 2003-11-12 Carlos Guzmán Álvarez <carlosga@telefonica.net>
\r
97 * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
\r
99 - Changes for give full error message only in debug mode ( Thanks to Sebastién Pouliot. )
\r
101 * Mono.Security.Protocol.Tls/TlsProtocol.cs:
\r
103 - Renamed to SecurityProtocolType.cs ( for match .NET 1.2 )
\r
105 * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
\r
107 - Renamed to MD5SHA1.cs ( Thanks to Sebastién Pouliot. )
\r
109 * Mono.Security.Cryptography/TlsCompressionMethod.cs:
\r
111 - Renamed to SecurityCompressionType.
\r
113 * Mono.Security.Protocol.Tls/CipherAlgorithmType.cs:
\r
114 * Mono.Security.Protocol.Tls/HashAlgorithmType.cs:
\r
115 * Mono.Security.Protocol.Tls/ExchangeAlgorithmType.cs:
\r
117 - New enumerations that matches .NET 1.2 definitions with some minor differences.
\r
119 * Mono.Security.Protocol.Tls/CipherSuite.cs:
\r
120 * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
\r
121 * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
\r
122 * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
\r
124 - Added changes for make use of new enumerations.
\r
126 * Mono.Security.Protocol.Tls/TlsClientStream.cs:
\r
128 - Added new informative properties that matches .NET 1.2 SslClientStream
\r
129 ( Not all the properties are implemented yet ).
\r
132 2003-11-10 Carlos Guzmán Álvarez <carlosga@telefonica.net>
\r
134 * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
\r
136 - Fixed invalid alert message.
\r
138 * Mono.Security.Protocol.Tls/CipherSuite.cs:
\r
139 * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
\r
140 * Mono.Security.Cryptography/HMAC.cs:
\r
141 * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
\r
142 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
\r
144 - Changed ( Thanks to Sebastién Pouliot for his feedback )
\r
146 SHA1CryptoServiceProvider sha = new SHA1CryptoServiceProvider();
\r
147 MD5CryptoServiceProvider sha = new MD5CryptoServiceProvider();
\r
151 HashAlgorithm sha = SHA1.Create();
\r
152 HashAlgorithm md5 = MD5.Create();
\r
154 2003-11-04 Carlos Guzmán Álvarez <carlosga@telefonica.net>
\r
156 * Mono.Security.Protocol.Tls/CipherSuite.cs:
\r
158 - Added custom padding for record encryption.
\r
161 2003-11-03 Carlos Guzmán Álvarez <carlosga@telefonica.net>
\r
163 * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessages.cs:
\r
167 * Mono.Security.Protocol.Tls/TlsSslHandshakeHash.cs:
\r
169 - New class for handshake hashes calculation on SSL3 protocol.
\r
171 * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
\r
173 - Fixed mac keys clearing for SSL3 protocol.
\r
175 * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
\r
176 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:
\r
178 - Added changes for make use of new TlsSslHandshakeHash class.
\r
180 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
\r
182 - Added initial implementation for SSL3 protocol.
\r
184 * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
\r
186 - New class for md5-sha hash calculation.
\r
188 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:
\r
189 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
\r
190 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
\r
191 * Mono.Security.Protocol.Tls.Handshake.Client/TlsHandshakeMessage.cs:
\r
193 - Make use of new MD5SHA1CryptoServiceProvider class.
\r
195 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
\r
197 - Added initial implementation (not finished).
\r
199 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
\r
201 - Minor change to message processing.
\r
203 - Changed verify method name to verifySignature.
\r
205 * Mono.Security.Protocol.Tls/TlsSessionContext.cs:
\r
207 - Changed handshakeHashes member to be an TlsStream.
\r
209 2003-10-28 Carlos Guzmán Álvarez <carlosga@telefonica.net>
\r
211 * Mono.Security.Protocol.Tls/CipherSuite.cs:
\r
212 * Mono.Security.Protocol.Tls/TlsSessionSettings.cs:
\r
213 * Mono.Security.Protocol.Tls/TlsServerSettings.cs:
\r
214 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
\r
215 * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientKeyExchange.cs:
\r
216 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
\r
217 * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
\r
219 - Added changes for make use of X509 classes from mono.
\r
221 2003-10-23 Carlos Guzmán Álvarez <carlosga@telefonica.net>
\r
223 * Added partial implementation of SSL3 protocol ( not finished yet ).
\r
225 * TlsAbstractCipherSuite.cs: Renamed to CipherSuite.cs.
\r
227 * Removed AssemblyInfo.cs file.
\r
229 2003-10-21 Carlos Guzmán Álvarez <carlosga@telefonica.net>
\r
231 TlsCipherSuiteFactory.cs: Changed names of private methods.
\r
233 TlsSslCipherSuite.cs: Replaced implementations of key generation methods with a throw new NotSupportedException().
\r
236 2003-10-20 Carlos Guzmán Álvarez <carlosga@telefonica.net>
\r
238 TlsCupherSuite.cs: Fixed padding length calculation on record encryption.
\r
240 TlsSessionContext.cs: Added new CompressionMethod property.
\r
241 Added new MAX_FRAGMENT_SIZE constant.
\r
243 TlsSession.cs: Removed MaxFragmentSize property.
\r
245 TlsSocket.cs: Replaced use of TlsSesison.MaxFragmentSize by TlsSessionContext.MAX_FAGMENT_SIZE
\r
247 TlsSessionSettings.cs: Added new CompressionMethod property.
\r
249 * Abstracted CipherSuite classes for allow work with other protocol versions.
\r
251 * Added new files :
\r
253 TlsAbstractCipherSuite.cs
\r
255 TlsSslCipherSuite.cs
\r
257 TlsCipherSuiteFactory.cs
\r
259 TlsCompressionMethod.cs
\r
261 * Added new cipher suites definitions based on RFC3268 - (http://www.ietf.org/rfc/rfc3268.txt)
\r
263 * Added two new supported ciphersuites for TLS protocol:
\r
265 TLS_RSA_WITH_AES_256_CBC_SHA
\r
267 TLS_RSA_WITH_AES_128_CBC_SHA
\r
269 * Moved key generation stuff to specific cipher suite classes.
\r
271 2003-10-20 Pedro Martínez Juliá <yoros@wanadoo.es>
\r
273 * AssemblyInfo.cs: commented out KeyFile reference.
\r
275 * TlsSession.cs: changed Math.Pow for System.Math.Pow because of MCS
\r
276 bug with namespace resolving.
\r