注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)密碼技術(shù)與物聯(lián)網(wǎng)安全:mbedtls開(kāi)發(fā)實(shí)戰(zhàn)

密碼技術(shù)與物聯(lián)網(wǎng)安全:mbedtls開(kāi)發(fā)實(shí)戰(zhàn)

密碼技術(shù)與物聯(lián)網(wǎng)安全:mbedtls開(kāi)發(fā)實(shí)戰(zhàn)

定 價(jià):¥79.00

作 者: 徐凱,崔紅鵬 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng): 物聯(lián)網(wǎng)核心技術(shù)叢書(shū)
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787111620013 出版時(shí)間: 2019-03-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 368 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)是國(guó)內(nèi)一本理論結(jié)合實(shí)踐的物聯(lián)網(wǎng)安全書(shū)籍,包括數(shù)論基礎(chǔ)知識(shí)、密碼學(xué)算法、TLS/DTLS協(xié)議、物聯(lián)網(wǎng)安全協(xié)議CoAPs等部分。本書(shū)試圖打破物聯(lián)網(wǎng)工程師、嵌入式工程師與Web開(kāi)發(fā)工程師之間的知識(shí)鴻溝,通過(guò)圖文并茂的方式說(shuō)明密碼技術(shù)與物聯(lián)網(wǎng)安全。 本書(shū)具有以下特點(diǎn): ?密碼學(xué)算法部分除了理論知識(shí)之外,還包括mbedtls示例代碼,可以幫助讀者更快地理解晦澀難懂的密碼技術(shù)。本書(shū)基于嵌入式硬件平臺(tái)描述密碼學(xué)算法性能,通過(guò)示例代碼分析密碼學(xué)算法資源消耗情況,并給出實(shí)戰(zhàn)建議。 ?緊扣物聯(lián)網(wǎng)安全發(fā)展趨勢(shì)。認(rèn)證加密算法部分,本書(shū)詳細(xì)描述了認(rèn)證加密算法CCM模式和GCM模式;橢圓曲線算法部分,本書(shū)詳細(xì)描述了橢圓曲線密碼算法的數(shù)學(xué)基礎(chǔ)以及安全原理; ?TLS/DTLS協(xié)議部分。本書(shū)以物聯(lián)網(wǎng)終端的角度詳細(xì)描述TLS/DTLS協(xié)議的實(shí)現(xiàn)過(guò)程,按照密鑰交換、密鑰計(jì)算、對(duì)稱加密等部分展開(kāi),并總結(jié)了物聯(lián)網(wǎng)設(shè)備使用TLS/DTLS協(xié)議的建議; ?物聯(lián)網(wǎng)安全協(xié)議CoAPs部分。本書(shū)詳細(xì)描述了物聯(lián)網(wǎng)安全協(xié)議CoAPs,CoAPs依賴DTLS協(xié)議,它可在占用較少資源的情況下為終端設(shè)備提供安全連接能力。

作者簡(jiǎn)介

  徐凱 阿里云IoT開(kāi)發(fā)工程師,花名左相。物聯(lián)網(wǎng)技術(shù)實(shí)踐者與研究者,對(duì)物聯(lián)網(wǎng)傳輸協(xié)議、物聯(lián)網(wǎng)安全和物聯(lián)網(wǎng)數(shù)據(jù)存儲(chǔ)有常深刻的認(rèn)識(shí)與理解。多年嵌入式與物聯(lián)網(wǎng)系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn),涉獵終端設(shè)備,邊緣計(jì)算與物聯(lián)網(wǎng)平臺(tái)等多個(gè)領(lǐng)域。編寫(xiě)大量關(guān)于物聯(lián)網(wǎng)應(yīng)用、物聯(lián)網(wǎng)操作系統(tǒng),物聯(lián)網(wǎng)傳輸協(xié)議相關(guān)的技術(shù)博文,博文廣受好評(píng)。著有《IoT開(kāi)發(fā)實(shí)戰(zhàn) CoAP卷》。 崔紅鵬 嵌入式軟件工程師,現(xiàn)就職于清華大學(xué)無(wú)錫應(yīng)用技術(shù)研究院——微納電子與系統(tǒng)芯片實(shí)驗(yàn)室?!癈PU硬件安全動(dòng)態(tài)監(jiān)測(cè)管控技術(shù)”項(xiàng)目組成員,負(fù)責(zé)密碼學(xué)算法實(shí)現(xiàn)和SDK開(kāi)發(fā),該項(xiàng)目曾獲 “2018年世界互聯(lián)網(wǎng)大會(huì)15項(xiàng)全球領(lǐng)先科技成果”。物聯(lián)網(wǎng)安全愛(ài)好者,對(duì)嵌入式系統(tǒng)、密碼學(xué)技術(shù)和安全應(yīng)用方案有深入研究,積極參與開(kāi)源項(xiàng)目,為GmSSL和zephyr等開(kāi)源項(xiàng)目貢獻(xiàn)過(guò)代碼。

