學生識講「加密就安全」,但講不出為何 HTTPS 要同時用兩條鎖匙。這一堂用金鑰數量與一次握手,把「安全」拆成可數的代價。
本堂目標 學生能夠:① 分辨對稱與非對稱加密,並用 n(n−1)/2 算出 10 個用戶需要 45 條金鑰;② 用 RSA 的 p、q 算出 n = 3233、φ = 3120,並驗證 e = 17 與 d = 2753 互為逆元;③ 解釋雜湊、數碼簽名與憑證在 TLS 握手各自負責哪一件事,並講出為何 2^56 金鑰以每秒十億次搜尋要 2.28 年。
01 先備知識(開課前 3 分鐘快檢)
以下任何一項未過關,本堂就會卡住,先補該項:
| 技能 |
快檢題 |
過關標準 |
| 質數 |
61 與 53 是否質數 |
是,只能被 1 與自己整除 |
| 模運算 |
17 × 2753 除以 3120 的餘數 |
1 |
| 二進位指數 |
2^10 大約是多少 |
1,024,約一千 |
02 課堂流程(60 分鐘)
| 時間 |
環節 |
導師做什麼 |
學生做什麼 |
| 0–10 分 |
三條鎖匙三個問題 |
機密、完整性、認證 |
每項配一個失敗例子 |
| 10–22 分 |
對稱加密 |
一條匙開一把鎖,n(n−1)/2 條匙 |
算出 45 條 |
| 22–34 分 |
非對稱與 RSA |
p、q、n、φ、e、d 六個數 |
算出 3233 與 3120 |
| 34–44 分 |
雜湊與簽名 |
摘要不可逆、簽名用私鑰 |
講清兩者分別 |
| 44–54 分 |
TLS 握手 |
憑證驗身、協商、換工作匙 |
排出四步 |
| 54–60 分 |
離場檢查 |
三題即場批 |
三題全對 |
03 講解腳本(照著說就可以)
第一幕:對稱與非對稱,是兩種成本
對稱加密(AES)用同一條匙加密與解密,速度快,適合大量資料。問題是派匙:10 個用戶兩兩通信,需要 10 × 9 ÷ 2 = 45 條不同金鑰;100 個用戶就要 4,950 條。
非對稱加密(RSA)用公鑰加密、私鑰解密,n 個用戶只需 2n 條匙,但運算慢幾個數量級,所以只用來開場。
RSA 參數:p = 61、q = 53 → n = 3,233,φ = 60 × 52 = 3,120;選 e = 17(與 φ 互質),d = 2,753,因為 17 × 2753 = 46,801,除以 3,120 餘 1。
公開 (n, e),私藏 d。這條式子示範了原理,真實系統用 2048 位以上,因為 3,233 用電腦一晚就分解。
要學生講:10 個用戶 45 條匙,為何非對稱只需 20 條(每人一對公鑰私鑰)。
第二幕:雜湊講完整性,簽名講身分
雜湊(SHA-256)把任何長度輸入壓成 256 位 固定長度摘要,單向不可還原,改一個字摘要就完全不同。它不保密,只證明「有無被人改過」。
數碼簽名是把摘要用寄件人私鑰加密,收件人用對方公鑰解開再對比摘要:對得上,就同時證明完整性與身分。
金鑰長度決定暴力搜尋成本:2^56 條匙、每秒十億次,需要約 2.28 年;加到 2^128 就是天文數字。
憑證(X.509)解決「公鑰真的是他的嗎」:由受信任的憑證機構簽署,把域名與公鑰綁死。沒有憑證,中間人可以換走公鑰。
要學生講:雜湊與加密最大的分別(一個不可逆、不保密;一個可逆、保密)。
第三幕:TLS 握手:四步把兩套方法縫起來
第一步,客戶端送 ClientHello(支援的版本與加密套件)與隨機數。第二步,伺服器回 ServerHello、憑證與隨機數。第三步,客戶端用憑證內的公鑰驗簽、確認域名,再用公鑰加密預主密鑰送出。第四步,雙方由三個隨機數算出同一條會話金鑰,之後用對稱加密傳資料。
所以設計邏輯是:用慢的非對稱解決「派匙」,用快的對稱處理「大量資料」。
子網例:192.168.10.0/26 的遮罩是 2^(32−26) = 64 個地址,可用主機 62 部,一個 /24 可以切 4 個 /26。防火牆規則要按網段寫,不是逐部機寫。
常見錯誤是把「有 HTTPS」當成「一定安全」:憑證過期、憑證由不知名機構簽、或網站本身有漏洞,鎖頭一樣亮。
要學生講:為何不全部用非對稱加密(太慢),為何不全部用對稱(無法安全派匙)。
04 必教題型與步驟
| 題型 |
例子 |
步驟 |
答案 |
| 計算 |
對稱金鑰數量 |
n(n − 1) ÷ 2 |
10 用戶 45 條 |
| 計算 |
RSA 參數 |
n = p×q;φ = (p−1)(q−1);e×d mod φ = 1 |
3233、3120、2753 |
| 計算 |
暴力搜尋時間 |
金鑰數 ÷ 每秒嘗試次數 ÷ 一年秒數 |
2.28 年 |
| 解釋 |
TLS 握手各步作用 |
驗身、協商、交換、轉對稱 |
四步不可亂序 |
合理性檢查(一定要教):n 是兩個質數相乘,φ 是 (p−1)(q−1),不是 p×q;兩者混淆就整條題錯。
e 要與 φ 互質,若 e 與 φ 有公因數就無逆元。
d 的驗算是 e×d mod φ = 1,不是 e×d = φ。
雜湊是單向,不能「解密摘要」;聲稱可以解的就是錯。
/26 可用主機是 62 不是 64,網絡位址與廣播位址要扣。
05 獨立練習三題
| 題目 |
答案 |
想觀察什麼 |
| 10 個用戶對稱加密需要幾條金鑰 |
45 條 |
10×9÷2 |
| p=61、q=53 的 n 與 φ |
3,233 與 3,120 |
61×53;60×52 |
| 192.168.10.0/26 可用主機數 |
62 |
64 − 2 |
06 學生常見錯誤與糾正句
| 錯誤 |
學生通常這樣寫 |
導師這樣說 |
| 把 φ 當成 n |
答「φ = 3,233」 |
「φ 係 (p−1)(q−1) = 3,120,n 才係 p×q。」 |
| 以為雜湊可以還原 |
答「用密碼解密個 hash」 |
「Hash 單向,只可以做比對,唔可以還原。」 |
| 把簽名與加密混為一談 |
答「用公鑰簽名」 |
「簽名用私鑰,驗簽用公鑰,掉轉就等於冇簽。」 |
| 有 HTTPS 就當安全 |
答「有鎖頭就一定安全」 |
「要睇憑證簽發者、有效期,同網站本身有無漏洞。」 |
07 家課建議(直接指到練習卷題號)
08 離場檢查(最後 5 分鐘)
| 題目 |
答案 |
判定 |
| 10 用戶對稱金鑰數 |
45 條 |
三題全對=可進網絡協議 |
| p=61、q=53 的 φ |
3,120 |
錯一題=下堂前重講 φ |
| TLS 第三步做什麼 |
用公鑰加密預主密鑰 |
錯兩題以上=回到第三幕 |
09 導師常問
要背 RSA 完整證明嗎?
不必。要能算 n、φ、驗 e×d mod φ = 1,並講出單向函數的概念。
AES 與 RSA 哪個安全?
兩者安全模型不同,不能單比。AES 快、RSA 解決派匙,實務是配合使用。
量子電腦會否令 RSA 失效?
會威脅分解難題,所以業界在推後量子加密;DSE 只需指出風險方向。
立即免費搵導師導師登記 →
本頁為 TutorZone 導師備課指引,內容由 TutorZone 團隊編寫;題目與流程為原創,並非任何學校或出版社的教材。