首页 > 代码库 > 关于https和数字证书的一些必须知识

关于https和数字证书的一些必须知识

下面这篇文章叫做  HTTPS连接的前几毫秒发生了什么 ,是一篇译文,写得不错,十分有助于理解https。

http://blog.jobbole.com/48369/

 

下面的链接是百度文库的 数字证书的构成和原理 讲的不错!

http://wenku.baidu.com/link?url=lTD6w7RvwCjlTPMq0737TNdyoV-MVKWa5DIoi3qO3LhSWEw4L-zFiIGM7dMffQc-GIPKAENAcQC0im86x8vsQ8Shmju1q63nF5dlVJ0Zgaq

 

看完文章,我简单地说以下理解,一般的https,就是在服务器上准备一个CA认证的证书,表明自己的身份,并且附有自己的公匙。客户端利用此公匙加密接下来要使用的对称算法的密匙,这样确保对称算法的密匙能够安全到达服务器端。其实,后边的加密过程和CA认证与否无关,只要有个自己利用工具生成的证书就可以完成加密任务,CA认证的作用,就是为了保证网站的真实性。因为证书中包含一段由CA私匙加密过的数据,这段数据只有CA的公匙可以解密,而CA的公匙,名气超大,是提前安装在操作系统中的!CA公匙的安全和正确性,由操作系统维护,所以,如果系统能够正确解密,那么证书一定是CA发布的,也就确保了服务器的唯一身份!

在ios中和android中,如果访问的地址是https的,而且证书不是ca颁布的,那么会出现问题,无法访问,需要加入忽视证书错误的设置!比如使用afnetworking时manager.securityPolicy.allowInvalidCertificates = YES;

关于https和数字证书的一些必须知识