آموزش به دست آوردن هش فایل ها در ویندوز از جمله MD5
گاهی بهدلایل متعددی ممکن است به هش (hash) فایلهای خود در سیستم عامل ویندوز نیاز داشته باشیم. برای مثال جهت بررسی اینکه فایل دانلود شده با فایل موجود در سایت یکسان است یا خیر. چرا که ممکن است فایل ناقص دانلود شده و یا خراب باشد. همچنین در اینجا با مفهومی بهنام checksum نیز سر و کار داریم که در ادامه به توضیح آن میپردازیم.
Checksum چیست؟
Checksum (بهمعنی جمع چک) در علوم کامپیوتر، یک مقدار عددی است؛ که برای تأیید صحت و یکپارچگی دادهها استفاده میشود. این مقدار از طریق یک الگوریتم خاص محاسبه و بر روی دادهها اعمال میشود. هرگونه تغییر در دادهها، منجر به تغییر در مقدار checksum میشود.
کاربردهای checksum
- تأیید صحت دادهها: checksum برای اطمینان از عدم تغییر دادهها در حین انتقال یا ذخیرهسازی استفاده میشود.
- شناسایی خطا: checksum میتواند برای شناسایی خطاهای رخ داده در دادهها، مانند بیتهای معکوس شده، استفاده شود.
- تأیید هویت فایل: checksum میتواند برای تأیید هویت یک فایل و اطمینان از اینکه فایل صحیح و دستکاری نشده است، استفاده شود.
انواع مختلف checksum
- CRC32: این نوع checksum از 32 بیت تشکیل شده است؛ و برای بررسی خطا در دادهها استفاده میشود.
- MD5: این نوع checksum از 128 بیت تشکیل شده است؛ و برای تأیید هویت فایلها و بررسی صحت دادهها استفاده میشود.
- SHA1: این نوع checksum از 160 بیت تشکیل شده است؛ و برای تأیید هویت فایلها و بررسی صحت دادهها استفاده میشود.
محاسبه checksum
محاسبه checksum با استفاده از الگوریتمهای خاص انجام میشود. این الگوریتمها، دادهها را بهعنوان ورودی دریافت کرده و یک مقدار عددی را بهعنوان خروجی تولید میکنند.
روش بدست آورد هش فایل در ویندوز
بدین منظور میتوان از ابزار CertUtil استفاده نمود؛ که بهصورت پیشفرض در سیستم عامل ویندوز قرار دارد. جهت استفاده از آن بایستی مراحل زیر را دنبال کنید:
1. کلیدهای ترکیبی Win + R را فشار دهید.
2. عبارت CMD را نوشته و Enter بزنید.
3. دستور زیر را در نظر بگیرید:
certutil -hashfile <file> <HASH_ALGORITHM>
در این دستور:
- <file>: مسیر فایل مورد نظر؛ اگر مسیر فاصله دارد، آن را دو بین علامت ” قرار دهید.
- <HASH_ALGORITHM>: الگوریتم هش. برای مثال MD5 یا SHA256.
برای مثال دستور زیر را در CMD وارد کرده و Enter را فشار دهید:
certutil -hashfile "G:\shop\HerMinal.txt" MD5
خروجی نمونه:
MD5 hash of G:\Shop\HerMinal.txt:
0120b000ce80e3e9b1751a98c1d6373d
CertUtil: -hashfile command completed successfully.
اکنون در اینجا، مقدار 0120b000ce80e3e9b1751a98c1d6373d همان هش MD5 فایل HerMinal.txt است.
اگر فایل HerMinal.txt خالی باشد، خطای زیر نمایش داده میشود:
CertUtil: -hashfile command FAILED: 0x800703ee (WIN32: 1006 ERROR_FILE_INVALID)
CertUtil: The volume for a file has been externally altered so that the opened file is no longer valid.
روش بدست آورد هش فایل در مک
در سیستمعامل مک برای بهدست آوردن هش فایل مثل MD5، کافیست از دستور زیر در ترمینال استفاده شود:
md5 <file>