2004-09-17 Sebastien Pouliot <sebastien@ximian.com>
[mono.git] / mcs / class / Mono.Security / Mono.Security.Cryptography / ChangeLog
1 2004-09-17  Sebastien Pouliot  <sebastien@ximian.com>
2
3         * SHA224.cs: New. Abstract class for all SHA224 implementations.
4         * SHA224Managed.cs: New. Managed implementation of SHA224 (a SHA256
5         derivate) as specified in RFC3874 and FIPS 180-2 Change Notice.
6
7 2004-06-23  Sebastien Pouliot  <sebastien@ximian.com>
8
9         * SymmetricTransform.cs: Reduce by one the number of block when 
10         decrypting. This operation was in CryptoStream before but is only
11         required for decryption (which CryptoStream can't know). 
12         Fix bug #60573.
13
14 2004-05-27  Sebastien Pouliot  <sebastien@ximian.com>
15
16         * ARC4Managed.cs: Added missing exception handling in TransformBlock 
17         and TransformFinalBlock.
18         * SymmetricTransform.cs: Fixed possible integer overflow. Added 
19         missing exception handling in TransformBlock and TransformFinalBlock.
20
21 2004-05-10  Sebastien Pouliot  <sebastien@ximian.com>
22
23         * PKCS8.cs: Fixed negative Version check.
24         * MD2Managed.cs: Added readonly to static array constants.
25         * MD4Managed.cs: Removed unrequired memory allocation in MD4Transform.
26
27 2004-05-01  Sebastien Pouliot  <sebastien@ximian.com>
28
29         * CryptoConvert.cs: Added support for truncated, but still valid, RSA
30         private key blob. Fix #57941 (couldn't sign with nunit key).
31         * RSAManaged.cs: Normalized the size of D when not present. This 
32         allows us to output a compatible base64 representation of 1024bits 0.
33
34 2004-04-28  Sebastien Pouliot  <sebastien@ximian.com>
35
36         * SymmetricTransform.cs: Fixed bug when offset > 0 in destination 
37         buffer.
38
39 2004-04-22  Sebastien Pouliot  <sebastien@ximian.com>
40
41         * CryptoConvert.cs: FxCop-ized. Sealed class. Use Buffer.BlockCopy.
42         * CryptoTools.cs: FxCop-ized. Sealed KeyBuilder class. Delay creation
43         of RNG object. Use Buffer.BlockCopy.
44         * DiffieHellman.cs: FxCop-ized. Removed public constructor.
45         * DiffieHellmanManaged.cs: FxCop-ized. Actualized with changes from
46         BigInteger.
47         * KeyPairPersistance.cs: FxCop-ized. Updated version for management
48         of keypairs.
49         * MD2Managed.cs: Use Buffer.BlockCopy instead of Array.Copy.
50         * PKCS1.cs: FxCop-ized. Sealed class. Use Buffer.BlockCopy instead of
51         Array.Copy. Also includes endian patches from Bernie Solomon.
52         * PKCS8.cs: FxCop-ized. Sealed class. 
53         * RSAManaged.cs: FxCop-ized. Actualized with changes from BigInteger.
54         * SymmetricTransform.cs: Use Buffer.BlockCopy instead of Array.Copy.
55
56 2004-04-20  Sebastien Pouliot  <sebastien@ximian.com>
57
58         * CryptoConvert.cs: Synched with corlib version to get endian fixes 
59         from Bernie Solomon.
60
61 2004-03-23  Sebastien Pouliot  <sebastien@ximian.com>
62
63         * CryptoConvert.cs: Added exception for null and bad parameters.
64         * RSAManaged.cs: CryptographicException thrown when trying to export
65         the private key when only the public key is present (CRT aware).
66
67 2004-03-22  Sebastien Pouliot  <sebastien@ximian.com>
68
69         * CryptoConvert.cs: Added new methods to convert [From|To]Hex. Added
70         new version of FromCapiPublicKeyBlob with an integer offset.
71
72 2004-03-10  Sebastien Pouliot  <sebastien@ximian.com>
73
74         * PKCS8.cs: Added EncodeRSA, EncodeDSA and completed GetBytes() so it
75         is now possible to encode PKCS8 files (this is required to encode 
76         PKCS12 files).
77
78 2004-02-15  Sebastien Pouliot  <sebastien@ximian.com>
79
80         * ARC4Managed.cs: Removed all % 256 (modulo) because typecasting to 
81         byte already ensure the result would be correct (as suggested by 
82         Technoboy). Now use KeyBuilder to create new keys.
83
84 2004-02-13  Sebastien Pouliot  <sebastien@ximian.com>
85
86         * DHKeyGeneration.cs: New. Enumuration of possible key generation for
87         Diffie-Hellman. Contributed by Pieter Philippaerts (mentalis.org).
88         * DHParameters.cs: New. Structure to hold the different elements of a
89         Diffie-Hellman key. Contributed by Pieter Philippaerts (mentalis.org).
90         * DiffieHellman.cs: New. Astract class as base for all Diffie-Hellman
91         implementations. Contributed by Pieter Philippaerts (mentalis.org).
92         * DiffieHellmanManaged.cs: New. Managed implementation of the Diffie-
93         Hellman key agreement algorithm. Contributed by Pieter Philippaerts.
94
95 2004-02-09  Sebastien Pouliot  <sebastien@ximian.com>
96
97         * PKCS1.cs: New. Copied from corlib. Required for RSAManaged.
98         * RSAManaged.cs: New. Copied from corlib. Required for TLS - some
99         parts (MD5SHA1) cannot work with the default RSACryptoServiceProvider.
100
101 2004-02-06  Sebastien Pouliot  <sebastien@ximian.com>
102
103         * CryptoTools.cs: New. Copied from corlib to offer the sames services
104         to symmetric algorithms in Mono.Security assembly.
105         * KeyPairPersistance.cs: Provides a similar to CryptoAPI persistence 
106         mechanism for keypairs (based on CspParameters).
107         * SymmetricTransform.cs: New. Copied from corlib to offer the sames 
108         services to symmetric algorithms in Mono.Security assembly.
109
110 2004-01-12  Sebastien Pouliot  <spouliot@videotron.ca>
111
112         * CryptoConvert.cs: RSA doesn't start with a Q - at least that what
113         a strongname told me. Sorry Ron :(
114
115 2003-11-27  Sebastien Pouliot  <spouliot@videotron.ca>
116
117         * MD4.cs: New. Asbtract class for all MD4 implementations. WARNING:
118         The MD4 algorithm is BROKEN (collisions) and SHOULDN'T be used in 
119         NEW designs. However some higher level algorithms (like NTLM) requires 
120         MD4 (and may even be secure using it). YOU'RE WARNED!
121         * MD4Managed.cs: New. Managed implementation of MD4 (RFC1320).
122         * PKCS8.cs: New. Added Private-Key Information Syntax Standard as a 
123         building block for PKCS12.
124
125 2003-10-30  Sebastien Pouliot  <spouliot@videotron.ca>
126
127         * CryptoConvert.cs: Fixed strongname generation for small exponents 
128         (like 17). Part of the fixed for bug #50341.
129
130 2003-06-19  Nick Drochak <ndrochak@gol.com>
131
132         * CryptoConvert.cs: Work around for mcs? bug 45127.
133
134 2003-03-07  Sebastien Pouliot  <spouliot@videotron.ca>
135
136         * ARC4Managed.cs: New. Implementation of the Alleged RC4(tm)
137         stream cipher in managed code (required for SSL/TLS).
138         * CryptoConvert.cs: New. Helper class to help convert between
139         Windows crypto structures and .NET crypto classes (required
140         for security tools).
141         * MD2.cs: New. Abstract class for all MD2 hash implementations.
142         * MD2Managed.cs: New. Managed implementation of the MD2 hash
143         algorithm (required for old, but still valid, X.509 certificates).
144         * RC4.cs: New. Abstract class for all RC4 stream cipher 
145         implementations.