第19章 利用OpenSSL实现安全的Web Server程序.ppt

第19章 利用OpenSSL实现安全的Web Server程序.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第19章 利用OpenSSL实现安全的Web Server程序

“十一五”国家重点图书 计算机科学与技术学科前沿丛书 计算机科学与技术学科研究生系列教材(中文版) 计算机网络 高级软件编程技术 吴功宜 董大凡 王 珺 刘 乾 第19章 利用OpenSSL实现安全的Web Server程序 概述 由于HTTP采用明文传输,因此网络传输中的重要数据有被第三方截获的危险。HTTPS使用SSL在发送方将原始数据进行加密,然后在接收方进行解密,有利于Web数据的安全传输 提纲 编程训练目的 编程训练要求 相关知识介绍 程序设计分析 扩展与提高 编程训练目的 在基础类编程训练10的基础上,掌握基于OpenSSL协议的安全Web Server的软件结构的设计与编程实现 掌握利用OpenSSL生成认证证书的方法 熟悉客户端认证与利用IPSec实现安全通信的方法 提纲 编程训练目的 编程训练要求 相关知识介绍 程序设计分析 扩展与提高 编程训练要求 编写程序,利用OpenSSL实现安全的Web Server,具体要求如下 : Server启动时可指定端口,缺省为443 可指定Web Server根目录的路径,比如C:\Server Server应能够并发处理多个请求,要求至少能支持Get命令。可以增强Web Server的功能,如支持Head、Post以及Delete命令等 书写必要的客户端测试程序用于发送HTTPS请求并显示返回结果,也可使用一般的Web浏览器测试 程序运行的参考界面 提纲 编程训练目的 编程训练要求 相关知识介绍 程序设计分析 扩展与提高 SSL协议 SSL协议栈 SSL握手协议 工作过程 OpenSSL库 OpenSSL库的安装 安装VC++ 6.0 从官方网站/ActivePerl下载ActivePerl的Win32版本并安装 从官方网站/下载OpenSSL源代码并安装 编程环境设置 在VC的Include files中增加[OpenSSL]\inc32目录 在Libray files中增加[openssl-0.9.8]\out32dll目录 其中,[OpenSSL]表示OpenSSL的安装目录 OpenSSL的命令行接口 OpenSSL为用户提供的命令行接口功能非常丰富,如创建和管理证书、生成消息摘要、加密和解密文件等 其命令行格式如下: openssl command [ command_opts ] [ command_args ] command可以为x509、md5、sha1、des、idea等 OpenSSL的编程接口 初始化OpenSSL库 建立上下文环境 建立连接 使用连接完成应用数据交换 关闭连接并释放相关资源 提纲 编程训练目的 编程训练要求 相关知识介绍 程序设计分析 扩展与提高 客户端与服务器的握手过程 程序主要部分的实现 初始化OpenSSL库 建立上下文环境 程序主要部分的实现(续) 创建一个流式套接字在某个端口侦听 创建ListenThread线程,接受客户端连接请求 创建ClientThread线程处理客户请求 关闭连接并释放相关资源 Server端认证证书的生成 建立CA中心 生成CA中心的私钥 openssl req -newkey rsa:1024 -sha1 -keyout rootkey.pem -out rootreq.pem 生成CA中心的自签证书 openssl x509 -req -in rootreq.pem -sha1 -extensions v3_ca -days 365 -signkey rootkey.pem -out rootcert.pem 生成Web服务器的私钥和认证请求 openssl req -newkey rsa:1024 -sha1 -keyout serverkey.pem -out serverreq.pem 为Web服务器签发证书 openssl x509 -req -in serverreq.pem -sha1 -extensions usr_cert -CA rootcert.pem -CAkey rootkey.pem -CAcreateserial -out server.pem server.pem即为CA中心为Web服务器签发的证书 提纲 编程训练目的 编程训练要求 相关知识介绍 程序设计分析 扩展与提高 扩展与提高 扩展与提高 扩展与提高 基于IPSec的安全通信 2. IPSec工作模式 *《计算机网络高级软件编程技术》 SSL_library_init(); //

文档评论(0)

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

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

1亿VIP精品文档

相关文档