ویرگول
ورودثبت نام
امیرحسین امانی
امیرحسین امانیسلام به همه رفقا من قصد دارم تجربیات چند سال گذشتم رو در خدمت شما بزارم #با_هم_پیشرفت_کنیم
امیرحسین امانی
امیرحسین امانی
خواندن ۳ دقیقه·۴ ماه پیش

هش Hash چیست؟ (صفر تا 100)

ساختار الگوریتمی
ساختار الگوریتمی

عملکرد Hash چیست؟

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

عمکرد تابع Hash  در یک نگاه
عمکرد تابع Hash در یک نگاه


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

مثالی از  نمونه جست و جو  تابع Hash
مثالی از نمونه جست و جو تابع Hash


ما عملکرد هش را در مورد بیت کوین بررسی خواهیم کرد. برخلاف سایر ارزهای رمزپایه ، بیت کوین فقط از یادداشت های دفتر یا اطلاعات معاملات تشکیل شده است. در بلاکچین ، آن معاملات گروه بندی می شوند و در بلاک ها قرار می گیرند. الگوریتم های هش بسیاری وجود دارد. الگوریتم پرکاربرد در زنجیره بلوک SHA2–256 است (الگوریتم امن هش کردن نسخه 2 با طول 265 بیت). در اینجا عملکرد هش را در معاملات و بلاک ها بررسی خواهیم کرد.


مقادیر هش در معاملات

یک معامله دو قسمت دارد: ورودی و خروجی. بخش ورودی از برخی عناصر تشکیل شده است. قبل از ارسال بیت کوین به آدرس های دیگر ، سیستم بلاکچین باید مطمئن باشد که مقدار مشخص شده بیت کوین را در اختیار دارید. برای اطمینان ، سیستم مقدار هش تراکنش ارجاع شده را اضافه می کند. معامله ارجاع شده آخرین معامله ای است که انجام داده اید. چرا؟ اگر از استخراج پاداش 6.25 بیت کوین دریافت کرده اید ، آن را از سیستم دریافت خواهید کرد. اگر می خواهید 6 BTC به Coinsfera ارسال کنید و 0.25 BTC را برای خود نگه دارید ، باید 6 BTC را به کلید عمومی Coinsfera و 0.25 BTC را به آدرس خود ارسال کنید.


عملکرد مقادیر هش در بلاکچین نسبت به معاملات پیچیده است. بلاکچین از بلوک ها به عنوان واحد تشکیل شده است. هر بلوک از معاملات و دفترهای بیشماری تشکیل شده است. چگونه آن معاملات در بلوک واقع شده اند؟ برنامه نویسی از روش درخت مرکل برای قرار دادن این تراکنش ها در بلوک استفاده می کند. برای سهولت ، بیایید سه معامله انجام دهیم. چگونه آنها را در یک هش قرار می دهید؟ در مرحله اول ، باید یک هش فردی از آن معاملات پیدا کنیم. بعد ، مقدار هش دو دفتر اول را بدست آورید. در این سناریو ، معاملات باید عددی زوج باشند ، اما در اینجا عدد فرد است. در این حالت ، ما باید هش آخرین معامله را دوباره بنویسیم. بنابراین ، ما مقدار هش معامله 3 را دو بار تخمین می زنیم. ما مقدار هش 12 و مقدار هش 33 را دریافت می کنیم. در پایان ، آنها را دوباره اضافه می کنیم و آخرین مقدار هش بلوک را می گیریم. گره ها این فرایند را برای هر بلوک انجام می دهند. هر بلوک دارای هش بلوک قبلی خواهد بود و بلاکچین به همین ترتیب ادامه خواهد یافت

نحوه رمزنگاری تابع Hash  در یک نگاه
نحوه رمزنگاری تابع Hash در یک نگاه


با تمام مزایا ، مقادیر هش برای بلاکچین مناسب است. جستجوها را سریعتر می کند و معاملات ایمن تر نیز به اندازه کوچکی نیاز دارند. بهتر از استفاده از پرونده های کامل به جای آن است. بنابراین تا زمانی که مقادیر هش زنده باشد ، بلاکچین وجود خواهد داشت و تا زمانی که بلاکچین زندگی کند ، مقادیر هش نیز وجود خواهد داشت.

هشتابع هشhash
۲
۰
امیرحسین امانی
امیرحسین امانی
سلام به همه رفقا من قصد دارم تجربیات چند سال گذشتم رو در خدمت شما بزارم #با_هم_پیشرفت_کنیم
شاید از این پست‌ها خوشتان بیاید