Bir dosya adını değiştirmek, dosyanın MD5 Hash'ini etkiler mi?
Bir dosya adını değiştirmek, dosyanın MD5 Hash'ini etkiler mi?
Yanıtlar:
Hayır, karma yalnızca dosya içeriğindedir. Bunu kaynağındamd5sum
ve MD5 uygulamasında görebilirsiniz . Şunlara erişiminiz varsa bunu da test edebilirsiniz md5sum
:
$ echo "some arbitrary content" > file1
$ cp file1 file2
$ md5sum file1
f0007cbddd79de02179de7de12bec4e6 file1
$ md5sum file2
f0007cbddd79de02179de7de12bec4e6 file2
$
EXT dosya sistemini kullanan Linux'ta, bir dosya adı bir dosyada saklanmadığından, dosyanın içinde bulunduğu dizin girişinde (dentry) saklanır, burada dosyanın inode'u daha sonra bir adla eşlenir. Dosya adını değiştirmenin Linux'taki md5 toplamı üzerinde hiçbir etkisi olmayacaktır. Windows'ta emin olamıyorum.
md5sum
beklendiği gibi davranmalıdır.
Karma dosya içeriğinden hesaplanmışsa, olmamalıdır.
ESXi'de (Kesinlikle ESXi 5.5) md5sum aynı içerikte ancak farklı dosya adları farklı. Bu beni, VMFS-5 dosya yapısının dosya adını da içerdiğine inanmamı sağlıyor. Dosya adı konusunda endişemiz yoksa, dosya içeriğinin sadece md5 toplamını kontrol etmenin bir yolu var mı? Herhangi bir seçenek göremedim. Herhangi bir öneri?
.vmdk
)? Vmdk başlıklarında dosya adına ve konumuna bağlı olabilecek veriler vardır. Testinizdeki dosyaları nasıl yeniden adlandırdınız? --- Aksi takdirde, dosya içeriği açısından VMFS normal bir dosya sistemidir ve dosyaların içeriği doğrudan adlarına bağlı değildir.
Yoruma yanıt olarak, https://stackoverflow.com/a/14360831/9392847 :
Bu, yalnızca bir dosya başka bir dosyanın kopyasıysa çalışır, ancak tam olarak aynı içerikle farklı adlara sahip iki farklı dosya oluşturulduğunda işe yarar. Bunu denedim:
nancy@nancy:~/Documents$ md5sum /home/nancy/Documents/1test.pdf
c5a445b7186dfb220ea79d2001acf3f1 /home/nancy/Documents/1test.pdf
nancy@nancy:~/Documents$ md5sum /home/nancy/Documents/2test.pdf
cefa063abf0c0a9e80b2b75e70100836 /home/nancy/Documents/2test.pdf
Hem 1test.pdf hem de 2test.pdf dosyaları gimp yazılımı kullanılarak oluşturulur . Aynı içerik iki farklı adla iki kez dışa aktarılır.
1. md5, DOSYA'nın ikili içeriğine göre hesaplanır. 2. Dosya adı, son değiştirilme vb. Şeyler meta data.md5 gerçekten meta-verilere bağlı değildir. Bunu aşağıdaki adımlarla test ettim, "son değiştirilen" meta verilerle çalışalım i) "a.txt" adlı bir dosya oluşturdum ve bazı içerikler ekledim ve karma "xyz" diyerek bir karma oluşturdum ii) Sonra dosyaya bir boşluk ekledim ve "abc" döndürdüğünü söyleyen hash'i tekrar hesapladı iii) (ii) adımındaki değişikliğimi kaldırdım, hash hesaplanırken yine ilk hash'i aldım ("xyz")
Bu, dosyanın meta verilerinin değişmesine rağmen, karmanın dosya içeriği değişmeden kalana kadar aynı kaldığı sonucuna varır.
Umarım yardımcı olur.