OpenSSL知识介绍培训教材.ppt

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
OpenSSL 前言 一、什么是OpenSSL OpenSSL是一个开放源代码的SSL协议的产品实现,它采用C语言作为开发语言,具备了跨系统的性能,支持Linux、Unix、Windows、Mac和VMS等多种平台。 OpenSSL最早的版本在1995年发布,1998年后开始由OpenSSL项目组维护和开发。当前最新的版本是0.9.7b版本,完全实现了对SSLv1、SSLv2、SSLv3和TLS的支持。。目前,OpenSSL已经得到了广泛的应用,许多类型的软件中的安全部分都使用了OpenSSL的库,如VOIP的OpenH323协议、Apache服务器、Linux安全模块等等。 二、OpenSSL的组成 虽然OpenSSL使用SSL作为其名字的重要组成部分,但其实现的功能确远远超出了SSL协议本身。OpenSSL事实上包括了三部分:SSL协议、密码算法库和应用程序库。 SSL协议部分完全实现和封装了SSL协议的三个版本和TLS协议,SSL协议库的实现是在密码算法库的基础上实现的。使用该库,你完全可以建立一个SSL服务器和SSL客户端。 密码算法库是一个强大完整的密码算法库,它是OpenSSL的基础部分,也是很值得一般密码安全技术人员研究的部分,它实现了目前大部分主流的密码算法和标准。主要包括公开密钥算法、对称加密算法、散列函数算法、X509数字证书标准、PKCS12、PKCS7等标准。事实上,OpenSSL的SSL协议部分和应用程序部分都是基于这个库开发的。 三、基于OpenSSL的应用 基于OpenSSL指令的应用 基于OpenSSL加密库和协议库的应用 基于OpenSSL指令的应用很容易,只要安装好了OpenSSL,就可以开始使用了。 最简单的应用就是使用Req、CA以及X509指令来签发一个证书了,该证书可以用于各种目的,比如很多Apache服务器就是使用OpenSSL的指令生成的证书作为服务器证书。 基于OpenSSL函数库的应用相比与基于OpenSSL指令的应用开发的工作量会大很多,但这并不意味着其应用会更少。事实上,基于OpenSSL的应用大部分是这种方式的,这种方式使得开发者能够根据自己的需求灵活地进行选择,而不必受OpenSSL有限的指令的限制。 CA的目录结构 一、创建自己的CA certs目录:存放的是有效的用户证书,里面的文件格式是.cert格式,每一个用户对应一个证书。这些证书已经被CA签名了,是有效的。证书的具体格式在后面会有叙述和实例。 Crl目录:在这个目录中存放的是证书撤销列表,里面的文件格式是.crl格式。一个.crl文件记录了一段时期内被撤销的证书的序列号。所有这些撤销列表合起来记录了所有的被撤销的用户证书。证书撤销列表的具体格式见后面的分析。 newcerts:在这个目录中存放的是那些等待被CA签名的用户证书,这些证书还是没有被签名的,暂时无效。不过这些用户的申请信息已经告知了CA系统,系统管理员可以通过对这些信息的分析,决定是否对这个证书签名,使其生效。 private:这个目录中存放的是所有用户包括CA的私钥,里面的文件格式是.key格式的。每一个证书对应一个.key文件。这个目录起到一个简单的密钥归档作用。 1、创建一个数据库(index.txt文件) 2、创建一个序列号(serial)文件 记录根CA创建证书或者撤销证书的事件; 记录下次即将创建的用户证书的序列号; 每次创建一个新证书时,将其中的序列号赋给证书; 证书创建完成后,自动将序列号加1; 根证书的序列号默认为 00; 每次创建或者撤销证书事件发生时,它是自动更新的; 1.1 创建CA的准备工作 1.2 创建CA证书的基本步骤 1、在原来创建的. rnd文件中输入一个数做为伪随机数发生器的种子; 2、利用1中的种子和RSA算法为CA生成一个CA密钥对; 3、申请创建CA证书,输入系统要求的必要的注册信息;系统会用2中生成的CA密钥对对这个证书进行自签名; 4、安装生成的CA证书,即让本机信任这个CA证书; 1.3 生成CA密钥对 命令: genrsa –out private\ca.key –rand private\.rnd 2048 生成的密钥对存放在ca.key中。 生成密钥对命令的详细解释: genrsa:用RSA算法产生(gen)密钥对; –out private\ca.key:生成的密钥对存放(-out)在private目录下的ca.key文件中; –rand private\.rnd:在RSA算法中,伪随机数产生器用的种子是放在private\.rnd中的;里面的种子管理员可以手动修改; 2048:表示生成

文档评论(0)

yuzongxu123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档