kooyee ‘s blog

开源软件, 众人努力的结晶, 全人类的共同财富
posts - 103, comments - 55, trackbacks - 0, articles - 66
   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

SSL

Security,Network
     摘要: 公私钥:公钥可以唯一解密私钥加密过的数据,反之亦然。
SSL过程:需要两对公私钥(P1,V1),(P2,V2),假设通信双方是A和B,B是服务器,A要确认和它通信的是B:
A->B: hello
B->A: 用V2加密过的P1(即用户证书,A就用P2解密出P1)
A->B: ok
B->A: 用V1加密的一段信息
A->B: 用P1加密一个自动生成的K(用之前的P1解密成功这段信息则认为B是可信的了)
B->A: 用K加密的数据(之后两对密钥功能结束,由K来加解密数据)
这里,P2就是第3方的CA证书,由于非对称加密很慢,所以公私钥只是用来保证K的传送安全,之后通信是用K的对称加密算法来保证。

这里(P1,V1)就是certificate authority (CA)用来给客户签名用的公私钥。
(P2,V2)是客户自己的公私钥,提交给CA,CA所做的事情就是用(P1,V1)来给客户的(P2,V2)签名,简单吧?
  阅读全文

posted @ 2008-05-27 17:11 kooyee 阅读(839) | 评论 (0)  编辑 |

     摘要: SSL过程:需要两对公私钥(P1,V1),(P2,V2),假设通信双方是A和B,B是服务器,A要确认和它通信的是B:
  阅读全文

posted @ 2007-07-20 21:31 kooyee 阅读(144) | 评论 (0)  编辑 |

     摘要: JAVA使用keystore文件来存储所有KEY,keystore文件可以存放多个KEY,访问它需要密码。
下面我介绍下如何将用OpenSSL做自签名的证书一文中介绍的OpenSSL产生的KEY与JAVA的KEY转换后使用,从而达到JAVA与OpenSSL通信的目的  阅读全文

posted @ 2007-07-20 21:31 kooyee 阅读(970) | 评论 (0)  编辑 |