略過到主要內容

什麼是密碼學?

一名男子使用受到密碼保護的筆記型電腦和手機。

隨著世界日益數位化,對於安全的需求變得更加迫切。因此,密碼學及其在資訊安全領域中的應用顯得極其重要。

密碼學基本上意指安全通訊技術的研究,但密碼學與加密緊密相關,加密是將普通文本加以混淆,形成所謂的密文,並在到達目的地後再次解密為普通文本(稱為明文)的過程。普遍認為過去幾個世紀中的數個歷史人物創建並使用了密碼學,包括希臘歷史學家 Polybios 、法國外交家 Blaise de Vigenère、羅馬皇帝朱利斯·凱撒(普遍認為他使用了最早的現代密碼中之一)以及阿瑟·舍比厄斯(Arthur Scherbius),其在第二次世界大戰期間創建了恩尼格瑪密碼(Enigma)破譯機。但 21 世紀的密碼與他們的認知大有不同。但究竟什麼是密碼學?其運作原理為何?

密碼學定義

密碼學(cryptography)是一種對資料進行混淆或編碼的技術,確保只有應該查看資訊且擁有破譯密碼的人能夠閱讀。密碼學的英文 cryptography 結合了兩個希臘語字詞:「kryptós」意思是隱藏、「graphein」意思是書寫。字面上而言,密碼學意指隱藏的書寫,但其實務上涉及資訊的安全傳輸。

密碼學的應用可以追溯到古埃及人及其對象形文字的創造性運用。但是,編碼技術在千年間取得了巨大的進步,現代密碼學結合了先進的電腦技術、工程學和數學等學科,能創建出高度複雜且安全的算法和密碼,以保護數位時代的敏感資料。

例如,密碼學用於創建各種類型的加密協議並通常進而用於保護資料。這些協議包括 128 位元或 256 位元的加密、安全套接層(SSL)和傳輸層安全性(TLS)。這些加密協議保護各種類型的數位資訊和資料,包括密碼、電子郵件、電子商務和銀行交易。

不同的密碼類型適用於不同的目的。例如:最簡單的為對稱金鑰加密,其使用秘密金鑰對資料進行加密,然後將編碼後的訊息和秘密金鑰傳送給接收者進行解密。當然,如果訊息被攔截,第三方可以輕易將訊息解碼並竊取資訊。

為了創建一個更安全的編碼系統,密碼學家設計了非對稱加密,有時被稱為「公開金鑰」系統。該系統中所有使用者都有兩個金鑰:一個公開金鑰和一個私有金鑰。在創建編碼訊息時,傳送者會要求接收者提供其公開金鑰來對訊息進行編碼,而只有預期接收者的私有金鑰才能對其進行解碼。如此一來,即使訊息被攔截,第三方也無法對其進行解碼。

密碼學為何如此重要?

密碼是一種重要的網路安全工具。加密的應用可讓資料和使用者擁有額外的安全性,可保護隱私和機密,並有助於防止資料受到網路犯罪份子竊取。密碼學在實務中能有許多應用:

  • 機密性:只有預期的接收者可以存取和讀取訊息,因此對話和資料能保持隱私。
  • 資料完整性:密碼學能確保編碼後的資料在從寄送者傳送到接收者的過程中無法被修改或干擾,且不會留下可追蹤的痕跡,其中一個例子就是數位簽章。
  • 身份驗證:身份和目的地(或來源)能夠得到驗證。
  • 不可否認性:寄送者對其訊息負責,因為無法事後否認訊息已傳送,數位簽章和電子郵件追蹤就是這方面的例子。

密碼學在網路安全中的角色

隨著電腦的發展及其在開放網路上的互相連結,人們日益有興趣應用密碼學。人們隨著時間意識到在網路上傳輸資料時有必要保護其避免攔截或受到操縱。IBM 是該領域的早期先驅,於 1960 年代推出了其「Lucifer」加密系統,最終成為了最先出現的資料加密標準(DES)。

