深入理解Https
-
HTTPS是一个以安全为目标的 HTTP通道,在HTTP的基础上可以保障传输加密和身份认证传输过程的安全性。我们可以从定义里关注到两点:传输加密和身份认证。首先我们先来了解下Https中将要用到的加密技术和认证技术。
对称加密:是一种加密数据处理方式,需要秘钥对包括加密秘钥和解密秘钥,对称加密比较容易理解,即为:通信双方分别持有加密秘钥和解密秘钥是都一样的。HTTPS为了解决这个都一样的问题,允许通信双方共同拥有一种加解密方式,就选择到了对称加密技术,这种方式仅通信双方知晓密钥,所以达到确保传输数据的安全的效果。
非对称加密:非对称加密从字面上理解,即:通信双方分别持有的加密秘钥和解密秘钥是不一样的。与对称加密恰好相反,我们能够将私人持有的秘钥简称为私钥,并且会将公开的、允许大多数人持有的秘钥简称为公钥,在实际应用中,通常是使用公钥加密通信数据,然后用私钥解密保证数据安全性。
数字签名:用来保证数据传输的完整性和发送方的可信度。数字签名是非对称密钥加密技术与数字摘要技术的应用,通常使用hash算法对数据进行数字摘要(生成一段唯一的数据标识,该过程不可逆),然后使用私钥对数字摘要进行加密;接收方收到数据后,使用发送放提供的公钥对数据解密,确保数据是发送方发送的(如果不能解密,说明发送方并不是真实的),然后使用相同的hash算法对解密的数据进行数字摘要,比较前后两次数字摘要信息,如果相同则说明数据未被修改,从而确保数据完整性。
数字证书:数字证书又称数字标识,由用户申请,证书签证机关CA对其核实签发,对用户的公钥认证。前面提到的几种技术都是在发送方正确的情况下所做的加密认证技术,然而当发送方本身就是伪造的,那么后续的加密认证必然没有意义。而证书签证机构一般都是权威机构,通过其签发的证书确保了发送方提供的公钥是可信的。
HTTPS是在HTTP的基础上加了SSL安全协议层,通俗的理解HTTPS=HTTP+SSL,SSL安全协议保证了通信过程的安全性。
西南地区IT社群(QQ)
- 云南
- 【昆明网页设计交流吧】243627302
- 【昆明nodejs交流吧】 243626749
- 【VUE】838405306
- 【云南程序员总群】343606807
- 【昆明UI设计】104031254
- 【云南软件外包】15547313
- 贵州
- 【PHP/java源码/站长交流群】55692114
- 四川
- 【成都Java/JavaWeb交流】86669225
- 【vaScript+PHP+MySql】116270060
- 【UI设计/设计交流学习群】135794928
- 重庆
- 【诺基亚 JAVA游戏博物馆】 559479780
- 【PHP,Java,Python,C++接单】 442103442
- 西藏