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