
密碼強度的評估反應在歷史某階段人們對密碼的認識和理解的程度,是隨密碼編制水平的提高而不斷开展與完善的認識總結。這個認識在某階段也是相對穩定的,是密碼在該階段應用的理論基礎。
密碼強度的評估涉及密碼編制和密碼破譯這兩個相輔相成的方面。密碼編制漏洞的發現與利用是密碼破譯的重要方面,密碼編制漏洞的發現和消除是密碼編制的重要方面。密碼編制和密碼破譯總是針對某具體編制的破譯,總是落後於編制,但又促進編制的完善和創新。當然,密碼編制漏洞存在與否、漏洞的利用和消除程度,取決於編制人員和破譯人員的知識、經驗和實踐能力,人的因素在其中起着決定性的作用。但是,密碼編制和密碼破譯的技術能力都是在各自隱蔽的環境下進行的,是一種技術對抗,因此,絕對的密碼強度評估是不實際的,只是一種相對意義上的評估。
密碼強度的評估分為兩種情況:理論強度和實際強度。理論強度要求敵手絕對不可能從所取得或截取的信息中推導出任何有意義的消息。換句話說,無論破譯者用什麼方法、哪種先進的設備,始終無法準確地選出有效密鑰。可惜的是,在實際中,不可能存在理論保密的網絡信息系統。實際強度建立在這樣的假設之上,即破譯者可以取得足夠多的信息來破譯密碼,但是破譯者的工作從時間或經濟等方面來說是不可行的。實際保密的信息系統可這樣實現:設計一種密碼算法,使儘管是在破譯者掌握了特定的加密算法,並已得到大量的選擇密文/明文及對應的明文/密文的情況下,要求解出明文/密鑰在計算上也不可行。
具體到序列密碼來講,序列密碼強度的評估分為定量與定性兩方面,定量主要是基於數學的分析,重點在於編制中單個環節的密碼強度的數學度量和環節之間的數學關係;定性主要是基於信息論和系統論方法,對編制環節從性質上的分析。許多密碼編制環節從量的角度來講是簡單的,甚至是不安全的,但從定性的角度它確實代表了某一功能,實現了某一目的。這些編碼環節的有機結合,就可能取得單個環節不可能取得的功能。因此,對密碼強度的分析是對密碼編制從量和性兩個方面的綜合分析。
