I would be nice with an example of how to use HMAC. Are there any restrictions on salt? Length/format ?