赞
踩
HTTPS 也是一个应用层协议,是在 HTTP 协议的基础上引入了一个加密层(SSL/TLS),HTTP 协议内容都是按照文本的方式明文传输的. 这就导致在传输过程中出现一些被篡改的情况,因此HTTPS是要比HTTPS更安全的,现在大部分网站采取的也都是HTTPS协议。
加密就是把明文(要传输的信息)进行一系列变换,生成密文。解密就是把密文再进行一系列变换,还原成对应的明文
加密通常有两种方式,一种为对称加密,另一种为非对称加密
对称加密其实就是通过同一个 “密钥” ,把明文加密成密文,并且也能把密文解密成明文。
对称加密里最关键的就是密钥,客户端和服务器需要先约定好密钥是什么,如果客户端生成了密钥,就需要通过网路告知服务器密钥是什么。由于密钥本身也会在网络上明文传输,容易被黑客截获,一旦被黑客截获,那么后续对数据的加密就失去意义了。
因此密钥的传输也必须加密传输,即指定一个"密钥的密钥",即引入非对称加密
非对称加密要用到两个密钥,一个叫做公钥,另一个叫做私钥。(公钥和私钥是成对出现的,公钥用于加锁,私钥用于解锁)
通过公钥对明文加密,变成密文;然后通过私钥对密文解密,变成明文;也可以反着用:通过私钥对明文加密,变成密文,通过公钥对密文解密,变成明文。(通过数论相关知识证明)
公钥和私钥是配对的,最大的缺点就是运算速度非常慢,比对称加密要慢很多
我们引入非对称加密,来对自己的对称密钥进行加密:
注意:
由于对称加密成本是比较低的,即机器资源消耗量是比较少的,速度也比较快,因此我们传输数据时会先利用非对称加密方式将对称密钥进行加密,然后使用对称密钥再对数据进行加密
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。