Towards a Theory of Data-Independent Memory Hard Functions

Slides:



Advertisements
Similar presentations
Request Dispatching for Cheap Energy Prices in Cloud Data Centers
Advertisements

SpringerLink Training Kit
Luminosity measurements at Hadron Colliders
From Word Embeddings To Document Distances
Choosing a Dental Plan Student Name
Virtual Environments and Computer Graphics
Chương 1: CÁC PHƯƠNG THỨC GIAO DỊCH TRÊN THỊ TRƯỜNG THẾ GIỚI
THỰC TIỄN KINH DOANH TRONG CỘNG ĐỒNG KINH TẾ ASEAN –
D. Phát triển thương hiệu
NHỮNG VẤN ĐỀ NỔI BẬT CỦA NỀN KINH TẾ VIỆT NAM GIAI ĐOẠN
Điều trị chống huyết khối trong tai biến mạch máu não
BÖnh Parkinson PGS.TS.BS NGUYỄN TRỌNG HƯNG BỆNH VIỆN LÃO KHOA TRUNG ƯƠNG TRƯỜNG ĐẠI HỌC Y HÀ NỘI Bác Ninh 2013.
Nasal Cannula X particulate mask
Evolving Architecture for Beyond the Standard Model
HF NOISE FILTERS PERFORMANCE
Electronics for Pedestrians – Passive Components –
Parameterization of Tabulated BRDFs Ian Mallett (me), Cem Yuksel
L-Systems and Affine Transformations
CMSC423: Bioinformatic Algorithms, Databases and Tools
Some aspect concerning the LMDZ dynamical core and its use
Bayesian Confidence Limits and Intervals
实习总结 (Internship Summary)
Current State of Japanese Economy under Negative Interest Rate and Proposed Remedies Naoyuki Yoshino Dean Asian Development Bank Institute Professor Emeritus,
Front End Electronics for SOI Monolithic Pixel Sensor
Face Recognition Monday, February 1, 2016.
Solving Rubik's Cube By: Etai Nativ.
CS284 Paper Presentation Arpad Kovacs
انتقال حرارت 2 خانم خسرویار.
Summer Student Program First results
Theoretical Results on Neutrinos
HERMESでのHard Exclusive生成過程による 核子内クォーク全角運動量についての研究
Wavelet Coherence & Cross-Wavelet Transform
yaSpMV: Yet Another SpMV Framework on GPUs
Creating Synthetic Microdata for Higher Educational Use in Japan: Reproduction of Distribution Type based on the Descriptive Statistics Kiyomi Shirakawa.
MOCLA02 Design of a Compact L-­band Transverse Deflecting Cavity with Arbitrary Polarizations for the SACLA Injector Sep. 14th, 2015 H. Maesaka, T. Asaka,
Hui Wang†*, Canturk Isci‡, Lavanya Subramanian*,
Fuel cell development program for electric vehicle
Overview of TST-2 Experiment
Optomechanics with atoms
داده کاوی سئوالات نمونه
Inter-system biases estimation in multi-GNSS relative positioning with GPS and Galileo Cecile Deprez and Rene Warnant University of Liege, Belgium  
ლექცია 4 - ფული და ინფლაცია
10. predavanje Novac i financijski sustav
Wissenschaftliche Aussprache zur Dissertation
FLUORECENCE MICROSCOPY SUPERRESOLUTION BLINK MICROSCOPY ON THE BASIS OF ENGINEERED DARK STATES* *Christian Steinhauer, Carsten Forthmann, Jan Vogelsang,
Particle acceleration during the gamma-ray flares of the Crab Nebular
Interpretations of the Derivative Gottfried Wilhelm Leibniz
Advisor: Chiuyuan Chen Student: Shao-Chun Lin
Widow Rockfish Assessment
SiW-ECAL Beam Test 2015 Kick-Off meeting
On Robust Neighbor Discovery in Mobile Wireless Networks
Chapter 6 并发:死锁和饥饿 Operating Systems: Internals and Design Principles
You NEED your book!!! Frequency Distribution
Y V =0 a V =V0 x b b V =0 z
Fairness-oriented Scheduling Support for Multicore Systems
Climate-Energy-Policy Interaction
Hui Wang†*, Canturk Isci‡, Lavanya Subramanian*,
Ch48 Statistics by Chtan FYHSKulai
The ABCD matrix for parabolic reflectors and its application to astigmatism free four-mirror cavities.
Measure Twice and Cut Once: Robust Dynamic Voltage Scaling for FPGAs
Online Learning: An Introduction
Factor Based Index of Systemic Stress (FISS)
What is Chemistry? Chemistry is: the study of matter & the changes it undergoes Composition Structure Properties Energy changes.
THE BERRY PHASE OF A BOGOLIUBOV QUASIPARTICLE IN AN ABRIKOSOV VORTEX*
Quantum-classical transition in optical twin beams and experimental applications to quantum metrology Ivano Ruo-Berchera Frascati.
The Toroidal Sporadic Source: Understanding Temporal Variations
FW 3.4: More Circle Practice
ارائه یک روش حل مبتنی بر استراتژی های تکاملی گروه بندی برای حل مسئله بسته بندی اقلام در ظروف
Decision Procedures Christoph M. Wintersteiger 9/11/2017 3:14 PM
Limits on Anomalous WWγ and WWZ Couplings from DØ
Presentation transcript:

