• What is Collision Free? And how does it work?
  • What is HMAC(Keyed-Hash Message Authentication Code)? And how does it work?
  • How authentication can be achieved with HMAC?

closed as too broad by Steffen Ullrich, forest, Polynomial, André Borie, Graham Hill Feb 11 '18 at 20:54

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.


Collision free is the desired effect of computational methods behind hashing algorithms. When a hashing algorithm is collision free it means that for each input to the hashing algorithm the resulting hash is unique and cannot be duplicated with a different input.

An HMAC is the result of a algorithm typically described as a key derivation function or technique of key stretching. NIST currently recommends the PBKDF2 algorithm to generate an HMAC.

An HMAC can be used to derive a strong irreversible hash based on a user's input, such as a password.

For details on proper implementation of an HMAC for authentication please refer to NIST SP 800-132

Not the answer you're looking for? Browse other questions tagged or ask your own question.