密码分析是在未拥有真实密钥的情况下,将通信信息从不可读格式转换为可读格式的过程。或者我们可以说,这是一种在没有密钥的情况下获取通信明文的技术。密码分析是解密加密消息的艺术、科学或实践。 在此过程中,我们假设参与工作的密码学家、数学家和其他科学家无法获知用于加密和解密的密钥。与暴力破解攻击不同,这种形式的分析旨在寻找密码系统中的漏洞。
密码分析通常包括对正在使用的密码系统进行直接评估,这本质上是一种利用现有加密方案知识进行的集中式高级数学解密尝试。攻击者可以利用截获的加密消息(密文),截获的完整的、部分的、可能的或类似的原始消息(明文),或者在后续试验中自适应使用的已知信息(加密的或原始的)。
!密码分析过程密码分析过程
我们使用密码分析来破解密码安全系统并获取加密消息的内容,即使密码密钥是未知的。
密码分析攻击的类型:
- 仅密文攻击:
- 在这种类型的密码分析攻击中,攻击者仅拥有密文的知识。
- 攻击者必须仅使用密文来检测明文。
- 这种类型的攻击实施起来并不是很容易。
2. 已知明文攻击:
- 在这种类型的密码分析攻击中,攻击者拥有一些明文以及密文的知识。
- 攻击者尝试利用这两者来解密消息。
- 这种类型的攻击实施起来相对容易。
密码分析的不同形式:
密码分析基本上有两种形式:
1. 线性密码分析:
线性密码分析是密码学中一种通用的密码分析类型,基于发现密码操作的仿射近似。分组密码和流密码都曾受到此类攻击。线性密码分析是对分组密码最流行的两种攻击之一,另一种是差分密码分析。
2. 差分密码分析:
差分密码分析是一种密码分析,可用于解密分组密码和流密码以及加密哈希函数。从最广泛的意义上讲,它是对信息输入的变化如何影响输出端的后续差异的研究。在分组密码的语境下,它指的是一组策略,用于跟踪变换网络中的差异,寻找密码显示出非随机行为的地方,并利用这些属性来恢复秘密密钥(加密密钥)。
线性密码分析与差分密码分析的区别
线性密码分析
—
线性密码分析基本上是由松井和 Yamagishi 在 1992 年发明的。
线性密码分析始终处理单个比特(一次一个比特)。
在线性密码分析的情况下,密文攻击是一个非常大的劣势。
线性密码分析的目的是为了非常容易地找出某些明文比特、密文比特和未知密钥比特之间存在的线性关系。
输入属性的子集指的是单个输入的内部结构。
密码分析人员使用所有可用的子密钥解密每个密文,并分析生成的中间密文以确定一个加密周期的随机结果。
在线性密码分析中,选择任何随机的明文。
明文逐个使用