Score:1

What makes Argon2 also slow?

us flag

So as I understand Argon2 is a memory-hard function, in other words it has to use a certain amount of memory, thus making it effective against GPUs.

So would this in theory, make Argon2 useless against an adversary with infinite memory?

But also if this is the case, then why does giving Argon2 a higher memory requirement also make it slower? Shouldn't it just take the same time but with more memory? Is there some more processing going on too? Or is it slower because of RAM read/write times?

zw flag
In the real world, memory costs money. The point is to increase the cost to attackers.
Hormoz avatar
us flag
I am aware of the point, I am asking why does adding more memory also make it slower?
Score:4
fr flag

Giving Argon2 more memory does indeed make it slower. When Argon2 fills the memory that it uses, it calls the G function, which modifies data based on the BLAKE2b round function. Increasing the memory also increases the number of columns iterated over in each iteration, each of which also involves a call to the same G function. As a consequence, doubling the memory also means effectively doubling the amount of work required. You can see much of the algorithm pseudocode on Wikipedia.

Argon2 would not be useless against an adversary with infinite memory unless they had some way to make operations much faster for their additional memory. In practical computer designs, even with very performant vector operations, this would still add additional cost.

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.