易语言资源网 - 做最全的易语言资源下载社区
精易论坛授权登录

OPENSSL密码计算/证书操作/SSL通信   [复制链接]

    2018-11-27 09:50:50
    2017开源大赛(第二届)
    易语言资源网
    3952 次浏览
    来源链接

大家使用openssl的目的无非就是这三个方面了,1、密码学计算,什么RSA加密解密 ,RSA签名,AES,DES啥啥啥的,

2、生成证书,在写这个源码之前,不仅仅是易语言届,包括绝大多数需要自签名证书的,都是调用openssl的命令行,全局操作,想要调用API动态申请证书,签署证书的,源码在百度上基本找不到,要翻出去找谷歌,所以我认为至少在易语言范围内,此源码属于首发

3、SSL通讯,这类源码在论坛上不少了,2010年之前东灿大神就发过,他的源码也是我开始学习openssl第一部教程,不过可惜的是论坛上几乎所有openssl通讯源码都或多或少有点问题,基本上没法用于生产环境,所以这次改写了一下,也是翻了不少资料

本套源码特点:

1、几乎是一网打尽所有需要试用openssl的场合,个人认为很有收藏价值,以后基本不需要再去找跟openssl有关的东西了

2、本源码是面向生产环境的,几乎每个子程序,每种应用都考虑到了效率和稳定性,以及内存泄露等诸多问题,拿去之后基本上不需要再修改什么了,要做什么项目直接拿来用就是了

3、着重谈一下SSL通讯,其实在半年前已经重写好了,并且投入了生产环境,目前我3个HTTPS服务器都是用的这套源码,创新之处在于,

? ?? ? A:结合cdecl 壳,让openssl可以调用易语言子程序,进行上锁解锁操作,没有锁的openssl是根本无法想象的,加锁以后,多线程随便跑

? ?? ? B:SSL_accept 和 SSL_connect 的异步调用,这个东西研究的人很少,网上的源码基本都是同步调用,同步调用的弊端是一旦连接丢失了,就会一直卡在那,而异步调用不会存在这个问题

? ?? ? C:完整的证书验证机制,回调验证,可做双向验证通讯

4、关于证书操作部分,随着计算机计算能力的发展,以及苹果宣布逐渐淘汰不是用https的应用程序,安全证书的需求猛增,去颁发机构买一个证书固然省事,但是随便一个证书都是几千块钱一年,并且还不能向下签发给用户,目前像阿里,TX那样的大牛也都开始在用自签名证书,然后向他们的用户发放个人证书,这是一个趋势,作为易语言编程者来说,给自己的用户的软件签发一个个人证书,倒也是一个不错的防破J防抓包方法,目前市面上基本上所有的抓包软件都是只能抓单向验证的HTTP明文,如果你在软件里强行验证服务器证书,并且服务器强行验证客户证书,那抓包软件再牛也没辙,破J起来难度就更大了,本源码证书操作都是用API操作,支持多线程,可以做简易的证书签发服务器

5、密码学计算部分相比我以前发的那个源码新增了一些东西,修改了一些不合理的机制,使用起来更舒服了,具体可以自己看源码





点我下载 (已有 506 次下载)

引用模块





引用支持库


源码文件名 支持库文件名 支持库标识
openssl集合.e 系统核心支持库 5.3 d09f2340818511d396f6aaf844c7e325
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0
多线程支持库 2.0 5F99C1642A2F4e03850721B4F5D7C3F8


[错误报告]   上一篇:客户管理系统     下一篇:word文档多文档自动汇总统计源码...