gpt4 book ai didi

c# - .NET 4.5 Core中如何计算HMAC-SHA1认证码

转载 作者:太空狗 更新时间:2023-10-29 22:33:08 26 4
gpt4 key购买 nike

我目前面临一个大问题(环境:.NET 4.5 Core):我们需要使用 HMAC-SHA1 算法的 key 来保护消息。问题是命名空间 System.Security.Cryptography 的 HMACSHA1 类和命名空间本身在 .NET 4.5 Core 中不存在,这个命名空间只存在于普通版本的 .NET 中。

我尝试了很多方法来为我们的目的找到一个等效的命名空间,但我唯一找到的是 Windows.Security.Cryptography,遗憾的是它不提供 HMAC 加密。

有没有人知道我如何解决我们的问题,或者有任何免费使用的第 3 方解决方案吗?

最佳答案

Windows.Security.Cryptography 命名空间确实包含 HMAC。

You create a MacAlgorithmProvider object by calling the static OpenAlgorithm method and specifying one of the following algorithm names: HMAC_MD5 HMAC_SHA1 HMAC_SHA256 HMAC_SHA384 HMAC_SHA512 AES_CMAC

http://msdn.microsoft.com/en-us/library/windows/apps/windows.security.cryptography.core.macalgorithmprovider.aspx

public static byte[] HmacSha1Sign(byte[] keyBytes, string message){ 
var messageBytes= Encoding.UTF8.GetBytes(message);
MacAlgorithmProvider objMacProv = MacAlgorithmProvider.OpenAlgorithm("HMAC_SHA1");
CryptographicKey hmacKey = objMacProv.CreateKey(keyBytes.AsBuffer());
IBuffer buffHMAC = CryptographicEngine.Sign(hmacKey, messageBytes.AsBuffer());
return buffHMAC.ToArray();

}

关于c# - .NET 4.5 Core中如何计算HMAC-SHA1认证码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14279346/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com