OPENSSL_ENGINE机制 OPENSSL_ENGINE机制是OPENSSL项目中的一个重要组件,其目的是提供一个通用的加密接口,使得OPENSSL能够与第三方提供的软件加密库或者硬件加密设备进行加密。 Engine机制的出现是在OPENSSL的0.9.6版本,开始的时候是将普通版本跟支持Engine的版本分开的,到了OPENSSL的0.9.7版本,Engine机制集成到了OPENSSL的内核中,成为了OPENSSL不可缺少的一部分。 Engine机制的功能是使OPENSSL能够透明地使用第三方提供的软件加密库或者硬件加密设备进行加密。OpenSSL的Engine机制成功地达到了这个目的,使得OPENSSL已经不仅仅是一个加密库,而是一个通用的加密接口,能够与绝大部分加密库或者加密设备协调工作。 OPENSSL的Engine机制支持的内嵌第三方加密设备有8种,包括CryptoSwift、nCipher、Atalla、Nuron、UBSEC、Aep、SureWare以及IBM 4758 CCA的硬件加密设备。现在还出现了支持PKCS#11接口的Engine接口,支持微软CryptoAPI的接口也有人进行开发。 OPENSSL的Engine机制的实现包括了动态库加载的代码和加密函数指针管理的一系列接口。如果要使用Engine(假设你已经加载了该Engine),那么首先要加载该Engine(比如ENGINE_load_XXXX),然后选择要使用的算法或者使用支持的所有加密算法(有相关函数)。这样你的应用程序在调用加解密算法时,它就会指向你加载的动态库里的加解密算法,而不是原先的OPENSSL的库里的加解密算法。 Engine机制的实现可以在openssl/crypto/engine/目录下找到,对于具体的实现可以通过分析 Engine_load_XXXX 函数来了解。例如,ENGINE_load_rtl8651b 函数是一个Engine的加载过程,其实现了Engine的加载、名称设置、密码算法设置等功能。 OPENSSL的Engine机制为OPENSSL提供了一个通用的加密接口,使得OPENSSL能够与第三方提供的软件加密库或者硬件加密设备进行加密,并且提供了一个灵活的加密解决方案。
- android王珊珊2015-01-09Openssl的engine机制介绍的很详细
- 给我一个杠杆2020-05-23垃圾东西,网上都有的,他复制下还要积分?别被骗了,都别下,跟其他博客一样的东西
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助