Towards a Theory of Data-Independent Memory Hard Functions Jeremiah Blocki (Purdue) Joel Alwen (IST Austria) Krzysztof Pietrzak (IST Austria)

Motivation: Offline Dictionary Attack jblocki, 123456 Username jblocki Salt 89d978034a3f6 Hash 85e23cfe0021f584e3db87aa72630a9a2345c062 GOTCHAs are intended to address a specific type of attack against passwords called an offline dictionary attack. When a user creates an account the server stores a password file with a cryptographic hash of the user’s password. If an adversary is able to breach the server and recover this password file then he check a password guess by evaluating the hash function --- without getting locked out after several incorrect guesses. SHA1(12345689d978034a3f6)=85e23cfe0021f584e3db87aa72630a9a2345c062 +

Offline Attacks: A Common Problem Password breaches at major companies have affected millions of users. Unfortunately, offline dictionary attacks are quite common. Password breaches at major companies have affected millions of users.

Offline Attacks: A Common Problem Password breaches at major companies have affected millions of users. Unfortunately, offline dictionary attacks are quite common. Password breaches at major companies have affected millions of users.

Offline dictionary attacks are also very powerful Offline dictionary attacks are also very powerful. Some password hash functions can be evaluated at 348 billion hashes per second! How can we defend against these attacks?

Goal: Moderately Expensive Hash Function Equitable Costs? One proposed defense is to intentionally make the cryptographic hash function more expensive to evaluate by using a cryptographic hash function like BRCRYPT or sCrypt. The tradeoff is that making the hash function more expensive to evaluate increases costs for the adversary and a legitimate server. Note: This slide could be skipped if the presentation is too long.

Bitcoin Mining (SHA256) is not Equitable! Cost(SHA256) varies by a factor of 106

Memory Costs: Equitable Across Architectures

Memory Hard Function (MHF) Computation costs dominated by memory costs Data Independent Memory Hard Function (iMHF) Memory access pattern should not depend on secret input

iMHF (fG,H) Given by a hash function H and DAG G H: 0,1 2𝑘→ 0,1 𝑘 (Random Oracle) G encodes data-dependencies Input: 2 4 Output: L4 1 1 3 pwd, salt 𝐿3=𝐻(𝐿2,𝐿1) 𝐿1=𝐻(𝑝𝑤𝑑,𝑠𝑎𝑙𝑡)

Evaluating an iMHF (pebbling) 2 4 Output: L4 Input: 1 1 3 pwd, salt 𝐿3=𝐻(𝐿2,𝐿1) 𝐿1=𝐻(𝑝𝑤𝑑,𝑠𝑎𝑙𝑡) Pebbling Rules : 𝑃 =P1,…,Pt⊂𝑉 s.t. Pi+1⊂Pi∪ 𝑥∈𝑉 parents(𝑥)⊂Pi+1 n∈ Pt

Pebbling Example 1 1 2 2 3 3 4 4 5 5

Pebbling Example 1 2 3 4 5 P1 = {1}

Pebbling Example 1 2 3 4 5 P1 = {1} P2 = {1,2}

