第七章 确保Web安全的HTTPS
1、HTTP的不足
通信使用明文(不加密),内容可能被监听
不验证通信方的身份,因此可能遭遇伪装
无法验证报文的完整性,所以有可能已遭篡改
2、通信加密
 通信的加密
内容的加密
3、通过查看对手的证书(SSL支持,第三方提供),来验证通信方
4、HTTP常用MD5和SHA-1等散列值校验方法来确认文件的数字签名,但是这需要用户亲自检查,浏览器无法自动帮用户检查。SSL提供认证和加密处理及摘要功能。
5、HTTP + 加密 + 认证 + 完整性保护 = HTTPS
6、共享秘钥加密(加密和解密用同一把秘钥)
7、公开秘钥加密(发送秘文的一方利用对方的公开秘钥进行加密处理,对方收到被加密的信息后,利用自己的私有秘钥进行解密)
8、HTTPS采用混合加密机制(在交换秘钥环节使用公开秘钥加密方式,之后的通信交换报文阶段则使用共享秘钥加密方式)
9、数字证书的业务流程:首先,服务器的运营人员向数字证书认证机构提出公开秘钥的申请;数字证书机构在判明提出申请者的身份之后,会对已申请的公开秘钥做数字签名;然后,分配这个已经签名的公开秘钥,并将该公开秘钥放入公钥证书后绑定在一起;服务器会将这份公钥证书发送给客户端,以进行公开秘钥加密方式通信;客户端可使用数字证书认证机构颁发的公开秘钥,对那张证书上的数字签名进行验证,认证通过,证明服务器的公开秘钥是值得信赖的。
 
第八章 确认访问用户身份的认证
1、认证,只有登陆者本人才知道的信息
 密码:只有本人知道的字符串信息
动态令牌:仅限本人持有的设备内显示的一次性密码
数字证书:仅限本人(终端)持有的信息
生物认证: 指纹或者虹膜等本人的生理信息
IC卡等:仅限本人持有的信息
2、HTTP/1.1使用的认证方式
BASIC认证(基本认证,明文)
DIGEST认证(摘要认证)
SSL客户端认证
FormBase认证(基于表单认证)
3、基于表单验证,会涉及Session管理及Cookie应用
 
第九章 基于HTTP的功能追加协议
1、消除HTTP瓶颈的SPDY,旨在解决HTTP的性能瓶颈,缩短Web页面的加载时间
2、解决瓶颈的方法
 Ajax 异步JS达到局部刷新,传输数据变少
Comet 一旦服务器有内容更新了,Comet不会让请求等待,直接返回响应,如果没有更新,Comet会将响应置于挂起状态。这是一种延迟应答,模拟实现服务器端向客户端推送的功能。
3、SPDY没有完全改写HTTP,而是在TCP/IP的应用层与运输层之间通过新加会话层的形式运作。同时。考虑到安全性,规定通信中使用SSL。使用SPDY获得以下功能:
多路复用,单一TCP连接,可以无限制处理多个HTTP请求
赋予请求优先级
压缩HTTP首部
推送功能,支持服务器主动向客户端推动数据的功能
服务器提示功能,服务器可以主动提示客户端请求所需的资源,在资源已缓存等情况下,可以避免发送不必要的请求
4、使用浏览器进行双全工通信的WebSocket,WebSocket是建立在HTTP基础上的协议,因此连接的发起方仍是客户端,一旦建立通信连接,不论服务器或者客户端,任意一方都可直接向对方发送报文。(客户端发送HTTP连接握手请求,在Upgrade字段设置为WebSocket协议,通知服务器更新连接协议)
5、期盼已久的HTTP/2.0(7项技术讨论)
 多路复用
TLS义务化
协商
客户端拉拽 服务端推送
压缩
流量控制
WebSocket
 
第十章 构建Web内容的技术
1、HTML
2、CGI 指Web服务器在接收到客户端发送来的请求后转给程序的一组机制。在CGI的作用下,程序会对请求内容作出相应的动作。
 
第十一章 Web的攻击技术
1、为服务器为目标的主动攻击,指攻击者通过直接访问Web应用,把攻击代码传入的攻击方式。
典型的攻击方式有,SQL注入攻击和OS命令注入攻击
2、以服务器为目标的被动攻击,指利用圈套策略执行攻击代码的攻击模式,在被攻击工程中,攻击者不直接对目标Web应用访问发起攻击。
典型的攻击方式有,跨站脚本攻击和跨站请求伪造

