zoukankan      html  css  js  c++  java
  • 确保Web安全的HTTPS

                HTTP在安全方面主要有以下不足:

                        1. 通信使用明文不加密,内容可能会被窃听;(TCP/IP就是可能被窃听的网络)

                        2. 不验证通信方的身份,因此有可能遭遇伪装; (无法判断请求或响应是否正确,是否有权限,是否有意义)

                        3. 无法证明报文的完整性,内容有可能已遭篡改

             解决办法:

                        1.加密处理防止被窃听:通信的加密 HTTPS(SSL安全套接层+HTTP) ,TSL安全层传输协议

                                                          内容的加密 (客户端和服务器同时具备加密和解密机制)不过内容仍有被篡改的风险

                       2. 验证通信方身份:  查明对手的证书,通过SSL提供证书的手段。

                       3. 使用SSL完整性保护防止篡改,仅仅使用MD5和SHA-1等散列值校验的方法不能完全保证安全。

     

            HTTPS = HTTP + 加密 + 认证 + 完整性保护

                         HTTPS并非是应用层的一种新协议,只是HTTP通信接口部分用SSL协议代替。

                         通常HTTP直接和TCP通信,当使用SSL时,则演变为HTTP-SSL-TCP.

                         在采用SSL后,HTTP就拥有了HTTPS的加密、证书和完整性保护这些功能。

                         HTTPS使用SSL和TLS这两个协议。

     

                         HTTPS如何工作:

                         加密:HTTPS采用混合加密机制,公开加密秘钥和共享加密秘钥。

                         认证:HTTPS使用客户端认证证书。

                         完整性:HTTPS传输流程中应用层发送数据时会附加一种叫做MAC的报文摘要,能够查知报文是否遭到篡改,从而保护报文的完整性。

     

                        为什么不一直使用HTTPS?

                        1. 加密通信耗费更多CPU及内存资源;

                        2. 购买证书占用成本;

                        所以,根据网站需求灵活选用HTTP或HTTPS。

     

  • 相关阅读:
    【spring】基于AspectJ的AOP
    【matlab】stanford线性回归,logistic regression 实验
    【Python】列表、字典和元组的排序
    PHP 二叉树的深度优先与广度优先遍历
    PHP 定义栈结构,实现min函数,获取栈最小元素,要求时间复杂度为O(1)
    PHP 短连接生成
    一条SQL查询访问记录表(visit_log)中某个类目(catalog_id)的访问量(visit)排前两名的记录行
    利用 p, 1p 随机数发生器知道等概率发生器
    PHP 将二叉查找树转换为双向链表,要求不能创建新节点,只能调节节点指针
    PHP 求最大递增子序列长度
  • 原文地址:https://www.cnblogs.com/Peng2014/p/4694878.html
Copyright © 2011-2022 走看看