学习HTTPS协议的一些资料

Posted 虞大胆的叽叽喳喳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习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)。


3:blog.cloudflare.com 


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 协议的知识。 


 


以上是关于学习HTTPS协议的一些资料的主要内容,如果未能解决你的问题,请参考以下文章

Https 协议超强讲解!带你降服面试官

http协议与https的不同之处

协议形式化分析资料整理

使用 Delta Sharing 协议进行数据共享

Django学习参考资料

网络安全学习资料汇总