溫馨提示×

c# checksum 是否有現成的庫可以使用

c#
小樊
110
2024-09-04 14:40:42
欄目: 編程語言

在C#中,沒有現成的庫可以直接生成校驗和(checksum),但你可以使用.NET內置的類和方法來計算校驗和

using System;
using System.Security.Cryptography;
using System.Text;

public class ChecksumHelper
{
    public static string CalculateMD5(string input)
    {
        using (var md5 = MD5.Create())
        {
            var hash = md5.ComputeHash(Encoding.UTF8.GetBytes(input));
            return BitConverter.ToString(hash).Replace("-", "").ToLowerInvariant();
        }
    }

    public static string CalculateSHA1(string input)
    {
        using (var sha1 = SHA1.Create())
        {
            var hash = sha1.ComputeHash(Encoding.UTF8.GetBytes(input));
            return BitConverter.ToString(hash).Replace("-", "").ToLowerInvariant();
        }
    }

    public static string CalculateSHA256(string input)
    {
        using (var sha256 = SHA256.Create())
        {
            var hash = sha256.ComputeHash(Encoding.UTF8.GetBytes(input));
            return BitConverter.ToString(hash).Replace("-", "").ToLowerInvariant();
        }
    }
}

這個示例中包含了三個方法:CalculateMD5、CalculateSHA1CalculateSHA256,分別用于計算字符串的MD5、SHA1和SHA256校驗和。你可以根據需要選擇合適的方法來計算校驗和。

使用示例:

string input = "Hello, world!";
string md5Checksum = ChecksumHelper.CalculateMD5(input);
string sha1Checksum = ChecksumHelper.CalculateSHA1(input);
string sha256Checksum = ChecksumHelper.CalculateSHA256(input);

Console.WriteLine($"MD5: {md5Checksum}");
Console.WriteLine($"SHA1: {sha1Checksum}");
Console.WriteLine($"SHA256: {sha256Checksum}");

這將輸出:

MD5: 65a8e27d8879283831b664bd8b7f0ad4
SHA1: 2ef7bde608ce5404e97d5f042f95f89f1c232871
SHA256: 7509e5bda0c762d2bac7f90d758b5b2263fa01ccbc542ab5e3df163be08e6ca9

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女