为什么要使用HMAC.Initialize();

isp*_*iro 3 .net c# security cryptography

我见过这样的代码:

HMACSHA1 hmac = new HMACSHA1(key);
hmac.Initialize();
return hmac.ComputeHash(buffer);
Run Code Online (Sandbox Code Playgroud)

但是当我评论出这Initialize条线时 - 它运作正常.那它是做什么的?/我们什么时候需要使用它?(文档似乎没有解释它.)

Cod*_*aos 5

新创建的实例已初始化.ComputeHash电话Initialize到底.因此,Initialize如果TransformFinalBlock直接使用,您只需要打电话给自己.