读书笔记——《图解HTTP》第六章(下)、第七章

网友投稿 635 2022-05-30

大家早上好,今天是感恩节哦~

一路走来,所遇皆温柔,感谢每一位为我们打开世界的人

第一章:了解web及网络基础 ;第二章:简单的HTTP协议  >>

第三章:HTTP报文内的HTTP信息;第四章:返回结果的HTTP状态码   >>

第五章:与HTTP协作的web服务器;第六章:HTTP首部(上)

第六章 HTTP首部(下)

响应首部字段

服务器向客户端响应报文中使用的字段,用于补充附加信息、服务器信息、附加要求等

1.Accept-Ranges :bytes / none  服务器告知的可处理请求范围,不能处理则指定为none

2.Age :数字(单位秒)   回应客户端经历的响应时间

3.ETag  将资源以字符串形式做唯一性标识的方式,比如在URI相同的情况下,如何区分中文版和英文版呢,此时用ETag值来指定资源。强ETag:细变化也改变;弱ETag:根本变化改变。

4.Location  告诉客户端资源位置变更到另一URI

5.Proxy-Authenticate  类似WWW-Authorization,但是是代理服务器对客户端的认证信息

6.Retry-After: 数字(秒)   告知客户端应该在多久之后再次发送请求

7.Server  告知客户端当前服务器上安装的 HTTP 服务器应用程序的信息,包括软件应用名称、版本号、启动可选项等。

8.Vary  可用于对缓存进行控制

9.WWW-Authenticate  用于 HTTP 访问认证,服务器对客户端的,告知客户端适用于访问请求 URI 所指定资源的认证方案(Basic 或是 Digest)。

实体首部字段

1.Allow: GET, HEAD   通知客户端资源可支持的 HTTP 方法。

2.Content-Encoding: gzip   告诉客户端服务器对实体的主体进行压缩的内容编码方式

3.Content-Language: zh-CN   告知客户端,实体主体使用的自然语言

4.Content-Length: 15000   实体主体的大小(字节)

5.Content-Location   替代对应资源的URI

6.Content-MD5   接收的报文主体与首部字段 Content-MD5 的字段值比较,检测完整性。无法验证偶发性改变和恶意篡改。

7.Content-Range   针对范围请求,返回响应

8.Content-Type   说明了实体主体内对象的媒体类型

9.Expires    告知客户端资源失效日期

10.Last-Modified   表明资源最终修改时间

为Cookie服务的首部字段

1.Set-Cookie属性  当服务器开始管理客户端的状态时,会事先告知各种信息

2.Expires 属性   浏览器可发送Cookie的有效期

3.Path属性   限制Cookie发送范围的文件目录

4.Domain属性   相同域名后缀,都可发送Cookie,不太安全

5.Secure属性   仅在 HTTPS 安全连接时,才可以发送Cookie

6.HttpOnly 属性   使 JavaScript 脚本无法获得 Cookie,可防止跨站脚本攻击(Cross-sitescripting,XSS)

其他首部字段

1.X-Frame-Options  属于http响应头部,于控制网站内容在其他 Web 网站的 Frame 标签内的显示问题,防止点击劫持

2.X-XSS-Protection   属于http响应头部,用于控制浏览器XSS防护机制,0 XSS无效,1有效。

3.DNT   属于 HTTP 请求首部,意为拒绝个人信息被收集,0 同意被追踪,1拒绝被追踪。

4.P3P  用于保护用户隐私的技术

*X- 前缀表示非标准参数

第七章 确保Web安全的HTTPS

http缺点

1.明文     解决:(1)通信的加密:SSL; (2)内容的加密:可以对报文主体进行加密处理(而通信本身不加密)

读书笔记——《图解HTTP》第六章(下)、第七章

2.不验证     解决:SSL不仅可提供加密处理,并有三方机构证书确认各方身份。

3.不保证完整性:导致攻击者拦截和内容篡改(即中间人攻击,MTTM),解决:散列校验(如MD5、SHA-1)和数字签名(如PGP,完美隐私),但没有办法百分之百保证结果正确,所以用HTTPS组合方式。

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

1.HTTPS是身批SSL外壳的HTTP

HTTPS(HTTPSecure,超文本传输安全协议)或 HTTP over SSL,不是应用层新协议,是HTTP通信接口部分用SSL(Secure Socket Layer)和 TLS(Transport Layer Security)协议代替而已。通常,HTTP直接和TCP通信。当使用SSL 时,则演变成先和SSL通信,再由SSL和TCP通信了。

2.加密密钥

• 加解密同一个密钥——共享密钥加密/对称密钥加密

• 公开密钥发送+私有密钥解密——公开密钥加密/非对称密钥加密(一对), SSL采用公开密钥加密处理方式

• HTPS的混合加密机制:交换密钥环节使用公开密钥加密方式,之后的通信使用共享密钥加密方式。

3.证书类型

• 证明公开密钥正确性的数字证书(由权威数字证书认证机构颁发)

• 证明组织真实性的EV SSL证书

• 确认客户端的客户端证书,如网银

• 自己颁发的服务器证书:自签名正式—浏览器访问出现“无法确认安全性”等告警信息

4.HTTP的安全通信机制(书153页)

5.HTTPS比HTTP要慢2-100倍

未完待续

HTTP 网络

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java中的修饰符
下一篇:http状态码详解
相关文章