[openssl-users] The default cipher of executable 'openssl'
Aaron
wangqun at alumni.nus.edu.sg
Fri Jun 12 06:19:17 UTC 2015
Hi Dave,
Thanks for your comments.
I am not really familiar with OpenSSL, so some parts of my descriptions may
not be not very clear.
Right, I am talking about s_server subcommand. You mentioned that there is
no change in this area. However I can easily show something is change using
s_server subcommand. I am using original OpenSSL code to build my 'openssl',
to this change is not from me.
1) 1.0.1l
./apps/openssl s_server -ssl3 -cert certdb/ssl_server.pem -WWW -CAfile
certdb/cafile.pem
Using default temp DH parameters
Using default temp ECDH parameters
ACCEPT
2) 1.0.2
./apps/openssl s_server -ssl3 -cert certdb/ssl_server.pem -WWW -CAfile
certdb/cafile.pem
Using default temp DH parameters
ACCEPT
Note that, in 1.0.2, openssl doesn't print out 'Using default temp ECDH
parameters'.
I checked related code in s_server.c and ssl_conf.c, There are some updates.
Some related code is moved from s_server.c to ssl_conf.c. However I haven't
found the root cause of this change.
I encountered a similar issue when upgrading from OpenSSL 1.0.1l to 1.0.1m.
I paste my analysis and fix below. After I applied my fix, the issue
disappeared.
1) Analysis
File s_server.c was updated in OpenSSL 1.0.1m. Variable 'no_ecdhe' was
uninitialized after the update. This causes the condition of the if
statement (if (!no_ecdheon) {...}) on line 1682 not to be true. Then
ECDHE-RSA-AES256-SHA is not the default temp ECDH parameters of 'openssl
s_server' any more.
2) Fix
273 diff -wruN openssl-1.0.1m.original/apps/s_server.c
openssl-1.0.1m.working/apps/s_server.c
274 --- openssl-1.0.1m.original/apps/s_server.c 2015-03-19
06:37:10.000000000 -0700
275 +++ openssl-1.0.1m.working/apps/s_server.c 2015-05-25
01:46:35.000000000 -0700
276 @@ -998,7 +998,7 @@
277 int off = 0;
278 int no_tmp_rsa = 0, no_dhe = 0, nocert = 0;
279 #ifndef OPENSSL_NO_ECDH
280 - int no_ecdhe;
281 + int no_ecdhe = 0;
282 #endif
283 int state = 0;
284 const SSL_METHOD *meth = NULL;
I noticed that the issue in 1.0.2 is not the same as the issue in 1.0.1m.
The issue started to appear in 1.0.2 rather than 1.0.2a.
Thanks,
Aaron
--
View this message in context: http://openssl.6102.n7.nabble.com/The-behavior-change-of-command-line-utility-openssl-tp58557p58631.html
Sent from the OpenSSL - User mailing list archive at Nabble.com.
More information about the openssl-users
mailing list