首页 > 其他 > 详细

openssl

时间:2014-05-25 21:06:38      阅读:579      评论:0      收藏:0      [点我收藏+]

https的实现过程

bubuko.com,布布扣

  • client 从互联网下载CA的证书(公匙 ),用于验证server的身份
  • server 通过加密算法生成一对密匙,将公匙发给CA认证机构,做数字前面
  • CA通过自己的私匙加密server公匙并加上自己的数字签名后,将生成的数字证书发给server
  • client 与 server 通过TCP 的三次握手建立连接
  • client发出HTTP 的报文请求,并和server协商使用哪种算法加密
  • server 响应 报文并将证书(公匙)发给客户端
  • client通过CA的证书(公匙)解密,server发过的证书,得到server的公匙和数字签名,client 通过散列函数算出server公匙的数字签名与

          得到的数字签名对比,来验证server身份

  • client 生成随机对称密匙,并用服务器的公匙加密,然后传给服务器
  • server用私匙解密对称密钥,然后用其作为server和client 的 通话密码 加解密通信
  • server 处理请求,对访问相关资源做出相应报文

 

SSL 的 工具 openssl

1 安装openssl 默认已经安装

[root@centos ~]# rpm -q openssl
openssl-1.0.1e-16.el6_5.7.x86_64

 

2 openssl 的软件组成

  • libcrpto  通用加密库
  • libssl        TLS/SSL的实现,基于会话 实现身份认证,数据机密性,完整性
  • openssl    多用途命令行工具

 

3 openssl 常用命令

   enc   加解密

[root@centos ~]# openssl enc -des3 -in inittab -e -out inittab.des3
[root@centos ~]# openssl enc -des3 -in inittab.des3 -d -out inittab

 

dgst   提取特征码

[root@centos ~]# openssl dgst -md5 inittab
MD5(inittab)= 753a386bcd9ab0ca581056348463891e
[root@centos ~]# md5sum inittab
753a386bcd9ab0ca581056348463891e  inittab

 

生成随机数    n*2

[root@centos ~]# openssl rand -hex 8
ca502503cebd5d9a

 

4  openssl 实现私有CA具体步骤

一  创建CA机构

       修改配置文件

       生成一对秘钥

       生成自签证书

二   客户端

       生成一对秘钥

       生成证书颁发请求    .csr

       将请求发给CA

三   CA 机构

       签署此证书

        传送给客户端    

 

建立CA

cd  /etc/pki/CA
(umask 077;openssl genrsa -out private/cakey.pem 2048)
openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650
touch index.txt 
echo "01" > serial

 

配置 httpd 使用证书

cd /etc/httpd  
mkdir ssl
cd ssl
(umask 077;openssl genrsa -out http.key 1024) 生成密匙
openssl req -new -key httpd.key -out httpd.csr  证书请求文件 ,机构和其他名字必须和CA颁发机构的相同
openssl ca  -in httpd.csr -out httpd.crt -days  CA 签名

openssl,布布扣,bubuko.com

openssl

原文:http://168322.blog.51cto.com/158322/1416797

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!