Pebbling Example 1 2 3 4 5 P1 = {1} P2 = {1,2} P3 = {3}

Pebbling Example 1 2 3 4 5 P1 = {1} P2 = {1,2} P3 = {3} P4 = {3,4}

Pebbling Example P1 = {1} P2 = {1,2} P3 = {3} P4 = {3,4} P5 = {5} 1 2

Measuring Cost: Attempt 1 ST-Complexity 𝑆𝑇 𝐺 = min 𝑃 𝑡 𝑃 × max 𝑖≤ 𝑡 𝑃 𝑃 𝑖 Rich Theory Space-time tradeoffs Not appropriate for password hashing Problem: Does not amortize! 𝑆𝑇 𝐺,𝐺 <2×𝑆𝑇(𝐺)

Measuring Cost: Improved [AS15] Cumulative Complexity (CC) CC 𝐺 = min 𝑃 𝑖=1 𝑡 𝑃 𝑃 𝑖 Amortization CC 𝐺,𝐺 =2×CC(𝐺)

Pebbling Example 𝐶𝐶 𝐺 ≤ 𝑖=1 5 𝑃 𝑖 =1+2+1+2+1 =7 P1 = {1} P2 = {1,2} 3 4 5 P1 = {1} 𝐶𝐶 𝐺 ≤ 𝑖=1 5 𝑃 𝑖 =1+2+1+2+1 =7 P2 = {1,2} P3 = {3} P4 = {3,4} P5 = {5}

Energy Complexity [AB16] ER 𝐺 = min 𝑃 𝑖=1 𝑡 𝑃 𝑃 𝑖 +R 𝑃 𝑖 \ 𝑃 𝑖−1 Memory costs in memory-watt-tocks Energy Ratio: Cost to compute H in memory-watt-tocks R≈3,000

Energy Complexity [AB16] ER 𝐺 = min 𝑃 𝑖=1 𝑡 𝑃 𝑃 𝑖 +R 𝑃 𝑖 \ 𝑃 𝑖−1 ER 𝐺 =θ CC(𝐺) Memory costs (equitable) Cost of querying H (inequitable)

Naïve Pebbling Algorithm Sequential Algorithm (N) Constraint: One new pebble per round Example (Pebble in Topological Order) Never discard pebbles Pebbling Time: n Average #pebbles: n/2. ER(Naïve) = θ Rn+n2

Desiderata Find a DAG G and a sequential pebbling algorithm N with Constant Indegree (𝛿=2) ER(Naive) ≤c×ER(G) for some small constant c. ER(Naive) ≥ 𝑛2 𝜏 +R𝑛 for some small value 𝜏.

Desiderata … Find a DAG G and a sequential pebbling algorithm N with Constant Indegree (𝛿=2) ER(Naive) ≤c×ER(G) for some small constant c. ER(Naive) ≥ 𝑛2 𝜏 +R𝑛 for some small value 𝜏. … 1 2 3 n

Desiderata … Find a DAG G and a sequential pebbling algorithm N with Constant Indegree (𝛿=2) ER(Naive) ≤c×ER(G) for some small constant c. ER(Naive) ≥ 𝑛2 𝜏 +R𝑛 for some small value 𝜏. … 1 2 3 n

Desiderata … Find a DAG G and a sequential pebbling algorithm N with Constant Indegree (𝛿=2) ER(Naive) ≤c×ER(G) for some small constant c. ER(Naive) ≥ 𝑛2 𝜏 +R𝑛 for some small value 𝜏. … 1 2 3 n

Desiderata Find a DAG G and a sequential pebbling algorithm Naïve with Constant Indegree (𝛿=2) QualityR(A) ≤𝑐 for every adversary A (c small). ER(Naïve) ≥ 𝑛2 𝜏 +R𝑛 (𝜏 small). … 1 2 3 n

ER(Naive)=ER(G)=n+Rn Cost dominated by queries to H (inequitable) Desiderata ER(Naive)=ER(G)=n+Rn Cost dominated by queries to H (inequitable) Find a DAG G and a sequential pebbling algorithm N with Constant Indegree (𝛿=2) ER(Naive) ≤c×ER(G) for some small constant c. ER(Naive) ≥ 𝑛2 𝜏 +R𝑛 for some small value 𝜏. … 1 2 3 n

Memory costs should dominate Desiderata Find a DAG G and a sequential pebbling algorithm N with Constant Indegree (𝛿=2) ER(Naive) ≤c×ER(G) for some small constant c. ER(Naive) ≥ 𝑛2 𝜏 +R𝑛 for some small value 𝜏. Memory costs should dominate

Depth-Robustness is the Key to Success

Depth Robustness Definition: A DAG G=(V,E) is (e,d)-depth reducible if there exists 𝑆⊆𝑉 s.t. 𝑆 ≤𝑒 and depth(G-S) ≤ d. Otherwise, we say that G is (e,d)-depth robust. Example: (1,2)-reducible 1 2 3 4 5

Depth Robustness Definition: A DAG G=(V,E) is (e,d)-depth reducible if there exists 𝑆⊆𝑉 s.t. 𝑆 ≤𝑒 and depth(G-S) ≤d. Otherwise, we say that G is (e,d)-depth robust. Example: (1,2)-reducible 1 2 3 4 5

Depth-Robustness is Necessary [AB16] Theorem (Depth-Robustness is a necessary condition): If G is not (e,d)- node robust then is an (efficient) attack A such that ER 𝐴 ≤ min 𝑔≥𝑑 𝑒𝑛+𝑔𝑛+ 𝑛 𝑔 𝑛𝑑+𝑛R+ 𝑛 𝑔 𝑛R . In particular, setting 𝑔= 𝑛𝑑 we get ER 𝐴 =𝑂 𝑒𝑛+𝑛 𝑛𝑑

Attacking (e,d)-reducible DAGs Light Phase (g rounds): Discard most pebbles! Only keep pebbles on S and on parents of the g new nodes to be pebbled in this phase. Round Cost: ≤ |S| + g + R Balloon Phase: Greedily Recover Missing Pebbles Expensive, but…over quickly (at most d rounds) At most nd/g total balloon phase rounds. Round Cost: ≤ n+Rn/d In ≤ d rounds we can recover all of the pebbles. One Balloon Phase: Cost = O(dn) All Balloon Phases: Total Cost= O(dn2/g). Each round of a balloon phase is potentially very expensive. Key: balloon phase ends quickly! Light Phase: Discard most pebbles! Only keep pebbles on parents of next g nodes. One Light Phase: Cost = O(g|S|) All Light Phases: Total Cost = O(g|S|(n/g))= O(n|S|)

Depth-Robustness is Necessary [AB16] Theorem (Depth-Robustness is a necessary condition): If G is not (e,d)- node robust then is an (efficient) attack A such that ER 𝐴 ≤𝑒𝑛+𝑔𝑛+ 𝑛 𝑔 𝑛𝑑 +𝑛R+ 𝑛 𝑔 𝑛R. Never delete pebbles from nodes x∈𝑆, where 𝑆 =𝑒 depth(G-S) ≤𝑑 #pebbling rounds

Depth-Robustness is Necessary [AB16] Theorem (Depth-Robustness is a necessary condition): If G is not (e,d)- node robust then is an (efficient) attack A such that ER 𝐴 ≤𝑒𝑛+𝑔𝑛+ 𝑛 𝑔 𝑛𝑑 +𝑛R+ 𝑛 𝑔 𝑛R. Maintain pebbles on parents of next g nodes to be pebbled. #pebbling rounds

Depth-Robustness is Necessary [AB16] Theorem (Depth-Robustness is a necessary condition): If G is not (e,d)- node robust then is an (efficient) attack A such that ER 𝐴 ≤𝑒𝑛+𝑔𝑛+ 𝑛 𝑔 𝑛𝑑 +𝑛R+ 𝑛 𝑔 𝑛R. Maintain pebbles on parents of next g nodes to be pebbled. #pebbling rounds

Depth-Robustness is Necessary [AB16] Theorem (Depth-Robustness is a necessary condition): If G is not (e,d)- node robust then is an (efficient) attack A such that ER 𝐴 ≤𝑒𝑛+𝑔𝑛+ 𝑛 𝑔 𝑛𝑑 +𝑛R+ 𝑛 𝑔 𝑛R. Length of a balloon phase #balloon phases Max #pebbles on G In each round of balloon phase

