《嚴肅的密碼學:實用現代加密術》,作者是【瑞士】Jean-Philippe Aumasson。
這本面向實踐的現代密碼學指南原理性內容紮實,將密碼學中的核心數學概念各個擊破。
基本介紹
- 書名:嚴肅的密碼學:實用現代加密術
- 作者:【瑞士】Jean-Philippe Aumasson
- 譯者:陳華瑾 等
- 出版社:電子工業出版社
- 出版時間:2021年5月
- 頁數:284 頁
- 定價:99 元
- 開本:16 開
- ISBN:9787121410864
內容簡介,圖書目錄,作者簡介,
內容簡介
本書並非淚只婚懂淺嘗輒止的領域概述,而是全面深入地討論了密碼工程的理論、技術以及最新進展。
圖書目錄
第1章 加密 1
基礎知識 1
古典密碼 2
凱撒密碼 2
維吉尼亞密碼 3
密碼是如何工作的 4
置換 4
操作模式 5
為什麼古典密碼不安全 6
一次一密加密過程 7
為什麼一次一密安全 8
加密安全性 9
攻擊模型 9
安全目標 11
安全概念 12
非對稱加密 14
加密之外的密碼學 14
認證加密 15
格式保持加密 15
全同態加密 16
可搜尋加密 16
可調加密 16
意外如何發生 17
弱密碼 17
錯誤模型 18
拓展閱讀 18
第2章 隨機性 19
隨機與非隨機 19
作為機率分布的隨機性 20
熵:不確定性的度量指標 21
隨機數發生器和偽隨機數發生器 22
PRNG如何工作 23
安全問題 23
PRNG Fortuna 24
統計測試不重要 26
現實世界中的PRNG 27
在基於UNIX的系統中生成隨機比特 27
基於硬體的PRNG:英特爾微處理器中的RDRAND 32
意外如何發生 33
熵源不理想 33
啟動時熵不足 34
非加密PRNG 35
對強隨機性的採樣漏洞 35
拓展閱讀 36
第3章 密碼學中的頁捆擊安全性 37
不可能的定義 37
理論上安全:信息安全性 38
實際安全:計算安全性 38
量化安全性 40
以比特度量安全性 40
全攻擊敬鍵陵成本 41
選擇和評估安全強度 42
安全實現 43
可證明安全性 43
啟發式安全性 46
密鑰生成 46
生成對稱密鑰 47
生成非對稱密鑰 47
保護密鑰 48
意外如何發生 49
不正確的安全性證明 49
支持遺留系統的短密鑰 49
拓展閱讀 50
第4章 分組密碼 51
什麼是分組密碼 51
安全目標 52
分組大小 52
碼本攻擊 53
如何構造分組密碼 53
分組密碼的輪數 53
滑動攻擊和子密鑰 54
替換-置換網路 54
Feistel結構 55
高級加密標準(AES) 56
AES核心 56
使用AES 59
實現AES 60
基於查詢表實現 60
原生指令集 61
AES安全嗎 62
工作方式 63
電碼本模式(ECB) 63
密碼分組連結(CBC)模式 65
如何在CBC模式中加密訊息 67
計數(CTR)模式 68
意外如何發生 70
中間相遇攻擊 70
Padding Oracle攻擊 71
拓展閱讀 73
第5章 序列密碼 75
序列密碼的工作采霉原理 76
基於狀態轉移的和基於計數器的采店地序列密碼 76
面向硬體的序列密碼 77
反饋移位暫存器 78
Grain-128a算法 84
A5/1算法 85
面向軟體的序列密碼 88
RC4 89
Salsa20 93
意外如何發生 98
nonce的重複使用 98
破解RC4 98
硬體燒制時的弱密碼 100
拓展閱讀 101
第6章 哈希函式 103
哈希函式的安全性 104
不可預測性 104
原像攻擊抗性 105
抗碰撞性 107
查找碰撞 107
構造哈希函式 109
基於壓縮的哈希函式:Merkle–Damgård結構 109
基於置換的哈希函式:海綿函式 112
哈希函式SHA系列 113
SHA-1 113
SHA-2 116
SHA-3競賽 117
Keccak(SHA-3) 118
BLAKE2哈希函式 120
意外如何發生 122
長度擴展攻擊 122
欺騙存儲證明協定 122
拓展閱讀 123
第7章 帶密鑰的哈希 125
訊息認證碼 125
安全通信中的訊息認證碼 126
偽造和選擇訊息攻擊 126
重放攻擊 126
偽隨機函式 127
PRF的安全性 127
為什麼PRF比MAC更安全 127
從不帶密鑰的哈希構建帶密鑰的哈希 128
加秘密前綴的構造方法囑擊燥 128
帶秘密後綴的構造方法 129
HMAC的構造方法 129
針對基於哈希的MAC的一般攻擊 130
由分組密碼構造的帶密鑰哈希:CMAC 131
破解CBC-MAC 132
修改CBC-MAC 132
專用設計 133
Poly1305 134
SipHash 136
意外如何發生 138
針對MAC認證的計時攻擊 138
當海綿結構泄露 140
拓展閱讀 141
第8章 認證加密 143
使用MAC的認證加密 143
同時完成加密和MAC 144
先MAC再加密 145
先加密茅享雅體再MAC 145
認證加密 146
使用關聯數據的認證加密 146
使用nonce來避免可預測性 147
怎樣才是一個好的認證加密算法 147
AES-GCM:認證加密算法標準 149
GCM的內部結構: CTR和GHASH 149
GCM的安全性 151
GCM的效率 152
OCB: 比GCM更快的認證加密算法 152
OCB的內部結構 153
OCB的安全性 154
OCB的效率 154
SIV是最安全的認證算法嗎 154
基於置換的AEAD 155
意外如何發生 156
AES-GCM和弱哈希密鑰 157
AES-GCM和短標籤 159
拓展閱讀 159
第9章 困難問題 161
計算困難性 161
測量運行時間 162
多項式時間vs超多項式時間 164
複雜度的分類 166
非確定多項式時間 166
NP完全問題 167
P問題vs NP問題 168
因數分解問題 169
實踐中的分解大數算法 170
分解算法是NP完全的嗎 171
離散對數問題 172
群是什麼 172
困難之處 173
意外如何發生 174
容易分解的情況 174
小規模的困難問題並不困難 175
拓展閱讀 176
第10章 RSA 179
RSA背後的數學概念 180
RSA陷門置換 181
RSA的密鑰生成和安全性 181
RSA加密 183
利用教科書式RSA加密的擴展性進行攻擊 183
加強版RSA加密:OAEP 184
RSA簽名 186
針對教科書式RSA簽名的攻擊 186
PSS簽名標準 187
全域哈希簽名 188
RSA的實現 189
快速求冪算法:平方乘 190
用於更快公鑰操作的小指數 192
中國剩餘定理 193
意外如何發生 194
針對RSA-CRT的Bellcore攻擊 194
共享秘密指數或共享模數 195
拓展閱讀 197
第11章 Diffie-Hellman 199
Diffie-Hellman函式 200
Diffie-Hellman問題 201
計算Diffie-Hellman問題 201
決策Diffie-Hellman問題 202
更多的Diffie-Hellman問題 202
密鑰協商協定 203
非DH密鑰協商協定示例 203
密鑰協商協定的攻擊模型 204
效能 205
Diffie-Hellman協定 206
匿名Diffie-Hellman協定 206
含身份驗證的Diffie-Hellman協定 207
Menezes–Qu–Vanstone(MQV)協定 210
意外如何發生 211
不哈希共享秘密 211
TLS中Diffie–Hellman的歷史遺留問題 212
不安全的群參數 212
拓展閱讀 213
第12章 橢圓曲線 215
什麼是橢圓曲線 216
整數上的橢圓曲線 217
加法點和乘法點 219
橢圓曲線群 222
ECDLP問題 222
橢圓曲線上的Diffie–Hellman密鑰協商 223
橢圓曲線上的簽名 224
橢圓曲線上的加密 226
曲線的選擇 227
NIST曲線 227
曲線25519 228
其他曲線 228
意外如何發生 229
隨機性差的ECDSA 229
用另一條曲線破解ECDH 229
拓展閱讀 230
第13章 TLS 231
目標套用和要求 232
TLS協定套件 232
TLS和SSL協定家族的簡單歷史 232
TLS簡介 233
證書和證書頒發機構 233
記錄協定 236
TLS握手協定 237
TLS 1.3的密碼算法 239
TLS 1.3對TLS 1.2的改進 240
降級保護 240
單次往返握手 241
會話恢復 241
TLS安全性的優勢 241
認證 242
前向保密性 242
意外如何發生 242
不安全的證書頒發機構 243
不安全的伺服器 243
不安全的客戶端 243
實現中的缺陷 244
拓展閱讀 244
第14章 量子和後量子時代的密碼學 247
量子計算機的工作原理 247
量子比特 248
量子門 251
量子加速 253
指數加速和Simon問題 253
Shor算法的威脅 254
Shor算法解決因數分解問題 255
Shor算法和離散對數問題 255
Grover算法 255
為什麼製造量子計算機如此困難 257
後量子密碼算法 258
基於編碼的密碼 258
基於格的密碼 259
基於多變數的密碼 259
基於哈希的密碼 261
意外如何發生 262
不明晰的安全水平 262
快進:如果太晚會發生什麼 263
實現問題 263
拓展閱讀 264
作者簡介
Jean-Philippe Aumasson是總部位於瑞士的國際網路安全公司Kudelski Security的首席研究工程師,他在密碼學和密碼分析領域發表文章40餘篇。他設計了廣為人知的哈希函式BLAKE2和SipHash,也是Black Hat、DEF CON、Troopers和Infiltrate等信息安全會議上的常客。
譯者簡介
陳華瑾,信息工程大學網路空間安全學院副教授,2013年獲得密碼學博士學位。長期從事密碼學教學與科研工作,研究方向是對稱密碼設計與分析。
俞少華,公安部第三研究所信息網路安全公安部重點實驗室網路安全專家,2007年碩士畢業於浙江大學數學系,一直從事網路安全工作,在網路攻擊與防禦、網路安全事件取證溯源和密碼學領域有著深入研究。
碼本攻擊 53
如何構造分組密碼 53
分組密碼的輪數 53
滑動攻擊和子密鑰 54
替換-置換網路 54
Feistel結構 55
高級加密標準(AES) 56
AES核心 56
使用AES 59
實現AES 60
基於查詢表實現 60
原生指令集 61
AES安全嗎 62
工作方式 63
電碼本模式(ECB) 63
密碼分組連結(CBC)模式 65
如何在CBC模式中加密訊息 67
計數(CTR)模式 68
意外如何發生 70
中間相遇攻擊 70
Padding Oracle攻擊 71
拓展閱讀 73
第5章 序列密碼 75
序列密碼的工作原理 76
基於狀態轉移的和基於計數器的序列密碼 76
面向硬體的序列密碼 77
反饋移位暫存器 78
Grain-128a算法 84
A5/1算法 85
面向軟體的序列密碼 88
RC4 89
Salsa20 93
意外如何發生 98
nonce的重複使用 98
破解RC4 98
硬體燒制時的弱密碼 100
拓展閱讀 101
第6章 哈希函式 103
哈希函式的安全性 104
不可預測性 104
原像攻擊抗性 105
抗碰撞性 107
查找碰撞 107
構造哈希函式 109
基於壓縮的哈希函式:Merkle–Damgård結構 109
基於置換的哈希函式:海綿函式 112
哈希函式SHA系列 113
SHA-1 113
SHA-2 116
SHA-3競賽 117
Keccak(SHA-3) 118
BLAKE2哈希函式 120
意外如何發生 122
長度擴展攻擊 122
欺騙存儲證明協定 122
拓展閱讀 123
第7章 帶密鑰的哈希 125
訊息認證碼 125
安全通信中的訊息認證碼 126
偽造和選擇訊息攻擊 126
重放攻擊 126
偽隨機函式 127
PRF的安全性 127
為什麼PRF比MAC更安全 127
從不帶密鑰的哈希構建帶密鑰的哈希 128
加秘密前綴的構造方法 128
帶秘密後綴的構造方法 129
HMAC的構造方法 129
針對基於哈希的MAC的一般攻擊 130
由分組密碼構造的帶密鑰哈希:CMAC 131
破解CBC-MAC 132
修改CBC-MAC 132
專用設計 133
Poly1305 134
SipHash 136
意外如何發生 138
針對MAC認證的計時攻擊 138
當海綿結構泄露 140
拓展閱讀 141
第8章 認證加密 143
使用MAC的認證加密 143
同時完成加密和MAC 144
先MAC再加密 145
先加密再MAC 145
認證加密 146
使用關聯數據的認證加密 146
使用nonce來避免可預測性 147
怎樣才是一個好的認證加密算法 147
AES-GCM:認證加密算法標準 149
GCM的內部結構: CTR和GHASH 149
GCM的安全性 151
GCM的效率 152
OCB: 比GCM更快的認證加密算法 152
OCB的內部結構 153
OCB的安全性 154
OCB的效率 154
SIV是最安全的認證算法嗎 154
基於置換的AEAD 155
意外如何發生 156
AES-GCM和弱哈希密鑰 157
AES-GCM和短標籤 159
拓展閱讀 159
第9章 困難問題 161
計算困難性 161
測量運行時間 162
多項式時間vs超多項式時間 164
複雜度的分類 166
非確定多項式時間 166
NP完全問題 167
P問題vs NP問題 168
因數分解問題 169
實踐中的分解大數算法 170
分解算法是NP完全的嗎 171
離散對數問題 172
群是什麼 172
困難之處 173
意外如何發生 174
容易分解的情況 174
小規模的困難問題並不困難 175
拓展閱讀 176
第10章 RSA 179
RSA背後的數學概念 180
RSA陷門置換 181
RSA的密鑰生成和安全性 181
RSA加密 183
利用教科書式RSA加密的擴展性進行攻擊 183
加強版RSA加密:OAEP 184
RSA簽名 186
針對教科書式RSA簽名的攻擊 186
PSS簽名標準 187
全域哈希簽名 188
RSA的實現 189
快速求冪算法:平方乘 190
用於更快公鑰操作的小指數 192
中國剩餘定理 193
意外如何發生 194
針對RSA-CRT的Bellcore攻擊 194
共享秘密指數或共享模數 195
拓展閱讀 197
第11章 Diffie-Hellman 199
Diffie-Hellman函式 200
Diffie-Hellman問題 201
計算Diffie-Hellman問題 201
決策Diffie-Hellman問題 202
更多的Diffie-Hellman問題 202
密鑰協商協定 203
非DH密鑰協商協定示例 203
密鑰協商協定的攻擊模型 204
效能 205
Diffie-Hellman協定 206
匿名Diffie-Hellman協定 206
含身份驗證的Diffie-Hellman協定 207
Menezes–Qu–Vanstone(MQV)協定 210
意外如何發生 211
不哈希共享秘密 211
TLS中Diffie–Hellman的歷史遺留問題 212
不安全的群參數 212
拓展閱讀 213
第12章 橢圓曲線 215
什麼是橢圓曲線 216
整數上的橢圓曲線 217
加法點和乘法點 219
橢圓曲線群 222
ECDLP問題 222
橢圓曲線上的Diffie–Hellman密鑰協商 223
橢圓曲線上的簽名 224
橢圓曲線上的加密 226
曲線的選擇 227
NIST曲線 227
曲線25519 228
其他曲線 228
意外如何發生 229
隨機性差的ECDSA 229
用另一條曲線破解ECDH 229
拓展閱讀 230
第13章 TLS 231
目標套用和要求 232
TLS協定套件 232
TLS和SSL協定家族的簡單歷史 232
TLS簡介 233
證書和證書頒發機構 233
記錄協定 236
TLS握手協定 237
TLS 1.3的密碼算法 239
TLS 1.3對TLS 1.2的改進 240
降級保護 240
單次往返握手 241
會話恢復 241
TLS安全性的優勢 241
認證 242
前向保密性 242
意外如何發生 242
不安全的證書頒發機構 243
不安全的伺服器 243
不安全的客戶端 243
實現中的缺陷 244
拓展閱讀 244
第14章 量子和後量子時代的密碼學 247
量子計算機的工作原理 247
量子比特 248
量子門 251
量子加速 253
指數加速和Simon問題 253
Shor算法的威脅 254
Shor算法解決因數分解問題 255
Shor算法和離散對數問題 255
Grover算法 255
為什麼製造量子計算機如此困難 257
後量子密碼算法 258
基於編碼的密碼 258
基於格的密碼 259
基於多變數的密碼 259
基於哈希的密碼 261
意外如何發生 262
不明晰的安全水平 262
快進:如果太晚會發生什麼 263
實現問題 263
拓展閱讀 264
作者簡介
Jean-Philippe Aumasson是總部位於瑞士的國際網路安全公司Kudelski Security的首席研究工程師,他在密碼學和密碼分析領域發表文章40餘篇。他設計了廣為人知的哈希函式BLAKE2和SipHash,也是Black Hat、DEF CON、Troopers和Infiltrate等信息安全會議上的常客。
譯者簡介
陳華瑾,信息工程大學網路空間安全學院副教授,2013年獲得密碼學博士學位。長期從事密碼學教學與科研工作,研究方向是對稱密碼設計與分析。
俞少華,公安部第三研究所信息網路安全公安部重點實驗室網路安全專家,2007年碩士畢業於浙江大學數學系,一直從事網路安全工作,在網路攻擊與防禦、網路安全事件取證溯源和密碼學領域有著深入研究。