تابع هش و هشینگ چیست؟

۱۳۹۹/۰۹/۲۰ ۱۰:۰۷:۰۸

0

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

مطالب مفید: خرید آنلاین بیت کوین

 

مهمترین ویژگیهای تابع هش

از جمله مهمترین و متداول ترین ویژگی‌هایی که برای توابع مختلف هش وجود دارد این مورد می باشد که مقدار هش یا همان مقدار خروجی این تابع دارای یک طول ثابت می باشد. در حقیقت میتوان اینطور عنوان کرد که تابع هش وظیفه دارد یک داده با طول متغیر را به یک داده با طول ثابت تبدیل کند. یک مورد دیگر از ویژگی های معمولی این تابع این است که معمولاً مقدار هش بسیار کوچکتر از مقدار ورودی می باشد. با توجه به همین ویژگی این تابع از دیگر نامی که به این تابع اطلاق می گردد می توان به تابع فشرده‌سازی اشاره نمود. تابع هش n بیتی به یک تابع هش گفته می شود که خروجی آن n بیت داشته باشد. از دیگر ویژگی‌های تابع هش این است که محاسبات انجام شده در این تابع بسیار سریعتر از فرآیند رمزگذاری متقارن انجام می گردد و در واقع باید بگوییم که برای هر یک از انواع تابع هش h با ورودی X، محاسبه (h(x، به صورت یه فرآیند پر سرعت انجام می شود.

تابع هش

تابع هش

مطالب مفید: تبدیل بیت کوین به ریال

مهمترین کاربردهای تابع هش

برای تابع هش کاربرد های بسیار زیادی وجود دارد ولی دو مورد به عنوان کاربرد اصلی این تابع به عنوان اصلی به حساب می آیند یکی بررسی صحت داده و دیگری ذخیره رمز عبور در دنیای امنیت اطلاعات به حساب می آید. در مورد بررسی صحت داده در تابع هش باید بگوییم این مورد به عنوان یک کاربرد بسیار رایج تابع هش به حساب می آید که از آن برای به وجود آوردن چک سام بر روی داده فایل ها استفاده می شود. با استفاده از این کاربرد کاربر می تواند اطمینان حاصل کند که صحت داده مورد نظر به صورت کامل قابل اطمینان و تضمین می باشد. دیگر کاربرد تابع هش بحث ذخیره سازی رمز عبور می باشد.

کاربردهای تابع هش

 تابع هش

در هنگامی که ما می‌خواهیم تا نسبت به ذخیره سازی یک رمز عبور اقدام کنیم این توافق به خوبی از رمز عبور مورد نظر ما حفاظت می کنند. در حقیقت به جای این که رمز عبور به صورت شفاف ذخیره‌سازی شود تمامی فرایند های مربوط به وارد شدن به حساب به این صورت انجام می گردد که رمز عبور در یک فایل مشخص ذخیره می گردد تنها یک نفوذ کننده می‌تواند پسوردها را در اختیار داشته و آن را مشاهده کند. با توجه به این قابلیت که تحت عنوان یک طرفه بودن تابع هش نیز شناخته می شود نفوذ کننده این توان را خواهد داشت تا این تابع را وسیله ای برای ورود قرار داده و همچنین می تواند کلمه عبور را نیز به دست بیاورد.

مطالب مفید: تبدیل بیت کوین به تتر

 

پرکاربردترین انواع تابع هش

همانطور که اشاره کردیم تابع هش انواع مختلفی دارد که در ادامه قصد داریم به معرفی پرکاربرد ترین و پرطرفدار ترین آنها بپردازیم:

یکی از پرطرفدار ترین و پرکاربردترین انواع تابع هش الگوریتم md5 یا همان خلاصه پیام می باشد. تابع هش به عنوان پر استفاده ترین و محبوبترین این تابع به حساب می آید. یک تابع ۱۲ هش بیتی ارائه می کند از جمله پر کاربردترین تابع به حساب می‌آید که در نرم افزار مورد استفاده قرار گرفته و یکپارچگی فایل تولید شده را به صورت کامل مورد تضمین قرار می دهد. البته در سال ۲۰۰۴ یک سری نقض برای این تابع گزارش شد که باعث شد تا امروزه به صورت گسترده از این تابع استفاده نگردد. از دیگر تابع های پرکاربرد می‌توان به تابع ایمن یا sha اشاره نمود که تابع هش۶۰ بیتی بوده و در سال ۱۹۹۳ توسط موسسه ملی استاندارد و تکنولوژی انتشار پیدا کرد. این تابع در نوع خود ضعف‌هایی داشت و نتوانست شهرت و محبوبیت بسیاری برای خود رقم بزند البته با توجه به آپدیت های متعددی که برای این کتاب ارائه شده از سال ۲۰۱۲ به بعد این تابع عملکرد بسیار موثر و مناسب در برابر حمله ها ارائه می نماید.

پرکاربردترین انواع تابع هش

 

از دیگر انواع تابع هش پرطرفدار میتوان ‌به ویرپول بلیک و همچنین ریپمد اشاره نمود.

مطالب مفید: پاداش بلاک چیست

هشینگ چیست؟

اولین مرحله در بحث امضای دیجیتال فرآیند هش کردن یا همان هشینگ می باشد. فرایند هشینگ به این صورت آغاز می‌شود که اطلاعات مورد نظر به یک الگوریتم هش داده می‌شود و مقدار تابع هش دریافت می گردد موضوعی که مشخص است این می باشد که پیام‌های ورودی از نظر اندازه با یکدیگر یکسان نیستند ولی بر اساس یک تابع مشخص مقدار هش طول یکسان و ثابتی خواهد داشت. هشینگ داده ها برای ایجاد امضایتان دیجیتال ضرورت چندانی ندارد چرا که این امکان وجود دارد تا از کلید خصوصی برای امضای دیجیتال استفاده کرد. اما زمانی که بحث ارزهای دیجیتال در میان باشد اهمیت بالاتری پیدا می‌کند چرا که داشتن داده های با طول ثابت و مشخص است عملکرد بلاک چین را بسیار بهبود می بخشد.


ارسال دیدگاه

برای ارسال دیدگاه به سایت وارد شوید

نظرات کاربران

برای این مقاله دیدگاهی ثبت نشده است!