using System; using System.Collections.Generic; using System.Linq; using System.Security.Cryptography; using System.Text; using System.Threading.Tasks; namespace CRSim.Core.Utils { public class FileHashHelper { /// /// 计算文件 SHA256 值 /// public static string ComputeSHA256(string filePath) { using var sha256 = SHA256.Create(); using var stream = File.OpenRead(filePath); var hashBytes = sha256.ComputeHash(stream); return Convert.ToHexStringLower(hashBytes); } /// /// 验证文件 SHA256 /// public static bool VerifySHA256(string filePath, string expectedHash) { var fileHash = ComputeSHA256(filePath); return string.Equals(fileHash, expectedHash, StringComparison.OrdinalIgnoreCase); } } }