چک کردن فایل ها پس از انتقال

خوب گاهی پیش میاد که شما یک فایل رو از جایی دانلود میکنید یا کسی براتون میفرسته ولی از کجا بدونیم دقیقا همون فایلی که اراسل شد یا توی سرور بود رو دانلود کردیم؟ اصلا ایا فایل کامل و بدون مشکل دانلود شد؟
راه حل اینه که از فرستنده بخواهیم برامون کد SHA512 یا هر نوع هش دیگهای که میتونه رو برامون بفرسته که بتونیم بعدا چک کنیم. حالا این کد چطور ساخته میشه؟
توی کامپیوتر مبدا ویندوز/لینوکس/مک میتونیم از دستورات زیر برای بدست آوردن این کد استفاده کنیم. البته وبسایتهایی هم هستند که بصورت انلاین براتون ایجاد میکنند هرچند اگه فایلتون خیلی بزرگ باشه استفاده از اونها منطقی نیست.
# open terminal and use bellow command
# Windows
certutil -hashfile <fileName> sha512
# Linux
sha512sum <filename>
# MacOS
shasum -a512 <filename>
همهای این دستورات به شما یک کد ثابت میدهند که میتونید به طرف دیگه که فایل رو دانلود کرده بدهید تا توی کامپیوتر خودش چک کنه. اگه کدها یکسان بودند یعنی فایل دقیقا همون چیزی است که توی کامپیوتر شما بوده در غیر اینصورت یعنی درست دانلود نشده و یا حتی این وسط تغییری روی فایل ایجاد شده.
نکته مهم اینکه کوچکترین تغییری اگه این وسط اتفاق بیافته تفاوت کد خروجی خیلی خیلی زیاد خواهد بود. یک نکته مهم دیگه اینکه اسم فایل یا اینکه در چه مسیری است اصلا تاثیری توی این کد نخواهد داشت. بلکه محتویات اون است که اهمیت داره.





