【上課筆記】資訊安全導論 - Ch1、Ch2
Ch1
- CIA triad :
- Confidentiality(隱密性)
- Integrity(完整性)
- Availability(可用性)
- OSI模型 :
- Security Attack :
→ goal : Detect and Recover- Passive Attack
- Active Attack
- Security Services :
- Defined by X.800 or RFC 4949
- 分類 :
- Authentication :
- Peer entity authentication : 確認雙方protocol相等、提供身分授權
- Data origin authentication : 確認數據來源
- Access Control : 確認每個實體在連接前都需要被認證
- Data Confidentiality :
- 保護資料以避免passive attack
- 讓attacker無法觀察到流量的來源和目的地
- Data Integrity :
* Connection-oriented integrity service(連接導向完整性服務) : 處理整個訊息流,避免其發送時沒有被重新處理過
* Connectionless integrity service(無連接完整性服務) : 只針對單個訊息的保護 - Nonrepudiation(不可否認性) : 預防sender或rceiver否認曾經傳送過的訊息
- Authentication :
- Security Mechanisms :
- Specific Security Mechanisms :
- 加密(Encipherment)
- 數位簽章(Digital Signature)
- 存取控制(Access Control)
- 資料完整性(Data Integrity)
- 驗證交換(Authentication Exchange)
- 路由控制(Routing Control)
- 公證(Notarization)
- Two kinds of threats of program:
- Information access threats(資訊存取威脅)
- Service threats : 利用服務漏洞去禁止合法用戶使用
- 避免unwanted access :
- Gatekeeper function :
- 只讓有授權的user通過
- 偵測並拒絕attack
- Internal Control : 監測活動與分析
- Gatekeeper function :
- Specific Security Mechanisms :
- Security Attack :
Ch2
- Symmetric Encryption :
- 兩大需求 :
- Strong Encryption Algorithm
- 雙方都要把key收好(Don’t need to keep the algorithm secret; but only keep the key secret.)
- Cryptographic Systems :
- Substitution : 以取代的方式將文字做順序的位移,讓原本的文字變成另一個文字
- Transposition : 將原本字串的順序重新排列
- Attacking approach:
- Cryptanalysis(密碼破譯) : 利用常理或統計方式來分析密文
- Brute-force attack(暴力攻擊) : 嘗試所有可能的key組合
→ 平均上,測試一半的可能key組合便能成功
- Encryption Scheme :
- Unconditionally secure : 不論opponent有多少時間都不可能破解,因為所需的訊息並不存在那裏
- Computationally secure(二擇一) :
- 破解密文的成本大於其明文的價值
- 破解密文的時間大於其明文有用的lifetime
- Caesar Cipher(凱薩加密法) :
- 公式 : $C = E(k,p) = (p+k) mod 26$
- 可以用Brute-force,但其遇到以下狀況就行不通 :
- Key很大的時候
- 不知道明文的語言時
- Monoalphabetic Substitution Cipher(單表加密法) :
- 定義 : 每個密文字母在訊息中都有用到
- 如果明文由26個字母所組成,那Key就有26!種組合
- 缺點 : 容易透過字母出現的頻率去破解
- 單字母 : e
- 雙字母 : th
- 三字母 : the
- Playfair Cipher(波雷費密碼) :
- 為Multiple Substitutes
- 作法 :
- 清除KEY重複字母,將其塞入5X5矩陣中,剩下空的依序補上未填入的字母
- 將明文塞入X,EX : ballon → BA LX LO ON
- 找密文 :
- 同橫行 : 往右移一格
- 同直行 : 往下移一格
- 都不是 : 找對角兩個
- 優點 :
- 有26*26=676種組合
- 較難使用頻率分析
- 缺點 :
- 仍保留了明文語言的一部分結構
- Hill Cipher(希爾密碼) :
- 透過n*n矩陣將長度n的明文轉換為長度n的密文
- 加密公式 : $C = PKmod 26$
- 解密公式 : $P = CK^{-1}mod 26$
- 優點 :
- 可以完全隱藏單字母的出現頻率
- 可以抵擋ciphertext-only attack
- 缺點 :
- 不能抵擋known plaintext attack(得知明文與密文之相對)
- Vigenère Cipher(維吉尼亞密碼) :
- 為polyalphabetic substitution ciphers(多表加密)
- 由26個凱撒密碼組成,移位範圍為0到25
- 使用方式 :
- 假如明文是「TAKETHATHILL」
- 假如keyword為YANG,則key就是 「YANGYANGYANG」
- 加總後就可以得到密文「RAXKRHNZFIYR」
- 公式 : $C_i = (P_i+K_i)mod 26$
- 優點 : 每個明文字母都對應多個密文字母
- 缺點 : 可以透過密文重複的次數與間隔來推算keyword
- Vigenère Autokey System :
- 使用方式 :
- 類似Vigenère Cipher,但key變成「YANGTAKETHAT」(keyword+明文)
- 優點 : 一個明文字母可以對應多個密文字母,讓字母頻率不好被分辨出
- 缺點 : keyword和明文擁有相同的文字頻率,透過分析技術還是能輕易地分辨出來
- 使用方式 :
- Vernam Cipher
- 明文和key先各自轉2元進位,再做互斥或
- 優點 :
- 不易進行密碼分析(cryptanalysis)
- 缺點 :
- key是由running loop of tape所產生,但它轉到最後還是會循環
- 只要有足夠的密文或明文依然能破解
- One-Time Pad(一次性密碼本) :
- 使用和明文一樣長的key → 讓key不會有重複的問題
- 每一個key使用完畢後就要丟棄
- 優點 :
- 理論上,因為密文和明文之間毫無統計關係,因此根本無法破解
- 可以用在需要高安全性的低頻率通道
- 缺點 :
- 無法產生出那麼多隨機key
- Rail Fence Cipher(籬笆密碼法) :
- 使用方法 :
- 假設明文為「meet me after the toga party」
- 使用depth = 2的Rail Fence Cipher :
MEMATRHTGPRY
ETEFETEOAAT - 密文就是MEMATRHTGPRYETEFETEOAAT
- 使用方法 :
- Row Transposition Cipher(列置換加密法) :
- key記錄了row排列的順序
- 使用方法 :
- 將明文排成一列一列
- 依key的順序取出,拼湊起來就是密文
- 例如 :

- 缺點 : 還是能看出字母頻率
- Multiple Transposition :
- 使用多次Row Transposition Cipher
- 優點 : 讓cryptanalyze(密碼分析)更加不易
- 兩大需求 :
本部落格所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來自 Robin's Tech Blog!


