تصدیق سند های الکترونیکی با الگوریتم هایی مانند MD5 و SHA-1 و ...

Message Integrity
شاید اسم این الگوریتم ها را شنیده باشید ولی چرا در دنیای دیجیتال، یا در مفهومی وسیع تر در دنیای اطلاعات، استفاده از این توابع ضرورت پیدا می کند؟
این توابع که به آن ها توابع هش Hash Function گفته می شود به این منظور بوجود آمده اند تا به کاربران این اطمینان را بدهند که همان چیزی را دریافت کرده اند که باید دریافت می کردند.
مثلا فرض کنید سایتی قصد دارد تا فایلی را برای دانلود کاربرانش روی اینترنت قرار دهد، و برایش مهم است که پس از دریافت فایل توسط کاربران ، هیچ تغییری روی فایل صورت نگرفته باشد و همان فایل مورد نظر بدون هیچ تغییری هرچند اندک به دست کاربران رسیده باشد ، این تغییر می تواند به هر دلیلی باشد مثلا ممکن است بدلیل اختلالات اینترنت ، بعضی از قسمت های فایل بدست گیرنده نرسد یا در طول مسیر دچار دگرگونی شود.
حال این سایت برای اینکه کاربرانش مطمئن باشند که فایل مورد نظر را بدرستی دریافت کرده اند، مقادیر هش آن فایل را در صفجه دانلود فایل قرارمی دهد تا کاربران پس از دانلود فایل و محاسبه مجدد هش فایل دریافتی و تطبیق آن با مقدار قرارگرفته در سایت از صحت فایل دانلودی اطمینان حاصل کنند.
برای محاسبه مقادیر هش یک فایل الگوریتم ها و توابع مختلفی وجود دارند ، مانند MD5 ، SHA-1 ، SHA- 2 (و به زودی SHA-3 ) و... ، که هر کدام مقداری متفاوت با دیگری را به عنوان هش محاسبه می کند.
شاید در دانلود آهنگ یا بعضی موارد دیگر نیازی به محاسبه و تطبیق هش دیده نشود ولی در مواردی که تغییر کوچکی در فایل ، باعث خطرات جبران پذیر یا جبران ناپذیری بشود ، معمولا از محاسبه هش استفاده می شود ، مواردی مانند فایل ها و بسته هایی که برای به روز کردن نرم افزار وسایل مختلف، مانند سیستم عامل موبایل ها ، استفاده می شوند.
البته در بسیاری از موارد ، بدون آنکه کاربر متوجه شود ، خود وسیله با استفاده از الگوریتم هایی مخصوص ، از صحت اطلاعات دریافتی اطمینان حاصل می کند.