-
Notifications
You must be signed in to change notification settings - Fork 2
Supports all algorithms and versions of Argon2 #612
Description
Checklist
- I have searched the existing issues
Summary
The resistance of Argon2id against GPU/ASIC attacks is somewhat weaker than Argon2d.1
Argon2d provides the best resistance against GPU/ASIC attacks. The resistance of Argon2id against GPU/ASIC attacks is somewhat weaker, but Argon2id additionally makes certain side-channel attacks slightly harder.
I think it would be better to also be able to choose the version. Currently available versions are 0x10 and 0x13 (latest). By allowing users to choose the version, it's possible to respond even when new versions are added.
Based on the reference implementation, I think the size of the version should be 4 bytes (u32). In this case, I think the size of the algorithm should also be 4 bytes (u32). Because the size of the header is divisible by 4.
I think these values should be inserted between the version number of the file format and the parameters.
| Offset | Bytes | Description |
|---|---|---|
| Version number. | ||
| Variant of Argon2. | ||
| Version of Argon2. | ||
Memory size m (memoryCost). |
This change requires a change to the version number of the file format.
Additional context
No response
Code of Conduct
- I agree to follow this project's Code of Conduct