密碼

在密碼學中 ， 密碼 ( 或 ） ， 是一種用於執行加密或解密的算法 — — 一系列可以作爲一個過程來遵循的定義明確的步驟 。 另一個不太常見的術語是加密  。 加密或編碼  的目的是將明文的信息轉換爲密文 （ 密碼或代碼 ） 。 通常的說法中 ， “ 密碼 ”  與 “ 代碼 ”  是同義的 ， 因爲它們都是一組加密消息的步驟 ； 然而 ， 它們在密碼學中的概念是不同的 ， 特別是在經典密碼學中 。 具體而言 ， 代碼通常會在輸出中替換不同長度的字符串 ， 其操作一般通過代碼本來進行 ， 它將單詞或短語鏈接到一系列隨機的字符串或數字 。 例如 ， “ UQJHSE ” 可能是 “ 繼續執行以下座標 ” 的代碼 。 而相應的 ， 密碼一般會替換與輸入相同數量的字符 。 一些例外情況中 ， 某些密碼系統在輸出時可能會使用稍多或更少的字符 ， 而非輸入的長度 。 當使用密碼時 ， 原始信息被稱爲明文  ， 而加密的形式被稱爲密文  。 密文消息包含明文消息的所有信息 ， 但若沒有適當的機制解密它 ， 人或計算機是不能讀取的 。 密碼的操作通常取決於一個輔助信息 ， 稱爲 “ 密鑰 ” （ 或者 ， 按照傳統 NSA 的說法 ， 密碼變量 — — ） 。 加密過程根據密鑰而變化 ， 它改變了算法的具體操作 。 在使用密碼加密消息之前 ， 必須選擇一個密鑰 。 在不知道密鑰的情況下 ， 將結果密文解密爲可讀的明文應該是非常困難的 （ 甚至是不可實現的 ） 。 大多數現代密碼可以用幾種方式分類 ： 以加密流程區分 ， 可以分成處理通常具有固定大小的塊符號 （ 分組密碼 ） 還是符號連續流 （ 流加密 ） 兩種主要算法 。 以密鑰性質區分 ， 可以分成通過相同的密鑰來進行加密解密的算法 （ 對稱密鑰加密 ） ， 或每次加密都使用了不同的密鑰的算法 （ 公開密鑰加密 ） 。 如果算法是對稱的 ， 則密鑰必須令接收者和發送者及其他人知道 。 如果該算法是非對稱算法 ， 則加密密鑰與解密密鑰不同但密切相關 。 如果一個密鑰不能從另一箇中推導出來 ， 則非對稱密鑰算法具有公鑰 / 私鑰屬性 ， 並且其中一個密鑰可以在不失機密性的情況下公開 。 M Category: 密碼