HMAC SHA256 in .NET .1.1
本文关键字:NET in SHA256 HMAC | 更新日期: 2023-09-27 18:21:41
我不得不使用在.NET1.1Framework中开发的web应用程序,无法升级到主要版本。
话虽如此,我需要使用HMAC SHA256加密文本。
我看到.NET 1.1中的System.Security.Cryptography命名空间为我提供了一种在SHA256中生成消息的方法。但我需要将HMAC(基于哈希的消息验证码)与SHA256一起使用,所以我不仅发送要加密的文本,还发送一个密钥。
我看到.NET Framework 2.0及更高版本有一个特定的类HMACSHA256来管理它。但是还没有找到.NET 1.1的实现。
有什么帮助吗?
提前感谢
您可以将Microsoft:中的文件添加到您的项目中
namespace System.Security.Cryptography {
[System.Runtime.InteropServices.ComVisible(true)]
public class HMACSHA256 : HMAC {
//
// public constructors
//
public HMACSHA256 () : this (Utils.GenerateRandom(64)) {}
public HMACSHA256 (byte[] key) {
m_hashName = "SHA256";
#if FEATURE_CRYPTO
m_hash1 = GetHashAlgorithmWithFipsFallback(() => new SHA256Managed(), () => HashAlgorithm.Create("System.Security.Cryptography.SHA256CryptoServiceProvider"));
m_hash2 = GetHashAlgorithmWithFipsFallback(() => new SHA256Managed(), () => HashAlgorithm.Create("System.Security.Cryptography.SHA256CryptoServiceProvider"));
#else
m_hash1 = new SHA256Managed();
m_hash2 = new SHA256Managed();
#endif // FEATURE_CRYPTO
HashSizeValue = 256;
base.InitializeKey(key);
}
}
}
似乎所有调用都基于.Net 1.1 中存在的类