use HMAC algorithm for signature