密碼

密碼學中,密碼是一種演算法,它可以加密明文使其無法閱讀,並能將編碼資料解密回明文。

早在資訊時代之前,密碼就已經很常見了(例如,替換密碼置換密碼排列密碼),但除了一次性密碼本之外,這些密碼都沒有密碼學上的安全性。

在現代,密碼已經發生了巨大的演變。AESRSABlowfish 是當今加密標準和系統中不可或缺的密碼示例。

現代密碼旨在抵禦透過密碼分析發現的攻擊。無法保證所有攻擊方法都已被發現,因此根據已知攻擊類別,建議每種演算法用於不同的目的

密碼要麼作為分組密碼對連續的資料塊(或緩衝區)進行操作,要麼作為流密碼對連續的資料流(通常是聲音或影片)進行操作。

密碼還根據其金鑰的處理方式進行分類

  • 對稱金鑰演算法使用相同的金鑰對訊息進行編碼和解碼。如果訊息要保持機密,金鑰也必須安全地傳送。
  • 非對稱金鑰演算法使用一個金鑰進行加密,另一個金鑰進行解密。