用C#写一个哈希加密
时间: 2023-08-02 16:23:18 浏览: 59
以下是使用 C# 编写的 SHA256 哈希加密的示例代码:
```
using System;
using System.Security.Cryptography;
using System.Text;
class Program
{
static void Main(string[] args)
{
string data = "Hello, world!";
string hashedData = ComputeSha256Hash(data);
Console.WriteLine("原始数据:" + data);
Console.WriteLine("哈希值:" + hashedData);
}
static string ComputeSha256Hash(string rawData)
{
using (SHA256 sha256Hash = SHA256.Create())
{
// 计算哈希值
byte[] bytes = sha256Hash.ComputeHash(Encoding.UTF8.GetBytes(rawData));
// 将字节数组转换为字符串
StringBuilder builder = new StringBuilder();
for (int i = 0; i < bytes.Length; i++)
{
builder.Append(bytes[i].ToString("x2"));
}
return builder.ToString();
}
}
}
```
在上面的代码中,我们使用了 .NET Framework 中的 `SHA256` 类来计算 SHA256 哈希值。首先,我们声明了一个名为 `ComputeSha256Hash` 的静态方法,它接受一个原始字符串作为输入,并返回一个哈希值字符串。在该方法中,我们首先创建一个 `SHA256` 实例,然后使用 `ComputeHash` 方法计算哈希值。我们将原始字符串转换为字节数组,并使用 `StringBuilder` 类将字节数组转换为十六进制字符串。最后,我们返回这个字符串作为哈希值。
在 `Main` 方法中,我们使用一个字符串 `data` 作为输入,并调用 `ComputeSha256Hash` 方法来计算其哈希值。我们使用 `Console.WriteLine()` 方法输出原始数据和哈希值。
你可以将上面的代码复制到一个 C# 文件中,并运行它来测试哈希加密的效果。