]> git.ipfire.org Git - thirdparty/openssl.git/blame - CHANGES
undo Cygwin change
[thirdparty/openssl.git] / CHANGES
CommitLineData
81a6c781 1
f1c236f8 2 OpenSSL CHANGES
651d0aff
RE
3 _______________
4
d5f686d8 5 Changes between 0.9.7e and 0.9.8 [xx XXX xxxx]
4d94ae00 6
c9a112f5 7 *) Change ./Configure so that certain algorithms can be disabled by default.
ecc5ef87
BM
8 The new counterpiece to "no-xxx" is "enable-xxx".
9
10 The patented RC5 and MDC2 algorithms will now be disabled unless
11 "enable-rc5" and "enable-mdc2", respectively, are specified.
12
13 (IDEA remains enabled despite being patented. This is because IDEA
14 is frequently required for interoperability, and there is no license
15 fee for non-commercial use. As before, "no-idea" can be used to
16 avoid this algorithm.)
17
c9a112f5
BM
18 [Bodo Moeller]
19
6951c23a
RL
20 *) Add processing of proxy certificates (see RFC 3820). This work was
21 sponsored by KTH (The Royal Institute of Technology in Stockholm) and
22 EGEE (Enabling Grids for E-science in Europe).
23 [Richard Levitte]
24
ea681ba8
AP
25 *) RC4 performance overhaul on modern architectures/implementations, such
26 as Intel P4, IA-64 and AMD64.
27 [Andy Polyakov]
28
401ee37a
DSH
29 *) New utility extract-section.pl. This can be used specify an alternative
30 section number in a pod file instead of having to treat each file as
31 a separate case in Makefile. This can be done by adding two lines to the
32 pod file:
33
34 =for comment openssl_section:XXX
35
36 The blank line is mandatory.
37
38 [Steve Henson]
39
826a42a0
DSH
40 *) New arguments -certform, -keyform and -pass for s_client and s_server
41 to allow alternative format key and certificate files and passphrase
42 sources.
43 [Steve Henson]
44
5d7c222d
DSH
45 *) New structure X509_VERIFY_PARAM which combines current verify parameters,
46 update associated structures and add various utility functions.
47
48 Add new policy related verify parameters, include policy checking in
49 standard verify code. Enhance 'smime' application with extra parameters
50 to support policy checking and print out.
51 [Steve Henson]
52
30fe028f
GT
53 *) Add a new engine to support VIA PadLock ACE extensions in the VIA C3
54 Nehemiah processors. These extensions support AES encryption in hardware
55 as well as RNG (though RNG support is currently disabled).
56 [Michal Ludvig <michal@logix.cz>, with help from Andy Polyakov]
57
df11e1e9
GT
58 *) Deprecate BN_[get|set]_params() functions (they were ignored internally).
59 [Geoff Thorpe]
60
ad500340
AP
61 *) New FIPS 180-2 algorithms, SHA-224/-256/-384/-512 are implemented.
62 [Andy Polyakov and a number of other people]
63
e14f4aab
AP
64 *) Improved PowerPC platform support. Most notably BIGNUM assembler
65 implementation contributed by IBM.
66 [Suresh Chari, Peter Waltenberg, Andy Polyakov]
67
bcfea9fb
GT
68 *) The new 'RSA_generate_key_ex' function now takes a BIGNUM for the public
69 exponent rather than 'unsigned long'. There is a corresponding change to
70 the new 'rsa_keygen' element of the RSA_METHOD structure.
71 [Jelte Jansen, Geoff Thorpe]
72
d5f686d8
BM
73 *) Functionality for creating the initial serial number file is now
74 moved from CA.pl to the 'ca' utility with a new option -create_serial.
75
76 (Before OpenSSL 0.9.7e, CA.pl used to initialize the serial
77 number file to 1, which is bound to cause problems. To avoid
78 the problems while respecting compatibility between different 0.9.7
79 patchlevels, 0.9.7e employed 'openssl x509 -next_serial' in
80 CA.pl for serial number initialization. With the new release 0.9.8,
81 we can fix the problem directly in the 'ca' utility.)
64674bcc
DSH
82 [Steve Henson]
83
3a87a9b9
GT
84 *) Reduced header interdepencies by declaring more opaque objects in
85 ossl_typ.h. As a consequence, including some headers (eg. engine.h) will
86 give fewer recursive includes, which could break lazy source code - so
87 this change is covered by the OPENSSL_NO_DEPRECATED symbol. As always,
88 developers should define this symbol when building and using openssl to
89 ensure they track the recommended behaviour, interfaces, [etc], but
90 backwards-compatible behaviour prevails when this isn't defined.
91 [Geoff Thorpe]
92
bf5773fa
DSH
93 *) New function X509_POLICY_NODE_print() which prints out policy nodes.
94 [Steve Henson]
95
216659eb
DSH
96 *) Add new EVP function EVP_CIPHER_CTX_rand_key and associated functionality.
97 This will generate a random key of the appropriate length based on the
98 cipher context. The EVP_CIPHER can provide its own random key generation
99 routine to support keys of a specific form. This is used in the des and
100 3des routines to generate a key of the correct parity. Update S/MIME
101 code to use new functions and hence generate correct parity DES keys.
102 Add EVP_CHECK_DES_KEY #define to return an error if the key is not
103 valid (weak or incorrect parity).
104 [Steve Henson]
105
e1a27eb3
DSH
106 *) Add a local set of CRLs that can be used by X509_verify_cert() as well
107 as looking them up. This is useful when the verified structure may contain
108 CRLs, for example PKCS#7 signedData. Modify PKCS7_verify() to use any CRLs
109 present unless the new PKCS7_NO_CRL flag is asserted.
110 [Steve Henson]
111
6446e0c3
DSH
112 *) Extend ASN1 oid configuration module. It now additionally accepts the
113 syntax:
114
115 shortName = some long name, 1.2.3.4
116 [Steve Henson]
117
5c98b2ca
GT
118 *) Reimplemented the BN_CTX implementation. There is now no more static
119 limitation on the number of variables it can handle nor the depth of the
120 "stack" handling for BN_CTX_start()/BN_CTX_end() pairs. The stack
121 information can now expand as required, and rather than having a single
122 static array of bignums, BN_CTX now uses a linked-list of such arrays
123 allowing it to expand on demand whilst maintaining the usefulness of
124 BN_CTX's "bundling".
125 [Geoff Thorpe]
126
46ef873f
GT
127 *) Add a missing BN_CTX parameter to the 'rsa_mod_exp' callback in RSA_METHOD
128 to allow all RSA operations to function using a single BN_CTX.
129 [Geoff Thorpe]
130
4acc3e90
DSH
131 *) Preliminary support for certificate policy evaluation and checking. This
132 is initially intended to pass the tests outlined in "Conformance Testing
133 of Relying Party Client Certificate Path Processing Logic" v1.07.
134 [Steve Henson]
135
7f663ce4
GT
136 *) bn_dup_expand() has been deprecated, it was introduced in 0.9.7 and
137 remained unused and not that useful. A variety of other little bignum
138 tweaks and fixes have also been made continuing on from the audit (see
139 below).
140 [Geoff Thorpe]
141
875a644a
RL
142 *) Constify all or almost all d2i, c2i, s2i and r2i functions, along with
143 associated ASN1, EVP and SSL functions and old ASN1 macros.
7f663ce4 144 [Richard Levitte]
875a644a 145
b6358c89
GT
146 *) BN_zero() only needs to set 'top' and 'neg' to zero for correct results,
147 and this should never fail. So the return value from the use of
148 BN_set_word() (which can fail due to needless expansion) is now deprecated;
149 if OPENSSL_NO_DEPRECATED is defined, BN_zero() is a void macro.
150 [Geoff Thorpe]
151
9e051bac
GT
152 *) BN_CTX_get() should return zero-valued bignums, providing the same
153 initialised value as BN_new().
154