如何为HMACSHA256签名计算生成随机密钥
How to generate random key for HMACSHA256 signature calculation
我需要计算一些字符串的签名并计划这样做:
using (HMACSHA256 hmacSha256 = new HMACSHA256( <randombytes>))
{
Byte[] dataToHmac = System.Text.Encoding.UTF8.GetBytes(sb.ToString());
signature = Convert.ToBase64String(hmacSha256.ComputeHash(dataToHmac));
}
我打算将密钥与我的用户数据一起存储,但我不确定随机字节是否可以是随机的或如何在 c# 中生成它们。
生成随机密钥的正确方法是什么?
如果您希望您的随机字节是安全随机的,那么您可以使用 RNGCryptoServiceProvider
.
我需要计算一些字符串的签名并计划这样做:
using (HMACSHA256 hmacSha256 = new HMACSHA256( <randombytes>))
{
Byte[] dataToHmac = System.Text.Encoding.UTF8.GetBytes(sb.ToString());
signature = Convert.ToBase64String(hmacSha256.ComputeHash(dataToHmac));
}
我打算将密钥与我的用户数据一起存储,但我不确定随机字节是否可以是随机的或如何在 c# 中生成它们。
生成随机密钥的正确方法是什么?
如果您希望您的随机字节是安全随机的,那么您可以使用 RNGCryptoServiceProvider
.