★国内鲜有的专业HTTPS书籍,HTTPS实践指南 ★集理论与实践于一体,由浅深、通俗易懂 ★以TLS 1.2协议为主,描述前沿的知识和工具 ★全方位深刻解剖Web安全相关体系结构的知识 ★作者有十多年一线实践经验,深刻理解Web精髓 ★本书不仅是HTTPS专著,更是经验和方法论分享 ★书中含大量实例,极具实践性,读者更好理解 ★如果你想了解Web安全、部署HTTPS网站、 部署HTTP/2网站、优化网站性能,
售 价:¥
纸质售价:¥66.70购买纸书
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
内容简介
序1
序2
前言
第1章 HTTP介绍
1.1 什么是Web
1.1.1 广义理解Web
1.1.2 Web的组成
1.2 理解HTTP
1.2.1 HTTP的定义
1.2.2 HTTP语义
1.2.3 HTTP的特点
1.3 网络模型
1.3.1 TCP/IP概述
1.3.2 Socket和TCP
1.4 协议安全分析
1.4.1 安全问题举例
1.4.2 协议不安全的根本原因
1.5 Web应用安全
1.5.1 浏览器、HTML和JavaScript
1.5.2 W3C
第2章 密码学
2.1 对于密码学的认知
2.1.1 基本认知
2.1.2 密码学的四个目标
2.1.3 OpenSSL
2.2 随机数
2.2.1 随机数的类型
2.2.2 随机数的工作原理
2.2.3 常见的随机数生成器
2.2.4 密码学算法中的随机数
2.3 Hash算法
2.3.1 加密基元
2.3.2 Hash算法和密码学Hash算法
2.3.3 密码学Hash算法的特性
2.3.4 Hash算法的用途
2.3.5 什么是安全的密码学Hash算法
2.3.6 密码学Hash算法的分类
2.4 对称加密算法
2.4.1 流密码算法
2.4.2 块密码算法
2.4.3 填充标准
2.4.4 对称加密算法实践
2.5 消息验证码
2.5.1 什么是消息验证码
2.5.2 MAC算法的种类
2.5.3 消息验证码算法实践
2.5.4 加密算法不能提供完整性
2.5.5 AD加密模式
2.5.6 AEAD加密模式
2.6 公开密钥算法
2.6.1 理解RSA的内部结构
2.6.2 PKCS标准
2.6.3 RSA加密算法的应用场景
2.6.4 RSA加密算法实践
2.7 密钥
2.7.1 生成密钥
2.7.2 口令和PEB算法
2.7.3 密钥存储和传输
2.8 密钥协商算法
2.8.1 RSA密钥协商算法
2.8.2 DH密钥协商算法
2.8.3 DH算法分类
2.8.4 DH密钥协商算法实践
2.9 椭圆曲线密码学
2.9.1 ECC算法的基本模型
2.9.2 使用OpenSSL了解命名曲线
2.9.3 ECDH协商算法
2.9.4 命名曲线
2.10 数字签名
2.10.1 数字签名的用途
2.10.2 数字签名的流程
2.10.3 RSA数字签名算法
2.10.4 RSA数字签名实践
2.11 DSA数字签名算法
2.11.1 内部结构
2.11.2 DSA算法实践
2.11.3 ECDSA算法
2.11.4 ECDSA算法实践
2.12 算法安全性和性能
2.12.1 密钥长度与算法安全性
2.12.2 密码学性能
第3章 宏观理解TLS
3.1 TLS/SSL协议综述
3.1.1 TLS/SSL协议的历史
3.1.2 正确认知TLS/SSL协议
3.1.3 TLS/SSL协议的目标
3.1.4 OpenSSL和TLS/SSL的关系
3.1.5 HTTPS和TLS/SSL的关系
3.1.6 TLS/SSL协议的一些实现
3.2 TLS/SSL协议背后的算法
3.2.1 加密算法和MAC算法
3.2.2 密钥协商算法
3.2.3 前向安全性
3.2.4 密钥衍生算法
3.2.5 中间人攻击
3.2.6 PKI
3.3 HTTPS总结
3.3.1 握手
3.3.2 加密
3.4 实施HTTPS网站的必备条件
3.4.1 证书和密钥对
3.4.2 部署和配置HTTPS网站
3.4.3 全站HTTPS策略
3.5 从用户的角度看HTTPS
3.5.1 绿色小锁图标
3.5.2 TLS/SSL握手失败
3.5.3 混合内容
第4章 选择HTTPS的必要性和疑惑
4.1 部署HTTPS的疑惑
4.1.1 网站好像没有隐私数据
4.1.2 复杂性
4.1.3 成本
4.1.4 性能
4.1.5 外部资源不支持HTTPS
4.1.6 收益和时间对比
4.2 部署HTTPS的必要性
4.2.1 HTTP/2带来的性能提升
4.2.2 趋势
4.2.3 企业形象
4.2.4 HTML5的特性
4.2.5 iOS ATS的安全要求
4.2.6 Chrome和Firefox所做的努力
4.2.7 SEO排名和谷歌Analytics
第5章 快速搭建一个HTTPS网站
5.1 HTTPS网站构建分析
5.2 获取证书和密钥对
5.2.1 自签名证书
5.2.2 向CA机构申请证书
5.2.3 使用Let’s Encrypt证书
5.3 部署证书和密钥对
5.3.1 Nginx配置
5.3.2 Apache配置
5.4 测试HTTPS
5.5 301重定向
5.6 HSTS
5.6.1 什么是HSTS
5.6.2 HSTS实践
5.6.3 浏览器支持
5.6.4 HSTS Preloading
5.7 CSP
5.7.1 如何消除混合内容
5.7.2 什么是CSP
5.7.3 浏览器的兼容性
5.7.4 CSP实践
第6章 证书
6.1 X.509标准和PKI
6.1.1 X.509标准
6.1.2 PKI的组成
6.1.3 X.509标准的内容
6.2 证书
6.2.1 ASN.1
6.2.2 证书结构
6.2.3 CSR
6.2.4 证书扩展
6.2.5 证书分类
6.3 证书链
6.3.1 证书类型
6.3.2 信任原理
6.3.3 信任链校验
6.3.4 信任锚
6.3.5 委派和交叉认证
6.3.6 证书完整校验
6.4 CRL
6.4.1 证书过期和吊销
6.4.2 证书被吊销的原因
6.4.3 CRL是什么
6.4.4 CRL校验
6.4.5 CRL的结构
6.4.6 CRL存在的问题
6.5 OCSP
6.5.1 OCSP是什么
6.5.2 OCSP模型概述
6.5.3 OCSP详解
6.6 OCSP封套
6.6.1 OCSP的优缺点
6.6.2 OCSP封套的工作原理
6.6.3 OCSP封套的优点
6.6.4 OCSP封套的兼容性
6.7 OpenSSL命令行管理证书
6.7.1 证书格式
6.7.2 证书的其他格式
6.7.3 获取线上证书
6.7.4 导入证书到根证书库
6.7.5 OpenSSL管理CSR
6.7.6 OpenSSL生成证书
6.7.7 OpenSSL查看证书
6.7.8 校验CRL
6.7.9 校验OCSP
6.7.10 校验OCSP封套
6.8 其他
6.8.1 如何选择一个CA机构
6.8.2 证书的透明度
第7章 Let’s Encrypt免费证书
7.1 Let’s Encrypt
7.1.1 Let’s Encrypt CA机构的特点
7.1.2 Let’s Encrypt证书的特点
7.2 Let’s Encrypt工作原理
7.2.1 域名校验过程
7.2.2 请求、更新、续期、撤销证书流程
7.3 Certbot客户端
7.3.1 安装Certbot客户端
7.3.2 用户注册
7.3.3 获取和安装证书
7.3.4 Certbot Nginx插件
7.3.5 Certbot Apache插件
7.3.6 Certbot Webroot插件
7.3.7 Certbot Standalone插件
7.3.8 Certbot Manual插件
7.3.9 Certbot管理证书
7.3.10 Certbot查看证书
7.3.11 Certbot撤销证书
7.3.12 Certbot Revoking证书
7.3.13 Certbot高级操作
7.4 Let’s Encrypt的其他信息
第8章 TLS协议分析
8.1 如何理解RFC文档
8.2 描述语言
8.3 TLS/SSL协议概述
8.4 TLS记录层协议
8.4.1 连接状态
8.4.2 TLS记录层协议的处理步骤
8.5 TLS/SSL握手协议
8.5.1 Client Hello子消息
8.5.2 Server Hello子消息
8.5.3 Server Certificate子消息
8.5.4 Server Key Exchange子消息
8.5.5 Server Hello Done子消息
8.5.6 Client Key Exchange子消息
8.5.7 计算主密钥和密钥块
8.5.8 Change Cipher Spec协议
8.5.9 Finished子消息
8.6 扩展
8.6.1 ECC椭圆曲线扩展
8.6.2 signed_certificate_timestamp
8.6.3 Status Request扩展
8.6.4 renegotiation_info重协商扩展
8.6.5 ALPN扩展
8.6.6 Maximum Fragment Length扩展
8.6.7 SNI扩展
8.6.8 Signature Algorithms扩展
8.7 基于Session ID的会话恢复
8.7.1 什么是会话
8.7.2 Session ID的工作原理
8.7.3 Session ID的优缺点
8.8 SessionTicket
8.8.1 SessionTicket的应用场景
8.8.2 SessionTicket的交互流程
8.8.3 SessionTicket TLS扩展
8.8.4 NewSessionTicket握手子消息
8.8.5 两种会话恢复方式如何共存
8.9 使用Wireshark学习TLS/SSL协议
8.9.1 Wireshark的几个使用技巧
8.9.2 使用Wireshark分析TLS/SSL协议
第9章 HTTPS性能和安全
9.1 密码套件
9.1.1 密码套件编号
9.1.2 关键字和关键字修饰符
9.1.3 密码套件一览
9.2 安全性
9.2.1 已知的安全漏洞
9.2.2 常规建议
9.2.3 密码套件
9.2.4 前向安全性
9.2.5 证书
9.2.6 从客户端审视安全性
9.2.7 应用层安全建议
9.3 性能
9.3.1 网络层优化
9.3.2 应用层优化
9.3.3 HTTP/2优化
9.3.4 TLS/SSL优化
9.3.5 TLS/SSL优化方案
第10章 HTTPS网站实战
10.1 工具化配置HTTPS
10.1.1 SSL Configuration Generator
10.1.2 Cloudflare推荐的配置
10.2 自动化测试HTTPS网站
10.2.1 SSL Server Test
10.2.2 SSL Client Test
10.2.3 SSL Pulse
10.3 OpenSSL命令行工具
10.3.1 s_client工具
10.3.2 s_server工具
10.3.3 其他工具
10.4 实战HTTPS网站部署
10.4.1 使用Nginx+OpenSSL部署HTTPS网站
10.4.2 使用Nginx+BoringSSL部署HTTPS网站
10.5 大型网站部署HTTPS
10.5.1 系统架构
10.5.2 HTTPS网站的部署方式
10.5.3 其他部署问题
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