理解HTTPS是如何做到传输安全

版权声明: https://blog.csdn.net/huangpb123/article/details/81325520

一、概念

HTTPS:是以安全为目标的 HTTPS 通道,简单讲是 HTTP 的安全版,即 HTTP 下加入 SSL 层,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。

HTTPS 协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种是确认网站的真实性。

我们可以带着下面2个问题去理解 HTTPS 为什么安全:

    1. 客户端怎么确定来自服务器的信息没有被篡改过?

    2. 服务端怎么确定来自客户端的信息没有被篡改过?

二、名词解释

公钥 私钥

公开密钥加密,也称为非对称加密,它需要两个密钥:一个是公开密钥,用作加密的时候;另一个是私有密钥,用作解密。使用其中一个密钥把明文加密后所得的密文,只能用相对的另一个密钥才能解密得到原来的明文。由于加密和解密需要两个不同的密钥,故被称为非对称加密;不同于加密和解密都使用同一个密钥的对称加密。虽然两个密钥在数学上相关,但如果知道了其中一个,并不能凭此计算出另一个;因此公钥可以公开;私钥不能公开,必须由用户自行严格秘密保管,绝不通过任何途径向任何人提供,也不会透露给要通信的另一方,即使他被信任。公钥私钥除了加密解密功能外,还能签名和验证。公钥负责加密,私钥负责解密;私钥负责签名,公钥负责验证。

HTTPS 是基于非对称加密的,公钥和私钥是整个 HTTPS 的基础。

数字证书

公开密钥认证,又称公开密钥证书、公钥证书、数字证书、数字认证、身份证书、电子证书或安全证书,是用于公开密钥基础建设的电子文件,用来证明公开密钥拥有者的身份。此文件包含了公钥信息、拥有者身份信息(主体)、以及数字证书认证机构(发行者)对这份文件的数字签名,以保证这个文件的整体内容正确无误。

其中,在加密过程中最重要的是公开密钥和数字签名算法,前者用来生成 session key,后者是验算 hash 的方法。

猜你喜欢

转载自blog.csdn.net/huangpb123/article/details/81325520