OpenSSL与CryptoAPI交互AES加密解密

2014-11-24 10:41:30 ? 作者: ? 浏览: 0

继上次只有CryptoAPI的加密后,这次要实现openssl的了。


先前有说openssl移植到android的过程,这里就不再提android如何调用openssl了,而那一篇第9条提到的openssl与cryptoAPI兼容的两种方式感觉实现都不太好用,这里再次提出一种AES加密的实现方式。


写这边文章的最主要的原因,用过CryptoAPI的都知道,很多东西都封装了,如果要与其他加密组件交互,得用其他组件来实现CryptoAPI的思路。


环境:windows visual studio 2010,openssl windows(x86)动态库。


在CryptoAPI中进行AES加密解密,有一种实现方式是调用CryptDeriveKey通过提供的字节数组的hash值获取key。


先来看下CryptoAPI实现AES,来个简单点的版本。



openssl要以同样的方式做一次这个步骤,首先是MD5摘要,相对比较简单



主要看remarks里面的实现步骤:


非常简单的英文,不做翻译了...



直接上openssl代码实现



下面是CrytpoAPI的解密:



再来最后一个,openssl的解密


测试下:


-->

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: