想保護資訊安全,必須了解密碼學。

如果你喜歡解謎解鎖,更歡迎來到密碼學的世界!

正封300dpi.jpg

加密‧解謎‧密碼學:從歷史發展到關鍵應用,有趣得不可思議的密碼研究

劉巍然

吳詩湄 繪圖

2023年4月8日出版

 

什麼是密碼?

密碼是按照特定的法則編成,用於通訊的雙方轉換明文、密文的一種符號系統。作為一種資訊混淆的方法,加密的過程就是將可識別的資訊,變成不可識別的資訊。

 

在密碼學中,加密前的原始資訊稱為明文(Plaintext),加密後的資訊稱為密文(Ciphertext)。把明文轉換為密文的過程稱為加密(Encrypt),把密文恢復成明文的過程稱為解密(Decrypt)。大部分的加密和解密過程都涉及一個只有加密/解密雙方才知道的祕密資訊。唯有掌握了這個祕密資訊,才能正確地解密密文。密碼學中將這個祕密資訊稱為金鑰(Key)。所謂破解,或稱密碼分析(Cryptanalysis),是指在不知道金鑰的情況下,從密文中得到與明文相關的一些資訊,恢復出一部分甚至是完整的明文。

 

從人類的歷史來看,密碼最早是用於戰爭時的祕密通訊。出於保密的需求,每一場戰爭的背後,都有密碼的身影。可以說,密碼的戰爭決定了人類歷史的進展,而密碼學是保護資訊安全的最後防線。

本書作者為密碼學博士、阿里巴巴集團數據技術及產品部高級安全專家,他從生活中的實例出發,深入淺出地引領讀者走進精彩的密碼世界。

 

這本書會分享:從男女生互相告白的密碼信如何破解,到身分證號碼中隱藏的祕密,從古典密碼(西元前400年的古希臘時期開始)、電腦的編碼方式,到二次大戰時期德軍使用的恩尼格碼(Enigma)密碼,以及圖靈(Alan Turing)如何加以破解,一直到現代密碼學當中的公鑰加密、RSA數位簽章等等最新的進展。

 

這些進展看似零碎,但其背後所蘊含的密碼設計者與破解者的思路演進,以及所蘊含的數學原理,就讓作者娓娓道來吧!

密碼與我們的日常生活密切相關,資安的基本素養,也必須從了解密碼學開始。當然了,加密和解謎永遠是最原始、最刺激的遊戲!

 

本書特色:

1.深入淺出、循序漸進,一般中學的數學程度就能理解的密碼學。非常燒腦,但也有滿滿的收穫!

2.密碼學的一小步,資訊安全的一大步。密碼,幾乎遍及通訊領域的每一個角落,密碼安全也關係到現代生活的各個層面——數據速朽,唯安全永恆

3.如果你充滿好奇心、喜歡解謎解鎖,歡迎來到密碼學的世界。如果你是資安領域的學習者,可以快速找到未來行業的發展方向,少走點冤枉路。如果你關心個人隱私,也可以了解守護每個人安全的密碼之奧祕。

 

作者簡介

劉巍然

阿里巴巴集團數據技術及產品部高級安全專家,北京航空航天大學通信與信息系統博士。知乎密碼學領域優秀回答者,知乎簽約作者。現從事差分隱私、安全多方計算、可信執行環境、高級密碼學技術等數據安全與隱私保護技術的研究與實踐工作。

 

繪圖者簡介

吳詩湄

獨立插畫家,字幕組資深翻譯成員。

 

目次

 

自序

01
「只要解出來,算你了不起」 
古典密碼高手過招的智慧博弈 

1.1 換種表示:編碼 16

1.1.1 最初的編碼:摩斯電碼 18

1.1.2 摩斯電碼的困境 24

1.1.3 博多碼與ASCII 29

1.1.4 琳琅滿目的各國編碼標準 36

1.1.5 UnicodeUTF 38

1.1.6 Base16Base32Base64  41

 

1.2 換個位置:移位密碼 45

1.2.1 移位密碼的起源:斯巴達密碼棒 45

1.2.2 柵欄密碼 47

1.2.3 帶金鑰的柵欄移位密碼 50

1.2.4 其他移位密碼 53

1.2.5 知乎上的移位密碼破解實例 55

 

1.3 換種符號:代換密碼 59

1.3.1 代換密碼的起源:凱撒密碼 59

1.3.2 簡單的代換密碼 61

1.3.3 複雜的代換密碼 65

1.3.4 將字母代換成符號 68

1.3.5 代換密碼的安全性 72

 

1.4 密碼吧神帖的破解 78

1.4.1 第一層密碼:摩斯電碼 78

1.4.2 第二層密碼:手機鍵盤代換密碼 78

1.4.3 第三層密碼:電腦鍵盤代換密碼 80

1.4.4 第四層和第五層密碼:格柵密碼與字母逆序 81

 

02
「今天有小雨,無特殊情況」 
戰爭密碼生死攸關的較量 

2.1 將古典進行到底:第一次世界大戰中的密碼 92

2.1.1 齊默曼電報 92

2.1.2 ADFGX密碼 96

2.1.3 ADFGVX密碼 99

 

2.2 維吉尼亞密碼:安全密碼設計的思路源泉 102

2.2.1 維吉尼亞密碼的發明史 102

2.2.2 維吉尼亞密碼的缺陷 107

2.2.3 維吉尼亞密碼的破解 110

2.2.4 《消失》:不能用頻率分析法攻擊的文本 115

 

2.3 恩尼格瑪機:第二次世界大戰德軍的密碼 119

2.3.1 恩尼格瑪機的核心:轉子 119

2.3.2 恩尼格瑪機的組成和使用方法 125

2.3.3 恩尼格瑪機的工作原理 128

2.3.4 恩尼格瑪機的破解方法 136

 

03
「曾愛理不理,現高攀不起」
數論基礎密碼背後的數學原理

3.1 質數的定義:整數之間的整除關係 154

3.1.1 最簡單的運算:加、減、乘、除 154

3.1.2 加、減、乘、除引發的兩次數學危機 158

3.1.3 質數的定義 164

3.1.4 哥德巴赫猜想 164

 

3.2 質數的性質 170

3.2.1 質數的分布 171

3.2.2 質數螺旋與孿生質數 172

3.2.3 質數的判定 178

3.2.4 最大公因數及其應用 183

 

3.3 同餘算數及其性質 186

3.3.1 同餘算數 186

3.3.2 模數為2的同餘算數:電腦的基礎 187

3.3.3 模數為N的同餘算數:奇妙的互質 193

3.3.4 模數為p的同餘算數:單純許多 199

3.3.5 看似簡單卻如此困難:整數分解問題與離散對數問題 201

 

3.4 身份證號碼中隱藏的數學玄機 209

3.4.1 身份證號碼的出生日期碼擴展 209

3.4.2 身份證號碼的校驗方法 212

3.4.3 身份證校驗碼所蘊含的數學原理 218

3.4.4 有關身份證號碼的擴展問題 221

 

04
「你說你能破解,你行你上呀」 
安全密碼守護數據的科學方法 

4.1 「誰來都沒用,上帝也不行」:對稱密碼 230

4.1.1 對稱密碼的基本概念 230

4.1.2 避免金鑰重複使用的另一種加密構想:滾動金鑰 234

4.1.3 一次一密:從看似不可破解到可證明不可破解 239

4.1.4 完備保密性的缺陷與計算安全性 246

4.1.5 實現計算安全性:DESAES 248

 

4.2 「給我保險箱,放好撞上門」:公開金鑰密碼 253

4.2.1 信件安全傳遞問題 254

4.2.2 狄菲—赫爾曼金鑰協商協定 259

4.2.3 狄菲與赫爾曼的好幫手默克 265

4.2.4 撞門的保險箱:公開金鑰加密 271

4.2.5 RSA公鑰加密方案與ElGamal公鑰加密方案 273

 

4.3 「鑰匙防調包,本人簽個字」:數位簽章 278

4.3.1 威力十足的中間人攻擊 279

4.3.2 防止鑰匙或保險箱調包的數位簽章 282

4.3.3 RSA數位簽章方案 286

 

4.4  RSA的破解之道 291

4.4.1 質數選得足夠大,合數的質因數分解難度並不一定大 293

4.4.2 在使用RSA時,永遠不要使用相同的合數 295

4.4.3 公鑰和私鑰都不能選得特別小 296

4.4.4 RSA中的其他安全問題 298

 

後記 303

專有名詞、人名一覽表 305

 

    20175月,我接到了知乎編輯的邀請,讓我撰寫一本密碼學科普讀物。要用生動淺顯的例子,在不涉及複雜數學知識的條件下為晦澀難懂的密碼學原理進行科普,其難度可想而知。然而,伴隨著網際網路的蓬勃發展,網路上的安全問題也日益嚴重。密碼學是維護網路安全的核心技術之一。作為一名專攻密碼學的博士,為讀者朋友撰寫一本淺顯易懂的密碼學科普讀物,使讀者朋友了解默默保護著我們的密碼技術,是一種義務,也是一種責任。我最終接受了這個挑戰,完成了這本書。

    密碼學的發展可以分為兩個時期:古典密碼學時期與現代密碼學時期。在古典密碼學時期,密碼學家還沒有掌握設計出安全密碼的科學方法。當時密碼的設計完全仰賴密碼設計者的聰明才智,而密碼的破解更是要靠密碼破譯者的靈光一現。到了20世紀中期,電腦科學的奠基人圖靈(Alan Turing)和資訊理論的奠基人夏農(Claude Shannon)為密碼學找到了可靠的理論基礎,密碼學才正式步入現代密碼學時期,為資料安全保駕護航。現在,是時候讓密碼學這位幕後英雄走到台前,在讀者面前亮相了。

    2014年起,我開始在知乎上回答密碼學領域的相關問題,並因此收到了很多朋友的讚揚與感謝。2016年,我成為知乎密碼學領域的優秀回答者,並完 成了電子書《質數了不起》。現在,《質數了不起》的擴展版本——也就是本書,也終於要和讀者朋友見面了。本書與《質數了不起》比起來約有80%的內容為新增內容,補充了大量原本未涉及或簡述的章節。我很希望能夠過本書所講解的內容,為讀者朋友介紹密碼學的基本概念和基本原理,介紹隱藏在密碼學背後的數學知識,也希望這本書能激發各位對密碼學的興趣。

    在此,我想真誠感謝為本書的撰寫和出版做出貢獻的朋友們。非常感謝我的妻子李雯對本書的大力支持。她幫助我修正了很多語法錯誤,並站在讀者的角度為本書提出了很多寶貴的建議。感謝我的師妹金歌為本書中出現的德文詞彙和語句提供準確的翻譯,並對本書進行了認真的校對,指出了很多語言問題。感謝我在阿爾法字幕組的合作夥伴吳詩湄為本書繪製插圖,她的繪圖為本書增添了更多活力。感謝阿里巴巴集團數據技術及產品部的張磊老師、馮偵探老師、沈則潛老師、高愛強老師等,謝謝你們的支持和幫助。

    國際計算機學會(ACM)和電機電子工程師學會(IEEE)會士、浙江大學網絡空間安全學院院長任奎老師,北京航空航天大學密碼學教授伍前紅老師,阿里巴巴集團安全部密碼學與隱私保護技術總監洪澄老師,騰訊安全雲鼎實驗室總監錢業斐老師,深信服首席安全研究員、藍軍首席架構師彭峙釀老師,知乎密碼學話題優秀答主段立老師,都在閱讀樣稿後給予了熱情的推薦。我的博士生導師、北京航空航天大學網絡空間安全學院院長劉建偉教授更是為本書撰寫了推薦序。我在此向他們致以衷心的感謝!雖然我已經盡我所能確保本書的正確性和嚴謹性,但由於我個人的知識水準有限,書中難免出現錯誤或表述不當之處,懇請讀者朋友提出寶貴的意見和建議。

 

劉巍然     202011

arrow
arrow

    EcoTrend 發表在 痞客邦 留言(0) 人氣()