我希望有人可以帮助我读取C#中的exe文件并从中创建SHA1哈希。我试图使用StreamReader和BinaryReader从可执行文件中读取。然后,我尝试使用内置的SHA1算法创建哈希,但没有成功。 StreamReader的算法结果为“ AEUj + Ppo5QdHoeboidah3P65N3s =“,BinaryReader的算法结果为“ rWXzn / CoLLPBWqMCE4qcE3XmUKw =”。谁能帮助我从exe文件获得SHA1哈希?谢谢。
BTW对不起,我的英语;)
最佳答案
不要使用StreamReader
-它将尝试将不透明的二进制数据转换为文本数据... exe文件不是文本数据。
只需使用FileStream
并调用ComputeHash
:
byte[] hash;
using (Stream stream = File.OpenRead(filename))
{
hash = SHA1.Create().ComputeHash(stream);
}
string base64Hash = Convert.ToBase64String(hash);
关于c# - C#中的SHA1形式.exe文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3016609/