OPENSSL服务 - 安全信息传输(3)

发表于:2007-05-25来源:作者:点击数: 标签:
在 Linux 下,比较流行支持SSL认证的是OpenSSL 服务器 。OpenSSL项目是一个合作的项目, 开发 一个健壮的、商业等级的、完整的开放源代码的工具包,用强大的加密算法来实现 安全 的Socket层(Secure Sockets Layer,SSL v2/v3)和传输层的安全性(Transport
Linux 下,比较流行支持SSL认证的是OpenSSL服务器。OpenSSL项目是一个合作的项目,开发一个健壮的、商业等级的、完整的开放源代码的工具包,用强大的加密算法来实现安全的Socket层(Secure Sockets Layer,SSL v2/v3)和传输层的安全性(Transport Layer Security,TLS v1)。这个项目是由全世界的志愿者管理和开发OpenSSL工具包和相关文档。

  如何在Linux下配置OpenSSL服务器,首先从OpenSSL的主页(http://www.openssl.org/)上下载openssl-version.tar.gz软件包来编译安装,与Apache服务器配合可以建立支持SSL的Web服务器,并可以使用自我签订的证书做认证,关于如何编译、安装OpenSSL服务器,可以参考一下OpenSSL HOWTO文档。

二. SSL 程序设计初步介绍

  SSL 通讯模型为标准的C/S 结构,除了在 TCP 层之上进行传输之外,与一般的通讯没有什么明显的区别。在这里,我们主要介绍如何使用OpenSSL进行安全通讯的程序设计。关于OpenSSL 的一些详细的信息请参考OpenSSL的官方主页 http://www.openssl.org。

  在使用OpenSSL前,必须先对OpenSSL 进行初始化,以下的三个函数任选其一:

  SSL_library_init(void);
  OpenSSL_add_ssl_algorithms();
  SSLeay_add_ssl_algorithms();


  事实上 后面的两个函数只是第一个函数的宏。

  如果要使用OpenSSL的出错信息,使用SSL_load_error_strings (void)进行错误信息的初始化。以后可以使用void ERR_print_errors_fp(FILE *fp) 打印SSL的错误信息。

  一次SSL连接会话一般要先申请一个SSL 环境,基本的过程是:

原文转自:http://www.ltesting.net