क्या फ़ाइल का नाम बदलने से किसी फ़ाइल का MD5 हैश प्रभावित होगा?
क्या फ़ाइल का नाम बदलने से किसी फ़ाइल का MD5 हैश प्रभावित होगा?
जवाबों:
नहीं, हैश केवल फ़ाइल सामग्री का है। आप में देख सकते हैं के लिए स्रोतmd5sum
और इसके MD5 कार्यान्वयन । यदि आपके पास इसकी पहुंच है, तो आप इसका परीक्षण भी कर सकते हैं md5sum
:
$ echo "some arbitrary content" > file1
$ cp file1 file2
$ md5sum file1
f0007cbddd79de02179de7de12bec4e6 file1
$ md5sum file2
f0007cbddd79de02179de7de12bec4e6 file2
$
EXT फाइल सिस्टम का उपयोग करके लिनक्स में, यह नहीं होगा, क्योंकि एक फ़ाइल का नाम किसी फ़ाइल में संग्रहीत नहीं है, यह निर्देशिका प्रविष्टि (डेंट्री) में संग्रहीत होता है जो फ़ाइल में रहती है, जहां फ़ाइल के इनोड को फिर एक नाम पर मैप किया जाता है। लिनक्स में इसके md5sum पर फ़ाइल नाम बदलने का कोई प्रभाव नहीं पड़ेगा। विंडोज में, मुझे यकीन नहीं हो रहा है।
md5sum
व्यवहार करना चाहिए।
एक ही सामग्री पर ESXi (सटीक रूप से ESXi 5.5) md5sum में लेकिन अलग-अलग फ़ाइल नाम अलग-अलग हैं। मुझे विश्वास है कि VMFS-5 फ़ाइल संरचना में फ़ाइल नाम भी शामिल है। यदि हम फ़ाइल नाम के बारे में चिंतित नहीं हैं, तो क्या फ़ाइल सामग्री के केवल md5sum की जांच करने का कोई तरीका है? मैं कोई विकल्प नहीं देख सकता था। कोई सुझाव?
.vmdk
)? Vmdk हेडर में ऐसे डेटा होते हैं जो फ़ाइल नाम और स्थान पर निर्भर कर सकते हैं। आपने अपने परीक्षण में फ़ाइलों का नाम कैसे बदला? --- अन्यथा फ़ाइल सामग्री के दृष्टिकोण से VMFS एक सामान्य फ़ाइल सिस्टम है और फ़ाइलों की सामग्री सीधे उनके नामों पर निर्भर नहीं करती है।
टिप्पणी के जवाब में, https://stackoverflow.com/a/14360831/9392847 :
यह तभी काम करता है जब एक फाइल दूसरी फाइल की कॉपी हो लेकिन तब नहीं जब अलग-अलग नामों वाली दो अलग-अलग फाइलें बिलकुल एक ही कंटेंट के साथ जेनरेट होती हैं। मैंने यह कोशिश की है:
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
1test.pdf और 2test.pdf दोनों फाइलें जिम्प सॉफ्टवेयर का उपयोग करके बनाई गई हैं । समान सामग्री दो अलग-अलग नामों से दो बार निर्यात की जाती है।
1.md5 की गणना FILE के बाइनरी कंटेंट के आधार पर की जाती है। 2. सही नाम, अंतिम संशोधित आदि चीजें मेटा डेटा हैं। मेटा 5 वास्तव में मेटा-डेटा पर भरोसा नहीं करता है। मैंने इसे नीचे दिए गए चरणों के साथ परीक्षण किया है, "अंतिम संशोधित" मेटा-डेटा के साथ काम करने देता है) मैंने "a.txt" नाम की एक फ़ाइल बनाई है और कुछ सामग्री जोड़ी है और एक हैश बनाया है हैश है "xyz" ii) तब मेरे पास है बस फ़ाइल में एक स्थान जोड़ा है और फिर से हैश की गणना की है यह "abc" iii लौटाया है) मैंने अभी अपना परिवर्तन चरण (ii) में हटा दिया है, हैश की गणना करने पर मुझे फिर से प्रारंभिक हैश ("xyz") मिला है
यह निष्कर्ष निकालता है कि भले ही फ़ाइल का मेटाडेटा बदल दिया गया हो, हैश तब तक एक ही रहता है जब तक फ़ाइल सामग्री अनलक्ड नहीं रहती है।
आशा करता हूँ की ये काम करेगा।