در معماریهای امنیتی، دو مفهوم درهمسازی (Hashing) و رمزگذاری (Encryption) اغلب به اشتباه به جای یکدیگر به کار میروند. طبق مرجع کلاسیک ویلیام استالینگز (William Stallings) در کتاب «رمزنگاری و امنیت شبکه»، درک تمایز میان این دو فرآیند برای پیادهسازی سیستمهای تابآور در برابر نفوذ، ضروری است.
۱. درهمسازی (Hashing) | انگشتنگاری دیجیتال
درهمسازی یا چکیدهسازی، فرآیندی است که یک ورودی با حجم دلخواه را به یک خروجی با طول ثابت و یکتا تبدیل میکند. این خروجی که اصطلاحاً «چکیده» (Digest) نامیده میشود، مانند اثر انگشت عمل میکند.
• کاربرد: تشخیص تغییرات غیرمجاز در دادهها (Integrity) و ذخیرهسازی امن گذرواژهها.
• نکته طلایی: درهمسازی به تنهایی مانع از حملات Brute-Force نمیشود. برای ذخیرهسازی امن گذرواژهها، حتماً از نمکزدن (Salting) و الگوریتمهای کند (Password-Hardening) نظیر Argon2 یا bcrypt استفاده کنید.
• هشدار: الگوریتمهای منسوخ نظیر MD5 و SHA-1 را به دلیل آسیبپذیری در برابر حملات تصادم (Collision Attacks)، کاملاً از چرخه کاری حذف کنید.
۲. رمزگذاری (Encryption) | قفلگذاری امن
رمزگذاری فرآیند تبدیل متن اصلی به متن غیرقابل خواندن (رمزنگاریشده) است که تنها با داشتن «کلید» (Key) قابل بازگردانی به حالت اولیه است.
• کاربرد: حفاظت از دادههای حساس در حال انتقال (Data-in-Transit) و در حالت سکون (Data-at-Rest).
• نکته طلایی: امنیت رمزگذاری به شدت به «مدیریت کلید» (Key Management) وابسته است. رمزگذاریِ قوی با کلیدِ ضعیف، امنیت سیستم را به راحتی به خطر میاندازد. برای دادههای حساس، استانداردهای مدرن مانند AES-256 الزامی است.
دیدگاه مرجع :
ویلیام استالینگز در کتاب Cryptography and Network Security تأکید میکند که تصمیمگیری بین این دو ابزار باید بر اساس “نیاز امنیتی” باشد:
1. اگر میخواهید پیام پنهان بماند و فقط گیرنده مجاز آن را بخواند، از رمزگذاری (Encryption) استفاده کنید.
2. اگر میخواهید مطمئن شوید پیام در مسیر تغییر نکرده و اصالت آن تایید شود، از درهمسازی (Hashing) استفاده کنید.
نتیجهگیری:
هرگاه در سند طراحی خود با نیاز «محرمانگی» مواجه شدید، به سراغ الگوریتمهای رمزگذاری بروید. هرگاه نیاز به «احراز اصالت و عدم تغییر» داشتید، توابع درهمسازی یا چکیدهسازی، ابزار اصلی شما هستند. استفاده نادرست از این دو، بزرگترین شکافهای امنیتی را در سامانههای سازمان ایجاد میکند.
تدوین و نگارش: معاونت امنیت فناوریهای سایبری
