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