关闭

openssl实践

61人阅读 评论(0) 收藏 举报
分类:

最近工作中用到特定的加解密技术,所以想了解下通用加解密技术。


引用:

http://blog.csdn.net/shuanyancao/article/details/8985963

http://blog.gpjtag.com/?p=18


一、aes篇:

网上找了份代码,makfile中 -lssl,报错如下

aes.c:(.text.startup+0x24d):对‘RAND_pseudo_bytes’未定义的引用
aes.c:(.text.startup+0x25f):对‘RAND_pseudo_bytes’未定义的引用
aes.c:(.text.startup+0x362):对‘AES_set_encrypt_key’未定义的引用
aes.c:(.text.startup+0x388):对‘AES_cbc_encrypt’未定义的引用
aes.c:(.text.startup+0x468):对‘AES_set_decrypt_key’未定义的引用
aes.c:(.text.startup+0x486):对‘AES_cbc_encrypt’未定义的引用

nm -D libssl.so,显示库中没有定义,就觉得奇怪。网上都是链接 的ssl的库,我的ssl库为啥 没有这些函数的定义??

开始以为安装的libssl.so有问题。换源apt-get install 了几次还是这样。

最后没办法,下了份openssl的源码,自己编译库, nm 发现libssl.a中也没有如上函数的 定义,只有引用 。突然发现libcryto.a中有这些函数。原来还需要链接libcrypto库!!!网上的帖子基本都没有说明,都说链接ssl。。。。。。

makefile中   -lssl -lcrypto  -ldl ,编译通过。

==================================================================================

0
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1131次
    • 积分:78
    • 等级:
    • 排名:千里之外
    • 原创:6篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条