摘要
通常来讲,对于对称密码算法的侧信道和错误注入攻击主要针对的是首轮或者末轮,而今天分享的CHES 2020中的《 SITM: See-In-The-Middle Side-Channel Assisted Middle Round Differential Cryptanalysis on SPN Block Ciphers 》结合差分密码分析技术将攻击位置定位到对称密码算法的中间轮中。文章提出了针对SPN结构对称算法的攻击手段并统计了恢复密钥的代价。我们在8bit和32bit平台上给出了实验验证。作者针对目前流行的对称算法,例如AES, SKINNY以及PRESENT的攻击案例。不仅如此,我们还给出了针对shuffling保护的攻击方法。
贡献
本文主要的贡献是:
- 基于SCA DPA攻击提出的SITM方法将目标扩展至更多的分组密码结构中、不同的混淆函数和更深的轮上。文章给出攻击的轮数可以扩展到第12轮。这是目前已知的使用非监督方法能够达到的最深的轮数,普通方法仅仅是第一轮或者最后一轮。
- 作者总结了使用SITM方法针对SPN结构分组算法的普遍思路。
- 在8bit AVR和32bit ARM平台上对AES, SKINNY和PRESENT算法的攻击实验,并且提出此攻击思想可以扩展到其他类似架构,例如GIFT, RECTANGLE和MIDORI算法等。
- 攻击针对AES算法的第4轮仅仅需要
明文空间
- 文章针对防护SITM攻击,提出了需要掩码的最小轮数
- 针对中间轮使用了shuffling防护,文章通过实验给出了即使在较低信噪比的情况下哎也可以成功实施SITM攻击
- DSCA - Differential Side-Channel Attacks
- SCADPA - Side-Channel Assisted Differential Plaintext Attack 《SCADPA: Side-channel assisted differential-plaintext attack on bit permutation based ciphers》通过代数差分分析思想使用两队明文的差分特性,结合侧信道攻击猜测中间轮密钥是否正确。
- ASCA - Algebraic SCA :《Algebraic side-channel attacks》 《ASCA, SASCA and DPA with Enumeration: Which One Beats the Other and When? 》
- SASCA - soft-analytical SCA : 《Softanalytical side-channel attacks》
-
Collision Attack :
《A new class of collision attacks and its application to DES》
《Complete SCARE of AES-Like Block Ciphers by Chosen Plaintext Collision Power Analysis》
《Adaptive chosenmessage side-channel attacks》
《Side channel cryptanalysis of product ciphers》 -
SITM - 相比以下论文攻击范围更广适用性更强
《SCADPA: Side-channel assisted differential-plaintext attack on bit permutation based ciphers》
《A first-order chosen-plaintext DPA attack on the third round of DES》
分析表中各种攻击手段,相比SASCA攻击SITM不需要对每个操作进行建模。不仅如此,SITM仅仅需要在很少的操作上选择POI,ASCSA需要更高的SNR并且无法克服Shuffling防护,而SITM可以忽略此防御措施并且对信噪比要求不高。
在之前的文章《DES with any reduced masked rounds is not secure against side-channel attacks》和《A first-order chosen-plaintext DPA attack on the third round of DES》也提出了针对中间论构造的特殊攻击,但是本篇文章提出的中间轮攻击首次针对SPN结构的算法。
结论
文章结合差分密码分析技术与SCADPA攻击提出了新的SITM方法,可以将攻击对象扩展至SPN结构的分组密码中的中间轮中,并且对于SKINNY算法可将轮数扩展到第12轮。文章还给出在8位和32位平台上给出了实际的攻击实验结果,目标算法可以是AES, SKINNY和PRESENT算法等。在更强的泄露模型下还给出了针对AES和PRESENT算法更深轮的攻击。SITM攻击可以克服在低信噪比的情况下针对轻量级算法的shuffling防护。根据文章的实验结果,仅仅对首尾轮进行防护是不够的,因此提出如何确定应该对多少轮进行保护的一个评估体系。