基于OpenSSL的小型CA系统的 RA服务器客户端的设计与实现-毕业论文.doc

上传人:滴答 文档编号:1273313 上传时间:2019-01-26 格式:DOC 页数:40 大小:879KB
下载 相关 举报
基于OpenSSL的小型CA系统的 RA服务器客户端的设计与实现-毕业论文.doc_第1页
第1页 / 共40页
基于OpenSSL的小型CA系统的 RA服务器客户端的设计与实现-毕业论文.doc_第2页
第2页 / 共40页
基于OpenSSL的小型CA系统的 RA服务器客户端的设计与实现-毕业论文.doc_第3页
第3页 / 共40页
基于OpenSSL的小型CA系统的 RA服务器客户端的设计与实现-毕业论文.doc_第4页
第4页 / 共40页
基于OpenSSL的小型CA系统的 RA服务器客户端的设计与实现-毕业论文.doc_第5页
第5页 / 共40页
点击查看更多>>
资源描述

1、厦门大学软件学院毕业论文 1 本科毕业论文 (科研训练、毕业设计 ) 题 目:基于 OpenSSL 的小型 CA系统 的 RA服务器 /客户端 的设计与实现 姓 名: 学 院:软件学院 系:软件工程 专 业:软件工程 年 级: 学 号: 指导教师: 职称: 年 月 厦门大学软件学院毕业论文 I 摘要 近年来,网络的发展越来越迅速,网络信息流量也越来越大,为保证网上数字信息的传输安全,必须建立一种信任及信任验证机制,这就是数字证书。数字证书是网络上各个实体在进行信息交流及商务交易活动中所用到的身份证明。该数字证书具有唯一性。它将实体的公开密钥同实体本身联系在一起,为实现这一目的,必须使数字证书符

2、合 X.509 国际标准,同时数字证书的来源必须是可靠的。这就意味着应有一个网上各方都信任的机构,专门负责数字证书的发放和管理,确保网上信息的安全,这个机构就是 CA 认证机构。 如果 CA 机构不安全或发放的数字证书不 具有权威性、公正性和可信赖性,电子商务就根本无从谈起。 本文 深入研究 PKI/CA 系统的发展现状以其在业界中的影响,其中包括详细介绍其原理、功能和基本结构,并且对本课题的核心部分 OpenSSL 密码函数库的定义,功能和应用进行综述。利用 OpenSSL 提供的基础设施设计并实现一个小型集中式 CA 系统,此系统由MiniCA 系统(支持 CA 的基本功能)、 RASer

