Multi-run Side-Channel Analysis Using Symbolic Execution and Max-SMT
Multi-run Side-Channel Analysis Using Symbolic Execution and Max-SMT
复制标题
DOI:
10.1109/csf.2016.34
复制
发表时间:
2016-08
期刊:
影响因子:
--
通讯作者:
C. Păsăreanu;Quoc-Sang Phan;P. Malacaria
中科院分区:
文献类型:
--
作者:
C. Păsăreanu;Quoc-Sang Phan;P. Malacaria
Side-channel attacks recover confidential information from non-functional characteristics of computations, such as time or memory consumption. We describe a program analysis that uses symbolic execution to quantify the information that is leaked to an attacker who makes multiple side-channel measurements. The analysis also synthesizes the concrete public inputs (the "attack") that lead to maximum leakage, via a novel reduction to Max-SMT solving over the constraints collected with symbolic execution. Furthermore model counting and information-theoretic metrics are used to compute an attacker's remaining uncertainty about a secret after a certain number of side-channel measurements are made. We have implemented the analysis in the Symbolic PathFinder tool and applied it in the context of password checking and cryptographic functions, showing how to obtain tight bounds on information leakage under a small number of attack steps.