圖書(shū)目錄

推薦序一
推薦序二
前言
第1章 物聯(lián)網(wǎng)安全概述 1
1.1 本章主要內(nèi)容 1
1.2 物聯(lián)網(wǎng)安全基礎(chǔ) 1
1.2.1 物聯(lián)網(wǎng)安全與互聯(lián)網(wǎng)安全 1
1.2.2 物聯(lián)網(wǎng)安全與密碼學(xué) 2
1.3 密碼學(xué)安全常識(shí) 3
1.3.1 柯克霍夫原則 3
1.3.2 Alice和Bob 4
1.3.3 Eve和Mallory 4
1.4 mbedtls簡(jiǎn)介 5
1.4.1 密碼學(xué)工具箱 5
1.4.2 TLS/DTLS協(xié)議 6
1.4.3 X.509證書(shū) 6
1.5 OpenSSL簡(jiǎn)介 7
1.5.1 源代碼安裝 7
1.5.2 命令行工具簡(jiǎn)介 8
1.5.3 摘要命令 dgst 8
1.5.4 對(duì)稱加密命令 enc 8
1.5.5 SSL命令 s_server 9
1.6 本章小結(jié) 11
第2章 mbedtls入門(mén) 12
2.1 本章主要內(nèi)容 12
2.2 mbedtls 體系結(jié)構(gòu) 12
2.3 Linux mbedtls 安裝 13
2.3.1 安裝 CMake 13
2.3.2 使用 CMake 安裝 mbedtls 14
2.4 Linux mbedtls 示例 17
2.4.1 Base64示例 17
2.4.2 遍歷 mbedtls 安全套件 20
2.5 Zephyr OS 簡(jiǎn)介 24
2.6 Zephyr 開(kāi)發(fā)環(huán)境搭建 25
2.7 Zephyr 硬件平臺(tái)選擇 26
2.7.1 資源介紹 27
2.7.2 Ubuntu中安裝STLink工具 28
2.8 Zephyr 應(yīng)用示例開(kāi)發(fā) 28
2.8.1 編寫(xiě) CMakeLists.txt 29
2.8.2 編寫(xiě) prj.conf 29
2.8.3 編寫(xiě) main.c 29
2.8.4 編譯與運(yùn)行 30
2.9 Zephyr mbedtls 示例 31
2.9.1 Base64示例 31
2.9.2 大數(shù)運(yùn)算示例 35
2.10 本章小結(jié) 39
第3章 數(shù)論基礎(chǔ)知識(shí) 41
3.1 本章主要內(nèi)容 41
3.2 素?cái)?shù) 42
3.3 模運(yùn)算 43
3.3.1 模數(shù) 43
3.3.2 同余 43
3.3.3 模算術(shù)運(yùn)算 44
3.3.4 模逆運(yùn)算 44
3.3.5 模重復(fù)平方 46
3.4 群 47
3.4.1 群的基本概念 47
3.4.2 循環(huán)群 48
3.4.3 子群 49
3.5 域 50
3.5.1 域的基本概念 50
3.5.2 有限域和素域 50
3.5.3 擴(kuò)展域GF(2m) 52
3.5.4 GF(2m)加法和減法 53
3.5.5 GF(2m)乘法 53
3.5.6 GF(2m)逆操作 55
3.6 歐拉函數(shù) 56
3.7 歐拉定理 56
3.8 費(fèi)馬小定理 57
3.9 離散對(duì)數(shù) 57
3.9.1 模算術(shù)–指數(shù) 57
3.9.2 模算術(shù)–對(duì)數(shù) 58
3.9.3 離散對(duì)數(shù)問(wèn)題 59
3.10 本章小結(jié) 59
第4章 單向散列函數(shù) 60
4.1 本章主要內(nèi)容 60
4.2 單向散列函數(shù)原理 60
4.2.1 單向散列函數(shù)性質(zhì) 61
4.2.2 單向散列函數(shù)應(yīng)用 62
4.3 單向散列函數(shù)的實(shí)現(xiàn)方法 63
4.3.1 MD算法家族 63
4.3.2 SHA算法家族 63
4.4 SHA256 詳細(xì)描述 64
4.4.1 預(yù)處理 64
4.4.2 哈希計(jì)算 66
4.4.3 具體示例 68
4.5 mbedtls 單向散列應(yīng)用工具 69
4.5.1 hello 69
4.5.2 generic_sum 69
4.6 mbedtls SHA256示例 70
4.6.1 示例描述 70
4.6.2 示例代碼 70
4.6.3 代碼說(shuō)明 72
4.6.4 編譯與運(yùn)行 74
4.7 本章小結(jié) 74
第5章 對(duì)稱加密算法 76
5.1 本章主要內(nèi)容 76
5.2 對(duì)稱加密算法原理 76
5.3 分組密碼模式 77
5.3.1 ECB(電子密碼本)模式 77
5.3.2 CBC(密碼分組鏈接)模式 78
5.3.3 CTR(計(jì)數(shù)器)模式 79
5.4 PKCS7填充方案 81
5.5 AES算法概述 82
5.6 AES 算法詳細(xì)說(shuō)明 84
5.6.1 字節(jié)替換 84
5.6.2 行移位 86
5.6.3 列混合 87
5.6.4 輪密鑰加法 87
5.6.5 輪密鑰生成 88
5.7 AES算法動(dòng)手實(shí)踐 90
5.8 mbedtls 對(duì)稱加密應(yīng)用工具 91
5.8.1 aescrypto2 91
5.8.2 crypt_and_hash 92
5.9 mbedtls AES示例 93
5.9.1 示例描述 93
5.9.2 示例代碼 94
5.9.3 代碼說(shuō)明 96
5.9.4 編譯與運(yùn)行 97
5.10 本章小結(jié) 99
第6章 消息認(rèn)證碼 100
6.1 本章主要內(nèi)容 100
6.2 消息認(rèn)證碼原理 100
6.3 消息認(rèn)證碼實(shí)現(xiàn)方法 102
6.3.1 單向散列算法實(shí)現(xiàn) 102
6.3.2 分組密碼實(shí)現(xiàn) 102
6.3.3 認(rèn)證加密算法實(shí)現(xiàn) 102
6.4 HMAC算法 102
6.5 CBC-MAC和CMAC 104
6.5.1 CBC-MAC 104
6.5.2 CMAC 104
6.6 認(rèn)證加密CCM 106
6.6.1 輸入數(shù)據(jù)格式化 106
6.6.2 認(rèn)證和加密 108
6.7 認(rèn)證加密GCM 109
6.7.1 GHASH 110
6.7.2 GCTR 110
6.7.3 認(rèn)證和加密 111
6.8 mbedtls HMAC示例 112
6.8.1 示例代碼 113
6.8.2 代碼說(shuō)明 114
6.8.3 編譯與運(yùn)行 116
6.9 mbedtls GCM 示例 117
6.9.1 示例代碼 117
6.9.2 代碼說(shuō)明 119
6.9.3 編譯與運(yùn)行 120
6.10 本章小結(jié) 121
第7章 偽隨機(jī)數(shù)生成器 122
7.1 本章主要內(nèi)容 122
7.2 隨機(jī)數(shù)概述 122
7.3 隨機(jī)數(shù)生成器 123
7.3.1 真隨機(jī)數(shù)生成器 123
7.3.2 偽隨機(jī)數(shù)生成器 124
7.4 CTR_DRBG算法 125
7.4.1 參數(shù)情況 125
7.4.2 生成過(guò)程 125
7.5 mbedtls 隨機(jī)數(shù)應(yīng)用工具 126
7.5.1 gen_entropy 126
7.5.2 gen_random_ctr_drbg 127
7.5.3 gen_random_havege 127
7.6 mbedtls CTR_DRBG示例 128
7.6.1 示例代碼 128
7.6.2 代碼說(shuō)明 130
7.6.3 編譯與執(zhí)行 131
7.7 mbedtls 大素?cái)?shù)生成示例 132
7.7.1 示例代碼 133
7.7.2 代碼說(shuō)明 135
7.7.3 編譯與執(zhí)行 135
7.8 mbedtls 自定義熵源接口 136
7.9 本章小結(jié) 137
第8章 RSA算法 138
8.1 本章主要內(nèi)容 138
8.2 RSA算法原理 138
8.3 RSA 算法詳細(xì)說(shuō)明 140
8.4 RSA加速技術(shù) 141
8.4.1 中國(guó)剩余數(shù)定理 142
8.4.2 動(dòng)手實(shí)踐 142
8.4.3 性能對(duì)比 143
8.5 RSA 填充方法 144
8.5.1 PKCS1-V1_5 144
8.5.2 OAEP 145
8.6 mbedtls RSA應(yīng)用工具 146
8.6.1 rsa_genkey 146
8.6.2 rsa_encrypt 147
8.6.3 rsa_decrypt 148
8.7 mbedtls RSA加解密示例 148
8.7.1 示例代碼 149
8.7.2 代碼說(shuō)明 151
8.7.3 編譯與執(zhí)行 153
8.8 本章小結(jié) 155
第9章 DH密鑰協(xié)商 156
9.1 本章主要內(nèi)容 156
9.2 DH密鑰協(xié)商數(shù)學(xué)基礎(chǔ) 156
9.3 DH密鑰協(xié)商詳細(xì)說(shuō)明 157
9.3.1 DH共享參數(shù) 157
9.3.2 DH密鑰協(xié)商 158
9.3.3 DH具體實(shí)踐 158
9.3.4 DH密鑰協(xié)商安全性分析 159
9.4 常用共享參數(shù) 161
9.5 mbedtls DH應(yīng)用工具 162
9.5.1 dh_genprime 163
9.5.2 dh_server 164
9.5.3 dh_client 165
9.6 mbedtls DH示例 165
9.6.1 示例代碼 166
9.6.2 代碼說(shuō)明 168
9.6.3 編譯與執(zhí)行 170
9.7 本章小結(jié) 172
第10章 ECDH密鑰協(xié)商 173
10.1 本章主要內(nèi)容 173
10.2 橢圓曲線定義 173
10.2.1 實(shí)數(shù)域上的橢圓曲線 174
10.2.2 有限域上的橢圓曲線 175
10.3 橢圓曲線上群操作 176
10.3.1 群操作幾何描述 176
10.3.2 群操作代數(shù)描述 177
10.3.3 群操作動(dòng)手實(shí)踐 178
10.4 橢圓曲線離散對(duì)數(shù)問(wèn)題 180
10.5 常用有限域上的橢圓曲線 181
10.6 ECDH密鑰協(xié)商 183
10.6.1 ECDH共享參數(shù) 184
10.6.2 密鑰協(xié)商過(guò)程 184
10.6.3 動(dòng)手實(shí)踐 184
10.7 mbedtls橢圓曲線模塊 185
10.8 mbedtls ECDH示例 187
10.8.1 示例代碼 188
10.8.2 代碼說(shuō)明 190
10.8.3 編譯與執(zhí)行 192
10.9 本章小結(jié) 193
第11章 數(shù)字簽名RSA、DSA和ECDSA 194
11.1 本章主要內(nèi)容 194
11.2 數(shù)字簽名原理 194
11.3 RSA 數(shù)字簽名 196
11.3.1 RSA數(shù)字簽名詳細(xì)說(shuō)明 196
11.3.2 RSA數(shù)字簽名動(dòng)手實(shí)踐 197
11.3.3 RSA簽名填充方法 197
11.4 DSA數(shù)字簽名 199
11.4.1 DSA數(shù)字簽名詳細(xì)說(shuō)明 199
11.4.2 DSA簽名動(dòng)手實(shí)踐 200
11.5 ECDSA數(shù)字簽名 201
11.5.1 ECDSA數(shù)字簽名詳細(xì)說(shuō)明 201
11.5.2 ECDSA動(dòng)手實(shí)踐 203
11.6 mbedtls 數(shù)字簽名應(yīng)用工具 204
11.6.1 rsa_genkey 204
11.6.2 rsa_sign 204
11.6.3 rsa_verify 205
11.7 mbedtls RSA簽名示例 205
11.7.1 示例代碼 206
11.7.2 代碼說(shuō)明 208
11.7.3 編譯與執(zhí)行 209
11.8 mbedtls ECDSA示例 211
11.8.1 示例代碼 211
11.8.2 代碼說(shuō)明 214
11.8.3 編譯與執(zhí)行 215
11.9 本章小結(jié) 216
第12章 數(shù)字證書(shū)X.509 217
12.1 本章主要內(nèi)容 217
12.2 數(shù)字證書(shū)原理 217
12.3 X.509證書(shū)標(biāo)準(zhǔn) 219
12.3.1 證書(shū)結(jié)構(gòu) 219
12.3.2 證書(shū)名稱 219
12.3.3 證書(shū)實(shí)例 220
12.4 mbedtls X.509應(yīng)用工具 224
12.4.1 cert_req 225
12.4.2 req_app 226
12.4.3 cert_write 227
12.4.4 cert_app 229
12.5 mbedtls X.509示例 231
12.5.1 示例代碼 232
12.5.2 代碼說(shuō)明 234
12.5.3 編譯與執(zhí)行 236
12.6 本章小結(jié) 237
第13章 mbedtls 移植與性能分析 238
13.1 本章主要內(nèi)容 238
13.2 mbedtls移植 238
13.2.1 時(shí)間相關(guān) 239
13.2.2 網(wǎng)絡(luò)相關(guān) 240
13.2.3 內(nèi)存分配相關(guān) 241
13.3 mbedtls算法性能說(shuō)明 243
13.3.1 單向散列函數(shù) 243
13.3.2 AES算法 244
13.3.3 AES-GCM和AES-CCM 245
13.3.4 偽隨機(jī)數(shù)生成器 246
13.3.5 RSA 247
13.3.6 DHE和ECDHE 248
13.3.7 ECDSA 248
13.3.8 ECC內(nèi)存優(yōu)化 250
13.4 本章小結(jié) 253
第14章 TLS 254
14.1 本章主要內(nèi)容 254
14.2 TLS原理 254
14.2.1 TLS設(shè)計(jì)目標(biāo) 256
14.2.2 TLS框架說(shuō)明 256
14.3 TLS密碼套件 257
14.4 TLS記錄層協(xié)議 258
14.5 密碼規(guī)格變更協(xié)議 260
14.6 警報(bào)協(xié)議 260
14.7 握手協(xié)議 261
14.7.1 握手協(xié)議概述 261
14.7.2 完整握手過(guò)程 263
14.7.3 會(huì)話恢復(fù) 270
14.8 TLS密鑰交換 271
14.8.1 密鑰交換算法對(duì)比 271
14.8.2 ECDHE密鑰交換 272
14.8.3 ECDH與ECDHE的區(qū)別 275
14.9 TLS密鑰計(jì)算 276
14.9.1 偽隨機(jī)數(shù)生成函數(shù) 276
14.9.2 主密鑰計(jì)算 278
14.9.3 KeyBlock計(jì)算 278
14.9.4 密鑰計(jì)算示例 279
14.10 對(duì)稱加密 281
14.10.1 分組加密 281
14.10.2 認(rèn)證加密 284
14.10.3 對(duì)稱加密示例 285
14.10.4 對(duì)稱加密結(jié)果長(zhǎng)度對(duì)比 287
14.11 mbedtls TLS應(yīng)用工具 287
14.11.1 基礎(chǔ)示例說(shuō)明 289
14.11.2 啟動(dòng) ssl_server2 290
14.11.3 抓取網(wǎng)絡(luò)數(shù)據(jù) 290
14.11.4 啟動(dòng) ssl_client2 291
14.11.5 分析網(wǎng)絡(luò)數(shù)據(jù) 291
14.12 構(gòu)建TLS服務(wù)器 293
14.12.1 生成證書(shū) 293
14.12.2 編寫(xiě)HTML頁(yè)面 295
14.12.3 啟動(dòng)s_server 295
14.12.4 驗(yàn)證服務(wù)器 29

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) www.talentonion.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)