3、ver 系统(建立一个 RA 服务器)、 RaClient系统(审核和签发用户数字证书)三部分组成。此外还发布了一个工具 KeyTool,用于将*.cer/*.crt 格式的公钥、私钥文件合并为符合 P12 标准的 *.pfx证书文件,并从符合 P12 标准的 *.pfx证书文件中提取出 *.cer/*.crt 格式的公钥、私钥文件。 关键词 数字证书 PKI CA OpenSSL 厦门大学软件学院毕业论文 II Abstract In recent years, The development of networks is more and more rapid, network infor

4、mation flow is also growing, to ensure the on-line transmission of digital information security, we must build up a trust verification mechanism, which is the digital certificate. A digital certificate is a Proof of identity of the various entities who exchange information and do business transactio

5、ns on the Internet. The digital certificates have Uniqueness. It binds a entity an its pub-key one-on-one .To achieve this objective, we must make the digital certificates in line with the X.509 international standards, and the source of digital certificates must be reliable. This means that there m

6、ust be a online agency trusted by everybody that is responsible for digital certificate issuance and management to keep the security of online information. This agency is the CA certification agency. If the CA agency is unsafe or the digital certificate does not have authority, impartiality and trus

7、tworthiness, E-commerce simply be out of the question The thesis studies deep into the development and influence of PKI / CA systems in related field, including a detailed introduction of its principles, function and basic structure. Besides, summarize and review definition, features and application

8、 of OpenSSL encryption function library which is the key part of this paper. A concentrative small CA system is designed and then implement using infrastructure provided by OpenSSL. This system consists of a MiniCA System (supporting the basic functions of CA), a RAServer system (establishment of a

9、RA server) and a RaClient System (verify and issue user digital certificates). A tool KeyTool is also introduced, which can be used to combine public key and private key file in *. cer / *. crt format into *. pfx certificate file which meets the P12 standard, while also can Extract public key and pr

10、ivate key file in *. cer / *. crt format from *. pfx certificate meetting P12 standard. Keyword digital certificates PKI CA OpenSSL 厦门大学软件学院毕业论文 III 目录 第一章 绪论 . 1 1.1 项目的背景和意义 . 1 1.2 信息安全问题的现状 . 1 1.3 主要工作 . 2 1.4 本文结构 . 2 第二章 PKI/CA 相关技术简介 . 3 2.1 PKI/CA 组成简介 . 3 2.2 OpenSSL 简介 . 4 2.3 数字证书 . 7 2.

11、4 SSL 简介 . 9 2.5 非对称加密算法原理 . 11 第三章 小型 CA 系统的架构设计 .15 3.1 系统构架 .15 3.2 模块划分 .16 3.3 RAServer/RaClient 的详细设计 .16 3.3.1 证书数据库设计 .17 3.3.2 RAServer 的详细设计 .17 3.3.3 RaClient 的详细设计 .21 第四章 RAServer/RaClient 系统具体实现 .24 4.1 系统运行基本环境 .24 4.2 RAServer 的具体实现 .24 4.3 RaClient 的具体实现 .27 第五章 总结与展望 .33 5.1 总结 .33

12、 5.2 展望 .33 致谢 .34 参考文献 .35 厦门大学软件学院毕业论文 IV Contents Chapter 1 Introduction . 1 1.1 Background and significance . 1 1.2 The status of information security. 1 1.3 Major work . 2 1.4 The article structure . 2 Chapter 2 Technology related to PKI/CA. 3 2.1 The composition of PKI/CA. 3 2.2 OpenSSL . 4 2.

13、3 Digital certificates . 7 2.4 SSL . 9 2.5 Asymmetric encoding algorithm . 11 Chapter 3 The Architecture design of the Mini CA System.15 3.1 System architecture .15 3.2 Module division .16 3.3 The detailed design of the RAServer/RaClient System .16 3.3.1 The design of the Certificate database .17 3.

14、3.2 The detailed design of the RAServer System .17 3.3.3 The detailed design of the RaClient System .21 Chapter 4 The RAServer/RaClient system Implementation .24 4.1System environment .24 4.2 RAServer .24 4.3 RaClient .27 Chapter 5 conclusion and expectation.33 5.1 conclusion.33 5.2 expectation .33

15、Acknowledgements .34 References .35 厦门大学软件学院毕业论文 1 第一章 绪论 1.1 项目的背景和意义 近年来 Internet 的迅速发展和应用的普及,远远超过了当初人们的预料。当前人们以各种方式使用着 Internet,包括进行私人的、保密的业务,如电子邮件、电子商务、网上银行等等。由于这些私人的、保密的业务是利用互联网资源进行的,因而在交易安全方面与互联网的安全性密切相关。在这些业务过程中,主要涉及信息的安全传输、在线支付的安全认证等问题。 (1) 保密性 :如何保证电子邮件、电子商务、网上银行操作中涉及的大量保密信息在公开网络的传输过程中不被窃取;

16、 (2) 完整性 :如何保证电子邮件 、电子商务、网上银行操作中所传输的信息不被中途篡改及通过重复发送进行虚假交易; (3) 身份认证与授权 :在电子邮件、电子商务、网上银行操作的过程中,如何对双方进行认证,以保证交易双方身份的正确性; (4) 抗抵赖 :在电子邮件、电子商务、网上银行操作的交易完成后,如何保证交易的任何一方无法否认已发生的操作。 这一系列的安全问题在很大程度上限制了电子商务的发展,因此如何能够保证 Internet 网上信息的安全传输,已成为发展电子商务的关键。在 Internet 上建立安全的可信的通信基础设施,通过强认证机制和加 密机制来保证安全性,是满足电子商务的安全需

17、要,以实现安全的、有效的在线交易的一种思路。 1.2 信息安全问题的现状 对此,一个很重要的解决方案就是使用 PKI(Public-Key Infrastructure,公钥基础设施 )。PKI提供了基于加密和数字证书的一系列技术,为网络安全的实现提供基本保障,是一个用公钥概念和技术实施和提供安全服务的具有普适性的安全基础设施。它由公钥密码技术、数字证书、证书发放机构( CA)和关于公钥的安全策略等基本成分共同组成的。 PKI 是利用公厦门大学软件学院毕业论文 2 钥技术实现电子商务安全的一种体系,是一种基础设 施,网络通讯、网上交易是利用它来保证安全的。从某种意义上讲, PKI 包含了安全认

18、证系统,即安全认证系统 CA/RA 系统是 PKI 不可缺的组成部分。 CA 是 PKI的核心执行机构,是 PKI的主要组成部分,业界人士通常称它为认证中心。从广义上讲,认证中心还应该包括证书申请注册机构 RA( Registration Authority),它是数字证书的申请注册、证书签发和管理机构。 CA 的主要职责包括 验证并标识证书申请者的身份 、 确保 CA 用于签名证书的非对称密钥的质量和安全性 、 管理证书信息资料。 管理部分包括 管理证书序号和 CA 标识,确保证书主体标识的惟一性,防止证书主体名字的重复 , 在证书使用中确定并检查证书的有效期,保证不使用过期或已作废的证书,

19、确保网上交易的安全。 1.3 主要工作 本文通过研究 PKI/CA 系统的发展背景、意义、现状以其在业界中的影响,其中包括详细介绍其原理、功能和基本结构,并且对本课题的核心部分 OpenSSL 密码函数库的定义、功能和应用进行学习。利用 OpenSSL 提供的密码函数库设计并实现一个小型集中式 CA 系统,实现了 CA 的基本功能,包括根证书的产生和管理,用户证书的产生、颁发、回收、撤销等功能,并且设计并实 现一个客户端软件对 CA 的功能进行演示。 1.4 本文结构 本文第一章即本章介绍了项目开发的背景、意义以及现状,还有本人主要的工作。第二章简要介绍了与本文紧密相关的一些技术。第三章先简要

20、介绍了 小型 CA 系统的架构设计,然后详细介绍 RAServer系统和 RaClient系统的详细设计。第四章演示了 RAServer/RaClient系统的具体实现过程。五章是总结和展望,总结了这一阶段本人的工作,同时展望未来的工作。 最后是致谢语和相关文献。 厦门大学软件学院毕业论文 3 第二章 PKI/CA 相关技术简介 2.1 PKI/CA 组成简介 PKI( Public Key Infrastructure 公钥基础设施), 是一种新的安全技术。 PKI公钥基础设施是提供公钥加密和数字签名服务的系统或平台,目的是为了管理密钥和证书。一个机构通过采用 PKI框架管理密钥和证书可以建

21、立一个安全的网络环境。 它由公开密钥密码技术、数字证书,包括 X.509 格式的证书( X.509 V3)和证书废止列表 CRL( X.509 V2) 、证书发放机构( CA)和关于公开密钥的安全策略等基本成分共同组成的。 数字证书认证中心( Certficate Authority,CA)是整个网上电子交易安全的关键环节。它主 要负责产生、分配并管理所有参与网上交易的实体所需的身份认证数字证书。每一份数字证书都与上一级的数字签名证书相关联,最终通过安全链追溯到一个已知的并被广泛认为是安全、权威、足以信赖的机构 -根认证中心(根 CA)。 电子交易的各方都必须拥有合法的身份,即由数字证书认证中

22、心机构( CA)签发的数字证书,在交易的各个环节,交易的各方都需检验对方数字证书的有效性,从而解决了用户信任问题。 CA 涉及到电子交易中各交易方的身份信息、严格的加密技术和认证程序。基于其牢固的安全机制, CA 应用可扩大到一切有安全要求的网上数据传输服 务。 数字证书认证解决了网上交易和结算中的安全问题,其中包括建立电子商务各主体之间的信任关系,即建立安全认证体系( CA);选择安全标准(如 SET、 SSL);采用高强度的加、解密技术。其中安全认证体系的建立是关键,它决定了网上交易和结算能否安全进行,因此,数字证书认证中心机构的建立对电子商务的开展具有非常重要的意义。 认证中心( CA)

23、,是电子商务体系中的核心环节,是电子交易中信赖的基础。它通过自身的注册审核体系,检查核实进行证书申请的用户身份和各项相关信息,使网上交易的用户属性客观真实性与证书的真实性一致 。认证中心作为权威的、可信赖的、公正的第三方机构,专门负责发放并管理所有参与网上交易的实体所需的数字证书。 厦门大学软件学院毕业论文 4 RA( Registration Authority),数字证书注册审批机构。 RA 系统是 CA 的证书发放、管理的延伸。它负责证书申请者的信息录入、审核以及证书发放等工作;同时,对发放的证书完成相应的管理功能。发放的数字证书可以存放于 IC 卡、硬盘或软盘等介质中。 RA 系统是整

24、个 CA 中心得以正常运营不可缺少的一部分。 2.2 OpenSSL 简介 OpenSSL 是一个 具有 丰富 功能并 且自包含的开源 的 安全工具包。它 主要 提供的 功能有:SSL 协议实现 (包括 SSLv2、 SSLv3 和 TLSv1)、大量软算法 (对称 /非对称 /摘要 )、大数运算、非对称算法密钥生成、 ASN.1 编解码库、证书请求 (PKCS10)编解码、数字证书编解码、 CRL编解码、 OCSP 协议、数字证书验证、 PKCS7 标准实现和 PKCS12 个人数字证书格式实现等功能。 OpenSSL 以 C 语言作为开发语言,具有优秀的跨平台性能, Linux、 UNIX

25、、 windows、Mac 等平台。 OpenSSL 整个软件包大概可以分成三个主要的功能部分:密码算法库、 SSL 协议库以及应用程序。 作 为一个基于密码学的安全开发包, OpenSSL 提供的功能相当强大和全面,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及 SSL 协议,并提供了丰富的应用程序供测试或其它目的使用。 1.对称加密算法 OpenSSL 一共提供了 8 种对称加密算法,其中 7 种是分组加密算法,仅有的一种流加密算法是 RC4。这 7 种分组加密算法分别是 AES、 DES、 Blowfish、 CAST、 IDEA、 RC2、 RC5,都支持电子密码本模式( EC

26、B)、加密分组链接模式( CBC)、加密反馈模式( CFB)和输出反馈模式( OFB)四种常用的分组 密码加密模式。其中, AES 使用的加密反馈模式( CFB)和输出反馈模式( OFB)分组长度是 128 位,其它算法使用的则是 64 位。事实上, DES 算法里面不仅仅是常用的 DES 算法,还支持三个密钥和两个密钥 3DES 算法。 2.非对称加密算法 OpenSSL 一共实现了 4 种非对称加密算法,包括 DH算法、 RSA 算法、 DSA 算法和椭圆曲线算法( EC)。 DH 算法一般用户密钥交换。 RSA 算法既可以用于密钥交换,也可以用厦门大学软件学院毕业论文 5 于数字签名,当

27、然,如果你能够忍受其缓慢的速度,那么也可以用于数据加密。 DSA 算法则一般只用于数字签名。 3.信息摘要算法 OpenSSL 实现了 5 种信息摘要算法,分别是 MD2、 MD5、 MDC2、 SHA( SHA1)和RIPEMD。 SHA 算法事实上包括了 SHA 和 SHA1 两种信息摘要算法,此外, OpenSSL 还实现了 DSS 标准中规定的两种信息摘要算法 DSS 和 DSS1。 4.密钥和证书管理 密钥和证书管理是 PKI的一个重要组成部分, OpenSSL 为之提供了丰富的功能,支持多种标准。 首先, OpenSSL 实现了 ASN.1 的证书和密钥相关标准,提供了对证书、公钥

28、、私钥、证书请求以及 CRL 等数据对象的 DER、 PEM和 BASE64 的编解码功能。 OpenSSL 提供了产生各种公开密钥对和对称密钥的方法、函数和应用程序,同时提供了对公钥和私钥的 DER编解码功能。并实现了私钥的 PKCS#12 和 PKCS#8 的编解码功能。 OpenSSL 在标准中提供了对私钥的加密保护功能,使得密钥可以安全地进行存储和分发。 在此基础上, OpenSSL 实现了对证书的 X.509 标准编解码、 PKCS#12 格式的编解码以及 PKCS#7 的编解码功能。并提供了一种文本数据库,支持证书的管理功能,包括证书密钥产生、请求产生、证书签发、吊销和验证等功能。

29、 事实上, OpenSSL 提供的 CA 应用程序就是一个小型的证书管理中心( CA),实现了证书签发的整个流程和证书管理的大部分机制。 5.SSL 和 TLS 协议 OpenSSL实现了 SSL协议的 SSLv2和 SSLv3,支持了其中绝大部分算法协议。 OpenSSL也实现了 TLSv1.0, TLS 是 SSLv3 的标准化版,虽然区别不大,但毕竟有很多细节不尽相同。 虽然已经有众多的软件实现了 OpenSSL 的功能,但是 OpenSSL 里面实现的 SSL 协议能够让我们对 SSL 协议有一个更加清楚的认识,因为至少存在两点:一是 OpenSSL 实现 的SSL 协议是开放源代码的,我们可以追究 SSL 协议实现的每一个细节;二是 OpenSSL 实现的 SSL 协议是纯粹的 SSL 协议,没有跟其它协议(如 HTTP)协议结合在一起,澄清了 SSL协议的本来面目。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。