MD5 bir dosya için checksum hesaplamak
iTextSharp bir PDF dosyasından metni okumak için kullanıyorum. Ancak, PDF dosyası, sadece resim içeren, çünkü metin ayıklamak olamaz zamanlar vardır. Aynı PDF günlük dosyaları indirmek, ve eğer PDF değiştirildi görmek istiyorum. Metin ve değiştirilme tarihi olamaz alınması, MD5 bir sağlama toplamı dosya değişip değişmediğini anlamanın en güvenilir yolu var mı?
Eğer öyle ise, bazı kod örnekleri, kriptografi ile ilgili pek fazla tecrübem yok çünkü mutluluk duyacağız.
CEVAP
Çok basit:
using (var md5 = MD5.Create())
{
using (var stream = File.OpenRead(filename))
{
return md5.ComputeHash(stream);
}
}
(İnanıyorumaslındaMD5 uygulanması atılması gerek yok, ama muhtemelen hala neyse yaparım.)
Sonuçları karşılaştırmak için nasıl daha sonra size bağlıdır; örneğin base64 bayt dizisi dönüştürmek, ya da bayt doğrudan karşılaştırabilirsiniz. (Sadece diziler Equals
geçersiz kılma sakın unutmayın. Base64 kullanarak Eğer gerçekten sadece sağlamalarının karşılaştırarak ilgileniyorsanız hakkı elde etmek için basit, ama biraz daha az verimli olur.)
Nasıl bir dosya entropi hesaplamak içi...
Nasıl bir proje içinde tek bir dosya i...
Takibi bırak ve Git içinde bir dosya i...
Git Güncellemelerinden projeleri için ...
Nasıl ve bash ile bir dosya için hem s...