2005-10-11 Sebastien Pouliot <sebastien@ximian.com>
[mono.git] / mcs / class / Mono.Security / Mono.Security.X509 / ChangeLog
1 2005-10-11  Sebastien Pouliot  <sebastien@ximian.com>
2
3         * X509Certificate.cs: Fixed bug #76407. ValidFrom and ValidUntil are
4         local date/time so IsCurrent most also use a local date/time.
5
6 2005-10-06  Sebastien Pouliot  <sebastien@ximian.com>
7
8         * X509Chain.cs: Fixed the case where no chain is present (self signed)
9
10 2005-09-09  Sebastien Pouliot  <sebastien@ximian.com>
11
12         * X509Certificate.cs: Fixed version property (bug #76012). Added
13         ISerializable (for 2.0 so we're not breaking current compatibility).
14
15 2005-08-29  Sebastien Pouliot  <sebastien@ximian.com>
16
17         * X501Name.cs: Fixed quoted (bug #75780) and escaped values. Added
18         parsing for "direct" OID values. Plugged DC and UID with new X520 
19         classes.
20         * X520Attributes.cs: Added support for SerialNumber (fix bug #75783),
21         DomainComponent, UserId and Oid.
22
23 2005-08-12  Sebastien Pouliot  <sebastien@ximian.com>
24
25         * X520Attributes.cs: Don't select PRINTABLESTRING for non 7bits 
26         values. Fix bug #75782. Based on patch from Daniel Granath.
27
28 2005-06-29  Sebastien Pouliot  <sebastien@ximian.com>
29
30         * X509CRL.cs: Fix the case where no entry are present in the CRL (as
31         the structure is optional).
32
33 2005-04-26  Sebastien Pouliot  <sebastien@ximian.com>
34
35         * X509Certificate.cs: DSA and RSA properties are now cached. In 2.0
36         they also have a set accessor.
37         * PKCS12.cs: Modified code to allow providing the password as a byte
38         array (the new constructor is available in 2.0).
39
40 2005-02-25  Sebastien Pouliot  <sebastien@ximian.com>
41
42         * X501Name.cs: Added support for multiple entries in a same set.
43
44 2005-01-11  Sebastien Pouliot  <sebastien@ximian.com>
45
46         * X509Certificate.cs: Fixed NullReferenceException when asking for
47         data that wasn't a proper X.509 certificate.
48
49 2004-12-13  Sebastien Pouliot  <sebastien@ximian.com>
50
51         * X509Certificate.cs: Directly use the MD2 class when compiled in 
52         Mono.Security.dll assembly (even if not configured in machine.config).
53
54 2004-09-17  Sebastien Pouliot  <sebastien@ximian.com>
55
56         * PKCS12.cs: Fixed all level 4 compilation warnings.
57         * X501Name.cs: Fixed all level 4 compilation warnings.
58         * X509Certificate.cs: Fixed all level 4 compilation warnings.
59         * X509CertificateBuilder.cs: Fixed all level 4 compilation warnings.
60         * X509Extension.cs: In synch with corlib version. Fixed all level 4 
61         compilation warnings.
62         * X520Attributes.cs: Updated to check upperbounds - which fixed level
63         4 compilation warnings.
64
65 2004-09-07  Sebastien Pouliot  <sebastien@ximian.com>
66
67         * X509Chain.cs: Fixed a bug when constructing a certificate chain from
68         a collection (endless loop). Fixed bug when Reset-ing an empty chain.
69
70 2004-08-10  Sebastien Pouliot  <sebastien@ximian.com>
71
72         * X509Store.cs: Now returns empty collection/list for certificates/
73         CRL when access to a store is denied.
74
75 2004-07-15  Sebastien Pouliot  <sebastien@ximian.com>
76
77         * X501Name.cs: Support for E (email) in FromString.
78         * X520Attributes.cs: Added X520.EmailAddress.
79         Both patches fix bug #61241 and were contributed by Ianier Munoz.
80
81 2004-05-27  Sebastien Pouliot  <sebastien@ximian.com>
82
83         * X509Certificate.cs: Rethrow original exception when parsing X.509 
84         certificates (inside a CryptographicException) so people can see if 
85         their changes affects certificate decoding.
86
87 2004-05-12  Jesper Pedersen  <jep@itplus.dk>
88
89         * PKCS12.cs: Removed file exists check from SaveToFile(). Removed 
90         Equals() and GetHashCode(). Clone the original iteration count.
91         
92 2004-05-06  Jesper Pedersen  <jep@itplus.dk>
93
94         * PKCS12.cs: Fixed synchronization with X509CertificateCollection in 
95         GetBytes ().
96
97 2004-05-05  Jesper Pedersen  <jep@itplus.dk>
98
99         * PKCS12.cs: Added support for SafeBag attributes. Added support for 
100         Clone() (ICloneable), Equals and GetHashCode. New methods:
101         - AddCertificate (X509Certificate cert)
102         - AddCertificate (X509Certificate cert, IDictionary attributes)
103         - RemoveCertificate (X509Certificate cert)
104         - RemoveCertificate (X509Certificate cert, IDictionary attributes)
105         - AddPkcs8ShroudedKeyBag (AsymmetricAlgorithm aa)
106         - AddPkcs8ShroudedKeyBag (AsymmetricAlgorithm aa, IDictionary attributes)
107         - RemovePkcs8ShroudedKeyBag (AsymmetricAlgorithm aa)
108         - AddKeyBag (AsymmetricAlgorithm aa)
109         - AddKeyBag (AsymmetricAlgorithm aa, IDictionary attributes)
110         - RemoveKeyBag (AsymmetricAlgorithm aa)
111         - AsymmetricAlgorithm GetAsymmetricAlgorithm (IDictionary attrs)
112         - X509Certificate GetCertificate (IDictionary attrs)
113         - IDictionary GetAttributes (AsymmetricAlgorithm aa) 
114         - IDictionary GetAttributes (X509Certificate cert)
115
116 2004-04-22  Sebastien Pouliot  <sebastien@ximian.com>
117
118         * PKCS12.cs: FxCop-ized. CLS compliance.
119         * X501Name.cs: FxCop-ized.
120         * X509Builder.cs: FxCop-ized. Replaced Array.Copy with 
121         Buffer.BlockCopy.
122         * X509CRL.cs: FxCop-ized. Replaced Array.Copy with Buffer.BlockCopy.
123         * X509Certificate.cs: FxCop-ized. Replaced Array.Copy with 
124         Buffer.BlockCopy. Removed unused private method GetHash.
125         * X509CertificateBuilder.cs: Ajusted with changes. Replaced 
126         Array.Copy with Buffer.BlockCopy.
127         * X509CertificateCollection.cs: Added INSIDE_CORLIB as the class is
128         shared with corlib assembly.
129         * X509Chain.cs: FxCop-ized. Removed old ITrustAnchor support.
130         * X509ChainStatusFlags.cs: Added missing [Flags].
131         * X509Extension.cs: FxCop-ized. Added Equals, GetHashCode methods.
132         * X509Extensions.cs: FxCop-ized. Sealed class, renamed to 
133         X509ExtensionCollection and inherit from CollectionBase. Added missing
134         methods.
135         * X509Store.cs: FxCop-ized.
136         * X509StoreManager.cs: FxCop-ized. Sealed class.
137         * X509Stores.cs: Added INSIDE_CORLIB as the class is shared with 
138         corlib assembly.
139         * X520Attributes.cs: FxCop-ized. Added INSIDE_CORLIB.
140
141 2004-04-02  Lluis Sanchez Gual  <lluis@ximian.com>
142
143         * X509Chain.cs: Fixed build for net_1_0 profile.
144
145 2004-03-17  Jesper Pedersen  <jep@itplus.dk>
146
147         * PKCS12.cs: Fixed sequence problem in Pkcs8ShroudedKeyBag. Fixed key
148         bag implementation in GetBytes. Moved key bag implementation in 
149         GetBytes to fit OpenSSL. Added NULL digest in MAC (GetBytes) to fit
150         OpenSSL. Added SaveToFile method.
151
152 2004-03-10  Sebastien Pouliot  <sebastien@ximian.com>
153
154         * PKCS12.cs: Completed GetBytes() so it is now possible to encode
155         / encrypt PKCS12 files.
156
157 2004-02-26  Sebastien Pouliot  <sebastien@ximian.com>
158
159         * X509Store.cs: Changed not to use base64 in filenames as it can 
160         conflict with path separators. Now use plain hex. Now catch
161         incorrectly encoded certificates / CRL in stores. Added Name property.
162
163 2004-02-24  Sebastien Pouliot  <sebastien@ximian.com>
164
165         * X509Certificate.cs: Add support for the OID "1.3.14.3.2.29" (SHA1 
166         with RSA). Added a fix for "really" null algorithm parameters.
167         * X509CertificateCollection.cs: Fixed Contains and IndexOf (worked
168         on objects but not for the same certificate in a different object).
169
170 2004-02-23  Sebastien Pouliot  <sebastien@ximian.com>
171
172         * TestAnchors.cs: Removed - no need to be hardcoded anymore.
173         * X509Chain.cs: Updated to use the new store for trusted roots.
174         * X509CRL.cs: New. Certificate Revocation List v1/v2 support.
175         * X509Store.cs: New. Managed each individual store (with or
176         without CRL support).
177         * X509StoreManager.cs: New. Certificate Store Manager to access
178         user and machine stores and to merge them when required.
179         * X509Stores.cs: New. Certificate stores group for either the
180         current user or the local machine.
181
182 2004-02-20  Sebastien Pouliot  <sebastien@ximian.com>
183
184         * X509Chain.cs: Added an option to use a pre-built chain (like TLS
185         offers) to save time rebuilding it. Added some validations and more
186         detailled status. Still a LOT to do!
187         * X509ChainStatusFlags.cs: New. Status code for the results of the
188         chain building and verification.
189
190 2003-12-15  Sebastien Pouliot  <spouliot@videotron.ca>
191
192         * TrustAnchors.cs: Added a new trusted root, Thawte, for code signing.
193
194 2003-12-07  Sebastien Pouliot  <spouliot@videotron.ca>
195
196         * PKCS12.cs: New. PKCS#12 implementation. Only decoding is working
197         right now.
198
199 2003-09-01  Sebastien Pouliot  <spouliot@videotron.ca>
200
201         * ITrustAnchors.cs: New. Interface to trust anchors.
202         * TestAnchors.cs: New. Include 2 tests anchors: Microsoft Root Agency
203         (for Windows compatibility) and Mono Test Root.
204         * TrustAnchors.cs: New. Include some widely used (commercial) code 
205         signing root certificates.
206         * X509CertificateCollection.cs: New. Collection for Mono's X509 
207         certificates.
208         * X509Chain.cs: New. MINIMAL certificate chaining engine to support
209         Authenticode(tm). VERY PARTIAL IMPLEMENTATION!!!
210
211 2003-03-15  Sebastien Pouliot  <spouliot@videotron.ca>
212
213         * X501Name.cs: New. X.501 Distinguished Names stuff
214         * X509Builder.cs: New. Abstract class for building X.509 related
215         structures (like certificates and CRLs).
216         * X509Certificate.cs: New. A more complete class to handle X.509
217         certificates.
218         * X509CertificateBuilder.cs: New. Class to build X.509 certificates.
219         * X509Extension.cs: New. A base class for all X.509 extensions.
220         * X509Extensions.cs: New. X509Extension collection.
221         * X520Attributes.cs: New. X.520 attributes (mainly for X501 names)