HTTPS

来源:互联网 发布:js获取input属性值 编辑:程序博客网 时间:2024/04/28 00:49

HTTPS

flyfish

HTTPS就是增加了加密和认证机制的HTTP
HTTPS的接口部分就是SSL(Secure Socket Layer)和TLS(Transport Layer Security)

这里写图片描述
https 三点 加密 认证 完整性保护

加密 如果使用明文传输,数据就会被窃听 所以要加密
认证 如果不验证身份,那么就可以伪装身份
完整性保护 如果不验证数据的完整性,那么数据就可以被篡改

密钥是一种参数,它是在 明文转换为密文 或将 密文转换为明文 的算法中输入的参数

假设数据OrginalData 经过加密算法Algorithm,算法的参数是Parameter,得到加密数据EncipheredData
Algorithm(OrginalData ,Parameter)=EncipheredData
Parameter就是密钥

密钥(secret key)——秘密的钥匙;
私钥(private key)——私有的钥匙;
公钥(public key)——公开的钥匙。

密钥分为两种:对称密钥与非对称密钥

对称密钥加密,即发送和接收数据的双方必使用 相同的 密钥对明文进行加密和解密运算。

非对称密钥加密,该加密算法使用 两个不同的 密钥,加密密钥和解密密钥

公开密钥加密有两个钥匙一把是private key ,一把是public key
private key只有自己知道,public key任何人都可以知道

HTTPS采用了对称密钥与非对称密钥两者并用混合加密机制。

认证
1数字证书认证机构(CA,Certificate Authority)
2 公开密钥证书

数字证书认证机构是 客户端与服务器都信赖的第三方

也就是有这个公司给大家发证,大家都信这个公司发的证。

申请服务器证书过程
申请者 向CA 说 我需要一个公开密钥
CA 确认了 申请者的身份
CA 给申请者 一个证 这个证 里面包括了
申请者的公钥信息,认证中心的签名信息。

服务器就可以把这个证发给客户端,要安全的发,浏览器开发商的做法是事先内部就有常用的CA的公开密钥

网上银行使用的是客户端证书 包括ID,密码,U盾(U盘),这个证书在U盾里

MAC(Message authentication code)消息认证码, 这里不是网卡地址
应用于验证消息是否被篡改

这里写图片描述

0 0
原创粉丝点击