OpenSSL & 加密解密
思维导图:
1. 网络通信概述
2. 加密和解密
2.1 加密的方式
1)对称加密
2)公钥加密
3)单向加密
4)认证加密
2.2 PKI的实现方式
- PKI(Public Key Infrastructure)公钥基础设施
2.3 加密和解密的过程
1)加密解密过程图示
2)加密解密过程分析
3)术语解释
- 数字签名:
- 发送方用自己的私钥加密数据特征码后得到的结果就叫做数字签名
- 身份认证的过程就依赖了数字签名
- 身份认证:
- 发送方用自己的私钥加密数据特征码,接收方用对方的公钥去解密,如果解得开,就说明对方法发的文件(来源合法性得到确认)
- 密钥交换:
- 自己生成一个密码(对称密钥),但是用对方的公钥去加密这个密码(对称密钥),然后发送给对方
2.4 CA概述
3. openssl详解
3.1 openssl概述
- 组成部分
- libcrypt库:用于实现加密和解密的库
- libssl库:用于实现ssl安全通信的库,主要由开发者使用
- openssl:多用途命令行工具
- 子命令类型
- 标准命令:enc,ca,req,genrsa
- 消息摘要命令:dgst
- 加密命令:enc
- Linux系统上的随机数
3.2 SSL的会话过程分析
3.3 openssl命令的使用
- 对称加密(enc)
- 单向加密(dgst)
- 生成用户密码(passwd)
- 生成随机数(rand)
- 生成密钥(genrsa)
4. 私有CA的构建
4.1 构建私有CA
4.2 向CA请求签署证书
4.3 吊销证书