1 2008-05-16 Sebastien Pouliot <sebastien@ximian.com>
3 * AuthenticodeFormatter.cs: Throw an NotSupportedException if we're
4 trying to sign a non-PE (portable executable) file. We do not support
5 signing CAB and MSI files (nor does mono generates them).
6 [Partial fix for #388602, kept open as Enhancement]
8 2008-01-10 Sebastien Pouliot <sebastien@ximian.com>
10 * AuthenticodeDeformatter.cs: Use RSAManaged and the new overloaded
11 PKCS1.Verify_v15 with tryNonStandardEncoding == true when verifying
12 timestamping certificate signatures. Fix for #350958
14 2007-11-01 Sebastien Pouliot <sebastien@ximian.com>
16 * AuthenticodeFormatter.cs: Allow signature of very big files (e.g. a
17 1.5Gb EXE). Original patch from Ondrej Kelle;
19 2007-04-26 Sebastien Pouliot <sebastien@ximian.com>
21 * AuthenticodeDeformatter.cs: Don't reset an existing reason inside
24 2007-01-12 Sebastien Pouliot <sebastien@ximian.com>
26 * AuthenticodeFormatter.cs: The ASN.1 structure must be padded to a
27 multiple of 8 bytes, else the signature is invalid - even if the hash
30 2006-12-14 Sebastien Pouliot <sebastien@ximian.com>
32 * AuthenticodeBase.cs: Support (strip) COFF symbol table when
33 calculating the hash value of a PE file.
34 * AuthenticodeDeformatter.cs: Adapt to changes in base class.
35 * AuthenticodeFormatter.cs: Reuse more code from base class. Strip
36 COFF symbol table (if present). Fix alignment (on 8 bytes) for the
39 2006-11-08 Sebastien Pouliot <sebastien@ximian.com>
41 * AuthenticodeDeformatter.cs: Return (find) the SigningCertificate
42 even if the signature isn't verifiable. This is the behaviour required
45 2006-06-14 Sebastien Pouliot <sebastien@ximian.com>
47 * AuthenticodeBase.cs: Fix destination offset. Note that this works
48 under MS but not under Mono.
49 * AuthenticodeDeformatter.cs: Report a more useful error if the file
50 hash doesn't match the signed hash.
51 * AuthenticodeFormatter.cs: Implemented support for Timestamp method.
53 2005-04-18 Sebastien Pouliot <sebastien@ximian.com>
55 * AuthenticodeFormatter.cs: Commented unused private constants to
56 remove compiler warnings.
58 2005-04-08 Sebastien Pouliot <sebastien@ximian.com>
60 * AuthenticodeDeformatter.cs: In synch with corlib version.
62 2004-11-05 Sebastien Pouliot <sebastien@ximian.com>
64 * AuthenticodeFormatter.cs: Now use BitConverterLE for explicit
65 little-endian convertion.
66 * PrivateKey.cs: Now use BitConverterLE for explicit little-endian
67 convertion for PVK files.
69 2004-10-29 Sebastien Pouliot <sebastien@ximian.com>
71 * AuthenticodeFormatter.cs: Fixed spcSpOpusInfo attribute (it wasn't
72 added) and contentType attribute (was added 2 times). Also fixed the
73 case where we signed an already Authenticode signed file (re-signing).
74 * SoftwarePublisherCertificate.cs: Support for base64 encoded ASN.1
75 files (either Unicode or ASCII).
77 2004-10-22 Sebastien Pouliot <sebastien@ximian.com>
79 * AuthenticodeFormatter.cs: Fixed case where Url is null (broken since
80 we switched from string to Uri). Now use "using" for FileStream.
82 2004-09-17 Sebastien Pouliot <sebastien@ximian.com>
84 * AuthenticodeDeformatter.cs: In synch with corlib version. Fixed all
85 level 4 compilation warnings.
86 * AuthenticodeFormatter.cs: Fixed all level 4 compilation warnings.
87 * PrivateKey.cs: Fixed all level 4 compilation warnings.
89 2004-09-07 Sebastien Pouliot <sebastien@ximian.com>
91 * AuthenticodeBase.cs: Reworked not to load the entire file into
92 memory before hashing it (now in 4kb blocks). Splitted code in many
93 methods to allow "lighter" use by the deformatter.
94 * AuthenticodeDeformatter.cs: Less memory hungry so it can be used to
95 create Publisher evidences. No hash instance are created if the file
97 * AuthenticodeFormatter.cs: Adapted to API changes.
99 2004-05-11 Sebastien Pouliot <sebastien@ximian.com>
101 * PrivateKey.cs: Better exception reporting. Added globalization to
103 * SoftwarePublisherCertificate.cs: Better exception reporting. Added
104 globalization to exceptions.
106 2004-04-28 Sebastien Pouliot <sebastien@ximian.com>
108 * AuthenticodeBase.cs: Added missing (overwritten) #if INSIDE_CORLIB
109 directives to hides type and enum in corlib.
111 2004-04-22 Sebastien Pouliot <sebastien@ximian.com>
113 * AuthenticodeBase.cs: FxCop-ized. CLS compliance. Also includes
114 endian fixes from Bernie Solomon.
115 * AuthenticodeDeformatter.cs: FxCop-ized. CLS compliance.
116 * AuthenticodeFormatter.cs: FxCop-ized. CLS compliance.
117 * PrivateKey.cs: Replaced Array.Copy with Buffer.BlockCopy.
118 * SoftwarePublisherCertificate.cs: FxCop-ized.
120 2004-02-23 Sebastien Pouliot <sebastien@ximian.com>
122 * PrivateKey.cs: Adjusted to catch exceptions from CryptoConvert.
123 FromCapiPrivateKeyBlob when dealing with weakly encrypted keys.
125 2004-02-20 Sebastien Pouliot <sebastien@ximian.com>
127 * AuthenticodeDeformatter.cs: Updated to use the new X509Chain syntax.
129 2003-12-15 Sebastien Pouliot <spouliot@videotron.ca>
131 * AuthenticodeDeformatter.cs: Now throw a COMException for invalid
132 signature. Added a SigningCertificate property (to be independant of
133 the certificate collection ordering).
135 2003-09-01 Sebastien Pouliot <spouliot@videotron.ca>
137 * AuthenticodeBase.cs: New. Base class including how to hash a
139 * AuthenticodeDeformatter.cs: New. Class to decode Authenticode(tm)
141 * AuthenticodeFormatter.cs: New. Class to encode a Authenticode(tm)
142 signature, and optionally a timestamp, into a PE file.
143 * SoftwarePublisherCertificate.cs: Now use Mono.Security.X509.
144 X509Certificate class.
146 2003-06-19 Nick Drochak <ndrochak@gol.com>
148 * PrivateKey.cs: Work around for mcs? bug 45127.
150 2003-03-15 Sebastien Pouliot <spouliot@videotron.ca>
152 * PrivateKey.cs: New. Class to load or create PVK (PriVate Key)
153 files (a Microsoft specific file format for private keys).
155 2003-03-06 Sebastien Pouliot <spouliot@videotron.ca>
157 * SoftwarePublisherCertificate.cs: New. Class to load or create
158 SPC files (which are PKCS#7 files containing only certificates