Hot answers tagged

4

The Scrypt paper here defines memory-hard and sequential memory hard, and accordingly explains why one was used over the other. Definition 1. A memory-hard algorithm on a Random Access Machine is an algorithm which uses $S(n)$ space and $T(n)$ operations, where $S(n) \in \Omega (T(n)^{1-\epsilon})$ Definition 2. A sequential memory-hard function is a ...


3

Generally we look at strength by looking at the order $O$ that it adds to the password search when an attacker is trying to guess passwords. That's just the same as the number of iterations basically, assuming a salt and correct password hash. Often it is simpler to just use bits, which is basically the $\log_2$ of the order. So if a password strength is an ...


3

If you use a fixed salt all your passwords can be attacked concurrently. Though argon2 is designed to be slow and thus hard to do a dictionary attack I see no reason to give your attacker a speedup factor of the number of users. This will obviously be on top of any other advantages the attacker may have(e.g superior hardware or cryptographical advancement). ...


2

Unless otherwise noted, I assume adversaries know the genuine QR-code, and can alter it and submit it for decryption. I posit the design requirements are: Confidentiality of $\text{seed}$, to as high a level as the passphrase + key stretching of Argon2 allows. Integrity of $\text{seed}$, to 64-bit security level [ample in the context, where we want to catch ...


2

Hardware tokens (such as smart cards, FIDO U2F keys, and other secure storage elements), and normal files can all directly store cryptographic keys. For example, it's recommended to configure SSH servers to only use cryptographic key files.


1

A) Don't hash Email. Store it as plain text or don't store at all. If hashed, then looking up will be impossible. One would need to iterate through every single record in the database. On average 50% records need to be tested each time. In case there are 1 000 000 users, for every login case the application will need to check on average 500 000 records. ...


1

Even relatively modest values for the memory and time parameters will make it very hard for an attacker to do an offline brute-force attack on your users' passwords, since they have to try so many passwords to find one. So you should pick values that allow your servers to perform acceptably, even given the maximum rate of login attempts that you permit. ...


Only top voted, non community-wiki answers of a minimum length are eligible