对MIBS密码代数旁路攻击能力进行了评估:首先给出代数旁路攻击模型,构建MIBS密码等价代数方程组;采集微控制器上MIBS密码实现加密过程中功耗泄露,并选取功耗特征明显的部分泄漏点,基于模板分析进行加密中间状态汉明重推断;利用sAT(可满足性)、PBOPT(伪布尔随机优化)及LP(线性编程)分别对MIBS代数方程组和汉明重泄露进行表示;最后采用sAT问题解析器Crypto Minisat和混合整数编程问题(SCIP)解析器进行密钥恢复,并在不同场景下进行大量攻击实验.结果表明:MIBS密码易遭代数旁路攻击;汉明重推断正确条件下,利用1条功耗轨迹中4轮汉明重信息泄露可成功恢复完整密钥;汉明重推断部分正确条件下,基于SAT,PBOPT和LP这3种代数方程组求解方法,可分别在汉明重推断错误率不超50%,65%和60%的情况下成功恢复MIBS完整密钥.
The resistance of MIBS block cipher against ASCA (algebraic side channel attack) was evaluated based on Hamming weight model. Firstly, the framework Of ASCA was provided and MIBS was described as set of equations involving the public and key variables. Secondly, the power leakages during the encryption in microcontroller were measured and part of leakage points with distinct power feature were selected to deduce the immediate byte by template analysis. Thirdly, three representation methods to describe MIBS equations and Hamming weight leakages via SAT (satisfiability), PBOPT (Pseudo-Boolean optimization) and LP (linear programming) were provided. Finally, SCIP and CryptMinisat solver applied to recover the key and experiments in different scenario were given. Experiment results show that MIBS is vulnerable to ASCA. In case of all Hamming weight is correctly deduced, four rounds of power trace can be used to recover the whole MIBS master key. When part of hamming weight is correctly deduced, the key with error rate up to 50% can be recovered via SAT solver, with error rate up to 65% based on PBOPT and 60% based on LP programming method.