通俗易懂的解释HTTPS
什么是HTTPS?##
HTTPS是HTTP协议和SSL/TLS协议的组合。
SSL/TLS是什么?##
SSL全名为Secure SocketsLayer,他是网景公司发明的用来解决http协议使用明文传输信息造成的信息安全泄露问题,而发明出来的协议。后来,因为SSL应用广泛,于是他成为了互联网的一个标准。于是SSL被标准化后改名为TLS(TransportLayer Security)。中文名叫做:“传输层安全协议”。
为什么用明文传输信息就会有泄露风险呢?##
除开利用各种软硬件漏洞以及非法手段对信息进行窃取外,当你使用网络进行计算机通信时,根据以太网协议,你发出的信息实际上是”共享“到当前你计算机所处子网的所有的计算机的。
最初,我们的计算机是通过集线器/hub连接到一起形成子网的。如下图:
屏幕快照 2017-02-23 上午10.49.43.png-177.1kB
若计算机A向计算机D发送信息,信息由A发送到Hub,然后由Hub广播到计算机A所在子网的所有计算机(BCD)。接受到此消息的计算机会根据消息中包含的head信息,来判断自身的mac地址是否与消息中所附带的mac地址信息一致。若一致则处理,不一致则丢弃。
信息是如何加密的?##
要理解信息是如何加密的,首先要对基础密码学做一个大概的了解。
密码学中的信息加密普遍来讲分为两种,它们分别是:
对称加密
非对称加密
对称加密?
: 非常好理解。加密解密使用同一种“密钥”或者说“规则”,称之为对称加密。
比如我们对某一个文件使用密码123进行压缩。接着再对其使用密码123进行解压缩。密码123,就是一种“密钥”,一种“规则”。
非对称加密?
: 非对称加密是指,加密和解密,使用两种密钥,两种规则。
非对称加密比较难理解,下面我们用一个例子来说明什么叫做非对称加密。
用户A持有一对密钥如下所示
公钥 public key,简称pbk。pbk是用加密的。
私钥 private key,简称prk。prk是用来解密的。
这一对公钥私钥拥有以下特点:
公钥加密,私钥解密。
私钥加密,公钥认证。
pbk和prk是使用十分复杂的算法所计算出的一对密钥,从理论上讲,或者说从数学上讲几乎不可能从pbk推算出prk,或者从prk推算出pbk。
公钥加密的内容,通过私钥解密后能还原出原来的内容。私钥加密的内容,通过公钥认证后,亦能还原出原来的内容。
现在用户A向用户B写了一封信。用户A先把pbk,通过明文传递的方式邮寄用户B。用户B收到后,把一个对称加密密钥(比如密码123)通过pbk加密后再邮寄给用户A。用户A收到后使用prk对这个信息进行解密,于是用户A拿到了密码123.
然后用户A从现在开始,就使用密码123,对信息进行加密,和用户B进行书信交流。
什么是数字签名##
现在你应该对SSL的加密方式有所了解了。
但是喜欢上网的你,是否遇到过下面这种情形呢?
数字签名安全警告
造成这个警告的原因是,发布这个软件,提供这个信件的用户,没有给这个软件附上一个数字签名。
那么数字签名究竟是啥?
上面我们提到了SSL的加密解密方式。但是这些只是对信息安全性做了一定程度上的保证。假设,中途邮递员,将信件的部分内容遗失,或者损坏了又该怎么办呢?作为用户我们如何得知,这封信件的内容已经被遗失/损坏了呢?
为了解决这个问题,我们就要靠数字签名这个东西啦。
举例来说,A在写信时,首先对信件内容调用hash函数,生成了一个信息的摘要。A把这个摘要内容通过私钥加密后,附在信件里随信寄出。
用户B收到信件后,通过之前拿到的公钥对这封信进行认证。于是,用户B通过pbk得到了摘要内容。接下来用户B再对用户A信件的正文调用hash函数,然后将通过pbk得到的hashcode和正文调用hash函数产生的hashcode进行对比。若一致,则说明信件的内容是完整的,无损的。
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-59333-1.html
谁造成了光棍们没有老婆
人家的确是在公海航行
我们在南海有许多的东风牌可打