内容摘要:enSSL是一个强大的安全套接字层密码库,Apache使用它加密HTTPS,OpenSSH使用它加密SSH,但是,你不应该只将其作为一个库来使用,它还是一个多用途的、跨平台的密码工具。
OpenSSL包含一个命令行工具用来完成OpenSSL库中的所有功能,更好的是,它可能已经安装到你的系统中了。
OpenSSL是一个强大的安全套接字层密码库,Apache使用它加密HTTPS,OpenSSH使用它加密SSH,但是,你不应该只将其作为一个库来使用,它还是一个多用途的、跨平台的密码工具。
这里简单说一下OpenSSL的背景,在OpenSSL之前,叫做ssleay,它是一个由Eric A.Young编写的SSL工具,它不断改进最终变成了OpenSSL,与NCSA的HTTPd变成Apache服务器的过程非常类似,今天,OpenSSL支持多种加密算法和协议。
OpenSSL有许多的特征,而且还有SSL客户端和服务端特征,OpenSSL还有:
◆美国联邦政府NIST FIPS 140-2一级评估确认
◆TLS,下一代SSL协议
◆X.509密钥和证书的生成
◆X.509证书权力
◆S/MIME加密
◆文件加密和粉碎
◆打乱UNIX密码
◆9个不同的商业密码硬件设备
◆密码性能测试
◆36个命令
◆6个消息摘要算法
◆9个密码算法
◆多个加密协议
尽管OpenSSL很复杂,但是大量的复杂性可以被避免的,本文剩下的部分将集中在易于使用的特征上,在shell代码中仅仅需要几行就可以了。
本文使用与我早期编写的GnuPG Hacks文章一致的小结标题,以便于比较OpenSSL和GnuPG。
入门
首先,确认一下OpenSSL已经安装并处于你的路径之下,许多Linux发行版,甚至一下小的发行版,都包括了OpenSSL,通常,OpenSSL处于/usr/bin/下。
在所有的例子中,shell提示符都是$。
第一步,输入:
$ openssl version
注意这里在version选项前是没有破折号的。
你应该看到类似下面这样的输出:
来源:51CTO 作者:黄永兵 责编:豆豆技术应用
- Django是否已经达到顶峰?
- GitHub:基于Rails的Git库托管
- Java 7的并行支持:Fork/Join
- Daemon Tools自甘堕落 强行驻留用户电脑
- 微软官方密码强度测试工具帮你测试密码是否强悍
- 专家详解Netfilter/iptables FAQ
- 史上最牛的三大病毒结局大盘点
- 黑客眼中的OpenSSL:强大的密码工具
- CISSP的成长之路(二十三):逻辑访问控制方案
- CISSP的成长之路(二十二):用户的生物特征