学习HTTPS协议的一些资料

最近大半年一直在学习 HTTPS 协议的知识,期间也阅读了很多不错的书籍和网站,这篇文章汇众了一些学习资料,希望对大家有所帮助。

注意:

- 这篇文章主要包括书籍和网站,不涉及具体的文章。

- 推荐的书籍和网站都是我看过的。

- 学习 HTTPS 协议的途径:首先学习密码学,然后学习 TLS/SSL 协议,最后才学习 HTTPS 协议。

- 大家可以推荐一些学习资料给我。

1:维基百科

如果想概括性的理解密码学和 TLS/SSL 协议,那么维基百科是最好的资料,它对于知识的提炼和总结非常的棒,大家在学习某个知识点之前,可以先查阅维基百科,获取大概的印象,并且其引用的文章也非常的好,可以做进一步的学习。

对于密码学和 TLS/SSL 协议的初学者,可以查看维基百科的索引页[Outline of cryptography](https://en.wikipedia.org/wiki/Outline_of_cryptography)。

2:OpenSSL

OpenSSL 是目前最流行的密码库和 TLS/SSL 协议实现,它的官方 Wiki 描述的知识点并不是很好理解,更像是 OpenSSL 开发者的手册,但不可否认,它仍然是非常好的 TLS/SSL 协议学习资料。如果想整体了解 TLS/SSL 协议,可以查看[SSL and TLS Protocols](https://wiki.openssl.org/index.php/SSL_and_TLS_Protocols)。

Cloudflare 是国外一个非常著名的 CDN 厂商,在 HTTPS 协议方面的研究非常有造诣,其官方博客的每篇文章我都会仔细阅读。推荐它的主要原因有两点,首先它经常描述 HTTPS 协议的一些新的知识点和应用,其次博文的质量非常高,既有科普性又有实践性,即使一个不太了解 HTTPS 协议的人看了它的文章后,也会有收获,我第一次看到[Keyless SSL: The Nitty Gritty Technical Details](https://blog.cloudflare.com/keyless-ssl-the-nitty-gritty-technical-details/)这篇文章,兴奋了好几天,讲解的太通透了。

4:ssllabs.com

如果你想长期关注 HTTPS 协议的使用情况,了解部署的最佳实践,那么必须推荐 ssllabs.com。它提供了几个非常不错的工具,协助开发者更好的部署 HTTPS 网站。

5:RFC

在学习 HTTPS 协议的时候,如果在理解的时候产生模棱两可的感觉,那么 RFC 文档是最好的决断资料,RFC 文档描述了很多密码学标准,也包括 TLS/SSL 协议标准,如果想系统、全面、正确的理解 TLS/SSL 协议,那么唯一的途径就是研究 RFC 文档。比如我非常喜欢[Recommendations for Secure Use of TLS](https://tools.ietf.org/html/rfc7525)这个文档。

6:《Bulletproof SSL and TLS Understanding and Deploying SSL_TLS and PKI to Secure Servers and Web Applications(2014)》

这本书在国内已经翻译了,书名是《HTTPS权威指南》,对于初学者来说,不推荐这本书,这本书很大篇幅讲解了 HTTPS 协议安全问题,对于 HTTPS 协议原理、证书原理讲解的比较少,都是一笔带过,所以说不适合初学者,不过整体上这本书的质量非常好,我阅读了好几遍,每读一遍就有新的收获。

推荐本书的另外一个原因就是讲解了 OpenSSL 命令行操作,非常具有实践性,如果读者不想阅读这本书,而只想了解 OpenSSL 命令行操作,可以阅读《openssl-cookbook》手册,该手册的内容来自于本书。

7:《Network Security with OpenSSL Ebook(O'Reilly)》

读者如果想学习密码学知识,那么必须推荐本书,本书内容并不多,使用很少的时间就能阅读完,描述的非常简单且不晦涩,本书以 OpenSSL 命令行的角度去理解密码学的各个算法,需要注意的是,本书没有涉及很多 TLS/SSL 协议的知识点。

8:《Implementing SSL_TLS Using Cryptography and PKI》

如果想学习 TLS/SSL 协议,那么这本书是最好的资料,以源码的角度讲解了 TLS/SSL 协议实现,整体结构很紧凑,通俗易懂,唯一的问题就是本书编写的时间是 2009 年,知识点相对来说有些过时,考虑到 TLS/SSL 协议并没有本质上的修改,强烈建议学习本书。

9:《图解密码技术》

对于想了解密码学知识的人来说,这本书估计大部分看过,我也不例外,它把每个密码学算法的关键点都讲了出来,目前本书已经出了第三版,我没有看过,从目录上看,主要增加了 ECC 知识。

10:《Crypto101》

这是一本在线电子书,本书还没有完整编写完,相比《图解密码技术》来说,更专业,更系统,当然理解的时候也更困难,对于我来说,本书是学习密码学知识的首选。

11:commandlinefanatic.com

这个博客的作者就是《Implementing SSL_TLS Using Cryptography and PKI》的作者,虽然博客更新的内容并不多,但是每一篇文章都是精华,建议大家关注下。

12:https://www.cryptologie.net/links/index

这个博客也建议大家重点关注,作者每天都在搜集最新的 HTTPS 协议和密码学资料,如果想长期关注密码学,那么该博客索引的内容是必读的。

13:An Overview of Cryptography

[An Overview of Cryptography](https://www.garykessler.net/library/crypto.html)的内容我没有看过,从结构上看,这是系统学习安全知识非常好的一个资料,不限于 TLS/SSL 协议。

14:https://vincent.bernat.im/en/blog,https://www.imperialviolet.org/

这两个博客也是我关注比较多的,能够学到很多密码学和 HTTPS 协议的知识。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180320G1IEST00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券