在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
、CalculateSHA1
和CalculateSHA256
,分別用于計算字符串的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