Depth-Robustness is Sufficient! [ABP16] 𝐊𝐞𝐲 𝐓𝐡𝐞𝐨𝐫𝐞𝐦: Let G=(V,E) be (e,d)-depth robust then CC(G)≥𝑒𝑑. Implications: There exists a constant indegree graph G with CC G ≥Ω 𝑛 2 log 𝑛 . Previous Best [AS15]: Ω 𝑛 2 log 10 𝑛 [AB16]: For all constant indegree graphs CC G =𝑂 𝑛 2 log log 𝑛 log 𝑛 .

Reviewer Feedback 𝐊𝐞𝐲 𝐓𝐡𝐞𝐨𝐫𝐞𝐦: Let G=(V,E) be (e,d)-depth robust then CC(G)≥𝑒𝑑. “The proof of this result is really an incredibly simple and beautiful two-line argument….I generally view simplicity as a positive, and this is the right proof. But there is such as thing as too simple...”

Depth-Robustness is Sufficient! [ABP16] Proof: Let P1,…Pt denote an (optimal) pebbling of G. For 0< i < d define Si= 𝑃 𝑖 ∪ 𝑃 𝑑+𝑖 ∪ 𝑃 2𝑑+𝑖 ∪… one of the sets Si has size at most CC(G)/d. Now we claim that d ≥ depth(G-Si) because any path in G-Si must have been completely pebbled at some point. Thus, it must have been pebbled entirely during some interval of length d. Thus, G (CC(G)/d,d)-reducible. It follows that CC(G)≥𝑒𝑑.

Question Are existing iMHF candidates based on depth- robust DAGs?

Answer NO! Example: Argon2i-A, winner of the password hashing competition, is (e,d)-reducible for 𝑑= 𝑛 and 𝑒= 𝑂 𝑛 3/4 log 𝑛 . Attack Quality: Ω 𝑛 1/4

Drama: Are the attacks `Practical’ Argon2i team: No, at least for realistic parameter ranges. Recent: Argon2i-B to IRTF (Internet Research Task Force) for standardization. New Result [AB16b]: New heuristics to reduce overhead by constant factor Simulate the attack on real instances

Empirical Results … Pessimistic Argon 2i-B parameter Parameter setting could easily be chosen when following Argon2i-B guidelines … Pessimistic Argon 2i-B parameter Attack on Argon 2i-B is practical even for pessimistic parameter ranges (brown line).

Lots of Future Work Practical iMHF with provable security? Better constructions of depth-robust graphs? Other tools to lower-bound memory hardness? Improved attacks on Argon2i?

𝜆-Layered DAG (Catena) … 2𝑛 𝜆+1 +1 2 3 4 5 𝑛 𝜆+1 Layer 𝜆 … … … 𝑛 𝜆+1 +1 +2 +3 4 5 2𝑛 𝜆+1 Layer 1 … 1 2 3 4 5 𝑛 𝜆+1 Layer 0

𝜆-Layered DAG (Catena) … 2𝑛 𝜆+1 +1 2 3 4 5 𝑛 𝜆+1 Layer 𝜆 … … … 𝑛 𝜆+1 +1 +2 +3 4 5 2𝑛 𝜆+1 Layer 1 … 1 2 3 4 5 𝑛 𝜆+1 Layer 0

𝜆-Layered DAG (Catena) … 2𝑛 𝜆+1 +1 2 3 4 5 𝑛 𝜆+1 Layer 𝜆 … … … 𝑛 𝜆+1 +1 +2 +3 4 5 2𝑛 𝜆+1 Layer 1 … 1 2 3 4 5 𝑛 𝜆+1 Layer 0 Disallowed! All edges must go to a higher layer (except for (i,i+1))

Layered Graphs are Reducible Theorem (Layered Graphs Not Depth Robust): Let G be a 𝜆-Layered DAG then G is 𝑛 2/3 , 𝑛 1/3 𝜆+1 -reducible. Corollary: ER 𝐺 ≤𝑂 𝜆𝑛 5/3 . Attack Quality: QualityR 𝐴 =Ω 𝑛 𝑞/3 𝜆 .

Layered Graphs are Reducible Theorem (Layered Graphs Not Depth Robust): Let G be a 𝜆-Layered DAG then G is 𝑛 2/3 , 𝑛 1/3 𝜆+1 -reducible. Proof: Let 𝐒= 𝒊×𝒏 𝟏/𝟑 𝒊≤𝒏 𝟐/𝟑 any path p can spend at most 𝑛 1/3 steps on layer i. … … … … … … 𝑛 𝜆+1 1 2 𝑛 1/3 2𝑛 1/3 Layer 0 𝑛 1/3 𝑛 1/3

Layered Graphs are Reducible Theorem (Layered Graphs Not Depth Robust): Let G be a 𝜆-Layered DAG then G is 𝑛 2/3 , 𝑛 1/3 𝜆+1 -reducible. Proof: Let 𝐒= 𝒊×𝒏 𝟏/𝟑 𝒊≤𝒏 𝟐/𝟑 any path p can spend at most 𝑛 1/3 steps on layer i. … … … … … … 𝑛 𝜆+1 1 2 𝑛 1/3 2𝑛 1/3 Layer 0 𝑛 1/3 𝑛 1/3

Catena Catena Bit Reversal DAG ( BRG 𝜆 𝑛 ) 𝜆-layered (by design 𝜆≤5) Edges between layers correspond to the bit-reversal operation Theorem[LT82]: ST( BRG 1 𝑛 )=Ω 𝑛 2 Catena Butterfly ( DBG 𝜆 𝑛 ) 𝜆=𝑂( log 𝑛) -layered (by design 𝜆≤5) Edges between layers correspond to FFT DBG 𝜆 𝑛 is a “super-concentrator.” Theorem[LT82] => ST( BRG 1 𝑛 )=Ω 𝑛 2 log⁡(𝑛) Thomas Lengauer and Robert Endre Tarjan. Asymptotically Tight Bounds on Time-Space Trade-offs in a Pebble Game. J. ACM, 29(4):1087–1130, 1982

ST complexity vs CC complexity CC(BRG 1 𝑛 )≪ ST(BRG 1 𝑛 )=Ω 𝑛 2 Previous attacks on Catena ( BRG 𝜆 𝑛 ) [AS15] CC(BRG 1 𝑛 )≤𝑂 𝑛 1.5 [BK15] ST(BRG 𝜆 𝑛 )≤𝑂 𝑛 1.8 for 𝜆 > 1. Our result CC(BRG 𝜆 𝑛 ) ≤𝑂 𝑛 1.5 Applies to all Catena variants. Alwen/Serbinenko Alex Biryukov and Dmitry Khovratovich

Argon2i [BDK] Argon2: Winner of the password hashing competition[2015] Authors recommend Argon2i variant (data-independent) for password hashing. Alex Biryukov, Daniel Dinu, and Dmitry Khovratovich from University of Luxembourg.

Argon2i … 1 2 3 4 i n

Argon2i random predecessor r(i) < i … 1 2 3 4 i n Indegree: 𝛿=2

Argon2i is a layered DAG (almost) … … n Layer 4 𝑛 … … 𝑛 3/4 +1 +2 +3 + 4 𝑛 2𝑛 3/4 Layer 1 … … 3 𝑛 3/4 1 2 4 𝑛 Layer 0

Argon2i is a layered DAG (almost) Definition: 𝑆2= 𝑣𝑖 𝑣 𝑟(𝑖) and v𝑖 in same layer … … n Layer 4 𝑛 … … 𝑛 3/4 +1 +2 +3 + 4 𝑛 2𝑛 3/4 Layer 1 … … 3 𝑛 3/4 1 2 4 𝑛 Layer 0 zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz 𝐂𝐥𝐚𝐢𝐦: E 𝑆2 =𝑂 𝑛 3/4 log 𝑛

Argon2i is a layered DAG (almost) Definition: 𝑆2= 𝑣𝑖 𝑣 𝑟(𝑖) and v𝑖 in same layer … … Layer 4 𝑛 … … 𝑛 3/4 +1 +2 +3 + 4 𝑛 2𝑛 3/4 Layer 1 … … 3 𝑛 3/4 1 2 4 𝑛 Layer 0 𝐸 𝐿𝑎𝑦𝑒𝑟 𝑖∩𝑆2 ≤ 𝑛 3/4 𝑖 Pr 𝑣∈𝑆2 𝑣 𝑖𝑛 𝐿𝑎𝑦𝑒𝑟 𝑖 ≤ 1 𝑖

Argon2i is a layered DAG (almost) Definition: 𝑆2= 𝑣𝑖 𝑣 𝑟(𝑖) and v𝑖 in same layer … … n Layer 4 𝑛 … … 𝑛 3/4 +1 +2 +3 + 4 𝑛 2𝑛 3/4 Layer 1 … … 3 𝑛 3/4 1 2 4 𝑛 Layer 0 𝐂𝐥𝐚𝐢𝐦: E 𝑆2 =𝑂 𝑛 3/4 log 𝑛

Argon2i is a layered DAG (almost) Let S = S1+S2 … … n Layer 4 𝑛 … … 𝑛 3/4 +1 +2 +3 + 4 𝑛 2𝑛 3/4 Layer 1 … … 3 𝑛 3/4 1 2 4 𝑛 Layer 0 𝐅𝐚𝐜𝐭: E 𝑆 =𝑂 𝑛 3/4 log 𝑛 and depth(G-S)≤ 𝑛 .

Argon2i is a layered DAG (almost) Let S = S1+S2 … … n Layer 4 𝑛 … … 𝑛 3/4 +1 +2 +3 + 4 𝑛 2𝑛 3/4 Layer 1 … … 3 𝑛 3/4 1 2 4 𝑛 Layer 0 𝐓𝐡𝐞𝐨𝐫𝐞𝐦: G is (2 𝑛 3/4 log 𝑛 , 𝑛 )-reducible with high probability.

… … … … … … Argon2i is a layered DAG (almost) Layer 4 𝑛 Layer 1 Let S = S1+S2 … … n Layer 4 𝑛 … … 𝑛 3/4 +1 +2 +3 + 4 𝑛 2𝑛 3/4 Layer 1 … … 3 𝑛 3/4 1 2 4 𝑛 Layer 0 Corollary: ER 𝐺 ≤𝑂 𝑛 7/4 log 𝑛 . QualityR 𝐴 ≤Ω 𝑛 1/4 log 𝑛 .

Do c-Ideal iMHFs exist? 𝐓𝐡𝐦[𝐀𝐒𝟏𝟓]: There is a DAG G with CC 𝐺 =Ω 𝑛 2 log 10+𝜀 𝑛 and 𝛿=2. 𝐋𝐞𝐦𝐦𝐚[𝐕𝐚𝐥𝐢𝐚𝐧𝐭𝟕𝟕]: Let G=(V,E) be a DAG with depth d≤𝑛 then there is a set S⊂𝑉 of at most 𝑛𝛿 log 𝑑 nodes such that depth(G-S)≤ 𝑑 2 . 𝐓𝐡𝐞𝐨𝐫𝐞𝐦: Let G=(V,E) be a DAG with n nodes then there is a set S⊂𝑉 of 𝑛𝛿 log log 𝑛 log 𝑛 edges such that depth(G-S)≤ 𝑛 log 𝑛 . 𝐂𝐨𝐫𝐨𝐥𝐥𝐚𝐫𝐲: Let G=(V,E) be a DAG with n nodes then for any constant 𝜀>0 ER 𝐺 =𝑜 𝑛 2 log 1−𝜀 𝑛

NO! Do c-Ideal iMHFs exist? 𝐂𝐨𝐫𝐨𝐥𝐥𝐚𝐫𝐲: Let G=(V,E) be a DAG with n nodes then for any constant 𝜀>0 ER 𝐺 =𝑜 𝑛 2 log 1−𝜀 𝑛 NO!

Balloon Phase Unit Light Phase Units Light Phase Units Instance 1 Instance n1/4/2+1 𝐇 𝐇 Instance 2 Instance n1/4/2+2 𝐇 𝐇 … 𝐇1 … 𝐇 𝒏 Instance i Instance n1/4-1 𝐇2 𝐇 𝐇 𝐇3 … … Instance n1/4 Instance n1/4/2 𝐇 𝐇

Practical Consequences (R = 3,000)

Outline Motivation Data Independent Memory Hard Functions (iMHFs) Attacks Constructing iMHFs (New!) Open Questions Joint work with Joel Alwen and Krzysztof Pietrzak

New (Positive) Results 𝐊𝐞𝐲 𝐓𝐡𝐞𝐨𝐫𝐞𝐦: Let G=(V,E) be (e,d)-depth robust then CC(G)≥𝑒𝑑. 𝐓𝐡𝐞𝐨𝐫𝐞𝐦[𝐄𝐆𝐒𝟕𝟓]: There is an Ω 𝑛 ,Ω 𝑛 -depth robust DAG G with indegree 𝛿=𝑂 log 𝑛 . 𝐂𝐨𝐫𝐨𝐥𝐥𝐚𝐫𝐲: There is a DAG G with indegree 𝛿=𝑂 log 𝑛 and CC(G)≥Ω 𝑛 2 . 𝐓𝐡𝐞𝐨𝐫𝐞𝐦 (𝐈𝐧𝐝𝐞𝐠𝐫𝐞𝐞 𝐑𝐞𝐝𝐮𝐜𝐭𝐢𝐨𝐧): Let G’ be a DAG with n’ = n/(2𝛿′) nodes and indegree 𝛿’. If G’ is (e’,d’)-depth robust then we can construct a DAG G on n nodes such that G is (e’,d = 𝛿’d’)-depth robust and has maximum indegree 𝛿=2.

New (Positive) Results 𝐓𝐡𝐞𝐨𝐫𝐞𝐦 (𝐈𝐧𝐝𝐞𝐠𝐫𝐞𝐞 𝐑𝐞𝐝𝐮𝐜𝐭𝐢𝐨𝐧): Let G’ be a DAG with n’ = n/(2𝛿′) nodes and indegree 𝛿’. If G’ is (e’,d’)-depth robust then we can construct a DAG G on n nodes such that G is (e’,d = 𝛿’d’)-depth robust and has maximum indegree 𝛿=2. 𝐂𝐨𝐫𝐨𝐥𝐥𝐚𝐫𝐲: There is a DAG G with maximum indegree 𝛿=2 and CC(G)=Ω 𝑛 2 log 𝑛 . 𝐓𝐡𝐞𝐨𝐫𝐞𝐦: There is a DAG G with maximum indegree 𝛿=2 and CC(G)=Ω 𝑛 2 log 𝑛 . Furthermore, there is a sequential pebbling algorithm N with cost CC(N) =𝑂 𝑛 2 log 𝑛 .

Proof of Key Theorem 𝐊𝐞𝐲 𝐓𝐡𝐞𝐨𝐫𝐞𝐦: Let G=(V,E) be (e,d)-depth robust then CC(G)≥𝑒𝑑. Proof: Let P1,…Pt denote an (optimal) pebbling of G. For 0< i < d define Si= 𝑃 𝑖 ∪ 𝑃 𝑑+𝑖 ∪ 𝑃 2𝑑+𝑖 ∪… one of the sets Si has size at most CC(G)/d. Now we claim that d ≥ depth(G-Si) because any path in G-Si must have been completely pebbled at some point. Thus, it must have been pebbled entirely during the some interval of length d. Thus, G (CC(G)/d,d)-reducible. It follows that CC(G)≥𝑒𝑑.

Pebbling Equivalence 𝐓𝐡𝐞𝐨𝐫𝐞𝐦 𝐀𝐒𝟏𝟓 (𝐈𝐧𝐟𝐨𝐫𝐦𝐚𝐥): Let H be a random oracle and let G be a DAG with constant indegree. For any pROM adversary A which evaluates (multiple instances of) fH,G we have Cost A = 𝑖=1 𝑇 𝐴 𝜎 𝑖 = θ 𝐶𝐶 𝐺 × #𝑖𝑛𝑠𝑡(𝐴)

Miscellaneous Results New Lower Bounds: CC(Argon2i) ≥ Ω 𝑛 1.5 CC(Catena) ≥ Ω 𝑛 1.5 New Upper Bounds: CC(Argon2i) = 𝑂 𝑛 1.71 CC(Catena) = 𝑂 𝑛 1.618

Open Questions Computational Complexity of CC(G) Efficient Algorithm to Approximate CC(G)? Hardness of Approximation? Improved Constructions of Depth-Robust Graphs Constants matter! What is CC(Argon2i)? Upper Bound: n1.71 Lower Bound: n1.5