隨著我們的生活越來越數位化,應用密碼學來保護大量敏感資訊的需求變得更加迫切。現今,密碼在網路空間中扮演著關鍵的角色。加密是在線上活動不可或缺的一部分,因為每天都有大量的敏感資料會受到傳輸。以下為一些實際應用的例子:

  • 使用虛擬私人網路(VPN)或 SSL 等協議來安全瀏覽網路。
  • 建立受到限制的存取控制,只有具有正確權限的人可以執行特定動作或功能,或者存取特定內容。
  • 使用端到端加密,保護不同類型的線上通訊,包括電子郵件、登入憑據,甚至 WhatsApp 或 Signal 等文字訊息。
  • 保護使用者避免各種類型的網路攻擊,例如中間人攻擊(man-in-the-middle attack)。
  • 幫助公司達到法律要求,例如:歐盟的通用資料保護條例(GDPR)中規定的資料保護。
  • 建立和驗證登入憑證,尤其是密碼。
  • 保護加密貨幣的安全管理和交易。
  • 安全地使用數位簽章簽署線上文件和合約。
  • 登入線上帳戶時驗證身份。

密碼有哪些類型?

可想而知,密碼的定義非常廣泛,因為該術語廣泛涵蓋了多種程序。因為有許多不同類型的加密算法,而每種算法都提供不同級別的安全性,具體取決於傳輸的資訊類型。以下為三種主要的加密類型:

  1. 對稱金鑰加密:這種較簡單的加密形式因其傳送者和接收者共享同一個金鑰來加密和解密訊息而得名。使用此方式的例子包括資料加密標準(DES)和高階加密標準(AES)。其主要的難處是需要能安全地在傳送者和接收者之間分享金鑰。
  2. 非對稱金鑰加密:一種更安全的加密類型,傳送者和接收者都有兩個金鑰:一個公開金鑰和一個私有金鑰。在其過程中,傳送者將使用接收者的公開金鑰來加密訊息,而接收者將使用其私有金鑰來解密俊息。該兩個金鑰並不相同,並且由於只有接收者才擁有私有金鑰,因此唯有接收者能夠讀取訊息。RSA 演算法是其中最常見的非對稱加密形式。
  3. 散列函數:這些是不涉及金鑰使用的密碼演算法類型,其基於明文訊息的長度而創建一個稱為散列值的固定長度數字,並用於對資料進行加密。例如,許多操作系統常用它來保護密碼

由此可見,密碼學中對稱加密和非對稱加密的主要區別在於:前者只有一個金鑰,而後者則有兩個金鑰。

對稱加密的類型

對稱加密有時被稱為秘密金鑰加密,因為其使用單一秘密金鑰來對訊息進行加密和解密。這種加密有幾種形式,包括:

  • 流式密碼:一次處理一個位元組的資料,並定期更改加密金鑰。在此過程中,金鑰流可以與訊息流同步或獨立,分別稱為自同步或同步。
  • 塊式密碼:這種加密包括 Feistel 密碼,一次會對一個資料塊進行編碼和解碼。

非對稱金鑰加密的類型

非對稱加密,有時稱為公開金鑰加密,其中接收者具有兩個金鑰:公開金鑰和私有金鑰。傳送者使用前者對訊息進行編碼,而接收者使用後者(僅限他們自己使用)來安全解密訊息。

非對稱金鑰加密使用演算法進行訊息的加密和解密。其演算法會根據各種數學原則,例如:使用乘法或因數分解,將兩個大質數相乘以生成一個巨大的隨機數,非常難以破解;或者使用指數和對數也可以創建極其複雜而幾乎不可能破解的數字,例如 256 位元加密。非對稱金鑰演算法有多種類型,例如:

  • RSA:RSA 為首先出現的非對稱加密,為數位簽章和金鑰交換等技術的基礎。其演算法使用因數分解原理。
  • 橢圓曲線加密(ECC):ECC 經常出現在智慧型手機和加密貨幣交易所中,其利用橢圓曲線的代數結構來構建複雜的演算法。其完全不需要太多的儲存記憶體或使用頻寬,特別適用於計算能力有限的電子裝置。
  • 數位簽章演算法(DSA):DSA 使用模型指數運算原理,為驗證電子簽章的黃金標準。其由美國國家標準與技術研究所創建。
  • 身份基礎加密(IBE):這種獨特的演算法消除了訊息接收者向傳送者提供其的公開金鑰的需求。傳送者使用已知的唯一識別,例如:電子郵件地址,來生成公開金鑰以對訊息進行編碼。然後,受信任的第三方伺服器會生成相應的私有金鑰,再由接收者使用該私有金鑰來解密訊息。

密碼攻擊

