Summarize the news.
[oweals/openssl.git] / NEWS
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
8   Changes between OpenSSL 0.9.6b and OpenSSL 0.9.6c:
9
10       o Various SSL/TLS library bugfixes.
11       o BIGNUM library fixes.
12       o PKCS7 library fixes.
13       o BIO library fixes.
14       o DSA and DH library fixes.
15       o RSA library fixes.
16       o RAND library fixes.
17       o Object identifiers corrected and added.
18       o Mutex fixes.
19       o Add the functions BN_pseudo_rand_range, SSL_get_rfd, SSL_get_wfd
20         and X509_STORE_CTX_set_verify_cb.
21       o Add the possibility to use md4WithRSAEncryption through EVP.
22       o Add assembler BN routines for IA64.
23       o Add configuration entries for OS/390 Unix, UnixWare with gcc,
24         OpenUNIX 8 and big- as well as little-endian MIPS with Linux,
25       o Add threading support for the configuration entry BC-16.
26       o Add shared library support for Irix, HP-UX.
27       o Add detection of GNU ld when building shared libraries.
28       o Add a BIG WARNING TEXT in doc/ssleay.txt about the trust one can
29         put in it.
30       o Add a bunch of documentation.
31       o Add crypto accelerator support for AEP, Baltimore SureWare,
32         Broadcom and Cryptographic Appliance's keyserver
33         [in 0.9.6c-engine release].
34
35   Changes between OpenSSL 0.9.6a and OpenSSL 0.9.6b:
36
37       o Security fix: PRNG improvements.
38       o Security fix: RSA OAEP check.
39       o Security fix: Reinsert and fix countermeasure to Bleichbacher's
40         attack.
41       o MIPS bug fix in BIGNUM.
42       o Bug fix in "openssl enc".
43       o Bug fix in X.509 printing routine.
44       o Bug fix in DSA verification routine and DSA S/MIME verification.
45       o Bug fix to make PRNG thread-safe.
46       o Bug fix in RAND_file_name().
47       o Bug fix in compatibility mode trust settings.
48       o Bug fix in blowfish EVP.
49       o Increase default size for BIO buffering filter.
50       o Compatibility fixes in some scripts.
51
52   Major changes between OpenSSL 0.9.6 and OpenSSL 0.9.6a:
53
54       o Security fix: change behavior of OpenSSL to avoid using
55         environment variables when running as root.
56       o Security fix: check the result of RSA-CRT to reduce the
57         possibility of deducing the private key from an incorrectly
58         calculated signature.
59       o Security fix: prevent Bleichenbacher's DSA attack.
60       o Security fix: Zero the premaster secret after deriving the
61         master secret in DH ciphersuites.
62       o Reimplement SSL_peek(), which had various problems.
63       o Compatibility fix: the function des_encrypt() renamed to
64         des_encrypt1() to avoid clashes with some Unixen libc.
65       o Bug fixes for Win32, HP/UX and Irix.
66       o Bug fixes in BIGNUM, SSL, PKCS#7, PKCS#12, X.509, CONF and
67         memory checking routines.
68       o Bug fixes for RSA operations in threaded enviroments.
69       o Bug fixes in misc. openssl applications.
70       o Remove a few potential memory leaks.
71       o Add tighter checks of BIGNUM routines.
72       o Shared library support has been reworked for generality.
73       o More documentation.
74       o New function BN_rand_range().
75       o Add "-rand" option to openssl s_client and s_server.
76
77   Major changes between OpenSSL 0.9.5a and OpenSSL 0.9.6:
78
79       o Some documentation for BIO and SSL libraries.
80       o Enhanced chain verification using key identifiers.
81       o New sign and verify options to 'dgst' application.
82       o Support for DER and PEM encoded messages in 'smime' application.
83       o New 'rsautl' application, low level RSA utility.
84       o MD4 now included.
85       o Bugfix for SSL rollback padding check.
86       o Support for external crypto devices [1].
87       o Enhanced EVP interface.
88
89     [1] The support for external crypto devices is currently a separate
90         distribution.  See the file README.ENGINE.
91
92   Major changes between OpenSSL 0.9.5 and OpenSSL 0.9.5a:
93
94       o Bug fixes for Win32, SuSE Linux, NeXTSTEP and FreeBSD 2.2.8 
95       o Shared library support for HPUX and Solaris-gcc
96       o Support of Linux/IA64
97       o Assembler support for Mingw32
98       o New 'rand' application
99       o New way to check for existence of algorithms from scripts
100
101   Major changes between OpenSSL 0.9.4 and OpenSSL 0.9.5:
102
103       o S/MIME support in new 'smime' command
104       o Documentation for the OpenSSL command line application
105       o Automation of 'req' application
106       o Fixes to make s_client, s_server work under Windows
107       o Support for multiple fieldnames in SPKACs
108       o New SPKAC command line utilty and associated library functions
109       o Options to allow passwords to be obtained from various sources
110       o New public key PEM format and options to handle it
111       o Many other fixes and enhancements to command line utilities
112       o Usable certificate chain verification
113       o Certificate purpose checking
114       o Certificate trust settings
115       o Support of authority information access extension
116       o Extensions in certificate requests
117       o Simplified X509 name and attribute routines
118       o Initial (incomplete) support for international character sets
119       o New DH_METHOD, DSA_METHOD and enhanced RSA_METHOD
120       o Read only memory BIOs and simplified creation function
121       o TLS/SSL protocol bugfixes: Accept TLS 'client hello' in SSL 3.0
122         record; allow fragmentation and interleaving of handshake and other
123         data
124       o TLS/SSL code now "tolerates" MS SGC
125       o Work around for Netscape client certificate hang bug
126       o RSA_NULL option that removes RSA patent code but keeps other
127         RSA functionality
128       o Memory leak detection now allows applications to add extra information
129         via a per-thread stack
130       o PRNG robustness improved
131       o EGD support
132       o BIGNUM library bug fixes
133       o Faster DSA parameter generation
134       o Enhanced support for Alpha Linux
135       o Experimental MacOS support
136
137   Major changes between OpenSSL 0.9.3 and OpenSSL 0.9.4:
138
139       o Transparent support for PKCS#8 format private keys: these are used
140         by several software packages and are more secure than the standard
141         form
142       o PKCS#5 v2.0 implementation
143       o Password callbacks have a new void * argument for application data
144       o Avoid various memory leaks
145       o New pipe-like BIO that allows using the SSL library when actual I/O
146         must be handled by the application (BIO pair)
147
148   Major changes between OpenSSL 0.9.2b and OpenSSL 0.9.3:
149       o Lots of enhancements and cleanups to the Configuration mechanism
150       o RSA OEAP related fixes
151       o Added `openssl ca -revoke' option for revoking a certificate
152       o Source cleanups: const correctness, type-safe stacks and ASN.1 SETs
153       o Source tree cleanups: removed lots of obsolete files
154       o Thawte SXNet, certificate policies and CRL distribution points
155         extension support
156       o Preliminary (experimental) S/MIME support
157       o Support for ASN.1 UTF8String and VisibleString
158       o Full integration of PKCS#12 code
159       o Sparc assembler bignum implementation, optimized hash functions
160       o Option to disable selected ciphers
161
162   Major changes between OpenSSL 0.9.1c and OpenSSL 0.9.2b:
163       o Fixed a security hole related to session resumption
164       o Fixed RSA encryption routines for the p < q case
165       o "ALL" in cipher lists now means "everything except NULL ciphers"
166       o Support for Triple-DES CBCM cipher
167       o Support of Optimal Asymmetric Encryption Padding (OAEP) for RSA
168       o First support for new TLSv1 ciphers
169       o Added a few new BIOs (syslog BIO, reliable BIO)
170       o Extended support for DSA certificate/keys.
171       o Extended support for Certificate Signing Requests (CSR)
172       o Initial support for X.509v3 extensions
173       o Extended support for compression inside the SSL record layer
174       o Overhauled Win32 builds
175       o Cleanups and fixes to the Big Number (BN) library
176       o Support for ASN.1 GeneralizedTime
177       o Splitted ASN.1 SETs from SEQUENCEs
178       o ASN1 and PEM support for Netscape Certificate Sequences
179       o Overhauled Perl interface
180       o Lots of source tree cleanups.
181       o Lots of memory leak fixes.
182       o Lots of bug fixes.
183
184   Major changes between SSLeay 0.9.0b and OpenSSL 0.9.1c:
185       o Integration of the popular NO_RSA/NO_DSA patches
186       o Initial support for compression inside the SSL record layer
187       o Added BIO proxy and filtering functionality
188       o Extended Big Number (BN) library
189       o Added RIPE MD160 message digest
190       o Addeed support for RC2/64bit cipher
191       o Extended ASN.1 parser routines
192       o Adjustations of the source tree for CVS
193       o Support for various new platforms
194