早先使用的为:HTTP协议,该协议不安全,未加密
现在使用的为:HTTPS协议,该协议安全,对请求报文和响应报文做加密
一、HTTP
①定义:超文本传输协议,是一个基于请求与响应,无状态的,应用层的协议,常基于TCP/IP协议传输数据,互联网上应用最为广泛的一种网络协议,所有的WWW文件都必须遵守这个标准。设计HTTP的初衷是为了提供一种发布和接收HTML页面的方法。
二、HTTPS
①定义:
HTTPS是一种通过计算机网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS建立全信道,加密数据包。
HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。基于HTTP协议,通过SSL或TLS(目前已不用SSL)提供加密处理数据、验证对方身份以及数据完整性保护
②内容加密:
采用混合加密技术(结合非对称加密和对称加密技术),中间者无法直接查看明文内容
③验证身份:
通过证书认证客户端访问的是自己的服务器
④保护数据完整性:
防止传输的内容被中间人冒充或者篡改。
⑤具体过程:
客户端使用对称加密生成密钥对传输数据进行加密,然后使用非对称加密的公钥再对秘钥进行加密,所以网络上传输的数据是被秘钥加密的密文和用公钥加密后的秘密秘钥,因此即使被黑客截取,由于没有私钥,无法获取到加密明文的秘钥,便无法获取到明文数据。
(一)对称加密
1)定义:浏览器对原始数据(明文)用秘钥进行加密(对称加密算法:DES、RC5),则将加密后的密文和密钥传递给服务器,服务器再利用传递过来的密钥对密文进行解密。
2)特点:①加密解密使用相同秘钥;
②高效,适用于大量数据的加密
③算法公开,安全性取决于密钥大小。但秘钥越大效率越低。
④使用场景不够安全,因为加密和解密为同一个秘钥。
(二)非对称加密
1)定义:
①概念:使用匹配的一对密钥(公开密钥和私有密钥,即公钥和私钥)来分别进行加密和解密。
②原理:公钥加密的数据只能用对应的私钥解密,私钥加密的数据只能用对应的公钥进行加密。
③具体过程:服务器将公钥给浏览器,浏览器用公钥进行加密,再将密文传递给服务器,服务器用私钥解密。
2)特点:①安全性高
②加解密复杂、效率低、耗时长
3)用法:①加密:对数据进行加密
②签名:声明数据是谁发的
4)相关算法:RSA、ECC、Elgamal、背包算法、Rabin、D-H
———————————————————————————————————————————
本文参考了:http://t.csdn.cn/cl7oH