图解HTTP(三)的更多相关文章

  1. Oracle单节点_Grid_Infrastructure_DB_安装过程图解(一/三)

    首先进行各种准备: ASMLIB的准备,用户和目录的创建. 安装好Linux之后(采用了OEL 5.7),查看是否光盘中包含ASMLIB:

  2. Oracle单节点_Grid_Infrastructure_DB_安装过程图解(二/三)

    接上文 Oracle单节点_Grid_Infrastructure_DB_安装过程图解(一/三) 接下来,进行Grid Infrastructure 部分的安装:

  3. linux Wireshark图解TCP三次握手与四次挥手

    Linux Wireshark图解TCP三次握手与四次挥手 原文章链接:Wireshark图解TCP三次握手与四次挥手 文章内容丰富 值得学习

  4. wireshark抓包直观图解 TCP三次握手/四次挥手详解

    转http://www.seanyxie.com/category/linux/ 作者:seanyxie |   一. TCP/IP协议族 TCP/IP是一个协议族,通常分不同层次进行开发,每个层次负 ...

  5. 【转】HTTP学习---图解HTTP[三次握手&&ISO模型]

    [转]https://www.toutiao.com/i6592556686068679182/ 首先了解一次完整的HTTP请求到响应的过程需要的步骤: 1. 域名解析 2. 发起TCP的3次握手 3 ...

  6. wireshark抓包图解 TCP三次握手/四次挥手详解

    http://www.seanyxie.com/wireshark%E6%8A%93%E5%8C%85%E5%9B%BE%E8%A7%A3-tcp%E4%B8%89%E6%AC%A1%E6%8F%A1 ...

  7. wireshark抓包图解 TCP三次握手/四次挥手详解[转]

    原文链接:http://www.seanyxie.com/wireshark%E6%8A%93%E5%8C%85%E5%9B%BE%E8%A7%A3-tcp%E4%B8%89%E6%AC%A1%E6% ...

  8. 图解TCP三次握手

    参考:https://blog.csdn.net/u012804886/article/details/80998114

  9. Oracle单节点_Grid_Infrastructure_DB_安装过程图解(三/三)

    接上文: Oracle单节点_Grid_Infrastructure_DB_安装过程图解(二/三)

  10. 基础笔记(三):网络协议之Tcp、Http

    目录 一.网络协议 二.TCP(Transmission Control Protocol,传输控制协议) TCP头格式 TCP协议中的三次握手和四次挥手 TCP报文抓取工具 三.HTTP(Hyper ...

随机推荐

  1. mstar gdb调试

    当进程崩溃出现coredump提示时,可以利用gdb来定位出错函数. 首先,把core_dump.XXX.gz文件从设备上拷贝出来,放到编译环境下,另外,还要把代码目录下的symbols文件夹也拷贝到 ...

  2. Invalid bound statement (not found) 终极解决办法

    网上已经有很多文章说明可能导致这个报错的原因,无非是以下几种:1.检查xml文件的namespace是否正确 2.Mapper.java的方法在Mapper.xml中没有,然后执行Mapper的方法会 ...

  3. mysql-创建用户报错ERROR 1396 (HY000): Operation CREATE USER failed for 'root'@'localhost'

    创建用户: create user ‘test’@’%’ identified by ‘test’; 显示ERROR 1396 (HY000): Operation CREATE USER faile ...

  4. spring的multipartResolver和java后端获取的MultipartHttpServletRequest方法对比

    这两天在用spring进行上传上遇到问题,今天进行了问题的排查,这个过程也增加了我看spring源码的兴趣!还是很有收获的! 首先先给A组提供了上传接口,并没有在spring的配置文件进行multip ...

  5. Could not create connection to database server. Attempted reconnect 3 times. Giving up.

    报出这个错误,可能原因: 1.检查MySQL数据库服务是否正常(包含检查服务名和密码),如果不正常,修复至正常为止: 2.maven工程中导入的mysql的jar版本和你的MySQL版本不相符,必须相 ...

  6. 查找算法(1)--Sequential search--顺序查找

    1. 顺序查找 (1)说明 顺序查找适合于存储结构为顺序存储或链接存储的线性表.     (2)基本思想 顺序查找也称为线形查找,属于无序查找算法.从数据结构线形表的一端开始,顺序扫描,依次将扫描到的 ...

  7. zookeeper+Dubbo环境搭建及简单Demo

    1 安装zk https://www.cnblogs.com/feifeicui/p/11175502.html 2 安装 dubbo-admin https://www.cnblogs.com/fe ...

  8. Xcode 导出C++项目在其他电脑执行

    1.  先找到C++项目的可执行文件的位置 https://blog.csdn.net/qq_34759481/article/details/82700587 2.  关于存储和加载文件的目录,使用 ...

  9. DL Practice:Cifar 10分类

    Step 1:数据加载和处理 一般使用深度学习框架会经过下面几个流程: 模型定义(包括损失函数的选择)——>数据处理和加载——>训练(可能包括训练过程可视化)——>测试 所以自己写代 ...

  10. locale区域语言设置

    查看当前配置 # 默认配置[maintain@localhost:~]$ locale LANG=zh_CN.utf8 LC_CTYPE="zh_CN.utf8" LC_NUMER ...