https实现的几个问题

官方推荐是TLS_server_method,我当前的系统ubuntu14.04,最新的只有SSLv23,但是抓包发现是TLSv1.2,文档只说了TLSv1,难道被ubuntu私下改了,只是头文件和文档没有更新?

有人说accept之后,要在set non block之前调SSL_accept,否则会影响握手消息收发?

任何一个SSL网络操作不管读写都可能产生 SSL_ERROR_WANT_READ/WRITE
比如SSL_accept后,但是这种情况可能是恶意的renegotiation[1]。 为了不影响原先的send/recv逻辑,简单粗暴处理为:
出现类似的错误,返回EPERM, 断开网络连接!

SSL_shutdown 需要在close socket之前,发送一个close notify alert,抓包证实了这点,但是非阻塞socket模式下,我并没有调底层send,难道是
SSL_shutdown调的?

安全性
wireshark
edit/preference/protocal/SSL/RSA Key List:
ip = 127.0.0.1 
port = 443
protocol = http 或者tcp 
key file = xx.pem
这种是不行的,要Master-Secret log file:
export SSLKEYLOGFILE=~/sslkeylog.log
也不行,浏览器打开没有生成这个log文件。
用户名密码无需特别处理[2],直接POST提交,目前看来对付我这样水平的监听足够安全了。

[1]http://www.ietf.org/mail-archive/web/tls/current/msg04000.html
[2]https://matthewarcus.wordpress.com/2014/05/10/srp-in-openssl/
[3]https://github.com/DeYangLiu/ffmpeg-streaming/commit/4eb722c5db3e5137fbed077bb6f78ef08ec13bb5

你可能感兴趣的:(ssl,安全)