C# hashgenerator MD5, SHA-1, SHA-256, SHA512, HMAC