本文基于Ubuntu 17 lts
一 SSL/TLS
SSL(Secure Sockets Layer),处于可靠点对点连接的网络层(如TCP)和应用层(如HTTP)之间的协议层.通过相互间的认证,数字签名,加密私有信息,提供客户和服务器之间的安全的通信.
版本如下
SSL建立会话有个握手流程,这个序列是可以变化的,取决服务器的配置,是否要求客户认证或服务器认证.
协商数据传输使用的密码算法
建立和共享会话密钥
证明来自服务器(可选)
证明来自客户(可选)
数据传输流程
MAC (Message Authentication Code)
(加密算法等请参考相关文档)
二 什么是RSA私钥,CSR
RSA私钥,是一个数字文件,用来解密发送给你的信息.他包含你通过证书签发给别人使用的公共部分,使别人能加密信息并发送给你.
CSR (Certificate Signing Request )是一个数字文件,包含你的公钥和名字.将他发送给一个认证机构,将其转换成一个签名的证书.
证书包含你的RSA公钥,你的名字,CA的名字,数字签名(用来验证并获得你的RSA公钥),用他来发送信息使你可以解密相关内容
三 创建自签名SSL认证
a 创建 .key ,.crt 文件