两个开发源码加密库 openssl 和 cryptlib 的比较

目前开放源代码的加密库中,openssl 和 cryptlib 都是比较流行的,本文将根据自己的一点理解对这两个库作一些比较,希望能对大家有用。这两个库的构造思想和目的都不太一样,Openssl 主要是针对 SSL / TLS 协议的实现,SSL 的功能体现的非常完善,而算法库只是一个附带的必要部分,当然也是非常重要和完善的一个部分。Crypylib 则就是实现了加密算法以及相关的一些编码标准。

一、OpenSSL 的组成和特点

openssl 是一个非常优秀的 SSL / TLS 开放源码软件包,它包括 SSL 库加密算法库以及应用程序三大部分,并提供了测试程序和一些应用例子,实现了 SSL / TLS 协议和其相关的 PKI 标准。openssl 因为开发的比较早,所以采用了 C 语言作为编写的语言,但是,openssl 里面确可以找到很多面向对象的思想,如 BIO 的封装就是一个典型的例子。对于刚刚开始接触 openssl 的技术人员来说,可能会觉得有点困难,因为 openssl 的结构非常膨大,即便要阅读完其非常不完善的文档,工作量也是非常膨大的。建议开始接触 openssl 的时候,除了有一些基本的密码学和 PKI 的概念外,最好从使用它提供的一些应用程序开始。其实,openssl 的应用程序已经很完善,许多 CA 就是基于这些基础上做成的。

对于很多人来说,openssl 应用程序就足以完成他们需要的功能,openssl应用程序主要提供了下列的一些功能:

  1. 各种类型密钥以及密钥参数的生成和格式转换功能
  2. 使用各种加密算法进行数据加密的功能
  3. 证书请求、证书生成和签发以及证书其它相关标准的转换功能,实现了一个CA的功能
  4. 信息摘要算法以及其相关编码的实现
  5. SSL协议模拟客户端和服务器端的实现,可以用来测试SSL服务器和SSL客户端程序

二、Cryptlib 的组成和特点

Cryptlib 实现了各种公开密钥算法、对称加密算法、数字签名算法、信息摘要算法以及其相关的其它算法等等。它采用 C++语言编写而成,因为是面向对象语言,所以对于初学者来说更容易理清其结构。该库没有提供应用程序,只是作为库函数提供应用。因为基于 C++ 面向对象的思想,其算法的剥离相对于 openssl 来说可能更加容易。对于不需要涉及 SSL 协议的技术人员来说,使用该库函数应用是一个不错的选择。

三、应用现状以及建议

目前,很多 CA 以及其它 PKI 商业程序都是基于 openssl 开发的,基于 openssl 开发的好处周期非常短,而且功能强大。而 Cryptlib 因为仅仅局限于加密算法,所以其应用没有openssl广泛,但是对于只需要加密算法的情况来说,这是一个更好的选择。

建议如果你的应用涉及到 SSL 等 PKI 协议,应该使用 openssl,如果只是应用一些加密算法,则建议使用 Cryptlib。

转载:两个开发源码加密库openssl和cryptlib的比较_xk_qian的博客-CSDN博客_cryptlib

(SAW:Game Over!)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值