Paul Bakker | b749d68 | 2009-01-04 16:08:55 +0000 | [diff] [blame] | 1 | PolarSSL ChangeLog
|
| 2 |
|
Paul Bakker | 05feca6 | 2009-06-20 08:22:43 +0000 | [diff] [blame] | 3 | = Version X released on X
|
Paul Bakker | 367dae4 | 2009-06-28 21:50:27 +0000 | [diff] [blame] | 4 | Features
|
| 5 | * Added CMake makefiles as alternative to regular Makefiles.
|
| 6 | * Added preliminary Code Coverage tests for AES, ARC4,
|
Paul Bakker | 37940d9f | 2009-07-10 22:38:58 +0000 | [diff] [blame] | 7 | Base64, MPI, SHA-family, MD-family, HMAC-SHA-family,
|
Paul Bakker | 7656879 | 2009-07-11 18:39:36 +0000 | [diff] [blame] | 8 | Camellia, DES, 3-DES, RSA PKCS#1, XTEA, Diffie-Hellman
|
| 9 | and X509parse.
|
Paul Bakker | 367dae4 | 2009-06-28 21:50:27 +0000 | [diff] [blame] | 10 |
|
Paul Bakker | 05feca6 | 2009-06-20 08:22:43 +0000 | [diff] [blame] | 11 | Bug fixes
|
Paul Bakker | 2fd71f0 | 2009-07-11 20:40:58 +0000 | [diff] [blame^] | 12 | * Fixed HMAC-MD2 by modifying md2_starts(), so that the
|
| 13 | required HMAC ipad and opad variables are not cleared!
|
Paul Bakker | 1a9382e | 2009-07-11 16:35:32 +0000 | [diff] [blame] | 14 | * Prevented use of long long in bignum if
|
| 15 | POLARSSL_HAVE_LONGLONG not defined (found by Giles
|
Paul Bakker | 7656879 | 2009-07-11 18:39:36 +0000 | [diff] [blame] | 16 | Bathgate).
|
Paul Bakker | 05feca6 | 2009-06-20 08:22:43 +0000 | [diff] [blame] | 17 | * Fixed incorrect handling of negative strings in
|
| 18 | mpi_read_string() (found by code coverage tests).
|
Paul Bakker | 37940d9f | 2009-07-10 22:38:58 +0000 | [diff] [blame] | 19 | * Fixed segfault on handling empty rsa_context in
|
| 20 | rsa_check_pubkey() and rsa_check_privkey() (found by
|
Paul Bakker | 7656879 | 2009-07-11 18:39:36 +0000 | [diff] [blame] | 21 | code coverage tests).
|
Paul Bakker | f7ca7b9 | 2009-06-20 10:31:06 +0000 | [diff] [blame] | 22 | * Fixed incorrect handling of one single negative input
|
| 23 | value in mpi_add_abs() (found by code coverage tests).
|
Paul Bakker | 1ef7a53 | 2009-06-20 10:50:55 +0000 | [diff] [blame] | 24 | * Fixed incorrect handling of negative first input
|
| 25 | value in mpi_sub_abs() (found by code coverage tests).
|
Paul Bakker | ce40a6d | 2009-06-23 19:46:08 +0000 | [diff] [blame] | 26 | * Fixed incorrect handling of negative first input
|
| 27 | value in mpi_mod_mpi() and mpi_mod_int(). Resulting
|
Paul Bakker | 7656879 | 2009-07-11 18:39:36 +0000 | [diff] [blame] | 28 | change also affects mpi_write_string() (found by code
|
| 29 | coverage tests).
|
Paul Bakker | 48eab26 | 2009-06-25 21:25:49 +0000 | [diff] [blame] | 30 | * Corrected is_prime() results for 0, 1 and 2 (found by
|
| 31 | code coverage tests).
|
Paul Bakker | 05feca6 | 2009-06-20 08:22:43 +0000 | [diff] [blame] | 32 |
|
Paul Bakker | a86cd2d | 2009-05-17 10:27:03 +0000 | [diff] [blame] | 33 | = Version 0.11.1 released on 2009-05-17
|
| 34 | * Fixed missing functionality for SHA-224, SHA-256, SHA384,
|
| 35 | SHA-512 in rsa_pkcs1_sign()
|
| 36 |
|
Paul Bakker | b44f3be | 2009-05-03 13:12:27 +0000 | [diff] [blame] | 37 | = Version 0.11.0 released on 2009-05-03
|
Paul Bakker | 4e0d7ca | 2009-01-29 22:24:33 +0000 | [diff] [blame] | 38 | * Fixed a bug in mpi_gcd() so that it also works when both
|
| 39 | input numbers are even and added testcases to check
|
Paul Bakker | 6335faf | 2009-03-28 18:54:06 +0000 | [diff] [blame] | 40 | (found by Pierre Habouzit).
|
Paul Bakker | 4593aea | 2009-02-09 22:32:35 +0000 | [diff] [blame] | 41 | * Added support for SHA-224, SHA-256, SHA-384 and SHA-512
|
| 42 | one way hash functions with the PKCS#1 v1.5 signing and
|
| 43 | verification.
|
Paul Bakker | ebb2beb | 2009-03-28 17:52:44 +0000 | [diff] [blame] | 44 | * Fixed minor bug regarding mpi_gcd located within the
|
| 45 | POLARSSL_GENPRIME block.
|
Paul Bakker | 6335faf | 2009-03-28 18:54:06 +0000 | [diff] [blame] | 46 | * Fixed minor memory leak in x509parse_crt() and added better
|
| 47 | handling of 'full' certificate chains (found by Mathias
|
| 48 | Olsson).
|
Paul Bakker | 2b245eb | 2009-04-19 18:44:26 +0000 | [diff] [blame] | 49 | * Centralized file opening and reading for x509 files into
|
| 50 | load_file()
|
Paul Bakker | 1d4f30c | 2009-04-19 18:55:16 +0000 | [diff] [blame] | 51 | * Made definition of net_htons() endian-clean for big endian
|
| 52 | systems (Found by Gernot).
|
Paul Bakker | 34a9056 | 2009-04-19 21:17:09 +0000 | [diff] [blame] | 53 | * Undefining POLARSSL_HAVE_ASM now also handles prevents asm in
|
| 54 | padlock and timing code.
|
Paul Bakker | b44f3be | 2009-05-03 13:12:27 +0000 | [diff] [blame] | 55 | * Fixed an off-by-one buffer allocation in ssl_set_hostname()
|
| 56 | responsible for crashes and unwanted behaviour.
|
| 57 | * Added support for Certificate Revocation List (CRL) parsing.
|
Paul Bakker | 40ea7de | 2009-05-03 10:18:48 +0000 | [diff] [blame] | 58 | * Added support for CRL revocation to x509parse_verify() and
|
| 59 | SSL/TLS code.
|
Paul Bakker | fdca45f | 2009-05-03 16:06:43 +0000 | [diff] [blame] | 60 | * Fixed compatibility of XTEA and Camellia on a 64-bit system
|
| 61 | (found by Felix von Leitner).
|
Paul Bakker | 4e0d7ca | 2009-01-29 22:24:33 +0000 | [diff] [blame] | 62 |
|
Paul Bakker | 71cd2c6 | 2009-01-15 19:45:54 +0000 | [diff] [blame] | 63 | = Version 0.10.0 released on 2009-01-12
|
Paul Bakker | 7a7c78f | 2009-01-04 18:15:48 +0000 | [diff] [blame] | 64 | * Migrated XySSL to PolarSSL
|
| 65 | * Added XTEA symmetric cipher
|
Paul Bakker | 38119b1 | 2009-01-10 23:31:23 +0000 | [diff] [blame] | 66 | * Added Camellia symmetric cipher
|
Paul Bakker | 72989ff | 2009-01-11 20:26:11 +0000 | [diff] [blame] | 67 | * Added support for ciphersuites: SSL_RSA_CAMELLIA_128_SHA,
|
| 68 | SSL_RSA_CAMELLIA_256_SHA and SSL_EDH_RSA_CAMELLIA_256_SHA
|
Paul Bakker | f130618 | 2009-01-12 21:50:17 +0000 | [diff] [blame] | 69 | * Fixed dangerous bug that can cause a heap overflow in
|
| 70 | rsa_pkcs1_decrypt (found by Christophe Devine)
|
Paul Bakker | b749d68 | 2009-01-04 16:08:55 +0000 | [diff] [blame] | 71 |
|
| 72 | ================================================================
|
| 73 | XySSL ChangeLog
|
Paul Bakker | 5121ce5 | 2009-01-03 21:22:43 +0000 | [diff] [blame] | 74 |
|
| 75 | = Version 0.9 released on 2008-03-16
|
| 76 |
|
| 77 | * Added support for ciphersuite: SSL_RSA_AES_128_SHA
|
| 78 | * Enabled support for large files by default in aescrypt2.c
|
| 79 | * Preliminary openssl wrapper contributed by David Barrett
|
| 80 | * Fixed a bug in ssl_write() that caused the same payload to
|
| 81 | be sent twice in non-blocking mode when send returns EAGAIN
|
| 82 | * Fixed ssl_parse_client_hello(): session id and challenge must
|
| 83 | not be swapped in the SSLv2 ClientHello (found by Greg Robson)
|
| 84 | * Added user-defined callback debug function (Krystian Kolodziej)
|
| 85 | * Before freeing a certificate, properly zero out all cert. data
|
| 86 | * Fixed the "mode" parameter so that encryption/decryption are
|
| 87 | not swapped on PadLock; also fixed compilation on older versions
|
| 88 | of gcc (bug reported by David Barrett)
|
| 89 | * Correctly handle the case in padlock_xcryptcbc() when input or
|
| 90 | ouput data is non-aligned by falling back to the software
|
| 91 | implementation, as VIA Nehemiah cannot handle non-aligned buffers
|
| 92 | * Fixed a memory leak in x509parse_crt() which was reported by Greg
|
| 93 | Robson-Garth; some x509write.c fixes by Pascal Vizeli, thanks to
|
| 94 | Matthew Page who reported several bugs
|
| 95 | * Fixed x509_get_ext() to accept some rare certificates which have
|
| 96 | an INTEGER instead of a BOOLEAN for BasicConstraints::cA.
|
| 97 | * Added support on the client side for the TLS "hostname" extension
|
| 98 | (patch contributed by David Patino)
|
| 99 | * Make x509parse_verify() return BADCERT_CN_MISMATCH when an empty
|
| 100 | string is passed as the CN (bug reported by spoofy)
|
| 101 | * Added an option to enable/disable the BN assembly code
|
| 102 | * Updated rsa_check_privkey() to verify that (D*E) = 1 % (P-1)*(Q-1)
|
| 103 | * Disabled obsolete hash functions by default (MD2, MD4); updated
|
| 104 | selftest and benchmark to not test ciphers that have been disabled
|
| 105 | * Updated x509parse_cert_info() to correctly display byte 0 of the
|
| 106 | serial number, setup correct server port in the ssl client example
|
| 107 | * Fixed a critical denial-of-service with X.509 cert. verification:
|
| 108 | peer may cause xyssl to loop indefinitely by sending a certificate
|
| 109 | for which the RSA signature check fails (bug reported by Benoit)
|
| 110 | * Added test vectors for: AES-CBC, AES-CFB, DES-CBC and 3DES-CBC,
|
| 111 | HMAC-MD5, HMAC-SHA1, HMAC-SHA-256, HMAC-SHA-384, and HMAC-SHA-512
|
| 112 | * Fixed HMAC-SHA-384 and HMAC-SHA-512 (thanks to Josh Sinykin)
|
| 113 | * Modified ssl_parse_client_key_exchange() to protect against
|
| 114 | Daniel Bleichenbacher attack on PKCS#1 v1.5 padding, as well
|
| 115 | as the Klima-Pokorny-Rosa extension of Bleichenbacher's attack
|
| 116 | * Updated rsa_gen_key() so that ctx->N is always nbits in size
|
| 117 | * Fixed assembly PPC compilation errors on Mac OS X, thanks to
|
| 118 | David Barrett and Dusan Semen
|
| 119 |
|
| 120 | = Version 0.8 released on 2007-10-20
|
| 121 |
|
| 122 | * Modified the HMAC functions to handle keys larger
|
| 123 | than 64 bytes, thanks to Stephane Desneux and gary ng
|
| 124 | * Fixed ssl_read_record() to properly update the handshake
|
| 125 | message digests, which fixes IE6/IE7 client authentication
|
| 126 | * Cleaned up the XYSSL* #defines, suggested by Azriel Fasten
|
| 127 | * Fixed net_recv(), thanks to Lorenz Schori and Egon Kocjan
|
| 128 | * Added user-defined callbacks for handling I/O and sessions
|
| 129 | * Added lots of debugging output in the SSL/TLS functions
|
| 130 | * Added preliminary X.509 cert. writing by Pascal Vizeli
|
| 131 | * Added preliminary support for the VIA PadLock routines
|
| 132 | * Added AES-CFB mode of operation, contributed by chmike
|
| 133 | * Added an SSL/TLS stress testing program (ssl_test.c)
|
| 134 | * Updated the RSA PKCS#1 code to allow choosing between
|
| 135 | RSA_PUBLIC and RSA_PRIVATE, as suggested by David Barrett
|
| 136 | * Updated ssl_read() to skip 0-length records from OpenSSL
|
| 137 | * Fixed the make install target to comply with *BSD make
|
| 138 | * Fixed a bug in mpi_read_binary() on 64-bit platforms
|
| 139 | * mpi_is_prime() speedups, thanks to Kevin McLaughlin
|
| 140 | * Fixed a long standing memory leak in mpi_is_prime()
|
| 141 | * Replaced realloc with malloc in mpi_grow(), and set
|
| 142 | the sign of zero as positive in mpi_init() (reported
|
| 143 | by Jonathan M. McCune)
|
| 144 |
|
| 145 | = Version 0.7 released on 2007-07-07
|
| 146 |
|
| 147 | * Added support for the MicroBlaze soft-core processor
|
| 148 | * Fixed a bug in ssl_tls.c which sometimes prevented SSL
|
| 149 | connections from being established with non-blocking I/O
|
| 150 | * Fixed a couple bugs in the VS6 and UNIX Makefiles
|
| 151 | * Fixed the "PIC register ebx clobbered in asm" bug
|
| 152 | * Added HMAC starts/update/finish support functions
|
| 153 | * Added the SHA-224, SHA-384 and SHA-512 hash functions
|
| 154 | * Fixed the net_set_*block routines, thanks to Andreas
|
| 155 | * Added a few demonstration programs: md5sum, sha1sum,
|
| 156 | dh_client, dh_server, rsa_genkey, rsa_sign, rsa_verify
|
| 157 | * Added new bignum import and export helper functions
|
| 158 | * Rewrote README.txt in program/ssl/ca to better explain
|
| 159 | how to create a test PKI
|
| 160 |
|
| 161 | = Version 0.6 released on 2007-04-01
|
| 162 |
|
| 163 | * Ciphers used in SSL/TLS can now be disabled at compile
|
| 164 | time, to reduce the memory footprint on embedded systems
|
| 165 | * Added multiply assembly code for the TriCore and modified
|
| 166 | havege_struct for this processor, thanks to David Patiño
|
| 167 | * Added multiply assembly code for 64-bit PowerPCs,
|
| 168 | thanks to Peking University and the OSU Open Source Lab
|
| 169 | * Added experimental support of Quantum Cryptography
|
| 170 | * Added support for autoconf, contributed by Arnaud Cornet
|
| 171 | * Fixed "long long" compilation issues on IA-64 and PPC64
|
| 172 | * Fixed a bug introduced in xyssl-0.5/timing.c: hardclock
|
| 173 | was not being correctly defined on ARM and MIPS
|
| 174 |
|
| 175 | = Version 0.5 released on 2007-03-01
|
| 176 |
|
| 177 | * Added multiply assembly code for SPARC and Alpha
|
| 178 | * Added (beta) support for non-blocking I/O operations
|
| 179 | * Implemented session resuming and client authentication
|
| 180 | * Fixed some portability issues on WinCE, MINIX 3, Plan9
|
| 181 | (thanks to Benjamin Newman), HP-UX, FreeBSD and Solaris
|
| 182 | * Improved the performance of the EDH key exchange
|
| 183 | * Fixed a bug that caused valid packets with a payload
|
| 184 | size of 16384 bytes to be rejected
|
| 185 |
|
| 186 | = Version 0.4 released on 2007-02-01
|
| 187 |
|
| 188 | * Added support for Ephemeral Diffie-Hellman key exchange
|
| 189 | * Added multiply asm code for SSE2, ARM, PPC, MIPS and M68K
|
| 190 | * Various improvement to the modular exponentiation code
|
| 191 | * Rewrote the headers to generate the API docs with doxygen
|
| 192 | * Fixed a bug in ssl_encrypt_buf (incorrect padding was
|
| 193 | generated) and in ssl_parse_client_hello (max. client
|
| 194 | version was not properly set), thanks to Didier Rebeix
|
| 195 | * Fixed another bug in ssl_parse_client_hello: clients with
|
| 196 | cipherlists larger than 96 bytes were incorrectly rejected
|
| 197 | * Fixed a couple memory leak in x509_read.c
|
| 198 |
|
| 199 | = Version 0.3 released on 2007-01-01
|
| 200 |
|
| 201 | * Added server-side SSLv3 and TLSv1.0 support
|
| 202 | * Multiple fixes to enhance the compatibility with g++,
|
| 203 | thanks to Xosé Antón Otero Ferreira
|
| 204 | * Fixed a bug in the CBC code, thanks to dowst; also,
|
| 205 | the bignum code is no longer dependant on long long
|
| 206 | * Updated rsa_pkcs1_sign to handle arbitrary large inputs
|
| 207 | * Updated timing.c for improved compatibility with i386
|
| 208 | and 486 processors, thanks to Arnaud Cornet
|
| 209 |
|
| 210 | = Version 0.2 released on 2006-12-01
|
| 211 |
|
| 212 | * Updated timing.c to support ARM and MIPS arch
|
| 213 | * Updated the MPI code to support 8086 on MSVC 1.5
|
| 214 | * Added the copyright notice at the top of havege.h
|
| 215 | * Fixed a bug in sha2_hmac, thanks to newsoft/Wenfang Zhang
|
| 216 | * Fixed a bug reported by Adrian Rüegsegger in x509_read_key
|
| 217 | * Fixed a bug reported by Torsten Lauter in ssl_read_record
|
| 218 | * Fixed a bug in rsa_check_privkey that would wrongly cause
|
| 219 | valid RSA keys to be dismissed (thanks to oldwolf)
|
| 220 | * Fixed a bug in mpi_is_prime that caused some primes to fail
|
| 221 | the Miller-Rabin primality test
|
| 222 |
|
| 223 | I'd also like to thank Younès Hafri for the CRUX linux port,
|
| 224 | Khalil Petit who added XySSL into pkgsrc and Arnaud Cornet
|
| 225 | who maintains the Debian package :-)
|
| 226 |
|
| 227 | = Version 0.1 released on 2006-11-01
|
| 228 |
|