add incremental API for HMAC