密码强度的评估反应在历史某阶段人们对密码的认识和理解的程度,是随密码编制水平的提高而不断发展与完善的认识总结。这个认识在某阶段也是相对稳定的,是密码在该阶段应用的理论基础。
密码强度的评估涉及密码编制和密码破译这两个相辅相成的方面。密码编制漏洞的发现与利用是密码破译的重要方面,密码编制漏洞的发现和消除是密码编制的重要方面。密码编制和密码破译总是针对某具体编制的破译,总是落后于编制,但又促进编制的完善和创新。当然,密码编制漏洞存在与否、漏洞的利用和消除程度,取决于编制人员和破译人员的知识、经验和实践能力,人的因素在其中起着决定性的作用。但是,密码编制和密码破译的技术能力都是在各自隐蔽的环境下进行的,是一种技术对抗,因此,绝对的密码强度评估是不实际的,只是一种相对意义上的评估。
密码强度的评估分为两种情况:理论强度和实际强度。理论强度要求敌手绝对不可能从所获得或截取的信息中推导出任何有意义的消息。换句话说,无论破译者用什么方法、哪种先进的设备,始终无法准确地选出有效密钥。可惜的是,在实际中,不可能存在理论保密的网络信息系统。实际强度建立在这样的假设之上,即破译者可以获得足够多的信息来破译密码,但是破译者的工作从时间或经济等方面来说是不可行的。实际保密的信息系统可这样实现:设计一种密码算法,使尽管是在破译者掌握了特定的加密算法,并已得到大量的选择密文/明文及对应的明文/密文的情况下,要求解出明文/密钥在计算上也不可行。
具体到序列密码来讲,序列密码强度的评估分为定量与定性两方面,定量主要是基于数学的分析,重点在于编制中单个环节的密码强度的数学度量和环节之间的数学关系;定性主要是基于信息论和系统论方法,对编制环节从性质上的分析。许多密码编制环节从量的角度来讲是简单的,甚至是不安全的,但从定性的角度它确实代表了某一功能,实现了某一目的。这些编码环节的有机结合,就可能获得单个环节不可能获得的功能。因此,对密码强度的分析是对密码编制从量和性两个方面的综合分析。