Just Do ITAndroid知识Android开发

HTTPS,你不知道的事儿

2016-09-29  本文已影响429人  码无止境

what is https?

HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。

看到上面定义,我们大致也明白了HTTPS其实就是一个经过加密后的HTTP,具有更高的安全性。因此我们就需要了解一下经过加密的HTTPS是如何工作的?

加密算法

笔者目前所了解到的算法归为三类:

how to work

在弄清HTTPS如何工作前,我需要了解两个概念:

密钥

证书

了解上面两个概念后,接下来我们来了解下HTTPS如何安全通信?前面在定义HTTPS时讲到HTTPS是一种加密的HTTP,为了更高的安全性,没错,密钥和证书正是特定设计来实现HTTPS安全通信的。

说到安全通信,我们可能先想到对称加密算法,思路如下:

以上这种方案存在很大漏洞,假如加密后的数据和密钥被黑客给截获,黑客拿着密钥直接把加密后的数据给解密了,这样数据就泄漏出去了。

1132780-f58fe3a5c5a7c281.jpg

既然对称算法不行,那就来试试非对称算法,思路如下:

以上这个方案貌似不错,看过前面加密算法说明的童鞋应该清楚非对称算法有缺陷,就是加密、解密过程较慢、耗时多,影响用户体验。

1132780-4e0c4064e76528b6.jpg

那有木有更好的方案呢?必须有啦~~HTTPS最终采用的安全通信方案,大家看清楚啦~

1132780-2d7d1306d1b86b65.jpg

思路如下:

总结

由于对称加密算法比非对称加密算法效率高、性能好,https决定采用对称加密算法来加密解密数据,使用非对称加密算法加密解密对称算法密钥,以确保通信安全。

1132780-253900d649118aa0.jpg

关于作者

上一篇 下一篇

猜你喜欢

热点阅读