挺有意思的一篇文章,讲了HTTPS是如何保证TCP/IP协议下数据传输的安全性。
总结一下:
密钥(key):加/解密数据的工具,一般通信双方在未开始通信前只有一方有key。这导致密钥必须与数据一同传输,增加了密钥被“中间人”(中转站)利用来窥伺数据的风险。
对称加密算法(AES):用key加密的数据只能用key解密。AES耗时短,成本小,因而被挑选成为HTTPS保护机制的基础技术。
非对称加密算法(RSA):一对密钥(key1,key2),用key1加密的数据只能用key2解密,反之亦然。
RSA的作用:加密AES所需的key。
HTTPS保护机制:假设A,B为通信双方。A有key而B无key,想要安全地利用ARS技术进行数据传输,就必须保证通信前A和B都有key,因此就要用到ERS技术。首先,B生成k1,k2 。 然后,B把k1传送到A。接着,A用key加密k1,传送到B(传送后A仍有key)。此时A和B都有key,就可以直接互相传输用key加密的数据,不用捎上key了。