《WEB开发的身份和数据安全》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:(美)乔纳森·勒布朗,蒂姆·梅塞施米特著;安道译
  • 出 版 社:北京:中国电力出版社
  • 出版年份:2018
  • ISBN:9787519814205
  • 页数:192 页
图书介绍:本书深入探讨了构建保护数据和身份安全的接口所要掌握的概念、技术和编程方法论,而且兼顾可用性。你将学到如何弥补现有系统的漏洞、防御各种各样的攻击媒介,以及如何在天生不安全的环境中保障自身周全。本书主要内容有:了解Web和应用安全的现状。构建安全的密码加密方式,以及与各种密码攻击媒介斗争。创建数字指纹,在浏览器、设备和配对设备中识别用户。通过OAuth和OpenID Connect构建安全的数据传输系统。使用其他的识别方法提供第二种身份验证方式。加固 Web应用,防止攻击。使用SSL/TLS及同步和异步加密创建安全的数据传输系统。

前言 1

第1章 导论 7

现有安全模型的问题 7

弱密码 8

为了安全牺牲可用性 9

不当的数据加密 10

最薄弱的环节:人类 11

单点登录 12

理解密码安全中的熵 13

随机选择的密码熵 14

人为选定的密码熵 15

区分用户名和密码在系统中的作用 17

保护身份的当前标准 18

好的和不好的安全算法 18

应该保护哪些数据? 20

账户恢复机制和社会工程 20

安全问题带来的问题 20

下一步 21

第2章 密码加密、哈希和加盐 22

静态数据和动态数据 22

静态数据 22

动态数据 24

密码攻击媒介 24

暴力攻击 26

使用reCAPTCHA添加验证码 27

字典攻击 33

反向查询表 34

彩虹表 35

加盐 37

生成随机盐值 38

重用盐值 39

盐值的长度 39

把盐值存储在哪里 39

撒胡椒 40

选择正确的密码哈希函数 41

bcrypt 41

PBKDF2 43

scrypt 44

对比哈希值,验证密码 46

密钥延伸 47

重新计算哈希值 48

下一步 48

第3章 身份安全基础知识 49

理解不同的身份类型 49

社会身份 50

实际身份 50

弱身份 51

利用身份提升用户体验 51

信任区简介 52

浏览器指纹识别 53

阻碍浏览器指纹识别的配置 54

可识别的浏览器信息 55

获取浏览器细节 56

位置追踪 58

设备指纹识别(手机/平板) 61

设备指纹识别(蓝牙配对设备) 62

实现身份 63

第4章 通过OAuth 2和OpenID Connect实现安全的登录 64

身份验证和授权之间的区别 64

身份验证 64

授权 65

OAuth和OpenID Connect是什么 65

OAuth 2.0简介 68

使用OAuth 2.0处理授权 70

OAuth 2.0权限核发类型 72

使用Bearer Token 73

使用OpenID Connect授权和验证身份 73

OAuth 2和OAuth 1.0a之间的安全注意事项 75

构建一个OAuth 2.0服务器 75

创建Express应用 76

设置服务器的数据库 76

生成授权码和令牌 77

ES5中Math.random()函数的官方文档 79

授权端点 80

处理令牌的存活期 83

处理资源请求 87

使用刷新令牌 89

处理错误 90

为服务器添加OpenID Connect功能 94

ID令牌模式 95

修改授权端点 96

调整令牌端点 97

userinfo端点 99

使用OpenID Connect管理会话 99

构建OAuth 2客户端 100

使用授权码 100

使用资源属主凭据或客户端凭据授权 103

为客户端添加OpenID Connect功能 105

OpenID Connect基本流程 105

OAuth 2.0和OpenID Connect之外 107

第5章 身份认证的其他方法 108

设备和浏览器指纹识别 108

双因素身份验证和n因素身份验证 109

n因素身份验证 109

一次性密码 110

使用Authy实现双因素身份验证 113

使用生物特征代替密码 120

如何评价生物特征的效果 121

面部识别 121

视网膜和虹膜扫描 122

静脉识别 123

新出现的标准 123

FIDO Alliance 123

Oz 126

区块链 126

小结 127

第6章 增强Web应用的安全 128

保护会话 128

会话的种类 129

Express处理会话的方式 130

使用SHA-2保护密码 131

处理XSS 134

XSS攻击的三种类型 134

测试XSS保护机制 135

小结 140

CSRF攻击 140

使用csurf处理CSRF 140

有用的Node资源 141

Lusca 142

Helmet 142

Node安全项目 143

其他减轻危害的技术 144

小结 145

第7章 数据传输安全 147

SSL/TLS 147

证书验证类型和权威机构 149

创建供测试的自签名证书 151

异步加密 159

用例 159

具体示例 161

异步加密的优缺点和用途 167

同步加密 168

初始向量 169

填充 170

分组加密的操作模式 172

使用CTR加密模式的AES 174

使用GCM验证加密模式的AES 177

同步加密的优缺点和用途 179

附录A GitHub仓库 181

附录B 技术前提条件和要求 183

词汇表 191