PKI与信息安全问答

大家好,本人从事安全相关软件研发设计近10年,其间受到过不少能人前辈的指点。工作中我也遇到过不少问题,也有一定的心得体会,为此,今天在此开设此专题,为有安全方面问题的朋友提供问题解答。


Q1、老师您好,新手问一个engine机制的问题。之前我在网络上找到过两个engine机制的示例程序,其内容都是定义engine,然后在main函数中加载engine并用该engine对指定的数据进行加密解密,而与SSL通信无关。现在我想做的是在客户端、服务器进行SSL通信的程序(大概就是像http://wenku.baidu.com/view/db679035a32d7375a417804c.html的这种吧)中加载engine并且在通信过程中使用engine中的加解密算法。现在我对SSL通信程序只添加了ENGINE_load_XXX函数,即加载engine的函数。之后用SSL_get_cipher函数显示了一下所用算法的名称,发现显示结果和我不加载engine时的一样。这应该就说明了我还没有实现用engine替换OpenSSL内部算法的目的吧?

后来我读了一篇文献,里面写:“首先要加载该Engine。(比如ENGINE_load_xxxx),然后选择要使用的算法或者使用支持的所有加密算法(有相关函数)。这样你的应用程序在调用加解密算法时,它就会指向加载的动态库里的加解密算法,而不是原先的SSL的libeay32.dll库里的加解密算法”。这是不是就是说我就只差“选择要使用的算法或者使用支持的所有加密算法”这一步了?如果是的话,具体的我该怎么做?这里的“相关函数”指的是具体什么函数?
万分感谢!!


A1:将ENGINE的算法加载到系统中和SSL协商时选用的算法是两回事儿,SSL协商时,会按先后顺序,选用任一种,双方都支持的算法作为通信,这种情况下,有可能就始终选不到你加入的算法,这是正常的。你如果一定要用你的算法,那么,你必须保证被选用的算法套件包含你的算法。你该去看一下SSL协商的机制。问题,应该不是在engine 至少现在可以说,还没有到那么一步。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值