<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0" 
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
  xmlns:admin="http://webns.net/mvcb/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

<channel>
<title>MatrixSSL</title>
<link>http://www.matrixssl.org/</link>
<description></description>
<dc:language>en-us</dc:language>
<dc:creator>peersec@peersec.com</dc:creator>
<dc:date>2010-05-28T17:20:37-08:00</dc:date>
<admin:generatorAgent rdf:resource="http://www.movabletype.org/?v=2.65" />
<sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updateFrequency>1</sy:updateFrequency>
<sy:updateBase>2000-01-01T12:00+00:00</sy:updateBase>

<image>
<title>PeerSec Networks</title> 
<url>http://www.peersec.com/psIcon32.gif</url> 
<link>http://www.matrixssl.org/</link> 
<width>74</width> 
<height>32</height> 
<description>Enterprise Level Security for Devices (TM)</description> 
</image>

<item>
<title>MatrixSSL 3.1.2</title>
<link>http://www.matrixssl.org/archives/000159.html</link>
<description><![CDATA[<b>Feature Updates</b>
<ul>
<li><b>Explicit API support for processing multi-record data buffers</b> - The 3.1.1 API set did not include a documented mechanism for processing buffers in which multiple application data records are concatenated in a single ‘recv’ buffer. This is not an uncommon scenario and users are strongly encouraged to update to this latest MatrixSSL version and implement the new <i>matrixSslProcessedData</i> function in their applications. Details can be found in the updated API documentation included in this package.</li>
<li><b>MatrixSSL version defines added</b> - A <i>version.h</i> file has been added that includes defines for the MatrixSSL major, minor, and patch build version. The new header is included by matrixsslApi.h and defines the full version and the individual components. For example:
<pre>#define MATRIXSSL_VERSION       “3.1.2-OPEN” 
#define MATRIXSSL_VERSION_MAJOR	3 
#define MATRIXSSL_VERSION_MINOR	1 
#define MATRIXSSL_VERSION_PATCH	2
#define MATRIXSSL_VERSION_CODE	“OPEN”</pre></li>
<li><b>The sslTest application includes a timing mode</b> - The <i>sslTest</i> application can now be built to measure the connection speeds for clients and servers for the various cipher suites.</li>
<li><b>Improvements to HTTP parsing in example application code</b> - The <i>server</i> and <i>client</i> example applications now identify partial and multi-record HTTP records.</li>
</ul>
<p/>
<b>Public API Changes</b>
<ul>
<li><b>New matrixSslProcessedData prototype and return codes</b> - To support the processing of multi-record data buffers, the <i>matrixSslProcessedData</i> function prototype and return codes have changed. The new function has two additional parameters that are used to return the next decoded record in the buffer. The return codes for this function have been expanded to inform the user how that second record should be handled.
<p/>
Please see the API documentation and code examples for detailed information.</li>
</ul>
<p/>
<b>Bug Fixes</b>
<ul>
<li><b>Fixed return codes where unsigned data types were assigned negative values</b> - The functions <i>psRsaDecryptPriv, psRsaDecryptPub, and matrixSslDecode</i> are now consistent in their use of unsigned vs. signed data types.</li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">159@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2010-05-28T17:20:37-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 3.1.1</title>
<link>http://www.matrixssl.org/archives/000158.html</link>
<description><![CDATA[<b>Feature Updates</b>
<ul>
<li><b>Secure Renegotiations</b> - Turn re-handshaking support back on, MatrixSSL users!   Beginning in version 3.1.1 support for the recently published TLS Renegotiation Indication Extension (<a href="http://tools.ietf.org/html/rfc5746" target=_new>RFC 5746</a> ) is included.  SSL/TLS renegotiations enable servers to fine tune the security parameters
or access controls for individual clients without having to reconnect. MatrixSSL enabled clients and servers now support the "renegotiation_info" extension and the TLS_EMPTY_RENEGOTIATION_INFO_SCSV signaling cipher suite to prevent any possibility of the "plaintext injection attack" that was disclosed November 2009 and described in CVE-2009-3555.   </li>
<li><b>CLIENT_HELLO extension support</b> - Support for adding extensions to CLIENT_HELLO messages is now included in the open source version of MatrixSSL. More information on hello extensions can be found in <a href="http://tools.ietf.org/html/rfc3546" target=_new>RFC 3546</a>.</li>
<li><b>Client cipher suites on re-handshakes</b> - Clients will now resend the full list of supported cipher suites on server-initiated re-handshakes. In previous versions, upon receiving a HELLO_REQUEST from a connected server, the client would only supply the cipher suite that was currently negotiated in the CLIENT_HELLO.</li>
<li><b>Makefile auto detects 32 and 64 bit platforms</b> - The top level Makefile now detects whether 32 or 64 bit Linux or Mac OS X is running, and sets some defines appropriately to optimize performance for 64 bit platforms.</li>
<li><b>New documents</b> - Migration to 3.1 and OS Porting Guide</li>
</ul>
<p/>
<b>Public API Changes</b>
<ul>
<li><b>New matrixSslNewClientSession prototype</b> - An additional parameter has been added to this routine to improve hello extension support. Clients can now register a callback that will be invoked during the SSL handshakes to parse any SERVER_HELLO extensions that might be sent by the server.</li>
<li><b>USE_INT64 renamed to HAVE_NATIVE_INT64</b> - This define in coreConfig.h has been renamed for clarity.</li>
</ul>
<p/>
<b>Bug Fixes</b>
<ul>
<li><b>Changing Cipher Suites on Re-handshake</b> - A handshaking failure was discovered during re-handshake testing in some cases where the underlying cipher suite was changing, resulting in an invalid SSL Alert and connection close. This has been fixed as part of the overall handshake protocol change.</li>
<li><b>Default size for pstm_digit</b> - The default 32-bit platform now explicitly sets the psmt_digit type as a 32-bit unsigned integer rather than an unsigned long. This fixes a compile issue witbh running with 32-bit math on a 64-bit platform.</li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">158@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2010-04-15T08:27:30-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 3.1</title>
<link>http://www.matrixssl.org/archives/000157.html</link>
<description><![CDATA[<b>Major Revision and Feature Updates</b>
<ul>
<li><b>Celebrating 8 years of MatrixSSL!</b> - New 3.x version of Open Source matches Commercial versioning.</li>
<li><b>TLS 1.0 Protocol Support</b> - Beginning in MatrixSSL 3.1 the TLS 1.0 protocol and AES cipher are now available in open source releases.</li>
<li><b>Improved API</b> - It is now easier than ever to integrate SSL into your application.  MatrixSSL has always provided SSL integration to applications at a data buffer level to guarantee support for any given transport mechanism.  Previous versions, however, left the management of these data buffers in the hands of the integrator.  The new MatrixSSL 3.1 API incorporates size-optimized buffer management so the user is left only with the task of determining when data needs to be read or written, while still maintaing a transport-neutral, zero buffer copy API.</li>
<li><b>Faster and Smaller RSA Cryptography</b> - The public key cryptography operations required for RSA mathematics are the primary contributors to high water memory and CPU resources during the SSL handshake.  MatrixSSL 3.1 includes specific optimizations that have resulted in major improvements to both speed and memory usage during public cryptography.  These substantial memory savings and performance improvements allow MatrixSSL to be used on an even larger number of embedded platforms. The entire SSL handshake, including network buffers can now be completed in as little as 10KB of RAM, with a post-handshake dynamic memory footprint of less than 3KB.</li>
<li><b>File and Functional Reorganization</b> - The MatrixSSL 3.1 source code package has been organized to better reflect the individual functional areas.  The core and crypto modules are now clear building blocks on which MatrixSSL relies and each module has an API and Configuration header to manage optional features and functionality.</li>
<li><b>New Supported Client and Server Applications</b> - New client and server examples are now provided as a starting off point for customer integration or new application development. The client application is an example of a simple, blocking sockets API HTTPS client that prints the response to a HTTP GET request. The server example demonstrates a non-blocking HTTPS server that handles multiple connections and session timeouts. The MatrixSSL API usage for both applications is very similar, and should help clarify how to integrate MatrixSSL with other applications. </li>
<li><b>New Test Application</b> - A SSL/TLS protocol test application is now included in the package so that new ports of MatrixSSL can quickly be verified and functionally tested, even before integration with a sockets layer. The application creates virtual SSL connections within a single process using memory buffers as the transport layer. Each supported cipher suite and handshake mode are validated. </li>
<li><b>Additional Project File Formats</b> - Project files for the MatrixSSL library, example and test applications are now provided for Microsoft Visual Studio Express Edition, Apple Xcode and standard GNU make. Projects for the Eclipse IDE can be directly imported from GNU Makefile. </li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">157@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2010-03-08T15:28:27-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.8.8</title>
<link>http://www.matrixssl.org/archives/000156.html</link>
<description><![CDATA[<b>Protocol Security Updates</b>
<ul>
<li>A security exploit around SSL re-negotiation has been discovered. This is a protocol level flaw, and affects all SSL and TLS implementations. The protocol sitting above SSL may or may not be affected. For example, HTTPS with keep-alive support on authenticated connections IS affected. MatrixSSL disables re-negotiation for server side SSL in this release, protecting secure servers from attack. When using MatrixSSL for client connections, care should be taken to only connect to SSL servers that have re-negotiation disabled.</li>
<li>More information: <a href="http://arstechnica.com/security/news/2009/11/https-ssl-attack-vector-discovered-fix-is-on-the-way.ars" target=_new>HTTPS/SSL Attack Vector Discovered</a></li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">156@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2009-11-10T12:23:44-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.8.7</title>
<link>http://www.matrixssl.org/archives/000155.html</link>
<description><![CDATA[<b>New Features</b>
<ul>
<li>Windows project files for library and example application builds are now based on the freely available Microsoft Visual Studio C++ 2008 Express Edition</li>
</ul>
<br/>
<b>Functional Changes</b>
<ul>
<li>The USE_MULTITHREADING define in matrixConfig.h is now off by default so that POSIX platforms will not require pthreads by default.</li>
</ul>
<br/>
<b>Fixes</b>
<ul>
<li>Fixed the size calculations for SSL_FULL conditions when encoding the FINISHED flight of handshake messages</li>
<li>
Additional checks and proper error handling for the following types of malformed X.509 certificates as tested by Orange Labs. These do not constitute a remote attack vector for the Open Source release.
<ul>
<li>Testing for Serial Number encodings that use bad length specifications</li>
<li>Testing for Distinguished Name extension encodings that use bad length specifications</li>
<li>Error handling for Subject Alternate Name extensions that use bad length specifications</li>
</ul>
</li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">155@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2009-06-24T13:50:59-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.8.6</title>
<link>http://www.matrixssl.org/archives/000147.html</link>
<description><![CDATA[<b>New Features</b>
<ul>
<li>The matrixRsaParsePubKey routine has added support for X.509 SubjectPublicKeyInfo formatted keys</li>
<li>Full parsing support of the subjectAltName extension in certificates</li>
</ul>
<br/>
<b>Functional Changes</b>
<ul>
<li>Allowing clients to send multiple compression parameters in the CLIENT_HELLO message</li>
<li>The matrixX509ReadCert routine supports additional PEM file header and footer formats</li>
</ul>
<br/>
<b>Minor Fixes</b>
<ul>
<li>Corrected filename misspelling in httpsReflector.c for loading example CAcertCln.der certificate</li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">147@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2008-09-10T11:46:33-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.8.5</title>
<link>http://www.matrixssl.org/archives/000145.html</link>
<description><![CDATA[<b>API changes</b>
<ul>
<li>Internal API change to accommodate MatrixSSH users.</li>
</ul>
<br/>
<b>Functional changes</b>
<ul>
<li>Ignore TLS extensions sent with SSL 3.0 ClientHello.  Thunderbird sends these extensions if negotiating down from a TLS connection, even though they are meaningless.</li>
<li>Enhanced the parsing of the Key Usage certificate extension.</li>
</ul>
<br/>
<b>Bug fixes and optimizations</b>
<ul>
<li>Assure file reads into memory are NULL terminated.  This was an issue flagged by Valgrind that doesn't present a problem in practice.</li>
<li>2008 copyright update.</li>
</ul>
<br/>
<b>Notes</b>
<ul>
<li>MatrixSSL 1.8.4 was not a public release.</li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">145@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2008-03-11T09:26:44-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.8.3</title>
<link>http://www.matrixssl.org/archives/000144.html</link>
<description><![CDATA[<b>API changes</b>
<ul>
<li>‘const’ qualifiers added to literal string parameters for <tt>matrixRsaReadPrivKey</tt>, <tt>matrixRsaReadKeys</tt>, <tt>matrixRsaReadKeysEx</tt> and <tt>matrixX509ReadPubKey</tt>.
</li>
</ul>
<br/>
<b>Functional changes</b>
<ul>
<li>Additional error reporting in RSA public decryption routine.</li>
</ul>
<br/>
<b>Bug fixes and optimizations</b>
<ul>
<li>Improved the enforcement of maximum certificate chain length.</li>
<li>Added the –fPIC compile option to default POSIX builds.</li>
<li>Fixed one time memory leak on error conditional during certificate parsing.</li>
<li>2007 copyright update.</li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">144@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2007-02-07T13:22:22-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.8.2</title>
<link>http://www.matrixssl.org/archives/000143.html</link>
<description><![CDATA[<b>API additions</b>
<ul>
<li>None</li>
</ul>
<br/>
<b>Functional changes</b>
<ul>
<li>New "leaky bucket" algorithm for empty message denial-of-service countermeasure.  Previously, the count of empty messages was continually being incremented by the MatrixSSL library regardless of any interleaving valid messages.  This could potentially cause the connection to be closed if a peer was sending many blank SSL messages.  The count will now decrement on valid messages.  This change is most relevant to use-cases that involve an OpenSSL client communicating with a MatrixSSL server, as these clients tend to periodically send a blank record.</li>
</ul>
<br/>
<b>Bug fixes and optimizations</b>
<ul>
<li>None</li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">143@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2006-10-05T14:22:46-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.8.1</title>
<link>http://www.matrixssl.org/archives/000141.html</link>
<description><![CDATA[<b>API additions</b>
<ul>
<li>None</li>
</ul>
<br/>
<b>Functional changes</b>
<ul>
<li>Cleaner POSIX cross platform compiles for newer versions of Linux.</li>
<li>Build support for Intel Macs (tested on OS X 10.4 CoreDuo).</li>
</ul>
<br/>
<b>Bug fixes and optimizations</b>
<ul>
<li>Minor compile warnings fixed.</li>
<li>Graceful handling when MAX_CHAIN_LEN limit is exceeded in certificate parsing.</li>
<li>Added ASN.1 BMPSTRING format support to certificate parsing.</li>
<li>Fixed <tt>matrixSslReadKeysMem</tt> so that private key parameter is optional.</li>
<li>Fixed one time memory leak for client initialization issues that include non-parsable certificates.</li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">141@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2006-07-11T15:37:56-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.8</title>
<link>http://www.matrixssl.org/archives/000140.html</link>
<description><![CDATA[<b>API additions</b>
<ul>
<li>Addition of two new server APIs that allow the user to add a custom flag value to client sessions.  Servers may now assign persistant custom data to connected sessions that can be later retrieved from a session that was established with a session resumption handshake.  See the API documentation for <tt>matrixSslSetResumptionFlag</tt> and <tt>matrixSslGetResumptionFlag</tt> for more details.</li>
</ul>
<br/>
<b>Functional changes</b>
<ul>
<li>Ability to put multiple certificates in a single PEM file.</li>
<li>The handshake will now fail on an un-authenticated cert if no user validation callback has been defined with <tt>matrixSslSetCertValidator</tt>.  It is still encouraged that a callback be registered.</li>
<li>Users can now reply to a closure alert with a closure alert of their own using <tt>matrixSslEncodeClosureAlert</tt>.  Previously, the <tt>SSL_CLOSED</tt> flag prevented this.  Now only error cases will prevent the closure alert from being created.</li>
</ul>
<br/>
<b>Bug fixes and optimizations</b>
<ul>
<li>Numerous compile warnings fixed.  Especially in the area of unsigned char / char type mismatches.</li>
<li>Added explicit ‘void’ types to empty parameter functions.</li>
<li>Fixed a bad shift operation in <tt>cipherSuite.c</tt> (no functional change).</li>
<li>Fixed possible memory leak of pre-master secret if <tt>deleteSession</tt> called on some corner failure cases.</li>
<li>Fixed compile and link issues when USE_FILE_SYSTEM was turned off in <tt>matrixConfig.h</tt>.</li>
<li>Fix for unknown X.509 certificate extension parsing in which the extensions did not provide explicit data lengths in the encoding.</li>
<li>Fixed parse issue with an empty AuthorityKeyIdentifier certificate extension.</li>
<li>Created new sample certificates with updated dates.</li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">140@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2006-04-06T13:33:41-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.7.3</title>
<link>http://www.matrixssl.org/archives/000138.html</link>
<description><![CDATA[<b>Bug fixes and optimizations</b>
<ul>
<li>Fixed issue with certificate extension parsing causing a cert with some unrecognized extensions to fail validation.</li>
<li>Fixed requirement when USE_CLIENT_SIDE is enabled with ReadKeysMem - CA is no longer required.</li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">138@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2005-11-16T18:28:43-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.7.1b</title>
<link>http://www.matrixssl.org/archives/000136.html</link>
<description><![CDATA[<b>Bug fixes and optimizations</b>
<ul>
<li>Fixed packaging issue causing a build error on Windows and Linux.  No functional change from 1.7.1</li>
</ul>
<br/>]]></description>
<guid isPermaLink="false">136@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2005-09-17T11:39:20-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.7.1</title>
<link>http://www.matrixssl.org/archives/000135.html</link>
<description><![CDATA[<b>Bug fixes and optimizations</b>
<ul>
<li>Fixed certificate chain parsing bug where a valid certificate chain was marked as invalid under certain circumstances.  The result of the fix is that more cert chain configurations are supported.</li>
<li>Added support for cert validation when the server sends the Root CA cert in addition to the lower levels of the chain.  Typically the Root CA cert is loaded into the client, and not sent by the server. We have encountered some deployments where the server does send the root CA as well, and now successfully validate this chain.</li>
<li>Relaxed parsing of the CertificateSerialNumber field within AuthorityKeyIdentifier.  Although officially defined as an ASN.1 INTEGER type, some certificate generators use a non-integer value.  Parser now supports these technically incorrect datatypes.</li>
</ul>
<br/>
]]></description>
<guid isPermaLink="false">135@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2005-09-13T14:48:19-08:00</dc:date>
</item>
<item>
<title>MatrixSSL 1.7</title>
<link>http://www.matrixssl.org/archives/000134.html</link>
<description><![CDATA[<b>Overall changes</b>
<ul>
<li>Explicit support for anonymous RSA handshaking</a>
<li>New APIs to support anonymous handshaking and re-handshaking over
existing connections with new key material</li>
</ul>
<br/>
<b>Functional changes</b>
<ul>
<li>Version updated from 1.2.5 to 1.7 to mirror commercial MatrixSSL versioning</li>
<li>Directory and file reorganization</li>
</ul>
<br/>
<b>Bug fixes and optimizations</b>
<ul>
<li>Significantly accelerated RSA handshake speeds</li>
<li>Additional parsing of X.509 certificate extensions</li>
</ul>
<br/>
]]></description>
<guid isPermaLink="false">134@http://www.matrixssl.org/</guid>
<dc:subject>Releases</dc:subject>
<dc:date>2005-08-17T19:21:41-08:00</dc:date>
</item>


</channel>
</rss>