使用 openssl api 进行安全编程

使用 openssl api 进行安全编程

ID:15083175

大小:157.00 KB

页数:9页

时间:2018-08-01

使用 openssl api 进行安全编程_第1页
使用 openssl api 进行安全编程_第2页
使用 openssl api 进行安全编程_第3页
使用 openssl api 进行安全编程_第4页
使用 openssl api 进行安全编程_第5页
资源描述:

《使用 openssl api 进行安全编程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、使用OpenSSLAPI进行安全编程创建基本的安全连接和非安全连接学习如何使用OpenSSL——用于安全通信的最著名的开放库——的API有些强人所难,因为其文档并不完全。您可以通过本文中的提示补充这方面的知识,并驾驭该API。在建立基本的连接之后,就可以查看如何使用OpenSSL的BIO库来建立安全连接和非安全连接。与此同时,您还会学到一些关于错误检测的知识。2 评论:KennethBallard (kenneth.ballard@ptk.org),自由程序员2004年8月09日·内容在IBMBluemix云平台上开发并部署您的下一个应用。现在就开始免费试用OpenSSLAPI的文档

2、有些含糊不清。因为还没有多少关于OpenSSL使用的教程,所以对初学者来说,在应用程序中使用它可能会有一些困难。那么怎样才能使用OpenSSL实现一个基本的安全连接呢?本教程将帮助您解决这个问题。学习如何实现OpenSSL的困难部分在于其文档的不完全。不完全的API文档通常会妨碍开发人员使用该API,而这通常意味着它注定要失败。但OpenSSL仍然很活跃,而且正逐渐变得强大。这是为什么?OpenSSL是用于安全通信的最著名的开放库。在google中搜索“SSLlibrary”得到的返回结果中,列表最上方就是OpenSSL。它诞生于1998年,源自EricYoung和TimHudson

3、开发的SSLeay库。其他SSL工具包包括遵循GNUGeneralPublicLicense发行的GNUTLS,以及MozillaNetworkSecurityServices(NSS)(请参阅本文后面的 参考资料 ,以获得其他信息)。那么,是什么使得OpenSSL比GNUTLS、MozillaNSS或其他所有的库都优越呢?许可是一方面因素(请参阅 参考资料)。此外,GNSTLS(迄今为止)只支持TLSv1.0和SSLv3.0协议,仅此而已。MozillaNSS的发行既遵循MozillaPublicLicense又遵循GNUGPL,它允许开发人员进行选择。不过,MozillaNSS比

4、OpenSSL大,并且需要其他外部库来对库进行编译,而OpenSSL是完全自包含的。与OpenSSL相同,大部分NSSAPI也没有文档资料。MozillaNSS获得了PKCS#11支持,该支持可以用于诸如智能卡这样的加密标志。OpenSSL就不具备这一支持。先决条件要充分理解并利用本文,您应该:·精通C编程。·熟悉Internet通信和支持Internet的应用程序的编写。并不绝对要求您熟悉SSL,因为稍后将给出对SLL的简短说明;不过,如果您希望得到详细论述SSL的文章的链接,请参阅 参考资料部分。拥有密码学方面的知识固然好,但这并不是必需的。什么是SSL?SSL是一个缩写,代表的

5、是SecureSocketsLayer。它是支持在Internet上进行安全通信的标准,并且将数据密码术集成到了协议之中。数据在离开您的计算机之前就已经被加密,然后只有到达它预定的目标后才被解密。证书和密码学算法支持了这一切的运转,使用OpenSSL,您将有机会切身体会它们。理论上,如果加密的数据在到达目标之前被截取或窃听,那些数据是不可能被破解的。不过,由于计算机的变化一年比一年快,而且密码翻译方法有了新的发展,因此,SSL中使用的加密协议被破解的可能性也在增大。可以将SSL和安全连接用于Internet上任何类型的协议,不管是HTTP、POP3,还是FTP。还可以用SSL来保护T

6、elnet会话。虽然可以用SSL保护任何连接,但是不必对每一类连接都使用SSL。如果连接传输敏感信息,则应使用SSL。回页首什么是OpenSSL?OpenSSL不仅仅是SSL。它可以实现消息摘要、文件的加密和解密、数字证书、数字签名和随机数字。关于OpenSSL库的内容非常多,远不是一篇文章可以容纳的。OpenSSL不只是API,它还是一个命令行工具。命令行工具可以完成与API同样的工作,而且更进一步,可以测试SSL服务器和客户机。它还让开发人员对OpenSSL的能力有一个认识。要获得关于如何使用OpenSSL命令行工具的资料,请参阅 参考资料部分。回页首您需要什么首先需要的是最新版

7、本的OpenSSL。查阅参考资料部分,以确定从哪里可以获得最新的可以自己编译的源代码,或者最新版本的二进制文件(如果您不希望花费时间来编译的话)。不过,为了安全起见,我建议您下载最新的源代码并自己编译它。二进制版本通常是由第三方而不是由OpenSSL的开发人员来编译和发行的。一些Linux的发行版本附带了OpenSSL的二进制版本,对于学习如何使用OpenSSL库来说,这足够了;不过,如果您打算去做一些实际的事情,那么一定要得到最新的版本,并保持该版本一直

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。