<feed xmlns='http://www.w3.org/2005/Atom'>
<title>otp.git/lib/crypto, branch maint-19</title>
<subtitle>Mirror of Erlang/OTP repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/'/>
<entry>
<title>Update release notes</title>
<updated>2017-03-31T10:59:07+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2017-03-31T10:59:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=19427107ca9305a931dcaea8c2134017aa385fbd'/>
<id>19427107ca9305a931dcaea8c2134017aa385fbd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update version numbers</title>
<updated>2017-03-31T10:58:36+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2017-03-31T10:58:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=71f7e9155c4867f4e8036704337c21127f508dfb'/>
<id>71f7e9155c4867f4e8036704337c21127f508dfb</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix bug with AES CFB 128</title>
<updated>2017-03-29T14:49:17+00:00</updated>
<author>
<name>Kelly McLaughlin</name>
<email>kelly@kelly-mclaughlin.com</email>
</author>
<published>2017-03-29T14:49:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=25b8f8119f5b64b5c07cb5ed4978f7df64d4799f'/>
<id>25b8f8119f5b64b5c07cb5ed4978f7df64d4799f</id>
<content type='text'>
Fix a bug with the use of the aes_cfb128 cipher by calling the correct
underlying openssl interface function when the cipher is specified.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix a bug with the use of the aes_cfb128 cipher by calling the correct
underlying openssl interface function when the cipher is specified.
</pre>
</div>
</content>
</entry>
<entry>
<title>Demonstrate the bug with AES CFB 128 encryption</title>
<updated>2017-03-29T13:24:46+00:00</updated>
<author>
<name>Kelly McLaughlin</name>
<email>kelly@kelly-mclaughlin.com</email>
</author>
<published>2017-03-29T13:24:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=59099922f53a478903da304cc591c4baae549dc5'/>
<id>59099922f53a478903da304cc591c4baae549dc5</id>
<content type='text'>
Demonstrate a bug with AES CFB 128 for certain key sizes introduced
with the Erlang 19.0 release. The code in the block_crypt_nif function
in the crypto.c source file incorrectly calls aes_cfb_8_crypt when the
specified cipher is aes_cfb8 or aes_cfb128 and the key size is 24 or
32. The aes_cfb_8_crypt function calls the AES_cfb8_encrypt function
from the openssl interface, but this is incorrect when the cipher is
aes_cfb128.

Unfortunately the test cases in the crypto test suite are insufficient
to detect an issue like this because it exercises the encryption and
decryption roundtrip using the same incorrect underlying function. The
problem was observed when trying to update an application to Erlang 19
that attempted to decrypt data that was encrypted using aes_cfb128 by
another source. In this commit I altered the crypto test suite to
provide a demonstration of this problem.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Demonstrate a bug with AES CFB 128 for certain key sizes introduced
with the Erlang 19.0 release. The code in the block_crypt_nif function
in the crypto.c source file incorrectly calls aes_cfb_8_crypt when the
specified cipher is aes_cfb8 or aes_cfb128 and the key size is 24 or
32. The aes_cfb_8_crypt function calls the AES_cfb8_encrypt function
from the openssl interface, but this is incorrect when the cipher is
aes_cfb128.

Unfortunately the test cases in the crypto test suite are insufficient
to detect an issue like this because it exercises the encryption and
decryption roundtrip using the same incorrect underlying function. The
problem was observed when trying to update an application to Erlang 19
that attempted to decrypt data that was encrypted using aes_cfb128 by
another source. In this commit I altered the crypto test suite to
provide a demonstration of this problem.
</pre>
</div>
</content>
</entry>
<entry>
<title>Prepare release</title>
<updated>2017-03-14T14:59:23+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2017-03-14T14:59:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=4d658008be5a08ddadbe75ebadb9ef124436b76e'/>
<id>4d658008be5a08ddadbe75ebadb9ef124436b76e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update copyright year</title>
<updated>2017-03-10T14:00:46+00:00</updated>
<author>
<name>Rickard Green</name>
<email>rickard@erlang.org</email>
</author>
<published>2017-03-10T14:00:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=26c3cd82529836cb5b6eefbf7f92f318fd91f847'/>
<id>26c3cd82529836cb5b6eefbf7f92f318fd91f847</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ssh: document crypto:genarate_key(dh, [P,G,L])</title>
<updated>2017-02-02T16:26:49+00:00</updated>
<author>
<name>Hans Nilsson</name>
<email>hans@erlang.org</email>
</author>
<published>2017-02-02T16:25:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=d5d53966bff6ca9ab0c40ab96404d425d7438729'/>
<id>d5d53966bff6ca9ab0c40ab96404d425d7438729</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>crypto: Added optional length to paramlist in generate_key</title>
<updated>2017-01-27T13:32:55+00:00</updated>
<author>
<name>Hans Nilsson</name>
<email>hans@erlang.org</email>
</author>
<published>2017-01-26T17:54:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=6468551301f906ce4199ef69b677147d88d64242'/>
<id>6468551301f906ce4199ef69b677147d88d64242</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a missing aes_gcm -spec clause to crypto:block_encrypt/4</title>
<updated>2017-01-17T01:24:05+00:00</updated>
<author>
<name>Leo Liu</name>
<email>sdl.web@gmail.com</email>
</author>
<published>2017-01-17T01:06:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=6d2eb58ee86e3fe36e61f00dbe443ee8d49c421f'/>
<id>6d2eb58ee86e3fe36e61f00dbe443ee8d49c421f</id>
<content type='text'>
Fix https://bugs.erlang.org/browse/ERL-336.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix https://bugs.erlang.org/browse/ERL-336.
</pre>
</div>
</content>
</entry>
<entry>
<title>Prepare release</title>
<updated>2016-12-09T10:45:22+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2016-12-09T10:45:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=fc0427be6d482182ec70f3cd87c73027cfb17ea9'/>
<id>fc0427be6d482182ec70f3cd87c73027cfb17ea9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
