]> git.ipfire.org Git - thirdparty/openssl.git/blame - NEWS
Rethink the method to place user cflags last
[thirdparty/openssl.git] / NEWS
CommitLineData
3b52c2e7
RE
1
2 NEWS
3 ====
4
5 This file gives a brief overview of the major changes between each OpenSSL
6 release. For more details please read the CHANGES file.
7
502bed22 8 Major changes between OpenSSL 1.0.2f and OpenSSL 1.1.0 [in pre-release]
5fa30720 9
7c314196 10 o Support for ChaCha20 and Poly1305 added to libcrypto and libssl
d05775d7
DSH
11 o Support for extended master secret
12 o CCM ciphersuites
6f9a3c37 13 o Reworked test suite, now based on perl, Test::Harness and Test::More
df7421cc 14 o Various libcrypto structures made opaque including: BIGNUM, EVP_MD,
a718c627 15 EVP_MD_CTX, HMAC_CTX, EVP_CIPHER and EVP_CIPHER_CTX.
6f9a3c37
RL
16 o libssl internal structures made opaque
17 o SSLv2 support removed
18 o Kerberos ciphersuite support removed
23fe34b4
RL
19 o RC4 removed from DEFAULT ciphersuites in libssl
20 o 40 and 56 bit cipher support removed from libssl
6f9a3c37 21 o All public header files moved to include/openssl, no more symlinking
7c314196 22 o SSL/TLS state machine, version negotiation and record layer rewritten
5e030525 23 o EC revision: now operations use new EC_KEY_METHOD.
7c314196
MC
24 o Support for OCB mode added to libcrypto
25 o Support for asynchronous crypto operations added to libcrypto and libssl
98186eb4 26 o Deprecated interfaces can now be disabled at build time either
46e64f6e 27 relative to the latest release via the "no-deprecated" Configure
98186eb4
VD
28 argument, or via the "--api=1.1.0|1.0.0|0.9.8" option.
29 o Application software can be compiled with -DOPENSSL_API_COMPAT=version
46e64f6e 30 to ensure that features deprecated in that version are not exposed.
59fd40d4 31 o Support for RFC6698/RFC7671 DANE TLSA peer authentication
d74dfafd
RL
32 o Change of Configure to use --prefix as the main installation
33 directory location rather than --openssldir. The latter becomes
34 the directory for certs, private key and openssl.cnf exclusively.
0f45c26f 35 o Reworked BIO networking library, with full support for IPv6.
907d2c2f 36 o New "unified" build system
5fa30720 37
502bed22
MC
38 Major changes between OpenSSL 1.0.2e and OpenSSL 1.0.2f [28 Jan 2016]
39
40 o DH small subgroups (CVE-2016-0701)
41 o SSLv2 doesn't block disabled ciphers (CVE-2015-3197)
42
5fa30720
DSH
43 Major changes between OpenSSL 1.0.2d and OpenSSL 1.0.2e [3 Dec 2015]
44
45 o BN_mod_exp may produce incorrect results on x86_64 (CVE-2015-3193)
46 o Certificate verify crash with missing PSS parameter (CVE-2015-3194)
47 o X509_ATTRIBUTE memory leak (CVE-2015-3195)
48 o Rewrite EVP_DecodeUpdate (base64 decoding) to fix several bugs
49 o In DSA_generate_parameters_ex, if the provided seed is too short,
50 return an error
51
52 Major changes between OpenSSL 1.0.2c and OpenSSL 1.0.2d [9 Jul 2015]
6f47ced0
MC
53
54 o Alternate chains certificate forgery (CVE-2015-1793)
5fa30720 55 o Race condition handling PSK identify hint (CVE-2015-3196)
6f47ced0
MC
56
57 Major changes between OpenSSL 1.0.2b and OpenSSL 1.0.2c [12 Jun 2015]
58
59 o Fix HMAC ABI incompatibility
60
61 Major changes between OpenSSL 1.0.2a and OpenSSL 1.0.2b [11 Jun 2015]
063dccd0
MC
62
63 o Malformed ECParameters causes infinite loop (CVE-2015-1788)
64 o Exploitable out-of-bounds read in X509_cmp_time (CVE-2015-1789)
65 o PKCS7 crash with missing EnvelopedContent (CVE-2015-1790)
66 o CMS verify infinite loop with unknown hash function (CVE-2015-1792)
67 o Race condition handling NewSessionTicket (CVE-2015-1791)
68
69 Major changes between OpenSSL 1.0.2 and OpenSSL 1.0.2a [19 Mar 2015]
367eab2f
MC
70
71 o OpenSSL 1.0.2 ClientHello sigalgs DoS fix (CVE-2015-0291)
72 o Multiblock corrupted pointer fix (CVE-2015-0290)
73 o Segmentation fault in DTLSv1_listen fix (CVE-2015-0207)
74 o Segmentation fault in ASN1_TYPE_cmp fix (CVE-2015-0286)
75 o Segmentation fault for invalid PSS parameters fix (CVE-2015-0208)
76 o ASN.1 structure reuse memory corruption fix (CVE-2015-0287)
77 o PKCS7 NULL pointer dereferences fix (CVE-2015-0289)
78 o DoS via reachable assert in SSLv2 servers fix (CVE-2015-0293)
79 o Empty CKE with client auth and DHE fix (CVE-2015-1787)
80 o Handshake with unseeded PRNG fix (CVE-2015-0285)
81 o Use After Free following d2i_ECPrivatekey error fix (CVE-2015-0209)
82 o X509_to_X509_REQ NULL pointer deref fix (CVE-2015-0288)
83 o Removed the export ciphers from the DEFAULT ciphers
84
85 Major changes between OpenSSL 1.0.1l and OpenSSL 1.0.2 [22 Jan 2015]:
f0170ebb
DSH
86
87 o Suite B support for TLS 1.2 and DTLS 1.2
88 o Support for DTLS 1.2
89 o TLS automatic EC curve selection.
90 o API to set TLS supported signature algorithms and curves
91 o SSL_CONF configuration API.
92 o TLS Brainpool support.
93 o ALPN support.
94 o CMS support for RSA-PSS, RSA-OAEP, ECDH and X9.42 DH.
95
367eab2f
MC
96 Major changes between OpenSSL 1.0.1k and OpenSSL 1.0.1l [15 Jan 2015]
97
98 o Build fixes for the Windows and OpenVMS platforms
99
100 Major changes between OpenSSL 1.0.1j and OpenSSL 1.0.1k [8 Jan 2015]
101
102 o Fix for CVE-2014-3571
103 o Fix for CVE-2015-0206
104 o Fix for CVE-2014-3569
105 o Fix for CVE-2014-3572
106 o Fix for CVE-2015-0204
107 o Fix for CVE-2015-0205
108 o Fix for CVE-2014-8275
109 o Fix for CVE-2014-3570
110
ed13270d
MC
111 Major changes between OpenSSL 1.0.1i and OpenSSL 1.0.1j [15 Oct 2014]
112
113 o Fix for CVE-2014-3513
114 o Fix for CVE-2014-3567
115 o Mitigation for CVE-2014-3566 (SSL protocol vulnerability)
116 o Fix for CVE-2014-3568
117
118 Major changes between OpenSSL 1.0.1h and OpenSSL 1.0.1i [6 Aug 2014]
119
120 o Fix for CVE-2014-3512
121 o Fix for CVE-2014-3511
122 o Fix for CVE-2014-3510
123 o Fix for CVE-2014-3507
124 o Fix for CVE-2014-3506
125 o Fix for CVE-2014-3505
126 o Fix for CVE-2014-3509
127 o Fix for CVE-2014-5139
128 o Fix for CVE-2014-3508
129
7178c711
DSH
130 Major changes between OpenSSL 1.0.1g and OpenSSL 1.0.1h [5 Jun 2014]
131
132 o Fix for CVE-2014-0224
133 o Fix for CVE-2014-0221
367eab2f 134 o Fix for CVE-2014-0198
7178c711
DSH
135 o Fix for CVE-2014-0195
136 o Fix for CVE-2014-3470
137 o Fix for CVE-2010-5298
138
86f6e866
DSH
139 Major changes between OpenSSL 1.0.1f and OpenSSL 1.0.1g [7 Apr 2014]
140
141 o Fix for CVE-2014-0160
142 o Add TLS padding extension workaround for broken servers.
143 o Fix for CVE-2014-0076
144
9bd1e2b5
DSH
145 Major changes between OpenSSL 1.0.1e and OpenSSL 1.0.1f [6 Jan 2014]
146
147 o Don't include gmt_unix_time in TLS server and client random values
148 o Fix for TLS record tampering bug CVE-2013-4353
149 o Fix for TLS version checking bug CVE-2013-6449
150 o Fix for DTLS retransmission bug CVE-2013-6450
151
57d7ee3a 152 Major changes between OpenSSL 1.0.1d and OpenSSL 1.0.1e [11 Feb 2013]:
4dc83677
BM
153
154 o Corrected fix for CVE-2013-0169
155
57d7ee3a 156 Major changes between OpenSSL 1.0.1c and OpenSSL 1.0.1d [4 Feb 2013]:
5818a07a
DSH
157
158 o Fix renegotiation in TLS 1.1, 1.2 by using the correct TLS version.
159 o Include the fips configuration module.
4dc83677
BM
160 o Fix OCSP bad key DoS attack CVE-2013-0166
161 o Fix for SSL/TLS/DTLS CBC plaintext recovery attack CVE-2013-0169
162 o Fix for TLS AESNI record handling flaw CVE-2012-2686
5818a07a 163
57d7ee3a 164 Major changes between OpenSSL 1.0.1b and OpenSSL 1.0.1c [10 May 2012]:
5818a07a
DSH
165
166 o Fix TLS/DTLS record length checking bug CVE-2012-2333
167 o Don't attempt to use non-FIPS composite ciphers in FIPS mode.
168
57d7ee3a 169 Major changes between OpenSSL 1.0.1a and OpenSSL 1.0.1b [26 Apr 2012]:
a9e6c091
DSH
170
171 o Fix compilation error on non-x86 platforms.
172 o Make FIPS capable OpenSSL ciphers work in non-FIPS mode.
173 o Fix SSL_OP_NO_TLSv1_1 clash with SSL_OP_ALL in OpenSSL 1.0.0
174
57d7ee3a 175 Major changes between OpenSSL 1.0.1 and OpenSSL 1.0.1a [19 Apr 2012]:
579d5534
DSH
176
177 o Fix for ASN1 overflow bug CVE-2012-2110
178 o Workarounds for some servers that hang on long client hellos.
179 o Fix SEGV in AES code.
180
57d7ee3a 181 Major changes between OpenSSL 1.0.0h and OpenSSL 1.0.1 [14 Mar 2012]:
61ad8262
DSH
182
183 o TLS/DTLS heartbeat support.
184 o SCTP support.
185 o RFC 5705 TLS key material exporter.
186 o RFC 5764 DTLS-SRTP negotiation.
187 o Next Protocol Negotiation.
188 o PSS signatures in certificates, requests and CRLs.
189 o Support for password based recipient info for CMS.
190 o Support TLS v1.2 and TLS v1.1.
191 o Preliminary FIPS capability for unvalidated 2.0 FIPS module.
192 o SRP support.
193
57d7ee3a 194 Major changes between OpenSSL 1.0.0g and OpenSSL 1.0.0h [12 Mar 2012]:
13747c6f
DSH
195
196 o Fix for CMS/PKCS#7 MMA CVE-2012-0884
197 o Corrected fix for CVE-2011-4619
198 o Various DTLS fixes.
199
57d7ee3a 200 Major changes between OpenSSL 1.0.0f and OpenSSL 1.0.0g [18 Jan 2012]:
13747c6f
DSH
201
202 o Fix for DTLS DoS issue CVE-2012-0050
203
57d7ee3a 204 Major changes between OpenSSL 1.0.0e and OpenSSL 1.0.0f [4 Jan 2012]:
13747c6f
DSH
205
206 o Fix for DTLS plaintext recovery attack CVE-2011-4108
207 o Clear block padding bytes of SSL 3.0 records CVE-2011-4576
208 o Only allow one SGC handshake restart for SSL/TLS CVE-2011-4619
209 o Check parameters are not NULL in GOST ENGINE CVE-2012-0027
210 o Check for malformed RFC3779 data CVE-2011-4577
211
57d7ee3a 212 Major changes between OpenSSL 1.0.0d and OpenSSL 1.0.0e [6 Sep 2011]:
13747c6f
DSH
213
214 o Fix for CRL vulnerability issue CVE-2011-3207
215 o Fix for ECDH crashes CVE-2011-3210
216 o Protection against EC timing attacks.
217 o Support ECDH ciphersuites for certificates using SHA2 algorithms.
218 o Various DTLS fixes.
219
57d7ee3a 220 Major changes between OpenSSL 1.0.0c and OpenSSL 1.0.0d [8 Feb 2011]:
9770924f
BM
221
222 o Fix for security issue CVE-2011-0014
223
57d7ee3a 224 Major changes between OpenSSL 1.0.0b and OpenSSL 1.0.0c [2 Dec 2010]:
88f2a4cf
BM
225
226 o Fix for security issue CVE-2010-4180
227 o Fix for CVE-2010-4252
228 o Fix mishandling of absent EC point format extension.
229 o Fix various platform compilation issues.
230 o Corrected fix for security issue CVE-2010-3864.
231
57d7ee3a 232 Major changes between OpenSSL 1.0.0a and OpenSSL 1.0.0b [16 Nov 2010]:
732d31be
DSH
233
234 o Fix for security issue CVE-2010-3864.
235 o Fix for CVE-2010-2939
236 o Fix WIN32 build system for GOST ENGINE.
237
57d7ee3a 238 Major changes between OpenSSL 1.0.0 and OpenSSL 1.0.0a [1 Jun 2010]:
417a24db 239
3cbb15ee 240 o Fix for security issue CVE-2010-1633.
417a24db
DSH
241 o GOST MAC and CFB fixes.
242
57d7ee3a 243 Major changes between OpenSSL 0.9.8n and OpenSSL 1.0.0 [29 Mar 2010]:
4e74239d
DSH
244
245 o RFC3280 path validation: sufficient to process PKITS tests.
246 o Integrated support for PVK files and keyblobs.
247 o Change default private key format to PKCS#8.
ef236ec3 248 o CMS support: able to process all examples in RFC4134
4e74239d
DSH
249 o Streaming ASN1 encode support for PKCS#7 and CMS.
250 o Multiple signer and signer add support for PKCS#7 and CMS.
251 o ASN1 printing support.
252 o Whirlpool hash algorithm added.
253 o RFC3161 time stamp support.
254 o New generalised public key API supporting ENGINE based algorithms.
255 o New generalised public key API utilities.
256 o New ENGINE supporting GOST algorithms.
257 o SSL/TLS GOST ciphersuite support.
258 o PKCS#7 and CMS GOST support.
259 o RFC4279 PSK ciphersuite support.
260 o Supported points format extension for ECC ciphersuites.
261 o ecdsa-with-SHA224/256/384/512 signature types.
262 o dsa-with-SHA224 and dsa-with-SHA256 signature types.
263 o Opaque PRF Input TLS extension support.
14023fe3 264 o Updated time routines to avoid OS limitations.
4e74239d 265
57d7ee3a 266 Major changes between OpenSSL 0.9.8m and OpenSSL 0.9.8n [24 Mar 2010]:
417a24db
DSH
267
268 o CFB cipher definition fixes.
269 o Fix security issues CVE-2010-0740 and CVE-2010-0433.
270
57d7ee3a 271 Major changes between OpenSSL 0.9.8l and OpenSSL 0.9.8m [25 Feb 2010]:
5814d829
DSH
272
273 o Cipher definition fixes.
274 o Workaround for slow RAND_poll() on some WIN32 versions.
275 o Remove MD2 from algorithm tables.
276 o SPKAC handling fixes.
277 o Support for RFC5746 TLS renegotiation extension.
278 o Compression memory leak fixed.
279 o Compression session resumption fixed.
280 o Ticket and SNI coexistence fixes.
281 o Many fixes to DTLS handling.
282
57d7ee3a 283 Major changes between OpenSSL 0.9.8k and OpenSSL 0.9.8l [5 Nov 2009]:
5814d829
DSH
284
285 o Temporary work around for CVE-2009-3555: disable renegotiation.
286
57d7ee3a 287 Major changes between OpenSSL 0.9.8j and OpenSSL 0.9.8k [25 Mar 2009]:
7f1c086b
DSH
288
289 o Fix various build issues.
290 o Fix security issues (CVE-2009-0590, CVE-2009-0591, CVE-2009-0789)
291
57d7ee3a 292 Major changes between OpenSSL 0.9.8i and OpenSSL 0.9.8j [7 Jan 2009]:
7f1c086b
DSH
293
294 o Fix security issue (CVE-2008-5077)
295 o Merge FIPS 140-2 branch code.
296
57d7ee3a 297 Major changes between OpenSSL 0.9.8g and OpenSSL 0.9.8h [28 May 2008]:
7f1c086b
DSH
298
299 o CryptoAPI ENGINE support.
300 o Various precautionary measures.
301 o Fix for bugs affecting certificate request creation.
302 o Support for local machine keyset attribute in PKCS#12 files.
303
57d7ee3a 304 Major changes between OpenSSL 0.9.8f and OpenSSL 0.9.8g [19 Oct 2007]:
11d01d37 305
7f1c086b 306 o Backport of CMS functionality to 0.9.8.
11d01d37
LJ
307 o Fixes for bugs introduced with 0.9.8f.
308
57d7ee3a 309 Major changes between OpenSSL 0.9.8e and OpenSSL 0.9.8f [11 Oct 2007]:
1948c7e6
BL
310
311 o Add gcc 4.2 support.
df7421cc 312 o Add support for AES and SSE2 assembly language optimization
1948c7e6
BL
313 for VC++ build.
314 o Support for RFC4507bis and server name extensions if explicitly
315 selected at compile time.
316 o DTLS improvements.
317 o RFC4507bis support.
318 o TLS Extensions support.
319
57d7ee3a 320 Major changes between OpenSSL 0.9.8d and OpenSSL 0.9.8e [23 Feb 2007]:
ac63b837
DSH
321
322 o Various ciphersuite selection fixes.
323 o RFC3779 support.
324
57d7ee3a 325 Major changes between OpenSSL 0.9.8c and OpenSSL 0.9.8d [28 Sep 2006]:
61118caa
BM
326
327 o Introduce limits to prevent malicious key DoS (CVE-2006-2940)
328 o Fix security issues (CVE-2006-2937, CVE-2006-3737, CVE-2006-4343)
329 o Changes to ciphersuite selection algorithm
330
57d7ee3a 331 Major changes between OpenSSL 0.9.8b and OpenSSL 0.9.8c [5 Sep 2006]:
613e7d2a
BM
332
333 o Fix Daniel Bleichenbacher forged signature attack, CVE-2006-4339
334 o New cipher Camellia
335
57d7ee3a 336 Major changes between OpenSSL 0.9.8a and OpenSSL 0.9.8b [4 May 2006]:
613e7d2a
BM
337
338 o Cipher string fixes.
339 o Fixes for VC++ 2005.
340 o Updated ECC cipher suite support.
341 o New functions EVP_CIPHER_CTX_new() and EVP_CIPHER_CTX_free().
342 o Zlib compression usage fixes.
343 o Built in dynamic engine compilation support on Win32.
344 o Fixes auto dynamic engine loading in Win32.
345
57d7ee3a 346 Major changes between OpenSSL 0.9.8 and OpenSSL 0.9.8a [11 Oct 2005]:
72dce768 347
b79aa05e 348 o Fix potential SSL 2.0 rollback, CVE-2005-2969
72dce768
BM
349 o Extended Windows CE support
350
57d7ee3a 351 Major changes between OpenSSL 0.9.7g and OpenSSL 0.9.8 [5 Jul 2005]:
7017605d
RL
352
353 o Major work on the BIGNUM library for higher efficiency and to
354 make operations more streamlined and less contradictory. This
355 is the result of a major audit of the BIGNUM library.
356 o Addition of BIGNUM functions for fields GF(2^m) and NIST
357 curves, to support the Elliptic Crypto functions.
358 o Major work on Elliptic Crypto; ECDH and ECDSA added, including
359 the use through EVP, X509 and ENGINE.
360 o New ASN.1 mini-compiler that's usable through the OpenSSL
361 configuration file.
362 o Added support for ASN.1 indefinite length constructed encoding.
363 o New PKCS#12 'medium level' API to manipulate PKCS#12 files.
364 o Complete rework of shared library construction and linking
365 programs with shared or static libraries, through a separate
366 Makefile.shared.
c8310124 367 o Rework of the passing of parameters from one Makefile to another.
7017605d
RL
368 o Changed ENGINE framework to load dynamic engine modules
369 automatically from specifically given directories.
370 o New structure and ASN.1 functions for CertificatePair.
371 o Changed the ZLIB compression method to be stateful.
372 o Changed the key-generation and primality testing "progress"
373 mechanism to take a structure that contains the ticker
374 function and an argument.
375 o New engine module: GMP (performs private key exponentiation).
376 o New engine module: VIA PadLOck ACE extension in VIA C3
377 Nehemiah processors.
378 o Added support for IPv6 addresses in certificate extensions.
379 See RFC 1884, section 2.2.
380 o Added support for certificate policy mappings, policy
381 constraints and name constraints.
382 o Added support for multi-valued AVAs in the OpenSSL
383 configuration file.
384 o Added support for multiple certificates with the same subject
385 in the 'openssl ca' index file.
386 o Make it possible to create self-signed certificates using
387 'openssl ca -selfsign'.
388 o Make it possible to generate a serial number file with
389 'openssl ca -create_serial'.
390 o New binary search functions with extended functionality.
391 o New BUF functions.
392 o New STORE structure and library to provide an interface to all
393 sorts of data repositories. Supports storage of public and
394 private keys, certificates, CRLs, numbers and arbitrary blobs.
395 This library is unfortunately unfinished and unused withing
396 OpenSSL.
397 o New control functions for the error stack.
398 o Changed the PKCS#7 library to support one-pass S/MIME
399 processing.
400 o Added the possibility to compile without old deprecated
401 functionality with the OPENSSL_NO_DEPRECATED macro or the
402 'no-deprecated' argument to the config and Configure scripts.
403 o Constification of all ASN.1 conversion functions, and other
404 affected functions.
405 o Improved platform support for PowerPC.
406 o New FIPS 180-2 algorithms (SHA-224, -256, -384 and -512).
407 o New X509_VERIFY_PARAM structure to support parametrisation
408 of X.509 path validation.
409 o Major overhaul of RC4 performance on Intel P4, IA-64 and
410 AMD64.
411 o Changed the Configure script to have some algorithms disabled
412 by default. Those can be explicitely enabled with the new
413 argument form 'enable-xxx'.
414 o Change the default digest in 'openssl' commands from MD5 to
415 SHA-1.
613e7d2a 416 o Added support for DTLS.
7017605d
RL
417 o New BIGNUM blinding.
418 o Added support for the RSA-PSS encryption scheme
419 o Added support for the RSA X.931 padding.
c8310124
RL
420 o Added support for BSD sockets on NetWare.
421 o Added support for files larger than 2GB.
422 o Added initial support for Win64.
423 o Added alternate pkg-config files.
7017605d 424
57d7ee3a 425 Major changes between OpenSSL 0.9.7l and OpenSSL 0.9.7m [23 Feb 2007]:
ac63b837
DSH
426
427 o FIPS 1.1.1 module linking.
428 o Various ciphersuite selection fixes.
429
57d7ee3a 430 Major changes between OpenSSL 0.9.7k and OpenSSL 0.9.7l [28 Sep 2006]:
61118caa
BM
431
432 o Introduce limits to prevent malicious key DoS (CVE-2006-2940)
433 o Fix security issues (CVE-2006-2937, CVE-2006-3737, CVE-2006-4343)
434
57d7ee3a 435 Major changes between OpenSSL 0.9.7j and OpenSSL 0.9.7k [5 Sep 2006]:
613e7d2a
BM
436
437 o Fix Daniel Bleichenbacher forged signature attack, CVE-2006-4339
438
57d7ee3a 439 Major changes between OpenSSL 0.9.7i and OpenSSL 0.9.7j [4 May 2006]:
613e7d2a
BM
440
441 o Visual C++ 2005 fixes.
442 o Update Windows build system for FIPS.
443
57d7ee3a 444 Major changes between OpenSSL 0.9.7h and OpenSSL 0.9.7i [14 Oct 2005]:
613e7d2a
BM
445
446 o Give EVP_MAX_MD_SIZE it's old value, except for a FIPS build.
447
57d7ee3a 448 Major changes between OpenSSL 0.9.7g and OpenSSL 0.9.7h [11 Oct 2005]:
613e7d2a
BM
449
450 o Fix SSL 2.0 Rollback, CVE-2005-2969
451 o Allow use of fixed-length exponent on DSA signing
452 o Default fixed-window RSA, DSA, DH private-key operations
453
57d7ee3a 454 Major changes between OpenSSL 0.9.7f and OpenSSL 0.9.7g [11 Apr 2005]:
36521f01
RL
455
456 o More compilation issues fixed.
457 o Adaptation to more modern Kerberos API.
458 o Enhanced or corrected configuration for Solaris64, Mingw and Cygwin.
459 o Enhanced x86_64 assembler BIGNUM module.
460 o More constification.
461 o Added processing of proxy certificates (RFC 3820).
462
57d7ee3a 463 Major changes between OpenSSL 0.9.7e and OpenSSL 0.9.7f [22 Mar 2005]:
36521f01
RL
464
465 o Several compilation issues fixed.
466 o Many memory allocation failure checks added.
467 o Improved comparison of X509 Name type.
468 o Mandatory basic checks on certificates.
469 o Performance improvements.
470
57d7ee3a 471 Major changes between OpenSSL 0.9.7d and OpenSSL 0.9.7e [25 Oct 2004]:
03386677
DSH
472
473 o Fix race condition in CRL checking code.
474 o Fixes to PKCS#7 (S/MIME) code.
475
57d7ee3a 476 Major changes between OpenSSL 0.9.7c and OpenSSL 0.9.7d [17 Mar 2004]:
03386677
DSH
477
478 o Security: Fix Kerberos ciphersuite SSL/TLS handshaking bug
479 o Security: Fix null-pointer assignment in do_change_cipher_spec()
480 o Allow multiple active certificates with same subject in CA index
481 o Multiple X509 verification fixes
482 o Speed up HMAC and other operations
483
57d7ee3a 484 Major changes between OpenSSL 0.9.7b and OpenSSL 0.9.7c [30 Sep 2003]:
29902449
DSH
485
486 o Security: fix various ASN1 parsing bugs.
487 o New -ignore_err option to OCSP utility.
488 o Various interop and bug fixes in S/MIME code.
489 o SSL/TLS protocol fix for unrequested client certificates.
490
57d7ee3a 491 Major changes between OpenSSL 0.9.7a and OpenSSL 0.9.7b [10 Apr 2003]:
1774e22d
RL
492
493 o Security: counter the Klima-Pokorny-Rosa extension of
494 Bleichbacher's attack
495 o Security: make RSA blinding default.
496 o Configuration: Irix fixes, AIX fixes, better mingw support.
497 o Support for new platforms: linux-ia64-ecc.
498 o Build: shared library support fixes.
499 o ASN.1: treat domainComponent correctly.
500 o Documentation: fixes and additions.
501
57d7ee3a 502 Major changes between OpenSSL 0.9.7 and OpenSSL 0.9.7a [19 Feb 2003]:
d8cbc935
RL
503
504 o Security: Important security related bugfixes.
505 o Enhanced compatibility with MIT Kerberos.
506 o Can be built without the ENGINE framework.
507 o IA32 assembler enhancements.
508 o Support for new platforms: FreeBSD/IA64 and FreeBSD/Sparc64.
509 o Configuration: the no-err option now works properly.
510 o SSL/TLS: now handles manual certificate chain building.
511 o SSL/TLS: certain session ID malfunctions corrected.
512
57d7ee3a 513 Major changes between OpenSSL 0.9.6 and OpenSSL 0.9.7 [30 Dec 2002]:
83f25717
RL
514
515 o New library section OCSP.
e4fb4977
LJ
516 o Complete rewrite of ASN1 code.
517 o CRL checking in verify code and openssl utility.
518 o Extension copying in 'ca' utility.
519 o Flexible display options in 'ca' utility.
520 o Provisional support for international characters with UTF8.
4dec4f64
BM
521 o Support for external crypto devices ('engine') is no longer
522 a separate distribution.
e4fb4977
LJ
523 o New elliptic curve library section.
524 o New AES (Rijndael) library section.
1fc73fef 525 o Support for new platforms: Windows CE, Tandem OSS, A/UX, AIX 64-bit,
29902449 526 Linux x86_64, Linux 64-bit on Sparc v9
9801fb61
RL
527 o Extended support for some platforms: VxWorks
528 o Enhanced support for shared libraries.
29902449 529 o Now only builds PIC code when shared library support is requested.
9801fb61
RL
530 o Support for pkg-config.
531 o Lots of new manuals.
29902449
DSH
532 o Makes symbolic links to or copies of manuals to cover all described
533 functions.
e4fb4977
LJ
534 o Change DES API to clean up the namespace (some applications link also
535 against libdes providing similar functions having the same name).
536 Provide macros for backward compatibility (will be removed in the
537 future).
ece0bdf1
BM
538 o Unify handling of cryptographic algorithms (software and engine)
539 to be available via EVP routines for asymmetric and symmetric ciphers.
e4fb4977
LJ
540 o NCONF: new configuration handling routines.
541 o Change API to use more 'const' modifiers to improve error checking
542 and help optimizers.
543 o Finally remove references to RSAref.
544 o Reworked parts of the BIGNUM code.
545 o Support for new engines: Broadcom ubsec, Accelerated Encryption
546 Processing, IBM 4758.
9801fb61 547 o A few new engines added in the demos area.
e1f7ea25 548 o Extended and corrected OID (object identifier) table.
e4fb4977
LJ
549 o PRNG: query at more locations for a random device, automatic query for
550 EGD style random sources at several locations.
551 o SSL/TLS: allow optional cipher choice according to server's preference.
552 o SSL/TLS: allow server to explicitly set new session ids.
553 o SSL/TLS: support Kerberos cipher suites (RFC2712).
1fc73fef 554 Only supports MIT Kerberos for now.
e4fb4977
LJ
555 o SSL/TLS: allow more precise control of renegotiations and sessions.
556 o SSL/TLS: add callback to retrieve SSL/TLS messages.
ea4f109c 557 o SSL/TLS: support AES cipher suites (RFC3268).
e4fb4977 558
57d7ee3a 559 Major changes between OpenSSL 0.9.6j and OpenSSL 0.9.6k [30 Sep 2003]:
29902449
DSH
560
561 o Security: fix various ASN1 parsing bugs.
562 o SSL/TLS protocol fix for unrequested client certificates.
563
57d7ee3a 564 Major changes between OpenSSL 0.9.6i and OpenSSL 0.9.6j [10 Apr 2003]:
138f970e
RL
565
566 o Security: counter the Klima-Pokorny-Rosa extension of
567 Bleichbacher's attack
568 o Security: make RSA blinding default.
569 o Build: shared library support fixes.
570
57d7ee3a 571 Major changes between OpenSSL 0.9.6h and OpenSSL 0.9.6i [19 Feb 2003]:
d8cbc935
RL
572
573 o Important security related bugfixes.
574
57d7ee3a 575 Major changes between OpenSSL 0.9.6g and OpenSSL 0.9.6h [5 Dec 2002]:
9801fb61
RL
576
577 o New configuration targets for Tandem OSS and A/UX.
578 o New OIDs for Microsoft attributes.
579 o Better handling of SSL session caching.
580 o Better comparison of distinguished names.
581 o Better handling of shared libraries in a mixed GNU/non-GNU environment.
582 o Support assembler code with Borland C.
583 o Fixes for length problems.
584 o Fixes for uninitialised variables.
585 o Fixes for memory leaks, some unusual crashes and some race conditions.
586 o Fixes for smaller building problems.
587 o Updates of manuals, FAQ and other instructive documents.
588
57d7ee3a 589 Major changes between OpenSSL 0.9.6f and OpenSSL 0.9.6g [9 Aug 2002]:
36969082
RL
590
591 o Important building fixes on Unix.
592
57d7ee3a 593 Major changes between OpenSSL 0.9.6e and OpenSSL 0.9.6f [8 Aug 2002]:
fbe792f0
RL
594
595 o Various important bugfixes.
596
57d7ee3a 597 Major changes between OpenSSL 0.9.6d and OpenSSL 0.9.6e [30 Jul 2002]:
b218af2b
LJ
598
599 o Important security related bugfixes.
600 o Various SSL/TLS library bugfixes.
601
57d7ee3a 602 Major changes between OpenSSL 0.9.6c and OpenSSL 0.9.6d [9 May 2002]:
e4fb4977
LJ
603
604 o Various SSL/TLS library bugfixes.
605 o Fix DH parameter generation for 'non-standard' generators.
4dec4f64 606
57d7ee3a 607 Major changes between OpenSSL 0.9.6b and OpenSSL 0.9.6c [21 Dec 2001]:
ae52ec98
BM
608
609 o Various SSL/TLS library bugfixes.
610 o BIGNUM library fixes.
ef5f6a08
RL
611 o RSA OAEP and random number generation fixes.
612 o Object identifiers corrected and added.
613 o Add assembler BN routines for IA64.
614 o Add support for OS/390 Unix, UnixWare with gcc, OpenUNIX 8,
615 MIPS Linux; shared library support for Irix, HP-UX.
a3790c0d 616 o Add crypto accelerator support for AEP, Baltimore SureWare,
ef5f6a08
RL
617 Broadcom and Cryptographic Appliance's keyserver
618 [in 0.9.6c-engine release].
ae52ec98 619
57d7ee3a 620 Major changes between OpenSSL 0.9.6a and OpenSSL 0.9.6b [9 Jul 2001]:
4dec4f64
BM
621
622 o Security fix: PRNG improvements.
623 o Security fix: RSA OAEP check.
624 o Security fix: Reinsert and fix countermeasure to Bleichbacher's
625 attack.
626 o MIPS bug fix in BIGNUM.
627 o Bug fix in "openssl enc".
628 o Bug fix in X.509 printing routine.
629 o Bug fix in DSA verification routine and DSA S/MIME verification.
630 o Bug fix to make PRNG thread-safe.
631 o Bug fix in RAND_file_name().
632 o Bug fix in compatibility mode trust settings.
633 o Bug fix in blowfish EVP.
634 o Increase default size for BIO buffering filter.
635 o Compatibility fixes in some scripts.
83f25717 636
57d7ee3a 637 Major changes between OpenSSL 0.9.6 and OpenSSL 0.9.6a [5 Apr 2001]:
7cdd2aa1
RL
638
639 o Security fix: change behavior of OpenSSL to avoid using
640 environment variables when running as root.
641 o Security fix: check the result of RSA-CRT to reduce the
642 possibility of deducing the private key from an incorrectly
643 calculated signature.
644 o Security fix: prevent Bleichenbacher's DSA attack.
645 o Security fix: Zero the premaster secret after deriving the
646 master secret in DH ciphersuites.
4fea8145 647 o Reimplement SSL_peek(), which had various problems.
307bf4da
RL
648 o Compatibility fix: the function des_encrypt() renamed to
649 des_encrypt1() to avoid clashes with some Unixen libc.
7cdd2aa1
RL
650 o Bug fixes for Win32, HP/UX and Irix.
651 o Bug fixes in BIGNUM, SSL, PKCS#7, PKCS#12, X.509, CONF and
652 memory checking routines.
5012158a 653 o Bug fixes for RSA operations in threaded environments.
7cdd2aa1
RL
654 o Bug fixes in misc. openssl applications.
655 o Remove a few potential memory leaks.
656 o Add tighter checks of BIGNUM routines.
657 o Shared library support has been reworked for generality.
658 o More documentation.
4fea8145 659 o New function BN_rand_range().
7cdd2aa1
RL
660 o Add "-rand" option to openssl s_client and s_server.
661
57d7ee3a 662 Major changes between OpenSSL 0.9.5a and OpenSSL 0.9.6 [10 Oct 2000]:
4e87e05b
DSH
663
664 o Some documentation for BIO and SSL libraries.
665 o Enhanced chain verification using key identifiers.
666 o New sign and verify options to 'dgst' application.
667 o Support for DER and PEM encoded messages in 'smime' application.
668 o New 'rsautl' application, low level RSA utility.
b38d84d8
BM
669 o MD4 now included.
670 o Bugfix for SSL rollback padding check.
4dec4f64 671 o Support for external crypto devices [1].
fda05b21 672 o Enhanced EVP interface.
b22bda21 673
4dec4f64
BM
674 [1] The support for external crypto devices is currently a separate
675 distribution. See the file README.ENGINE.
676
57d7ee3a 677 Major changes between OpenSSL 0.9.5 and OpenSSL 0.9.5a [1 Apr 2000]:
35a79ecb 678
b7a81df4 679 o Bug fixes for Win32, SuSE Linux, NeXTSTEP and FreeBSD 2.2.8
35a79ecb
RL
680 o Shared library support for HPUX and Solaris-gcc
681 o Support of Linux/IA64
b7a81df4 682 o Assembler support for Mingw32
35a79ecb
RL
683 o New 'rand' application
684 o New way to check for existence of algorithms from scripts
685
57d7ee3a 686 Major changes between OpenSSL 0.9.4 and OpenSSL 0.9.5 [25 May 2000]:
0c235249 687
90644dd7 688 o S/MIME support in new 'smime' command
0c235249 689 o Documentation for the OpenSSL command line application
90644dd7
DSH
690 o Automation of 'req' application
691 o Fixes to make s_client, s_server work under Windows
692 o Support for multiple fieldnames in SPKACs
693 o New SPKAC command line utilty and associated library functions
ae1bb4e5 694 o Options to allow passwords to be obtained from various sources
90644dd7
DSH
695 o New public key PEM format and options to handle it
696 o Many other fixes and enhancements to command line utilities
697 o Usable certificate chain verification
698 o Certificate purpose checking
699 o Certificate trust settings
700 o Support of authority information access extension
701 o Extensions in certificate requests
702 o Simplified X509 name and attribute routines
ae1bb4e5 703 o Initial (incomplete) support for international character sets
90644dd7
DSH
704 o New DH_METHOD, DSA_METHOD and enhanced RSA_METHOD
705 o Read only memory BIOs and simplified creation function
8bd5b794
BM
706 o TLS/SSL protocol bugfixes: Accept TLS 'client hello' in SSL 3.0
707 record; allow fragmentation and interleaving of handshake and other
708 data
90644dd7 709 o TLS/SSL code now "tolerates" MS SGC
8bd5b794 710 o Work around for Netscape client certificate hang bug
90644dd7
DSH
711 o RSA_NULL option that removes RSA patent code but keeps other
712 RSA functionality
07e6dbde
BM
713 o Memory leak detection now allows applications to add extra information
714 via a per-thread stack
715 o PRNG robustness improved
4d524e10 716 o EGD support
6d9ca500 717 o BIGNUM library bug fixes
4d524e10 718 o Faster DSA parameter generation
74235cc9
UM
719 o Enhanced support for Alpha Linux
720 o Experimental MacOS support
0c235249 721
57d7ee3a 722 Major changes between OpenSSL 0.9.3 and OpenSSL 0.9.4 [9 Aug 1999]:
ed7f60fb
DSH
723
724 o Transparent support for PKCS#8 format private keys: these are used
c97cbcb3
BM
725 by several software packages and are more secure than the standard
726 form
727 o PKCS#5 v2.0 implementation
728 o Password callbacks have a new void * argument for application data
729 o Avoid various memory leaks
730 o New pipe-like BIO that allows using the SSL library when actual I/O
731 must be handled by the application (BIO pair)
ed7f60fb 732
57d7ee3a 733 Major changes between OpenSSL 0.9.2b and OpenSSL 0.9.3 [24 May 1999]:
9de649ff
UM
734 o Lots of enhancements and cleanups to the Configuration mechanism
735 o RSA OEAP related fixes
8e8a8a5f
RE
736 o Added `openssl ca -revoke' option for revoking a certificate
737 o Source cleanups: const correctness, type-safe stacks and ASN.1 SETs
738 o Source tree cleanups: removed lots of obsolete files
703126f0 739 o Thawte SXNet, certificate policies and CRL distribution points
a03dd7a6 740 extension support
703126f0
DSH
741 o Preliminary (experimental) S/MIME support
742 o Support for ASN.1 UTF8String and VisibleString
743 o Full integration of PKCS#12 code
2cf9fcda 744 o Sparc assembler bignum implementation, optimized hash functions
b0759f87 745 o Option to disable selected ciphers
8e8a8a5f 746
57d7ee3a 747 Major changes between OpenSSL 0.9.1c and OpenSSL 0.9.2b [22 Mar 1999]:
738769ff
RE
748 o Fixed a security hole related to session resumption
749 o Fixed RSA encryption routines for the p < q case
750 o "ALL" in cipher lists now means "everything except NULL ciphers"
3b52c2e7
RE
751 o Support for Triple-DES CBCM cipher
752 o Support of Optimal Asymmetric Encryption Padding (OAEP) for RSA
753 o First support for new TLSv1 ciphers
754 o Added a few new BIOs (syslog BIO, reliable BIO)
755 o Extended support for DSA certificate/keys.
03e20a1a 756 o Extended support for Certificate Signing Requests (CSR)
3b52c2e7
RE
757 o Initial support for X.509v3 extensions
758 o Extended support for compression inside the SSL record layer
759 o Overhauled Win32 builds
760 o Cleanups and fixes to the Big Number (BN) library
761 o Support for ASN.1 GeneralizedTime
762 o Splitted ASN.1 SETs from SEQUENCEs
763 o ASN1 and PEM support for Netscape Certificate Sequences
764 o Overhauled Perl interface
765 o Lots of source tree cleanups.
766 o Lots of memory leak fixes.
767 o Lots of bug fixes.
768
57d7ee3a 769 Major changes between SSLeay 0.9.0b and OpenSSL 0.9.1c [23 Dec 1998]:
3b52c2e7
RE
770 o Integration of the popular NO_RSA/NO_DSA patches
771 o Initial support for compression inside the SSL record layer
772 o Added BIO proxy and filtering functionality
773 o Extended Big Number (BN) library
774 o Added RIPE MD160 message digest
775 o Addeed support for RC2/64bit cipher
776 o Extended ASN.1 parser routines
777 o Adjustations of the source tree for CVS
778 o Support for various new platforms
779