📜  c# 字符串到 sha256 - C# (1)

📅  最后修改于: 2023-12-03 15:29:47.389000             🧑  作者: Mango

C# 字符串到 sha256

在 C# 中,我们可以通过 System.Security.Cryptography 命名空间来轻松地把一个字符串转化为其对应的 sha256 码。sha256 码是一种安全加密算法,其输出为一个 256 位的哈希值。

如何获取 sha256 码
using System;
using System.Security.Cryptography;
using System.Text;

class Program
{
    static void Main(string[] args)
    {
        string input = "Hello, world!";
        byte[] inputBytes = Encoding.UTF8.GetBytes(input);

        SHA256 sha256 = SHA256.Create();
        byte[] outputBytes = sha256.ComputeHash(inputBytes);
 
        StringBuilder builder = new StringBuilder();
        for (int i = 0; i < outputBytes.Length; i++)
        {
            builder.Append(outputBytes[i].ToString("x2"));
        }

        string output = builder.ToString();
        Console.WriteLine("Input: {0}", input);
        Console.WriteLine("SHA256 hash: {0}", output);
    }
}

该代码段将输入 "Hello, world!" 转化为其对应的 sha256 码,并输出该哈希值,输出结果如下:

Input: Hello, world!
SHA256 hash: 8f293f707a276016ed05e1c4c9ac7894c643eafa832f511c54ad1b8e0baa21b7
解释说明

以上代码的操作步骤如下:

  1. 引入 System.Security.Cryptography 命名空间,其中 SHA256 类可以帮我们计算 sha256 哈希值。
  2. 准备需要转化为 sha256 哈希值的字符串。
  3. 将字符串转化为字节数组。
  4. 创建一个 SHA256 实例,并调用 ComputeHash 方法计算哈希值。
  5. 将字节数组转化为字符串输出。

以上是生成 sha256 码的基本操作流程,具体代码实现可以根据需求进行扩展优化。