差分密码分析是什么

维基 问答 2022-06-01 00:40:57 阅读(...)

差分密码分析是一种密码分析的方法,主要用于破解分组加密,但也适用于流加密和加密哈希函数。其研究的是信息输入上的差别对输出结果变化的影响。对于分组密码,其指的是利用差异来获取密钥的技术,包括跟踪变换网络中的差异,以及寻找加密中的非随机行为等。

差分密码分析是一种密码分析的方法,主要用于破解分组加密,但也适用于流加密和加密哈希函数。广义上讲,其研究的是信息输入上的差别对输出结果变化的影响。对于分组密码,其指的是利用差异来获取密钥的技术,包括跟踪变换网络中的差异,以及寻找加密中的非随机行为等。

差分密码分析 differential cryptanalysis

历史

1980 年代后期,诶利·比哈姆和阿迪·萨莫尔发表了一系列针对多个块加密和哈希函数的攻击,包括对资料加密标准(DES)理论弱点的运用。因此,二者通常被认为是发现差分密码分析的元勋。比哈姆和萨莫尔表示,DES 在抗差分密码分析方面表现意外的好,不过只要对加密算法稍加修改就能大幅减弱其抗攻击能力。

1994 年,IBM DES 初始团队的成员唐·库帕史密斯发表论文称,IBM 早在 1974 年就发现了差分密码分析法,并早已将抗差分分析纳入算法的设计目标中。作家史蒂芬·列维表示,IBM 的确独立发现了差分密码分析方法,显然 NSA 也知道这项技术。对于 IBM 选择保密的原因,库帕史密斯解释道:“IBM 与 NSA 商讨后,认为若公布加密算法中抗差分密码分析的设计,那么差分密码分析这种能攻击多种加密算法的强力技术就会被暴露,这将削弱美国在密码学领域的领先优势。IBM 内部把差分分析称为“T-attack”或“Tickle attack”。

与内建抗差分密码分析的 DES 相比,同期其它加密算法在这方面被证实是脆弱的。FEAL 是本分析方法的早期攻击目标。原始的 4 轮版本(FEAL-4)可以在仅利用八个选择明文的情况下被破解,且 31 轮版本的 FEAL 的抗攻击性也不尽人意。相比之下,差分分析在使用 247 数量级的选择明文后才能破解 DES 算法。

攻击原理

差分密码分析通常是选择明文攻击,意思是攻击者可以自行选取一部分明文并获取相应密文。不过,一些扩展也能让此方法用在已知明文攻击,甚至是唯密文攻击上。差分分析的基本方法,是运用若干对有着常量差异的明文;差异可以用数种方法定义,最常见的是逻辑异或(XOR)。然后,攻击者计算相应密文的差异,尝试找出差异分布的统计特征。明文差异和密文差异所组成的差异对被称为差分,其统计性质由加密所使用的 S 盒决定。也就是说,对于 S 盒子 S,攻击者分析差分(ΔX, ΔY),其中ΔY = S(X ⊕ ΔX) ⊕ S(X)(⊕表示异或)。在初等攻击中,攻击者希望某个密文差异出现的频率非常高,这样就能将加密和随机过程区分开来。更复杂的变体攻击能做到比穷举更快地破解出密钥。

最基本的差分密码分析密钥破解形式中,攻击者首先获取大量明文对的密文,并假设差分在至少 r − 1 轮后有效,r 即加密算法的总轮数。攻击者在倒数第二轮与最后一轮之间差异固定的假设下,去推测可能的轮密钥。如果轮密钥比较短,那么只需举可能的轮密钥,直到最后一轮运算结果和差异的密文对一致即可。当一个轮密钥看起来明显比其他密钥常出现时,其会被假设是正确的轮密钥。

针对特定的加密算法,输入差异要经过精心挑选才能使攻击成功。这需要研究算法的内部过程;标准的方法是在加密的不同阶段,跟踪一个高频差异经过的路径,术语上将这点称为差分特征。

自从差分密码分析进入公众视野,其就成了加密设计者的基本考量。新的加密设计通常需要举证其算法可以抗此类攻击。包括 AES 在内的许多算法都被证明在差分分析攻击下是安全的。

攻击细则

攻击主要依赖于一点:给定输入/输出,差异特征仅在特定输入下出现。这种方法通常用于线性结构组成的加密方式,如差表结构或 S 盒。给定两个已知密文或明文后,观察其输出差异可猜测密钥的可能值。

举个例子,假设有一个差分:输入的最低位的变化时,引起输出最低的变化,记作 1 => 1。

0个人收藏 收藏

评论交流

泪雪默认头像 请「登录」后参与评论
  1. 加载中..

相关推荐

  • 分组加密 Block cipher

    分组加密是什么

    分组加密(Block cipher)又称分块加密或块密码,是一种对称密钥算法。它将明文分成多个等长的模块,使用确定的算法和对称密钥对每组分别加密解密。分组加密是极其重要的加密协议组成,应用领域从电子邮件加密到银行交易转帐,非常广泛。
  • 密码 password

    国密是什么

    国密即国家密码局认定的国产密码算法。商用密码是指能够实现商用密码算法的加密、解密和认证等功能的技术。商用密码技术是商用密码的核心,国家将商用密码技术列入国家秘密,任何单位和个人都有责任和义务保护商用密码技术的秘密。
  • 密码分析 cryptanalysis

    密码分析是什么

    密码分析是研究在不知道通常解密所需要的秘密信息的情况下对已加密的信息进行解密的一门学问。一般情况下,要成功解密需要查找到一个秘密的钥匙,俗称破解密码(破密)。
  • 字典攻击 Dictionary Attack

    字典攻击是什么

    在密码分析和计算机安全方面,字典攻击是一种蛮力攻击,用于破解密码。攻击者通过尝试数千或数百万种字典中的英文单词和常见的密码来破解密钥、密码或口令。而这些字典中的英文单词或前人使用的密码通常来由过去已破解的数据库中所泄露。
  • 蛮力攻击 Brute-force attack

    蛮力攻击是什么

    蛮力攻击又称为蛮攻、穷举攻击或暴力破解,是一种密码分析的方法,主要精神是透过软件逐一测试可能的密码,直到找出真正的密码为止况。
  • 发票解析失败什么意思

    发票解析失败什么意思

    增值税发票都有密文,认证时系统会对密文进行解析,只有符合相应的规则才能认证抵扣。发票解析失败就是密文没有正确的解读,这时可以去税务局上门处理。值得注意的是,发票解析是税务软件对发票密码进行分析整理的过程,企业只需要耐心等待即可。