《基于openssl的安全web服务器的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于openssl的安全web服务器的设计与实现.docx(63页珍藏版)》请在第壹文秘上搜索。
1、青岛农业大学毕业论文(设计)题目:基于OPenSSL的安全Web服务器的设计与实现姓名:学院:理学与信息科学学院专业:计算机科学与技术班级:08级03班学号:20082854指导教师:2012年6月163基于OPenSSL的安全Web服务器的设计与实现摘要:随着计算机网络技术的飞速发展,基于计算机网络诸多业务,如电子商务、电子政务、网上银行迅猛的发展,为人们的生活和工作带来了很多的方便。然而,由于Internet的开放性、灵活性、共享性等特点,也为人们带来了巨大的安全威胁。如何在网络中共享信息的同时更加有效地保障我们的信息不被他人窃取、利用一一保护个人的信息安全,已成为人们共同关注的问题。默认
2、情况下Web服务使用的传输协议是HTTP,而HTTP协议是没有任何加密措施的,服务器和客户之间通讯的所有的信息全部采用明文传输,恶意的攻击者可以通过安装监听程序来获得我们和服务器之间的通讯内容。因此,如何保证服务器和客户之间通讯的安全性,保证双方交易信息的保密性、完整性已成为亟待解决的问题。本设计基于LinUX平台,利用OPenSSL开放源码库,实现了具有安全性的Web服务器,实现了服务器和客户之间的安全通信。服务器端通过出示数字证书进行身份认证,SerVer同时限定CIiem也要出示身份验证,实现了更具有可信性的双向认证;通过采用SSL中的加密算法对传输的数据进行加密,以保证双方传输数据的机
3、密性;采用相关哈希函数如MAC,对数据进行验证,以保证数据的完整性,确保信息数据在传输途中不会被非法篡改。从而为完成服务器与浏览器之间的安全通讯提供了保障。关键词:信息安全;安全套接接字层;OpenSSL;HTTPSTheDesignandImplementationofSecureWebServerBasedonOpenSSLAbstract:Withtherapiddevelopmentofcomputernetworktechnology,businesssuchase-commerce,e-government,e-bankbasedoncomputernetwork,hasbroug
4、htalotofconvenienceforourdailylife.However,duetotheopenness,flexibility,andsharingoftheInternet,italsoexposesustothethreatofleakingourpersonalinformation.Itcauseshighlyheightenedconcernstoensureourpersonalinformationsecuredincomputernetworks,recently.HTTPisusedtodelivermessagesinWebservers,whichhasn
5、oprotectioninanyway.Allmessages,whichcanbemonitoredbyattackers,areplaintextincommunicationbetweenserverandclient.Thus,ithasbecomeanemergencytosecureconfidentiality,integrityoftheinformationintransactions.Inthisarticle,WeconstructtheprojectusingOpenSSLtoimplementWebserverprogram,whichensureasecurecom
6、municationbetweentheserverandclient.Double-sidedauthenticationprotectstheinformationfromattackersamongtheserverandclientthroughdigitalcertificates.IntheframeworkofSSL,aspecificencryptionalgorithmisusedtoachievetheconfidentialityandonekindofhashalgorithmsisappliedtoguaranteetheintegrityofthedataintra
7、nsmission,whichprovidesaguaranteeforthesecurecommunicationbetweentheserverandbrowser.Keywords:InformationSecurity;SSL;OpenSSL;HTTPS目录第一章引言11.1 课题的研究背景11.2 课题研究的目的和意义31.3 课题的研究内容及目标41.4 本文的组织结构4第二章信息安全理论知识52.1 密码学基础52.1.1 密码体制52.1.2 密码体制的分类62.1.3 对称密码体制62.1.4 公钥密码体制72.2 消息认证与数字签名82.2.1 消息摘要82.2.2 数字签
8、名82.3 公钥基础设施92.3.1 钥基础设施的概念92.3.2 公钥基础设施的组成102.3.3 数字证书112.4 安全套接字层112.4.1 SSL概述112.4.2 SSL协议的结构122.4.3 SSL记录协议122.4.4 SSL握手协议132.5 本章小结16第三章Web服务器开发基础173.1 Linux操作系统173.1.1 LinUX操作系统简介173.1.2 GNU编译器套装183.1.3 make命令与Makefile文件193.1.4 GDB调试工具213.2 OpenSSL介绍223.2.1 OpenSSL的功能233.2.2 OpenSSL的组成233.2.3
9、OpenSSL的优缺点253.3 TCP/IP协议分析251.1.1 TCP/IP协议概述251.1.2 网络层协议(IP协议)261.1.3 传输层协议(TCP和UDP)263.4 HTTP协议分析273.4.1 客户端请求273.4.2 服务器响应283.4.3 HTTP消息交换283.5 HTTPS协议简介293.6 SoCket编程303.6.1 套接字连接303.6.2 套接字属性313.7 本章小结31第四章基于OPenSSL的安全Web服务器的设计334.1 系统实现的功能334.2 程序的设计思路334.3 安全Web服务器程序的模块设计374.3.1 初始化模块374.3.2
10、 Web服务模块374.4 本章小结39第五章基于OPenSSL的安全Web服务器的实现405.1 开发环境的搭建405.1.1 编译OpenSSL405.1.2 编译生成OPenSSL动态链接库405.1.3 搭建CA生成证书文件415.2 详细设计425.2.1 初始化编程环境425.2.2 创建Socket455.2.3 创建监听线程465.2.4 创建客户端线程485.2.5 分析请求485.2.6 发送请求文件505.3 本章小结55第六章总结与展望566.1 全文总结566.2 研究展望56致谢58参考文献59第一章引言随着计算机网络技术的发展,21世纪已经成为一个数字化、网络化、
11、信息化的时代,而它的核心是网络。要实现信息化就要依靠完善的网络,因为网络可以实现跨时间、空间的数据传输,从而使信息得到共享。自上个世纪90年代以来,以因特网(Imemet)为代表的计算机网络得到了飞速的发展,已从最初的教育科研网逐步发展成商业网络,并已成为仅次于全球电话网的世界第二大网络。如今,因特网正在改变我们日常生活和工作的各个方面,加速了全球信息革命的进程。可以毫不夸张的说,因特网是人类自印刷术发明以来在通信方面最伟大的变革。1.1 课题的研究背景据中国互联网络信息中心(CNNle)于2012年1月16日在北京发布的第29次中国互联网络发展状况统计报告显示,截至2011年12月底,中国网
12、民数量突破5亿,达到5.13亿,全年新增网民5580万。互联网普及率较上年底提升4个百分点,达到38.3%o图17中国网民规模与普及率此外,2008-2010年,网络购物用户规模连续3年保持50%左右的高速增长。我国网络购物用户规模达到1.94亿人,网络购物使用率提升至37.8%。与2010年相比,网络购物用户增长3344万人,增长率为20.8%o随着我国电子商务的普及,网民的理财习惯正逐步向网上交易转移,针对网上银行、证券机构和第三方支付的攻击将剧增。一网购网民数里用户增长绝对里T-年熠长率渗透率图1-22007.12-2011.12我国网购用户数量、增长率及渗透率以上两组数据表明中国有着极
13、其庞大的网络用户群和接近两亿的网购用户。在这个惊人的数字背后,有一个我们不得不面对的问题,那就是网络信息安全。这个问题自从网络诞生以来就一直困扰着我们,只不过如今计算机网络的发展远超出了以前的预计,所以在网络社会日益发达的今天,个人信息安全问题似乎变得尤为重要。2011年12月21日,中国互联网遭遇了一次强大的“地震”,从国内最大的中文技术社区CSDN用户数据库被泄漏开始,几天时间内,国内多家大型网站用户数据库被陆续曝光,在互联网上广泛流传。更为严重的是,被泄漏的用户数据库大多数包含明文保存的用户密码,受影响用户数以亿计。据2011年中国互联网网络安全报告显示,截至2011年12月29日,CN
14、CERT通过公开渠道获得疑似泄露的数据库有26个,涉及帐号、密码2.78亿条。其中,具有与网站、论坛相关联信息的(例如,被声称属于某个网站的数据)数据库有12个,涉及数据1.36亿条;无法判断网站、论坛关联性的数据库有14个,涉及数据1.42亿条。这次“地震”过去仅仅一个月时间,2012年1月25日,新浪微博中再次爆出Putty、WinSCP等SSH管理软件中文版本(汉化版)存在后门程序导致用户信息泄露的事件情况。至1月30日、31日,网络安全企业、相关博客、论坛以及业内人士等纷纷披露并确认后门程序存在的情况,同时还披露了黑客通过后门程序窃取大量SSH管理软件用户信息系统相关的账号和口令信息、
15、存储在后门程序服务器的情况。随后,由于黑客的后门程序服务器存在SQL注入漏洞以及目录权限漏洞,导致其存储的窃取信息被更多的人获得。CSDN和天涯社区用户数据泄漏、部分SSH管理软件中文版本存在后门程序导致用户信息泄露等安全事件带来了广泛的社会影响,再一次对互联网企业和互联网用户敲响了安全警钟。互联网安全已经受到非常严峻的挑战。1.2 课题研究的目的和意义互联网技术的快速发展,给我们的计算机信息系统,特别是网络通讯带来了极其危险的安全隐患,面对日益严重的网络安全问题,计算机网络应用必须考虑和解决一个重要的课题,即如何在网络中共享信息的同时更加有效地保障我们的信息不被他人窃取、利用一一保护个人的信息安全。正如BrUCeSChneier所说,安全问题就如同一条链子,必须保证每一个环节的安全才能达到使整个链子具有安全性。所以在解决每一个安全问题之前,都应先分析其可能存在的安全缺陷,进而采取相应的安全措施。而以下的几个方面体现了信息的安全性:(1)机密性(ConfidentiaIity):通过加密等手段,保护信息免受主动的非法窃取、阅读等攻击;(2