Efficiently Computing Data-Independent Memory-Hard Functions

被引:35
作者
Alwen, Joel [1 ]
Blocki, Jeremiah [2 ,3 ]
机构
[1] IST Austria, Klosterneuburg, Austria
[2] Microsoft Res, Cambridge, MA 02142 USA
[3] Purdue, W Lafayette, IN 47907 USA
来源
ADVANCES IN CRYPTOLOGY (CRYPTO 2016), PT II | 2016年 / 9815卷
关键词
ATTACKS; AES;
D O I
10.1007/978-3-662-53008-5_9
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
A memory-hard function (MHF) f is equipped with a space cost sigma and time cost tau parameter such that repeatedly computing f(sigma, tau) on an application specific integrated circuit (ASIC) is not economically advantageous relative to a general purpose computer. Technically we would like that any (generalized) circuit for evaluating an iMHF f(sigma, tau) has area x time (AT) complexity at Theta(sigma(2) * tau). A data- independent MHF (iMHF) has the added property that it can be computed with almost optimal memory and time complexity by an algorithm which accesses memory in a pattern independent of the input value. Such functions can be specified by fixing a directed acyclic graph (DAG) G on n = Theta(sigma* tau) nodes representing its computation graph. In this work we develop new tools for analyzing iMHFs. First we define and motivate a new complexity measure capturing the amount of energy (i.e. electricity) required to compute a function. We argue that, in practice, this measure is at least as important as the more traditional AT-complexity. Next we describe an algorithm A for repeatedly evaluating an iMHF based on an arbitrary DAG G. We upperbound both its energy and AT complexities per instance evaluated in terms of a certain combinatorial property of G. Next we instantiate our attack for several general classes of DAGs which include those underlying many of the most important iMHF candidates in the literature. In particular, we obtain the following results which hold for all choices of parameters sigma and tau ( and thread-count) such that n = sigma * tau - The Catena-Dragonfly function of [FLW13] has AT and energy complexities O(n(1.67)). - The Catena-Butterfly function of [FLW13] has complexities is O(n(1.67)) - The Double-Buffer and the Linear functions of [CGBS16] both have complexities in O(n(1.67)) - The Argon2i function of [BDK15] (winner of the Password Hashing Competition [PHC]) has complexities O(n(7/4) log(n)). The Single- Buffer function of [CGBS16] has complexities O(n(7/4) log(n)). - Any iMHF can be computed by an algorithm with complexities O(n2 /log(1-epsilon) (n)) for all epsilon > 0. In particular when tau= 1 this shows that the goal of constructing an iMHF with AT-complexity Theta(sigma(2) * tau) is unachievable. Along the way we prove a lemma upper-bounding the depth-robustness of any DAG which may prove to be of independent interest.
引用
收藏
页码:241 / 271
页数:31
相关论文
共 42 条
[1]  
Abadi M., 2005, ACM Trans. Internet Technol., V5, P299
[2]  
Aciiçmez O, 2007, LECT NOTES COMPUT SC, V4377, P271
[3]  
Alexander S., 2004, PASSWORD PROTECTION
[4]  
Alwen J., 2015, P 12 ANN ACM S THEOR
[5]  
Alwen J., 2016, 2016100 CRYPT EPRINT
[6]  
[Anonymous], 2015227 CRYPT EPRINT
[7]  
[Anonymous], 2016115 CRYPT EPRINT
[8]  
[Anonymous], AISEC 2013
[9]  
[Anonymous], 2016027 CRYPT EPRINT
[10]  
Bernstein D, 2005, CACHE TIMING ATTACKS