與大多數科技一樣,密碼已變得日益高深,但這並不表示加密就不會被破解。當金鑰管理不當時,外部人士就有可能解碼並讀取受保護的資料。以下為一些需要注意的潛在問題:

  • 低強度金鑰:金鑰是一組用於加密演算法的隨機數,用於改變和掩蓋資料,使他人無法讀取。較長的金鑰會有更多數字,使其更難破解,因此更適合保護資料。
  • 不正確使用金鑰:金鑰需要正確使用,如果使用不當,駭客就能可以輕易破解並存取受金鑰保護的資料。
  • 相同金鑰重複用於多個目的:與密碼一樣,每個金鑰應該獨一無二,將相同的金鑰用於多個系統會削弱加密保護資料的能力。
  • 未更新金鑰:加密金鑰可能會很快就過舊,定期更新金鑰以保持資料安全非常重要。
  • 未謹慎儲存金鑰:確保將金鑰保存在安全的地方,避免其被輕易找到,防止因被竊取而危及其所保護的資料。
  • 內部攻擊:員工等具有合法存取權限的人可能染指金鑰,並將其出售以用於惡意用途。
  • 忘記備份:應該為金鑰進行備份,因為如果金鑰突然出現缺陷,可能導致無法存取其所保護的資料。
  • 金鑰記錄錯誤:將金鑰手動輸入到表格中或以紙本方式記下感覺很合理,但也容易出錯或遭竊。

此外,還有一些專門藉由找到正確的金鑰來破解加密的加密攻擊。以下為一些常見的攻擊:

  • 暴力破解攻擊:廣泛的攻擊方式,嘗試使用已知演算法隨機猜測私鑰。
  • 僅密文攻擊:此類攻擊中,第三方攔截加密訊息(而非明文),並嘗試找出解密訊息的金鑰,進而獲取明文。
  • 選擇密文攻擊:與選擇明文攻擊相反,此方式中的攻擊者對比密文的一部分與其相應的明文來找出金鑰。
  • 選擇明文攻擊:此方式中的第三方選擇明文並對應密文,以找出加密金鑰。
  • 已知明文攻擊:此方式中的攻擊者隨機存取部分明文和部分密文,並開始找出加密金鑰。此方式對於現代加密而言不太有用,因為其只能破解簡單的密碼。
  • 演算法攻擊:此類攻擊中,網絡路犯罪份子分析演算法並試圖找出加密金鑰。

是否有可能避免密碼攻擊的威脅?

個人和組織有數種方法可以嘗試減少密碼學攻擊的機會。其基本上需要確保金鑰的適當管理,避免其受到第三方攔截,或讓其即使受到攔截也無法使用。以下為一些建議:

  • 為每個特定目的使用單一金鑰,例如,為身份驗證和數位簽章使用獨特的金鑰。
  • 使用強度更高的金鑰加密金鑰(KEK)來保護密碼金鑰。
  • 使用硬體安全模組來管理和保護金鑰,其功能類似於一般的密碼管理器。
  • 確保金鑰和演算法定期更新。
  • 為所有敏感資料進行加密。
  • 為每個加密目的創建高強度且唯一的金鑰。
  • 安全儲存金鑰,防止第三方輕易存取。
  • 確保正確實施密碼系統。
  • 在員工的安全意識培訓中包含密碼學知識。

密碼學的需求

大多數人只需對密碼學有基本了解即可。了解密碼學的定義、運作原理以及其在資訊安全中的應用,有助於提升對日常數位互動管理的注意。大多數人可以藉此知道如何維持電子郵件、密碼、線上購物和線上銀行交易的安全性,因密碼學廣泛應用於這些領域的安全功能中。

常見問題解答

立即使用卡巴斯基高階版 + 1 年免費 Kaspersky Safe Kids。卡巴斯基高階版榮獲五項 AV-TEST 獎項,包括最佳保護、最佳效能、最快 VPN、經認證的 Windows 家長控制以及 Android 家長控制最佳評級

相關產品和服務:

卡巴斯基標準版

卡巴斯基專業版

卡巴斯基端點安全雲

Kaspersky VPN Secure Connection

什麼是密碼學?

密碼學是資訊安全的重要部分。了解其運作原理、重要性以及其各種形式。造訪卡巴斯基的部落格閱讀更多資訊
卡巴斯基商標

相關文章