iOS 中对 HTTPS 证书链的验证.docxVIP

  • 18
  • 0
  • 约7千字
  • 约 13页
  • 2017-06-27 发布于天津
  • 举报
iOS 中对 HTTPS 证书链的验证.docx

iOS 中对 HTTPS 证书链的验证这篇文章是我一边学习证书验证一边记录的内容,稍微整理了下,共扯了三部分内容:HTTPS 简要原理;数字证书的内容、生成及验证;iOS 上对证书链的验证。HTTPS 概要HTTPS 是运行在 TLS/SSL 之上的 HTTP,与普通的 HTTP 相比,在数据传输的安全性上有很大的提升。要了解它安全性的巧妙之处,需要先简单地了解对称加密和非对称加密的区别:对称加密只有一个密钥,加密和解密都用这个密钥;非对称加密有公钥和私钥,私钥加密后的内容只有公钥才能解密,公钥加密的内容只有私钥才能解密。为了提高安全性,我们常用的做法是使用对称加密的手段加密数据。可是只使用对称加密的话,双方通信的开始总会以明文的方式传输密钥。那么从一开始这个密钥就泄露了,谈不上什么安全。所以 TLS/SSL 在握手的阶段,结合非对称加密的手段,保证只有通信双方才知道对称加密的密钥。大概的流程如下:TSL:SSL_handshake.png所以,HTTPS 实现传输安全的关键是:在 TLS/SSL 握手阶段保证仅有通信双方得到 Session Key!数字证书的内容X.509 应该是比较流行的 SSL 数字证书标准,包含(但不限于)以下的字段:字段值说明对象名称(Subject Name)用于识别该数字证书的信息共有名称(Common Name)对于客户证书,通常是相应的域名证书颁

文档评论(0)

1亿VIP精品文档

相关文档