تابع هش
تابع هش یا تابع درهَمَک‌ساز یا تابع چکیده‌ساز به هر رویه خوش تعریف یا تابع ریاضی می‌گویند که حجم زیادی از داده (احتمالاً حجم نامشخصی از داده) را به یک عدد طبیعی تبدیل کند. عدد طبیعی حاصل از تابع درهم‌سازی به عنوان اندیس یک آرایه مورد استفاده قرار می گیرد. مقادیر حاصل از این تابع را معمولاً مقدار هش یا فقط هش یا درهَمَک می‌خوانند. این توابع کاربردهای وسیعی در علوم کامپیوتر از جمله حفظ یکپارچگی داده ها دارند.
اصل لانه کبوتری
اصل لانه کبوتری در علوم کامپیوتر به کار می‌رود برای مثال تداخل در جدول هش اجتناب ناپذیر است زیرا تعداد کلیدهای امکان‌پذیر از تعداد اندیسهای آرایه بیشتر است. الگوریتم هش از این تداخل‌ها نمی‌تواند جلوگیری کند. این اصل می‌تواند برای اثبات الگوریتم فشرده‌سازی بی‌اتلاف داده‌ها استفاده شود، به صورتی که داده‌های ورودی را کوچکتر می‌کند همچنین برخی از داده‌ها را بزرگتر می‌کند. به‌طور دیگر مجموعهٔ همهٔ رشته‌های ورودی به میزان طول داده شدهٔ " L" می‌توانند به مجموعه‌ای از همهٔ رشته‌ها به طول کمتر از "L "و بدون تداخل نگاشته شوند.