https://www.padheye.com/2019/03/how-message-authentication-code-works.html