mh_jy_safe/APT.Utility/PolyvSignatureHelper.cs

38 lines
1.2 KiB
C#
Raw Permalink Normal View History

2025-08-25 09:56:57 +08:00
using System.Security.Cryptography;
using System.Text;
namespace APT.Utility
{
public static partial class PolyvSignatureHelper
{
/// <summary>
/// 生成保利威API所需的SHA1签名
/// </summary>
/// <param name="secretKey">保利威提供的secretkey</param>
/// <param name="paramsStr">参与签名的参数字符串</param>
/// <returns>SHA1签名结果</returns>
public static string GenerateSha1Signature(string signStr)
{
// 1. 将secretkey和参数字符串拼接
//string signStr = secretKey + paramsStr;
// 2. 创建SHA1实例
using (SHA1 sha1 = SHA1.Create())
{
// 3. 将字符串转换为字节数组
byte[] bytes = Encoding.UTF8.GetBytes(signStr);
// 4. 计算哈希值
byte[] hashBytes = sha1.ComputeHash(bytes);
// 5. 将字节数组转换为十六进制字符串
StringBuilder sb = new StringBuilder();
foreach (byte b in hashBytes)
{
sb.AppendFormat("{0:x2}", b);
}
return sb.ToString().ToUpper();
}
}
}
}