هش چیست؟

هش چیست؟
هش (Hash) تابعی است که ورودیهایی از اعداد و حروف را پذیرفته و آنها را به یک خروجی رمزگذاری شده با طولی یکسان تبدیل میکند. هشها با استفاده از یک الگوریتم ساخته میشوند و برای مدیریت بلاک چین در یک رمز ارز ضروری میباشند.
برای کسب اطلاعات بیشتر در مورد بلاک چین میتوانید از مطلب آموزشی «بلاک چین چیست؟» دیدن نمایید.
نکات کلیدی:
- هش تابعی است که تقاضای رمزگذاری مورد نیاز برای محاسبات بلاک چین را برآورده میکند.
- هش مانند یک راهحل یا جواب مسأله، پایه و اساس شبکه بلاک چین محسوب میگردد.
- هشها دارای اندازه مشخص و ثابتی میباشند و این مورد خود حدس زدن طول هش را برای کسب که قصد کرک کردن بلاک چین را دارد، غیرممکن میسازد.
- هش، براساس اطلاعات موجود در سر تیتر هر بلاک (block header)، توسعه داده میشود.
هش چگونه کار میکند؟
بلاک چین، پایه و اساس دنیای رمز ارزها میباشد. بلاک چین یک دفترکل جهانی (global ledger) است که از طریق اتصال بلاکهای منفردی که شامل اطلاعات تراکنشی هستند، ساخته شده است.
بلاک چین تنها اطلاعات معتبر و تأییدشدهٔ تراکنشها را در خود ذخیره میکند، این خود از کلاهبرداری در تراکنشها و همچنین خرج دوباره (Double Spending) ارز جلوگیری بهعمل میآورد.
مقدار رمزنگاری شدهای که در نهایت حاصل میشود، یک سری از اعداد و حروف میباشند که شباهتی به اطلاعات اصلی ندارند.
این سری از اعداد و حروف، نام هش به خود میگیرند. فرآیند استخراج رمزارزها (cryptocurrency mining) شامل کار کردن با این هشها میباشد.
عملیات هشینگ (Hashing) نیازمند پردازش اطلاعات یک بلاک در یک سری از توابع ریاضی میباشد، که نتیجهٔ این توابع؛، یک خروجی با طول مشخص و یکسان میباشد.
استفاده از خروجیهایی با طول یکسان باعث افزایش امنیت میشود زیرا در این صورت هرکسی که بخواهد که این هشها را رمزگشایی کند، نمیتواند تنها با نگاه کردن به طول خروجی داده شده (هش)، اندازهٔ ورودی اصلی را شناسایی نماید.
حل کردن یک هش با استفاده از اطلاعات موجود در سر تیتر بلاک (block header) شروع میشود و لزوماً نیازمند حل مسائل پیچیدهٔ ریاضی میباشد.
هر سر تیتر بلاکی شامل یک شمارهٔ نسخه (version number)، یک زمانسنج (timestamp)، هش استفاده شده در بلاک قبلی، هش مِرکِل رووت (Merkel Root؛ این هش، هشی از تمامی هشهای موجود از تمامی تراکنشهای شبکه میباشد.)، نانس (nonce) (عددی که میانرها در پی یافتن آن هستند)، و هش هدف (target hash) میباشد.
ماینرها بر روی نانس (nonce)، که رشتهای از اعداد است تمرکز میکنند. این عدد به موارد هش شده در بلاک قبلی افزوده میشوند، سپس همهشان با یکدیگر هش میشوند.
اگر هش جدید کوتاهتر یا برابر با هش هدف باشد، بهعنوان یک راهحل (solution) پذیرفته میشود. ماینر در این حالت جایزهاش را دریافت میکند، و بلاک به شبکهٔ بلاک چین اضافه میشود.
نکتهٔ مهم: پروسهٔ اعتبارسنجی تراکنشهای موجود در بلاک چین بر اطلاعاتی که با استفاده از الگوریتم هش (hashing algorithmic) رمزنگاری میشوند اتکا دارد.
حل یک هش نیازمند تعیین رشته اعدادی که باید بهعنوان نانس (nonce) استفاده شوند، میباشد؛ که خود این پروسه نیازمند انجام آزمون و خطاهای فراوانی میباشد. این بدین دلیل است که نانس یک رشتهٔ تصادفی از اعداد میباشد. احتمال اینکه ماینر در اولین تلاش خود بتواند نانس درست را بهدست بیاورد، بسیار کم میباشد، و این بدین معنی است که ممکن است ماینر برای بهدست آوردن نانس صحیح به تست تعداد زیادی از گرینههای نانس بپردازد.
هرچه سختی این کار بیشتر باشد – که اندازهای از میزان سختی ساخت هش مطابق با نیازمندیهای هش هدف (target hash) است – ماینر بهمدت زمان بیشتری برای تولید این راهحل نیاز خواهد داشت.
مثالی از هش
هشی با ورودی کلمه (hello)، خروجیای با طول برابر با هش جمله (I am going to store) خواهد ساخت. تابعی که بهمنظور ساخت هش از آن استفاده میشود یک تابع جبری (deterministic) میباشد، بدین معنی که با دادن ورودی یکسان در طول زمان، خروجی یکسانی را خواهد ساخت.
این تابع میتواند یک ورودی هش شده را بهشکل کارآمدی تولید کند؛ همچنین این تابع، تعیین یا حدس ورودی داده شده را با دیدن خروجی سخت میکند (که خود منجر به استخراج – mining – میگردد)، بهعلاوه، ایجاد کوچکترین تغییری در ورودی، باعث هشی کاملاً متفاوت با هش قبلی میشود.
پردازش توابع هشی که در رمزنگاری بلاکهای جدید مورد استفاده قرار میگیرند نیازمند قدرت پردازشی زیادی میباشند. این قدرت پردازشی زیاد خود هزینهبَر میباشد. بهمنظور جلب توجه افراد و شرکتها، که از آنها تحت عنوان «ماینر» نام برده میشود، برای سرمایهگذاری در تکنولوژی مورد نیاز برای استخراج، شبکهٔ رمز ارز به آنها توکنهای رمز ارزی و همچنین هزینههای پردازش تراکنشها را پرداخت میکند.
ماینرها تنها در صورتی این پاداش را دریافت میکنند که اولین کسی باشند که توانستهاند هشی مطابق با موارد ذکرشده برای هش هدف تولید کند.
اگر علاقه مند به یادگیری بیشتر در این حوزه هستید میتوانید از نقشه راهنمای دیجی کوینر به نام «درخت یادگیری» دیدن نمایید که از نقطه ابتدایی تا انتهای مسیر را ریل گذاری کرده است.
شما با مطالعه درخت یادگیری تا حد مطلوبی دانش خود را افزایش دادهاید اما برای حرفه ای شدن و انجام معاملات در این بازار نیاز به یک راهنمای مجرب و با تجربه دارید. مجموعه دیجی کوینر بر آن است که با برگزاری کلاسهای آموزشی تجریبات چند ساله خود را در اختیار هم وطنان عزیز قرار دهد تا در این بحران اقتصادی بتوانند در آمد دلاری کسب نمایند. (تاریخ برگزاری کلاسها متعاقبا از طریق وبسایت اعلام خواهد شد.)
تیم تحریریه دیجی کوینر
این مقاله به کوشش هیئت تحریریه دیجی کوینر تولید شده است. تک تک ما امیدواریم که با تلاش خود، تاثیری هر چند کوچک در آگاه سازی فعالان حوزه رمز ارزها و بازارهای مالی داشته باشیم.
نوشته های بیشتر از دیجی کوینر