آنچه در این مقاله می خوانیم

امضای دیجیتال همان چیزی است که بنیاد و اساس یک بلاکچین را برای تایید یا رد تراکنش ها شکل میدهد. در این مقاله درباره امضاهای دیجیتال بیشتر می آموزیم.

امضای دیجیتال در بلاکچین

امضای دیجیتال در بلاکچین

زمان مطالعه: 6 دقیقه

28 تیر 1400

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

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

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

امضای دیجیتال در بلاکچین چگونه کار می کنند

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

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

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

عملکرد امضای دیجیتال در بلاکچین

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

مثالی از امضای دیجیتال در بلاکچین

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

بیایید این موضوع را با مثال دیگری از مهدی و محسن بیان کنیم:

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

یک مثال واقعی از امضاهای دیجیتال در بلاکچین

رمزنگاری متکی بر این فرض است که حل برخی از مسائل ریاضی بسیار دشوار است. به عنوان مثال الگوریتم RSA ، یکی از اولین سیستم های رمزنگاری کلید عمومی ، بر این پایه استوار است که فاکتوریل گیری از  دو عدد اول بزرگ دشوار است. درواقع تمام الگوریتم های رمز نگاری (درست مانند آنچه در SHA-256 میبینیم بر این اساس کار میکنند که معادلاتی را حل کنند که حل آنها برای افراد بسیار دشوار (تقریبا ناممکن) باشد.

امضای دیجیتال ECDSA

طرح امضایی که در حال حاضر در بیت کوین استفاده می شود ، الگوریتم امضای دیجیتال منحنی بیضوی ECDSA است. در مقایسه با RSA ، ECDSA از کلیدهای کوتاهتری استفاده می کند و نیاز به محاسبات کمتری دارد در حالی که همچنان امنیت بالایی دارد. ECDSA همچنین الگوریتم منحنی بیضوی را برای رمز نگاری تراکنش ها بکار میبرد. یک گروه منحنی بیضوی را به عنوان یک گروه محدود از نقاط روی یک منحنی در نظر بگیرید که انجام برخی از کارها در یک جهت آسان است اما در جهت دیگر انجام آنها دشوار است. درواقع این روش رمز نگاری را میتوان یک الگوریتم یک طرفه دانست. چرا که انجام آن از یک سمت (رمز نگاری) بسیار ساده و سهل است اما بازگرداندن همان الگوریتم و رسیدن به مقدار اولیه بسیار دشوار و عملا ناممکن است.

اگر علاقمندید درباره الگوریتم های رمز نگاری RSA یا ECDSA بیشتر بدانید میتوانید لینک را دنبال کنید.

امضای دیجیتال در بلاکچین چیست؟

امضای دیجیتال در بلاکچین روشی برای تایید تراکنش ها توسط ماینر ها و استیکر هاست.

به این مقاله امتیاز دهید.

امتیاز این مقاله:

نشانی ایمیل شما منتشر نخواهد شد.