一、写在前面

  SSL和IPsec是现在VPN技术中最为常见的,在云计算的应用环境中,SSL更受企业青睐,至于原因的话简单的说就是SSL更为简洁,不需要像IPsec那样需要额外安装客户端,这会带来软件维护升级的问题,现在多数的云计算的服务仅需要一台浏览器就可以访问,而几乎所有的浏览器都默认实现了SSL协议,也就意味着若是使用SSL协议客户几乎不用做任何改动,还像以前一样使用浏览器即可。还有些其他原因,在此不赘述,有想了解的可以自行百度。今天要讲的主要是SSL协议可以实现的身份认证这一功能。浏览器如何在通信开始前确认,要通信的对方就是想要通信的对方,而不是冒名顶替,书上说只需服务器将证书发送给浏览器即可,那么这一步骤具体是怎么样的?为什么这样就可以完成身份认证?不会担心其他网站的直接复制证书进行顶替?或者自己制作证书?

二、SSL身份认证

  证书的颁发是由可信的第三方(常说的CA)进行的,若你有个域名想要为它申请证书(指通用的证书,不包括自己制作的情形),可以去网上提供证书服务的网站,根据你想要的证书级别交钱,接受审核(不同级别的证书需要经过的审核程度不同),获得证书了,注意证书内容主要包括,经摘要算法计算过得到的包含网站信息等内容摘要、摘要算法、公钥(服务器端)等,在证书中呈现的是对上述证书内容的使用CA私钥签名的内容。当客户端收到证书后,可以通过客户端浏览器内置的CA根证书,获得对应CA机构的公钥,然后使用公钥解开私钥,并根据此时通信对方的信息,使用摘要算法重新计算内容摘要,与使用公钥获得的内容摘要进行对比,若一致则可以确认通信对方的身份,否则认为对方是不可信的生成告警信息。

  为什么不会但心其他网站直接复制证书?其他网站是可以复制但是在计算摘要的时候会出现不同,即证书认证没通过。恶意网站是否可以自己制作证书?可以制作证书,但是浏览器中不存在与恶意网站自己制作证书相对应的根证书,也就拿不到解开证书的公钥,证书认证依旧没有通过,依旧会生成告警信息。

  但是如果想测试这一整个身份认证过程,你是可以自己生成CA根证书然后添加到浏览器中,然后再制作服务器端的证书,这样是可以通过身份认证的,但仅限添加了你自己制作了CA根证书的浏览器。

最新文章

  1. Your app declares support for audio in the UIBackgroundModes key in your Info.plist 错误
  2. yii2缓存的介绍和使用
  3. 每天一个linux命令(19):find 命令概览
  4. Make My GitHub Pages
  5. motto7
  6. nrf51822-主从通信分析1
  7. core java 1~4(HelloWorld & 标识符|关键字|数据类型 & 表达式|流程控制 & 数组)
  8. C#操作SQL Server通用类
  9. 在 Ubuntu 16.04 中安装谷歌 Chrome 浏览器
  10. Tomcat远程调试和加入JMS(转)
  11. iOS UIScrollview代理方法
  12. Linux高效数据统计命令wc
  13. jetbrains全系列可用例:IDEA、WebStorm、phpstorm、clion等激活到2099
  14. js數字
  15. webstorm取消扫描某文件夹,加快打开速度,例如忽略node_modules目录
  16. Moment-JavaScript 日期处理类库
  17. Linux下如何查看tomcat是否启动/系统日志等
  18. WebDriver API 实例详解(四)
  19. 【12c OCP】最新CUUG OCP-071考试题库(52题)
  20. Spark Client和Cluster两种运行模式的工作流程

热门文章

  1. Django:RestFramework之-------渲染器
  2. webpack+vue-cil跨域配置接口地址代理
  3. 填坑——audio不能正常播放,控制台报错 Uncaught (in promise) DOMException
  4. 常用的User-Agent
  5. SAP Hybris Discount group,折扣组,折扣记录,用户组几组概念的关联
  6. Linux理论小结
  7. Docker02-重要概念
  8. 【Spring Boot】Spring Boot之自定义拦截器
  9. Pthon魔术方法(Magic Methods)-可视化
  10. saltstack安装使用