什麼是加密?
其實這幾個概念還是很容易理解的。把資訊或者資料偽裝、隱藏起來,轉換成難以解釋的資訊或者資料,這個過程叫做加密。和加密這個過程相反的過程,就叫做解密。
一般來說,加密產生的那個難以解釋的資訊或者資料,我們把它叫做密文(Ciphertext)。對應的,加密前的資料,我們通常把它叫做明文(Plaintext)。
在現代密碼學裡,金鑰是在加密和解密運算裡,決定運算結果的一段資訊。因為,加密要使用金鑰把明文資訊轉換為密文;解密要使用金鑰把密文復原為明文。
你可能會覺得,金鑰太重要了!但現代密碼學之前的加密,其實不是這樣設計的。
歷史上的加密,是沒有金鑰的。資料的保密性,依賴於演算法的保密性。一旦演算法被破解,資料也就被破解了。公開演算法的遴選過程:
在遴選標準中,有一個重要指標,就是有沒有足夠多的密碼分析.
密碼分析,指的是分析、評測一個密碼學演算法,有沒有安全缺陷和適用場景的限制。如果一個演算法,沒有人對它展開分析、評測,或者缺少足夠的分析,它的安全性很難獲得信任。63 個落選的演算法中,不乏知名密碼學專家,或者知名團隊和組織的撐腰。
什麼是對稱金鑰?對稱金鑰,顧名思義,就是每一個參與者都持有相同的金鑰,使用相同的金鑰。
非對稱金鑰,就是指每一個參與者都持有不同的金鑰,使用不同的金鑰。
金鑰管理的煩惱既然現代的密碼學演算法的安全性依賴於金鑰的保密,那麼,管理好金鑰,做好金鑰的保密,就是密碼學系統最關鍵的任務。不過,金鑰的管理,部分內容已經超出了密碼學的範疇,我們需要在計算機基礎的作業系統和程式語言裡找答案。
最新評論