هش رمزنگاری

هش رمزنگاری


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

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

رمزنگاری در رمزارزها به چه معناست؟

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

 

پروتکل های امضای دیجیتال چه پروسه ای را می گذرانند تا به هدف خود برسند؟


هشینگ

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

آموزش ثبت نام و تخفیف صرافی اکسیر
هش رمزنگاری
با استفاده از تابع هش، شبکه همیشه با داده هایی با طول یکسان کار می کند

امضا

در مرحله بعد، داده های هش باید امضا شوند. فرستنده از کلید خصوصی برای امضای هش به دست آمده از تابع هش استفاده می کند، اما کلید خصوصی نباید با شبکه یا گیرنده به اشتراک گذاشته شود، بنابراین ما از کلید خصوصی برای دسترسی به کلید عمومی استفاده می کنیم و آن را به همراه هش برای گیرنده ارسال می کنیم.

اعتبار سنجی

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

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

هش رمزنگاری
کلید عمومی با کمک کلید خصوصی ایجاد می شود، اشتراک گذاری آن در شبکه یا با افراد دیگر مشکلی برای دارنده حساب ایجاد نمی کند

هدف هش

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

 

هش در بلاک چین

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

0تا100 تحلیل آینده بیت کوین چه می‌شود؟

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

به نقل از سایت learn.bybit. در خصوص هش رمزنگاری

Hashing or hash is a common term when discussing blockchain technology. Hashing refers to the transformation and generation of input data of any length into a string of a fixed size, which is performed by a specific algorithm. In particular, the Bitcoin hash algorithm is SHA-256 or Secure Hashing Algorithm 256 bits. This algorithm is a one-way cryptographic function as the original data cannot be retrieved via decryption.

The implementation of a cryptographic hash function is beneficial to prevent fraudulent transactions, double spending in blockchain, and store passwords. But, what is Bitcoin hash, and what does it have to do when put in this context? In short, this is a unique number that is not duplicable according to the algorithm. Therefore, it is frequently used to verify a file’s authenticity.

To put it in context, when there’s a change in a hashed file, its hash will automatically change as well. And each subsequent hash is tied to the previous hash, thus ensuring the consistency of all blocks.

 

هش رمزنگاری
بلاک چین شامل یک سری بلوک های به هم پیوسته است که توسط یک زنجیره به هم متصل می شوند

ویژگی هایی که تابع هش رمزنگاری باید داشته باشد:

دقت و ثبات

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

عملکرد یک طرفه

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

هاوینگ بیت کوین 0تا100

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

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

کلام پایانی

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

سوالات متداول

هش چیست؟

هش یک محاسبه یا حدس است که برای حل یک بلاک استفاده می شود.

برای استخراج بیت کوین چقدر هش لازم است؟

برای بدست آوردن یک بیت کوین، 2.7 کوادریلیون هش لازم است.

2 دیدگاه

  • ویرل‌پول یه تابع هش ۵۱۲ بیتی است که از تغییر در نسخه استاندارد رمزنگاری پیشرفته (AES) ایجاد شده است. یکی از طراحان این تابع وینسنت ریمن است که از موسسان AES است.

  • الگوریتم SHA-۱ پرکاربردترین تابع هش SHA است. از این الگوریتم در برنامه‌ها و پروتکل های بسیار زیادی نظیر SSL مورد استفاده قرار گرفت.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *