P-H-C / phc-winner-argon2

The password hash Argon2, winner of PHC
Other
4.78k stars 406 forks source link

Parameters "Secret" and "Associated data" are missing from a bunch of places #360

Open peter021 opened 1 year ago

peter021 commented 1 year ago

The current interfaces are: func argon2id(password, salt []byte, time, memory uint32, threads uint8, keyLen uint32) []byte

Parameters "Secret" and "Associated data" mentioned in the spec https://github.com/P-H-C/phc-winner-argon2/blob/master/argon2-specs.pdf are not listed in the above definition.

This is true for the sample C-implementation and a couple of other places. ´

Parameter secret is meant for creating application specific hashes.

Parameter "Associated data" is meant for a hash calculated on session specific data. A password and salt should for some use cases return different hashes based on agreed session specific data: A date value (new keys each day?); user data; direction data; protocol data; classifications data; filenames, and whatever both ends of the session agree on.

One or both are required to meet some NIST standards.

How do we get those important parameters included everywhere?