1 2006-10-08 Sebastien Pouliot <sebastien@ximian.com>
3 * PKCS12.cs: A String.Empty is different from a null password. Fix bug
6 2006-09-05 Sebastien Pouliot <sebastien@ximian.com>
8 * X509Certificate.cs: Don't reset RSA or DSA property if the new value
9 is null (part of the fix for #79262).
11 2006-07-25 Sebastien Pouliot <sebastien@ximian.com>
13 * X509CRL.cs: Fix the case where no entry are present in the CRL (as
14 the structure is optional) *and* when there are no x.509 certificate
17 2006-01-24 Sebastien Pouliot <sebastien@ximian.com>
19 * PKCS12.cs: Consider String.Empty as a null password (e.g. don't
20 throw an IndexOutOfRangeException). Fix part of bug #77342.
22 2006-01-05 Sebastien Pouliot <sebastien@ximian.com>
24 * X509Extension.cs: Extension data may be encapsulated (i.e. ASN.1
25 data inside the octet string) if it comes from the X509Certificate
28 2006-01-04 Sebastien Pouliot <sebastien@ximian.com>
30 * X509Extension.cs: Added setter for Critical property (fix #77154).
31 Fixed asymmetry between encoding and decoding (fix #75781).
33 2005-12-16 Sebastien Pouliot <sebastien@ximian.com>
35 * X509Chain.cs: Fix chain building. Patch from Vincent Cote-Roy.
37 2005-11-18 Sebastien Pouliot <sebastien@ximian.com>
39 * X509Extension.cs: Changed default ctor to protected to help
40 extensibility outside of Mono.Security.dll (fix bug #76742).
42 2005-11-04 Sebastien Pouliot <sebastien@ximian.com>
44 * PKCS12.cs: It's now possible to add multiple keys of the same size
45 inside a pkcs12 file. Fix bug #76627.
47 2005-11-04 Sebastien Pouliot <sebastien@ximian.com>
49 * PKCS12.cs: Added MaximumPasswordLength property to allow decoding
50 the password with a length limits like MS PFXImportCertStore does.
51 In this case you just have to assign the value CryptoApiPasswordLimit
52 to the new static property.
54 2005-10-11 Sebastien Pouliot <sebastien@ximian.com>
56 * X509Certificate.cs: Fixed bug #76407. ValidFrom and ValidUntil are
57 local date/time so IsCurrent most also use a local date/time.
58 * X509CRL.cs: ValidFrom and ValidUntil are local date/time so
59 IsCurrent most also use a local date/time.
61 2005-10-06 Sebastien Pouliot <sebastien@ximian.com>
63 * X509Chain.cs: Fixed the case where no chain is present (self signed)
65 2005-09-09 Sebastien Pouliot <sebastien@ximian.com>
67 * X509Certificate.cs: Fixed version property (bug #76012). Added
68 ISerializable (for 2.0 so we're not breaking current compatibility).
70 2005-08-29 Sebastien Pouliot <sebastien@ximian.com>
72 * X501Name.cs: Fixed quoted (bug #75780) and escaped values. Added
73 parsing for "direct" OID values. Plugged DC and UID with new X520
75 * X520Attributes.cs: Added support for SerialNumber (fix bug #75783),
76 DomainComponent, UserId and Oid.
78 2005-08-12 Sebastien Pouliot <sebastien@ximian.com>
80 * X520Attributes.cs: Don't select PRINTABLESTRING for non 7bits
81 values. Fix bug #75782. Based on patch from Daniel Granath.
83 2005-06-29 Sebastien Pouliot <sebastien@ximian.com>
85 * X509CRL.cs: Fix the case where no entry are present in the CRL (as
86 the structure is optional).
88 2005-04-26 Sebastien Pouliot <sebastien@ximian.com>
90 * X509Certificate.cs: DSA and RSA properties are now cached. In 2.0
91 they also have a set accessor.
92 * PKCS12.cs: Modified code to allow providing the password as a byte
93 array (the new constructor is available in 2.0).
95 2005-02-25 Sebastien Pouliot <sebastien@ximian.com>
97 * X501Name.cs: Added support for multiple entries in a same set.
99 2005-01-11 Sebastien Pouliot <sebastien@ximian.com>
101 * X509Certificate.cs: Fixed NullReferenceException when asking for
102 data that wasn't a proper X.509 certificate.
104 2004-12-13 Sebastien Pouliot <sebastien@ximian.com>
106 * X509Certificate.cs: Directly use the MD2 class when compiled in
107 Mono.Security.dll assembly (even if not configured in machine.config).
109 2004-09-17 Sebastien Pouliot <sebastien@ximian.com>
111 * PKCS12.cs: Fixed all level 4 compilation warnings.
112 * X501Name.cs: Fixed all level 4 compilation warnings.
113 * X509Certificate.cs: Fixed all level 4 compilation warnings.
114 * X509CertificateBuilder.cs: Fixed all level 4 compilation warnings.
115 * X509Extension.cs: In synch with corlib version. Fixed all level 4
116 compilation warnings.
117 * X520Attributes.cs: Updated to check upperbounds - which fixed level
118 4 compilation warnings.
120 2004-09-07 Sebastien Pouliot <sebastien@ximian.com>
122 * X509Chain.cs: Fixed a bug when constructing a certificate chain from
123 a collection (endless loop). Fixed bug when Reset-ing an empty chain.
125 2004-08-10 Sebastien Pouliot <sebastien@ximian.com>
127 * X509Store.cs: Now returns empty collection/list for certificates/
128 CRL when access to a store is denied.
130 2004-07-15 Sebastien Pouliot <sebastien@ximian.com>
132 * X501Name.cs: Support for E (email) in FromString.
133 * X520Attributes.cs: Added X520.EmailAddress.
134 Both patches fix bug #61241 and were contributed by Ianier Munoz.
136 2004-05-27 Sebastien Pouliot <sebastien@ximian.com>
138 * X509Certificate.cs: Rethrow original exception when parsing X.509
139 certificates (inside a CryptographicException) so people can see if
140 their changes affects certificate decoding.
142 2004-05-12 Jesper Pedersen <jep@itplus.dk>
144 * PKCS12.cs: Removed file exists check from SaveToFile(). Removed
145 Equals() and GetHashCode(). Clone the original iteration count.
147 2004-05-06 Jesper Pedersen <jep@itplus.dk>
149 * PKCS12.cs: Fixed synchronization with X509CertificateCollection in
152 2004-05-05 Jesper Pedersen <jep@itplus.dk>
154 * PKCS12.cs: Added support for SafeBag attributes. Added support for
155 Clone() (ICloneable), Equals and GetHashCode. New methods:
156 - AddCertificate (X509Certificate cert)
157 - AddCertificate (X509Certificate cert, IDictionary attributes)
158 - RemoveCertificate (X509Certificate cert)
159 - RemoveCertificate (X509Certificate cert, IDictionary attributes)
160 - AddPkcs8ShroudedKeyBag (AsymmetricAlgorithm aa)
161 - AddPkcs8ShroudedKeyBag (AsymmetricAlgorithm aa, IDictionary attributes)
162 - RemovePkcs8ShroudedKeyBag (AsymmetricAlgorithm aa)
163 - AddKeyBag (AsymmetricAlgorithm aa)
164 - AddKeyBag (AsymmetricAlgorithm aa, IDictionary attributes)
165 - RemoveKeyBag (AsymmetricAlgorithm aa)
166 - AsymmetricAlgorithm GetAsymmetricAlgorithm (IDictionary attrs)
167 - X509Certificate GetCertificate (IDictionary attrs)
168 - IDictionary GetAttributes (AsymmetricAlgorithm aa)
169 - IDictionary GetAttributes (X509Certificate cert)
171 2004-04-22 Sebastien Pouliot <sebastien@ximian.com>
173 * PKCS12.cs: FxCop-ized. CLS compliance.
174 * X501Name.cs: FxCop-ized.
175 * X509Builder.cs: FxCop-ized. Replaced Array.Copy with
177 * X509CRL.cs: FxCop-ized. Replaced Array.Copy with Buffer.BlockCopy.
178 * X509Certificate.cs: FxCop-ized. Replaced Array.Copy with
179 Buffer.BlockCopy. Removed unused private method GetHash.
180 * X509CertificateBuilder.cs: Ajusted with changes. Replaced
181 Array.Copy with Buffer.BlockCopy.
182 * X509CertificateCollection.cs: Added INSIDE_CORLIB as the class is
183 shared with corlib assembly.
184 * X509Chain.cs: FxCop-ized. Removed old ITrustAnchor support.
185 * X509ChainStatusFlags.cs: Added missing [Flags].
186 * X509Extension.cs: FxCop-ized. Added Equals, GetHashCode methods.
187 * X509Extensions.cs: FxCop-ized. Sealed class, renamed to
188 X509ExtensionCollection and inherit from CollectionBase. Added missing
190 * X509Store.cs: FxCop-ized.
191 * X509StoreManager.cs: FxCop-ized. Sealed class.
192 * X509Stores.cs: Added INSIDE_CORLIB as the class is shared with
194 * X520Attributes.cs: FxCop-ized. Added INSIDE_CORLIB.
196 2004-04-02 Lluis Sanchez Gual <lluis@ximian.com>
198 * X509Chain.cs: Fixed build for net_1_0 profile.
200 2004-03-17 Jesper Pedersen <jep@itplus.dk>
202 * PKCS12.cs: Fixed sequence problem in Pkcs8ShroudedKeyBag. Fixed key
203 bag implementation in GetBytes. Moved key bag implementation in
204 GetBytes to fit OpenSSL. Added NULL digest in MAC (GetBytes) to fit
205 OpenSSL. Added SaveToFile method.
207 2004-03-10 Sebastien Pouliot <sebastien@ximian.com>
209 * PKCS12.cs: Completed GetBytes() so it is now possible to encode
210 / encrypt PKCS12 files.
212 2004-02-26 Sebastien Pouliot <sebastien@ximian.com>
214 * X509Store.cs: Changed not to use base64 in filenames as it can
215 conflict with path separators. Now use plain hex. Now catch
216 incorrectly encoded certificates / CRL in stores. Added Name property.
218 2004-02-24 Sebastien Pouliot <sebastien@ximian.com>
220 * X509Certificate.cs: Add support for the OID "1.3.14.3.2.29" (SHA1
221 with RSA). Added a fix for "really" null algorithm parameters.
222 * X509CertificateCollection.cs: Fixed Contains and IndexOf (worked
223 on objects but not for the same certificate in a different object).
225 2004-02-23 Sebastien Pouliot <sebastien@ximian.com>
227 * TestAnchors.cs: Removed - no need to be hardcoded anymore.
228 * X509Chain.cs: Updated to use the new store for trusted roots.
229 * X509CRL.cs: New. Certificate Revocation List v1/v2 support.
230 * X509Store.cs: New. Managed each individual store (with or
231 without CRL support).
232 * X509StoreManager.cs: New. Certificate Store Manager to access
233 user and machine stores and to merge them when required.
234 * X509Stores.cs: New. Certificate stores group for either the
235 current user or the local machine.
237 2004-02-20 Sebastien Pouliot <sebastien@ximian.com>
239 * X509Chain.cs: Added an option to use a pre-built chain (like TLS
240 offers) to save time rebuilding it. Added some validations and more
241 detailled status. Still a LOT to do!
242 * X509ChainStatusFlags.cs: New. Status code for the results of the
243 chain building and verification.
245 2003-12-15 Sebastien Pouliot <spouliot@videotron.ca>
247 * TrustAnchors.cs: Added a new trusted root, Thawte, for code signing.
249 2003-12-07 Sebastien Pouliot <spouliot@videotron.ca>
251 * PKCS12.cs: New. PKCS#12 implementation. Only decoding is working
254 2003-09-01 Sebastien Pouliot <spouliot@videotron.ca>
256 * ITrustAnchors.cs: New. Interface to trust anchors.
257 * TestAnchors.cs: New. Include 2 tests anchors: Microsoft Root Agency
258 (for Windows compatibility) and Mono Test Root.
259 * TrustAnchors.cs: New. Include some widely used (commercial) code
260 signing root certificates.
261 * X509CertificateCollection.cs: New. Collection for Mono's X509
263 * X509Chain.cs: New. MINIMAL certificate chaining engine to support
264 Authenticode(tm). VERY PARTIAL IMPLEMENTATION!!!
266 2003-03-15 Sebastien Pouliot <spouliot@videotron.ca>
268 * X501Name.cs: New. X.501 Distinguished Names stuff
269 * X509Builder.cs: New. Abstract class for building X.509 related
270 structures (like certificates and CRLs).
271 * X509Certificate.cs: New. A more complete class to handle X.509
273 * X509CertificateBuilder.cs: New. Class to build X.509 certificates.
274 * X509Extension.cs: New. A base class for all X.509 extensions.
275 * X509Extensions.cs: New. X509Extension collection.
276 * X520Attributes.cs: New. X.520 attributes (mainly for X501 names)