haitao:
昨晚想利用indy的源码了解一下SSL的握手过程。。。。
[阅读: 1079] 2006-11-03 01:41:36
由于需求不但要求在TCP里实现SSL,还会要求在无线通信里也采用SSL
而无线的实现是直接采购的,供应商肯定不会专门为你作一个含SSL的实现。。。。
现在TCP虽然自己实现,但是大整数的运算基本是没办法逾越了,只有利用主cpu的能力(它的RSA的运算能力很强),自行实现SSL:应用@主cpu----串口-----tcp模块@模块cpu-----tcp------服务器
(原来的SSL是socket和加密的混合,现在是 串口中转的tcp(运行在模块) 和 加密(运行在主cpu) )
这也是最初对于SSL需求的第一反应。。。。但是需要完全吃透ssl,自行实现。。。
完全在通信模块里作,是另一种方案,对于不要求在无线通信里也采用SSL,这个方案是更好的:因为tcp的模块本身就是uclinux,移植openssl应该是比较正规的做法。。。。但是要求在别人提供的无线通信里也采用SSL,则无能为力了。
晚上利用Delphi的indy控件,尝试实现https连接,通过一个斯洛文尼亚公司(美国网站出于法律限制,不能直接提供加密算法)的2个dll,在windows里实现了与美国客户服务器的连接。
想通过这个程序跟踪了解SSL的握手过程,可惜它是由那个dll的一个函数实现的,无法单步跟踪进去发现它的具体握手过程。
利用自己的RfcTool查了RFC文档目录,好像没有一个包含SSL的,只有rfc2660比较接近,但是也没看出是不是描述了SSL的握手过程。。。。