Python密碼學編程 ( 簡體 字) |
作者:[美] 塞思·詹姆斯·尼爾森(Seth James Nielson),克里斯托弗·K.蒙森(Christopher K. Monson) | 類別:1. -> 程式設計 -> Python 2. -> 安全 -> 加密與解密 |
譯者:梁原 |
出版社:清華大學出版社 | 3dWoo書號: 54637 詢問書籍請說出此書號!【有庫存】 NT售價: 400 元 |
出版日:6/1/2021 |
頁數:304 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787302576563 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:當今這個相互聯系的世界徹底改變了一切,包括銀行業、娛樂業,甚至治國之道。盡管用戶、用途和安全配置文件各不相同,但這些數字應用程序至少有一個共同點:它們都需要正確應用密碼學才能正常工作。 通俗地說,密碼學是密碼的數學。需要密碼來讓未經授權的人無法閱讀信息,讓信息無法更改,并知道是誰發送了信息。實用密碼學是在實際系統中設計和使用這些代碼。 《Python密碼學編程》主要面向缺少或幾乎沒有密碼學背景的計算機程序員。雖然數學在書中只作了簡短介紹,但總的方法是通過示例來講授密碼學的入門概念。 《Python密碼學編程》首先介紹一些基本組件,包括哈希算法、對稱加密和非對稱加密。接下來將超越加密,進入數字證書、簽名和消息驗證碼領域。最后幾章展示了這些不同元素如何以有趣和有用的方式(如Kerberos和TLS)組合在一起。 講解密碼術的另一個重要部分是列出糟糕的密碼術!《Python密碼學編程》故意破解一些密碼,以幫助讀者理解是什么催生了公認的最佳實踐。練習和示例包括真實漏洞。列舉糟糕的示例能幫助讀者更好地理解密碼學中出錯的地方和原因。 可掃描《Python密碼學編程》封底二維碼下載源代碼。 在閱讀正文時,有時會看到[*]之類的文字,這表示需要查詢《Python密碼學編程》末尾“參考文獻”中相應編號的資源。 |
內容簡介:理解密碼學的使用場合、誤用方式和原因 了解什么是安全哈希,以及安全哈希的基本屬性了解塊密碼(如AES)的算法和模式,以及不當配置的密碼為什么容易遭到破解 使用消息完整性和/或數字簽名來保護消息使用現代對稱密碼,如AES-GCM和ChaCha了解公鑰加密的基礎知識,包括ECDSA簽名了解如何破解填充不當的RSA加密 使用TLS連接進行安全通信 了解證書的工作原理,熟悉證書鎖定和CT日志等新功能 |
目錄:第1章密碼學:不僅僅是保密1 1.1設置Python環境1 1.2愷撒的移位密碼2 1.3密碼學介紹10 1.4密碼學的用途11 1.5會出現什么問題呢?12 1.6你不是密碼學家12 1.7“跳下懸崖”——互聯網13 1.8cryptodoneright.org項目14 1.9小結14 第2章哈希17 2.1使用hashlib自由哈希17 2.2進行一次哈希教育20 2.2.1原像抗性21 2.2.2第二原像抗性和抗碰撞性26 2.3哈希摘要算法28 2.4哈希密碼31 2.5破解弱密碼36 2.6工作量證明38 2.7小結41 第3章對稱加密:兩端使用同一個密鑰43 3.1加密示例43 3.2什么是加密?46 3.3AES:對稱塊密碼47 3.4ECB不適合我48 3.5想要的:自發的獨立58 3.5.1不是區塊鏈58 3.5.2流密碼71 3.6密鑰和IV管理75 3.7利用可伸縮性79 3.8弱密鑰,糟糕的管理87 3.9其他加密算法89 3.10finalize()89 第4章非對稱加密:公鑰/私鑰91 4.1兩個密鑰的故事91 4.2越來越緊張92 4.3RSA出錯94 4.4給發件箱填料100 4.5是什么讓非對稱加密與眾不同?104 4.6傳遞填充106 4.6.1確定的輸出106 4.6.2選擇性密文攻擊108 4.6.3共模攻擊111 4.7證據就在填充物里114 4.8利用PKCS#1v1.5填充的RSA加密117 4.8.1步驟1:盲操作122 4.8.2步驟2:搜索符合PKCS的消息124 4.8.3步驟3:縮小解的集合128 4.8.4步驟4:求解131 4.9關于RSA的補充說明133 4.9.1密鑰管理133 4.9.2算法參數134 4.9.3量子密碼134 4.10小結135 第5章消息完整性、簽名和證書137 5.1過于簡單的消息驗證碼137 5.2MAC、HMAC和CBC- MAC139 5.2.1HMAC140 5.2.2CBC-MAC144 5.2.3加密和MAC150 5.3數字簽名:身份驗證和完整性151 5.4證書:證明公鑰的所有權160 5.5證書和信任172 5.6撤銷和私鑰保護173 5.7重放攻擊174 5.8小結175 第6章結合非對稱和對稱算法177 6.1用RSA交換AES密鑰177 6.2不對稱和對稱:像巧克力和花生醬180 6.3測量RSA的相對性能181 6.4Diffie-Hellman和密鑰協議190 6.5Diffie-Hellman和前向保密195 6.6質詢-響應協議201 6.7常見問題203 6.8一個非對稱和對稱密鑰的遺憾示例204 6.9小結207 第7章更對稱的加密:身份驗證加密和Kerberos209 7.1AES-GCM209 7.2AES-GCM細節和細微差別213 7.3其他AEAD算法216 7.4工作網絡218 7.5Kerberos簡介225 7.6小結246 第8章TLS通信247 8.1攔截流量247 8.2數字身份:X.509證書252 8.2.1X.509字段252 8.2.2證書簽名請求254 8.2.3在Python中創建密鑰、CSR和證書266 8.3TLS1.2和1.3概述270 8.3.1介紹“hello”272 8.3.2客戶端身份驗證274 8.3.3推導會話密鑰275 8.3.4切換到新密碼278 8.3.5派生密鑰和批量數據傳輸279 8.3.6TLS1.3283 8.4證書驗證和建立信任285 8.5對TLS的已知攻擊289 8.5.1POODLE289 8.5.2FREAK和Logjam289 8.5.3Sweet32290 8.5.4ROBOT290 8.5.5CRIME、TIME和BREACH291 8.5.6Heartbleed291 8.6將OpenSSL與Python一起用于TLS292 8.7小結301 參考文獻303 |
序: |