Я пытаюсь сравнить две контрольные суммы SHA512, одну из приложения UWP, а другую из стандартного Windows exe.
Код UWP:
string fileContent = File.ReadAllText(file.Path);
IBuffer buffUtf8Msg = CryptographicBuffer.ConvertStringToBinary(fileContent, BinaryStringEncoding.Utf8);
HashAlgorithmProvider objAlgProv = HashAlgorithmProvider.OpenAlgorithm(HashAlgorithmNames.Sha512);
IBuffer buffHash = objAlgProv.HashData(buffUtf8Msg);
String strHashBase64 = CryptographicBuffer.EncodeToBase64String(buffHash);
return strHashBase64;
Windows exe код:
using (SHA512 SHA = SHA512Managed.Create())
{
using (FileStream fileStream = System.IO.File.OpenRead(filePath))
{
byte[] fileBytes = new byte[fileStream.Length];
return Convert.ToBase64String(SHA.ComputeHash(fileBytes));
}
}
Когда я сравниваю два результата, они разные.
Если у кого-то есть объяснение, оно было бы очень полезно.