HMACSHA1 构造函数

定义

初始化 HMACSHA1 类的新实例。

重载

名称 说明
HMACSHA1()

使用随机生成的密钥初始化类的新实例 HMACSHA1

HMACSHA1(Byte[], Boolean)
已过时.

使用指定的键数据初始化类的新实例 HMACSHA1 ,并指定是否使用 SHA-1 算法的托管版本的值。

HMACSHA1(Byte[])

使用指定的键数据初始化类的新实例 HMACSHA1

HMACSHA1()

Source:
HMACSHA1.cs
Source:
HMACSHA1.cs
Source:
HMACSHA1.cs
Source:
HMACSHA1.cs
Source:
HMACSHA1.cs

使用随机生成的密钥初始化类的新实例 HMACSHA1

public:
 HMACSHA1();
public HMACSHA1();
Public Sub New ()

注解

HMACSHA1 是从 SHA-1 哈希函数构造并用作 HMAC 或基于哈希的消息身份验证代码的键控哈希算法。 HMAC 进程将机密密钥与消息数据混合,使用哈希函数对结果进行哈希处理,再次将哈希值与密钥混合,然后再次应用哈希函数。 输出哈希长度为 160 位(20 字节)。

此构造函数使用 64 字节的随机生成的密钥。

由于 SHA-1 冲突问题,Microsoft建议使用 SHA-256。

另请参阅

适用于

HMACSHA1(Byte[], Boolean)

Source:
HMACSHA1.cs
Source:
HMACSHA1.cs
Source:
HMACSHA1.cs
Source:
HMACSHA1.cs
Source:
HMACSHA1.cs

注意

HMACSHA1 always uses the algorithm implementation provided by the platform. Use a constructor without the useManagedSha1 parameter.

使用指定的键数据初始化类的新实例 HMACSHA1 ,并指定是否使用 SHA-1 算法的托管版本的值。

public:
 HMACSHA1(cli::array <System::Byte> ^ key, bool useManagedSha1);
[System.Obsolete("HMACSHA1 always uses the algorithm implementation provided by the platform. Use a constructor without the useManagedSha1 parameter.", DiagnosticId="SYSLIB0030", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public HMACSHA1(byte[] key, bool useManagedSha1);
public HMACSHA1(byte[] key, bool useManagedSha1);
[<System.Obsolete("HMACSHA1 always uses the algorithm implementation provided by the platform. Use a constructor without the useManagedSha1 parameter.", DiagnosticId="SYSLIB0030", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new System.Security.Cryptography.HMACSHA1 : byte[] * bool -> System.Security.Cryptography.HMACSHA1
new System.Security.Cryptography.HMACSHA1 : byte[] * bool -> System.Security.Cryptography.HMACSHA1
Public Sub New (key As Byte(), useManagedSha1 As Boolean)

参数

key
Byte[]

HMAC 计算的密钥。 密钥可以是任何长度,但如果长度超过 64 字节,则会对密钥进行哈希处理(使用 SHA-1)来派生 20 字节键。 因此,机密密钥的建议大小为 64 字节。

useManagedSha1
Boolean

true 若要使用 SHA-1 算法的托管实现( SHA1Managed 类); false 使用非托管实现( SHA1CryptoServiceProvider 类)。

属性

注解

由于 SHA-1 冲突问题,Microsoft建议基于 SHA-256 或更高版本的安全模型。

适用于

HMACSHA1(Byte[])

Source:
HMACSHA1.cs
Source:
HMACSHA1.cs
Source:
HMACSHA1.cs
Source:
HMACSHA1.cs
Source:
HMACSHA1.cs

使用指定的键数据初始化类的新实例 HMACSHA1

public:
 HMACSHA1(cli::array <System::Byte> ^ key);
public:
 HMACSHA1(cli::array <System::Byte> ^ rgbKey);
public HMACSHA1(byte[] key);
public HMACSHA1(byte[] rgbKey);
new System.Security.Cryptography.HMACSHA1 : byte[] -> System.Security.Cryptography.HMACSHA1
new System.Security.Cryptography.HMACSHA1 : byte[] -> System.Security.Cryptography.HMACSHA1
Public Sub New (key As Byte())
Public Sub New (rgbKey As Byte())

参数

keyrgbKey
Byte[]

用于加密的 HMACSHA1 密钥。 该密钥可以是任何长度,但如果其长度超过 64 字节,则会对它进行哈希处理(使用 SHA-1)来派生 64 字节键。 因此,机密密钥的建议大小为 64 字节。

例外

参数 keynull.

示例

有关如何使用此构造函数的示例,请参阅该 HMACSHA1 类。

注解

HMACSHA1 是从 SHA-1 哈希函数构造并用作 HMAC 或基于哈希的消息身份验证代码的键控哈希算法。 HMAC 进程将机密密钥与消息数据混合,使用哈希函数对结果进行哈希处理,再次将哈希值与密钥混合,然后再次应用哈希函数。 输出哈希长度为 160 位(20 字节)。

注释

此构造函数使用 SHA1CryptoServiceProvider 类创建算法的非托管实例。

由于 SHA-1 冲突问题,Microsoft建议基于 SHA-256 或更高版本的安全模型。

另请参阅

适用于