OPENSSL探究:开篇

近来事故频发,工程质量状况堪忧。看到这些事故我也很难受,偌大一个国家为什么总是为自己修建的工程那么差,为国外修建的质量那么高呢?

我没什么可说的,也没什么可做的,想想自己写的那些代码,想想自己部门的产品,心里也是一阵阵发虚,看来,除了批评和痛心之余,我也要多想想自己到底能不能合格地完成自己的事情,不论学习还是工作。

看看博客里的文章,很多只写了一个头,确实很丢人,比如像WINDOWS下DLL的学习,等等。但是,如果我不写出来,可能我自己都不会意识到原来自己真的没多少毅力。丢人也是一种警醒,让人意识到自己的不足,这就是制度最大的优点,适用于很多事情。

接触OPENSSL是因为接到单位里的一个项目,其中用到了OPENSSL的库来产生证书、签名验证之类的,之前维护过另外一个项目,里面用到了OPENSSL的交互机制,这些库都是在OPENSSL的基础上改的(不能完全照抄),因此算是有了学习OPENSSL的由头。最近也加入到了很多新闻组,看别人怎么提问,老外的讨论组确实水平很高,不像中国的论坛很水,初步打算再里面弄懂1000道题目,现在可是什么都不会,有些我连题目都看不懂,丢人啊,好了,废话少说,开始学习吧。

OPENSSL的学习是以江南所——赵春平的《OPNESSL编程》为学习资料,辅助里网上的一些资料,以及跟别人交流的成果,我现在也只是开了个头,里面肯定有很多不对的地方,文章看的人多当然高兴,可是我也知道自己到底什么臭水平,我真正希望的是大家多提意见,现在的社会真是需要分工协作,大家共同提升,不会有那种所谓的英雄,也不需要所谓的英雄了,正应了那句话“人人如龙”。

《OPENSSL编程》第一章提到了学习的基础,主要分为四个部分:对称算法、摘要算法、公钥算法、回调函数。这四个内容,其实前面三个都是那种可大可小的标题,倒是第四个算是可以真正意义上增强一下大家的C++知识。为什么说前面三个可大可小呢?记得刚入职的时候,因为 单位是做信息安全的,所以狠狠地补充了密码学、信息安全理论的相关知识,到现在我也是一边工作,一边学习,你时刻得补充这方面的知识,而且不是一下就能完全掌握的,实践地对了,对自己的帮助更大一些,因为毕竟我们也不是专门搞密码算法的,这得需要很高很高的数学理论水平,总之个人意见只要弄懂一下几个概念就行了。

对称算法以及四种加密模式: 具体怎么实现的就不要看了(以后你会弄懂的,现在可能会晕,实践的时候会加深理解的)

摘要算法: 其实就是HASH/MAC这两个概念,HASH不加密,MAC是对HASH加密之后的结果(这个定义不对,只能适应大部分的情况 但现在这么说更容易理解,后面继续会着描述这两者的区别的,这句话貌似以后要说很多遍,没办法,先入个门吧,大家请原谅,以后只要遇到这种情况,我都会用四个字来代替(以后详解)。

公钥算法: 其实就是非对称算法,主要是记住其中重要的一点,公私钥。发送方A用接收方B的公钥加密消息发送给B的时候,因为只有B能解开,因此这样的算法用来加密信息;如果发送方A用自己的私钥加密信息,发送给接收方B,因为大家的公钥都是公开的,此时所有的人都能解开A发的这条消息,此时的算法用来进行验证,即确定这条消息来源于A,而不是来自其他人。

最后的回调函数,其实在MFC的基本框架中都有很深的应用,有时间的话可以看看MFC的架构实现原理,能加深理解,OPENSSL大部分功能和特性都是用回调实现的,所以很重要,这真是那种贯穿始终的知识。

除了文档中说的那些,我认为还有一些内容需要注意:

OPENSSL的来源,特别是如何实现的,同样很重要,如果仅仅看那些.H文件的话,对提示感觉意义不大,仅仅是大家懂了一个新的协议而已,这个世界上这么多协议,而且每天都会有新的协议产生,哪能学得完呢,这个时候,如果我们选择一个突破点,感觉会对以后学习这种开源工程有很大的益处。当然也不要太过于细致,找几个典型研究一下就行了。纯属个人感觉,因为这是本人第一个真正用心研究的开源工程,而且本人数据结构基础很差,哈哈,丢人了。

后记:

1.因为老员工离职,所以接的老项目很多,所以不能保证时时更新,但很乐于与大家交流,不过事先说好,本人水平真的很菜很菜,您如果了解真相,额,会飙泪的。

2.《OPENSSL编程》可以在我的资源里面下载。

3.我的联系方式MSNxingfu0539@live.cn(我是五道风),欢迎大家批评指正。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值