adds hmac implementation.