HTTPS原理——SSL 与数字证书
《SSL 与数字证书》目录
- 第一章 为什么网络是不安全的
- 第二章 信息安全的基本概念
- 第一节 安全的定义
- 第二节 认证与授权
- 第三章 加密与算法
- 第一节 散列(Hash)
- 第二节 对称加密(Symmetric Cryptography)
- 第三节 非对称加密(Asymmetric Cryptography)
- 第四节 数字签名(Digital Signature)
- 第四章 数字证书
- 第一节 数字证书的构成
- 第二节 如何验证数字证书?
- 第三节 数字证书的级联(Certificate Chain)
- 第五章 SSL的基本原理
- 结束语
第一章 为什么网络是不安全的
计算机世界是基于网络的,根据目前网络的结构和实现,数据包在世界各地的路由器之间游荡,任何人都可以获得你的发送的数据包,从而获得你发送的数据。局域网内就更方便了,只要你开个Sniffer在那里监听,别人QQ聊天的信息一览无余啊~为什呢?我来简单解释一下计算机网络是如何传输数据的。
现实生活中,如果你请快递帮你寄东西,一般情况下,快递会把东西送到目的地,而不是其他地方。路由器就像是快递,在Internet上负责送数据。但和真实的快递不同的是,路由器会把你要发送的信息广播给离目的地更近的路由器,可能是一个路由器,也可能是多个路由器(别问我为啥,我不想深入了,有兴趣自己查资料)。这样你的信息就变成多份的了。复制虚拟的信息不值钱那~现实生活中的快递可不能复制你要寄的东西。一般情况下,只有一份数据会被目的计算机接收到,其他的拷贝在网络上游荡一段时间以后就被抛弃了。但是,这给黑客们有了很多可乘之机。他们在网络上监听很多垃圾信息,过滤掉没用的,留下他们感兴趣的,然后就可以偷窥别人隐私了。
正是因为网络有这样的问题,人们就发明了很多加密通信的手段,来保证自己的通信的内容不会被泄露。SSL和数字证书就是用来干这个的。
第二章 信息安全的基本概念
在解释SSL和数字证书之前,我觉得有必要解释一下几个有关信息安全的基本概念。
第一节 安全的定义
如果说两个人之间的通信是安全的,那么如何定义这个安全呢?
-
保密性(Confidentiality)
保密性应该很容易理解,就是只有你自己和你允许的人能看到相关的信息。这和物理文件的保密性是一样的。 -
完整性(Integrity)
所谓完整性就是你的信息没有被破坏或者篡改过。举个例子比如网络聊天,保证对方收到的信息就是你发出的信息也是信息安全的一部分。 -
可获得性(Availability)
可获得性是指你自己在需要的时候能够访问到信息或者保证对方能够收到你的信息。
通常,我们平时说的“安全”往往只包括第一点,保密性。其实后面两点也是很重要的,特别是在信息安全领域。如果没有完整性和可获得性,光保密又有什么用呢?回到我们的主题,SSL和数字证书主要关注的是前两点。至于可获得性就需要涉及到硬件,管理等等了。
第二节 认证与授权
现在的问题是,我们如何保证上面所定义的“安全”?通常,有以下两个方法:
-
认证(Authentication)
认证是证明你就是那个你所声称的那个人。举个例子,你说你是张三,然后去机场登机,机场工作人员怎么知道你就是张三呢?你必须出示你的身份证或者护照,这样就可以证明你就是那个你所声称的张三。在信息安全领域也一样,比如你想去google查看zhlmmc的邮件,然后google会问你要zhlmmc的密码,因为只有zhlmmc知道zhlmmc帐户的密码,如果你能说出那个密码,那么你就是zhlmmc,google就会把zhlmmc的邮件返回给你。有些文章把这个过程称为Identification。 -
授权(Authorization)
授权是指一个系统里面有很多用户,有些用户能做某些事情,有些用户不能做某些事情。比如Linux,很多用户可以同时通过认证而登录到Linux主机,但是只有root才能修改或删除系统文件,普通用户只能修改自己的home。
这里每一点都可能涉及很多不同的技术来保证过程的顺利进行。“授权”跟业务逻辑的牵扯比较大,SSL和数字证书更多的关注第一点。
第三章 加密与算法
加密是保护信息安全的常用手段之一。对信息的加密是需要加密算法的,如果加密算法被破解了,那么一切免谈。不过,基本上,要破解一个加密算法是非常非常困难的。至少,目前流行的加密算法还是安全的,所以我们也就不必考虑这个问题了。
第一节 散列(Hash)
经常用bt下载的人应该很熟悉这个。这就是MD5啊~虽然Hash不只是MD5,常见的还有SHA1。不过MD5最流行所以一般大家说的hash就是它了。值得一提的是,山东大学的王小云在2005年的时候发了一篇“ How to Break MD5 and Other Hash Functions”引起了信息
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
