进步HMACSHA256的c#等价物是多少?

时间:2015-01-07 09:34:58

标签: java c# hmac equivalent

在Java中我们有这样的渐进式hmac:

Mac mac = Mac.getInstance("HmacSHA256");
mac.init(macKey);
mac.update(part(0));
mac.update(part(1));
...
byte[] fullMac = mac.doFinal(part(n))

请问进步型HMACSHA256的c#等价物是什么?

1 个答案:

答案 0 :(得分:4)

知道了!微软将否则简单更新操作过度熟化为 TransformBlock &的 TransformFinalBlock

Mac mac = Mac.getInstance("HmacSHA256");
mac.init(macKey);
mac.update(part(0));
mac.update(part(1));
...
byte[] fullMac = mac.doFinal(part(9))
在.Net中

现在变为(vb.net)

dim fullMac as byte()
using mac=New HMACSHA256(macKey)
   mac.TransformBlock(part(0),0,part(0).Length,null,0)
   mac.TransformBlock(part(1),0,part(1).Length,null,0)
   ...
   fullMac=mac.TransformFinalBlock(part(9),0,part(9).Length)
end using

我不知道这对开发人员的生产力有何影响:(