iT邦幫忙

2025 iThome 鐵人賽

DAY 23
0
Security

從0基礎開始起飛,一起一步步踏入資安系列 第 23

[ Day 23 ] 現代密碼學 - 對稱/非對稱加密、 雜湊函數、數位簽章

  • 分享至 

  • xImage
  •  

現代密碼學(Modern Cryptography)
古典密碼學(像是凱薩密碼、維吉尼亞密碼)雖然有趣,但早已不堪一擊。隨著電腦科學與數學的進步,我們進入了 現代密碼學 的時代。現代密碼學不僅用於軍事機密,也廣泛應用在日常生活中:上網購物、手機解鎖、電子支付、VPN、安全通訊……背後都靠它保護資料安全。

現代密碼學的三大核心目標 ( CIA )

  1. 機密性(Confidentiality)
    → 確保資料只有授權的人能讀懂(加密)。
  2. 完整性(Integrity)
    → 確保資料在傳輸或儲存時不會被竄改(驗證)。
  3. 認證性(Authentication)
    → 確保通訊的雙方身份正確,避免冒名頂替。

現代密碼學的分類

對稱式加密(Symmetric Encryption)

  • 原理:加密和解密使用同一把金鑰
  • 代表演算法:
    • DES(已淘汰)
    • AES(目前最廣泛使用,軍用級別)
  • 金鑰分發困難(如何安全地把金鑰傳給對方?)。

非對稱式加密(Asymmetric Encryption)

  • 原理:使用 一對金鑰(公鑰 + 私鑰)。
    • 公鑰(Public Key):公開給任何人用來加密
    • 私鑰(Private Key):僅自己保留用來解密
    • 公鑰加密私鑰解密
  • 代表演算法:
    • RSA
    • ECC(橢圓曲線密碼學,效率比 RSA 更高)
  • 解決了「金鑰分發問題」。
加密類型 常見演算法 優點 缺點
對稱加密 DES、3DES、AES、ChaCha20 加密/解密快速、效能高 密鑰分發困難,無法實現數位簽章
非對稱加密 RSA、ECC、DSA 不需共用密鑰、可驗證身分 計算成本高、速度慢,適合小量資料或金鑰交換

雜湊函數(Hash Function)

  • 原理:將任何長度的輸入資料,壓縮成固定長度的「指紋」。
    • 雜湊函式把訊息或資料計算成摘要,使得資料量變小,將資料的格式固定下來。該函式將資料打亂混合,重新建立一個叫做雜湊值的指紋。
  • 代表演算法:
    • MD5(已不安全)
    • SHA-1(已不安全)
    • SHA-256(現今常用)
  • 特性:
    1. 不可逆 → 不能從 Hash 值還原原始資料
    2. 抗碰撞 → 很難找到兩個不同的輸入得到同樣的 Hash

用途:

  • 密碼存放(伺服器不存明文密碼,只存 Hash 值)
  • 檔案完整性驗證(檢查下載的檔案是否被修改過)

數位簽章(Digital Signature)

  • 原理:利用非對稱加密和雜湊,確保訊息的完整性與來源。
  • 流程:
    1. 發送者用私鑰對訊息的 Hash 簽名
    2. 接收者用公鑰驗證簽章是否正確
  • 用途:電子合約、程式碼簽署(如 Windows 驗證軟體來源)。

Diffie-Hellman 金鑰交換(DHKE)

  • 金鑰交換:是密碼學中兩方交換密鑰以允許使用某種加密算法的過程。
  • Diffie-Hellman 特色:
    • 雙方可以在不直接傳輸金鑰的情況下,協商出相同的秘密金鑰。
    • 這個秘密金鑰之後可以用於 AES 這種快速的對稱式加密。
    • 解決金鑰安全傳輸問題。

現代密碼學的應用場景

  • HTTPS 網站(上網安全)
    • 使用 TLS 協定,結合 RSA/ECC + AES + Hash
  • 電子支付(Apple Pay、信用卡交易)
    • 用非對稱加密驗證身份,用對稱加密保護交易資料
  • 加密聊天(WhatsApp、Signal)
    • 使用端對端加密(E2EE),確保只有雙方能讀取訊息
  • 數位貨幣(Bitcoin、Ethereum)
    • 利用雜湊(SHA-256)、數位簽章(ECDSA)保障交易安全

上一篇
[ Day 22 ] 古典密碼學 - 凱薩密碼、維吉尼亞、仿射密碼...
系列文
從0基礎開始起飛,一起一步步踏入資安23
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言