امضای اشنور چیست و Schnorr Signature چه اهمیتی دارد؟

اگر از هر کسی در فضای بیت کوین بپرسید که بزرگترین چالش بیت کوین چیست؟ احتمالاً پاسخ «مقیاس پذیری» را خواهید شنید.
در کریپتو، امضای Schnorr یک امضای دیجیتالی است که توسط الگوریتم امضای Schnorr تولید میشود که توسط Claus Schnorr توضیح داده شده است. این یک طرح امضای دیجیتال است که به دلیل سادگی شناخته شده است، کارآمد است و امضاهای کوتاه تولید میکند.
برای توضیح اینکه امضای اشنور (Schnorr) چیست و چگونه میتوانند به حل مقیاسپذیری کمک کنند، ابتدا به شما خلاصهای از اینکه امضای اشنور چیست ؟ و چرا اصلاً مقیاسپذیری باید حل شود و در حال حاضر در مورد آن چه کاری انجام میشود، ارائه میدهم.
امروز می خواهیم در مورد یکی از ویژگی های مهم و مورد انتظار بیت کوین – امضای اشنور (Schnorr) به شما بگوییم.
پیشنهاد ویژه : از کمپین آموزش ارز دیجیتال رایگان همیارسرمایه دیدن کنید
امضای Schnorr چیست؟
امضای Schnorr یک امضای دیجیتالی است که توسط الگوریتم امضای Schnorr که توسط ریاضیدان و رمزنگار آلمانی Claus Schnorr در دهه 80 توضیح داده شده است. امضای Schnorr نوعی طرح امضای دیجیتال است که امکان امضای کارآمد و ایمن تراکنش ها و پیام ها را فراهم می کند. اولین بار توسط کلاوس اشنور در مقاله ای در سال 1991 توصیف شد.
در ارزدیجیتال، امضای اشنور (Schnorr) یک امضای دیجیتالی است که توسط الگوریتم امضای Schnorr تولید میشود.
امضای دیجیتال طرحهای ریاضی هستند که برای تأیید صحت و صحت پیامهای دیجیتال استفاده میشوند.
Schnorr یک الگوریتم با استفاده از رمزنگاری منحنی بیضوی که به دلیل سادگی اش شناخته شده است. به عنوان ارتقاء الگوریتم امضای دیجیتال منحنی بیضوی (ECDSA) در نقشه راه فناوری بیت کوین پیشنهاد شد.
Schnorr اغلب به دلیل سادگی، امنیت قابل اثبات و خطی بودن آن مورد توجه قرار می گیرد. از آنجایی که Schnorr به محاسبات کمتری نسبت به ECDSA نیاز دارد، برای تراکنشهای ارز دیجیتال مناسب در نظر گرفته میشود.
دلیل اصلی پیاده سازی نکردن این امضای ساده و در عین حال موثر برای بیت کوین، برای شروع، این بود که امضا تحت یک ثبت اختراع بود و بنابراین کاربرد و پیاده سازی گسترده ای نداشت که منجر به عدم آزمایش مناسب در استفاده عملی شد. در همین حال، امضای ECDSA به طور گسترده مورد استفاده قرار گرفت، به شدت مورد آزمایش قرار گرفت و بدون محدودیت ثبت اختراع قابل اعتماد بود.
امضاهای دیجیتال
برخلاف اثبات سنتی مالکیت، که ما از طریق امضاهای فیزیکی اعمال میکنیم، ارزهای دیجیتال از دادههای دیجیتال برای اثبات مالکیت استفاده میکنند. اثبات مالکیت از رمزنگاری ریاضی استفاده می کند که نمونه ای از آن امضای Schnorr است.
پیش از این بیت کوین تنها از الگوریتم امضای دیجیتال منحنی بیضی (ECDSA) استفاده می کرد. بر خلاف بسیاری از بلاک چین ها، بیت کوین از روزهای اولیه خود نسبتاً بدون تغییر باقی مانده است.
بیشتر ارتقاها محدود بوده و برای افزایش کارایی شبکه طراحی شده اند تا عملکرد آن. به روز رسانی های پروتکل بیت کوین نادر، روشمند و به طور کلی برای پیشرفت های فنی برای تضمین ثبات و امنیت شبکه محفوظ است.
امضای دیجیتال راهی برای اثبات اینکه یک پیام توسط یک فرستنده خاص ارسال شده است (اصالت) و در طول انتقال تغییر نکرده است (یکپارچگی) ارائه می دهند. به عبارت دیگر، یک امضای دیجیتالی خیلی بی شباهت به امضای فیزیکی نیست که به موجب آن فرستنده خود را از طریق دستخط منحصر به فرد خود با هدفی خاص احراز هویت می کند.
امضای اشنور (Schnorr) یکی از پروتکلهایی است که برای پیادهسازی «اثبات دانش» استفاده میشود.
اهمیت امضای دیجیتال در بیت کوین توسط ساتوشی ناکاموتو در وایت پیپر بیت کوین توضیح داده شده است:
ما یک کوین الکترونیکی را به عنوان زنجیره ای از امضای دیجیتال تعریف می کنیم. هر مالک با امضای دیجیتالی هش تراکنش قبلی و کلید عمومی مالک بعدی و افزودن آنها به انتهای کوین، کوین را به شخص بعدی منتقل می کند. دریافتکننده میتواند امضاها را برای تأیید زنجیره مالکیت تأیید کند.
در مورد بیت کوین، یک امضای دیجیتال برای تأیید اعتبار صاحب کلید خصوصی مرتبط با یک آدرس بدون نیاز به فاش کردن کلید خصوصی در شبکه استفاده میشود. هنگامی که یک تراکنش برای گنجاندن در یک بلوک ارسال میشود، گرههای شبکه بیتکوین بررسی میکنند که آیا امضا با پیام مطابقت دارد یا خیر و در صورت انجام معامله، آن را میپذیرند.
گواهی امضا قرار است تأیید کننده را متقاعد کند که با کاربری ارتباط برقرار می کند که کلید خصوصی مربوط به کلید عمومی را می داند.
به عبارت دیگر، تأیید کننده باید متقاعد شود که بدون اطلاع از کلید خصوصی، با Prover در ارتباط است.
امضای دیجیتال Schnorr برای اجرای Zero Knowledge Proof:
بیایید دو دوست ساچین و سانچیتا را مثال بزنیم.
سانچیتا به دنیا اعلام کرده است که کلید عمومی دارد و می تواند اطلاعات را از طریق آن بپذیرد و دریافت کند. ساچین فکر می کند که سانچیتا دروغ می گوید. سانچیتا می خواهد صداقت خود را بدون نشان دادن کلید خصوصی خود ثابت کند. اینجا جایی است که پروتکل Schnorr به ما کمک می کند.
امضای دیجیتال معمولاً در توزیع نرمافزار، تراکنشهای مالی، نرمافزار مدیریت قرارداد و در بسیاری موارد دیگر که تشخیص جعل یا دستکاری مهم است، استفاده میشود.
الگوریتم امضای دیجیتال ECDSA
الگوریتم امضای دیجیتال منحنی بیضی یک الگوریتم امضای دیجیتال (DSA) است که از کلیدهای رمزنگاری منحنی بیضوی استفاده می کند. این یک معادله بسیار کارآمد است که مبتنی بر رمزنگاری با کلیدهای عمومی است. ECDSA در بسیاری از سیستمهای امنیتی مورد استفاده قرار میگیرد، در برنامههای پیامرسانی رمزگذاریشده محبوب است و پایه و اساس امنیت بیتکوین است (با «آدرسهای» بیتکوین به عنوان کلیدهای عمومی).
الگوریتمهای امضای دیجیتال منحنی بیضوی (ECDSA) اخیراً بهعنوان جایگزینی برای سیستمهای دیجتال استاندارد موجود مانند سیستمهای رمزگذاری فاکتورسازی اعداد صحیح و سیستمهای رمزنگاری مشکل لگاریتم گسسته، توجه قابلتوجهی را بهویژه از سوی توسعهدهندگان استاندارد جلب کردهاند. در برنامههای امنیتی، الگوریتمهای رمزنگاری همیشه مهمترین ابزار اساسی هستند.
امضای Schnorr در مقابل ECDSA
امضای Schnorr و ECDSA (Elliptic Curve Digital Signature Algorithm) دو الگوریتم مختلف برای امضای دیجیتال هستند و در برخی جوانب تفاوت دارند. در زیر به برخی از تفاوتهای اصلی بین این دو الگوریتم اشاره میکنم:
مقیاسپذیری: یکی از مزایای امضای Schnorr نسبت به ECDSA، مقیاسپذیری بهتر آن است. در ECDSA، هر بار برای امضای یک پیام جدید، یک کلید خصوصی جدید تولید میشود که ممکن است زمانبر باشد. اما در امضای Schnorr، برای امضای چندین پیام مختلف، میتوان از یک کلید خصوصی مشترک استفاده کرد که به عملکرد بهتر در سیستمهای با تراکم بالا کمک میکند.
امنیت: هر دو الگوریتم ECDSA و Schnorr در مورد امنیت خود معتبر هستند. اما Schnorr از مسائل ریاضی متفاوتی نسبت به ECDSA استفاده میکند و برخی از تهدیدات امنیتی که ممکن است بر ECDSA تأثیر بگذارند، در Schnorr کاهش مییابند. بنابراین، Schnorr میتواند مقاومت بالاتری در برابر حملات کوانتومی و برخی حملات دیگر داشته باشد.
اندازه امضا: برای امضای یک پیام خاص، اندازه امضای Schnorr کوچکتر از ECDSA است. این به این معنی است که برای انتقال امضاها و ذخیرهسازی آنها، حجم کمتری نسبت به ECDSA نیاز است. این مزیت مهمی است که میتواند هزینه پهنای باند و فضای ذخیرهسازی را کاهش دهد.
امضای چندگانه: Schnorr امکان امضای چندگانه را بهبود میبخشد. در Schnorr، چندین شخص میتوانند با هم یک تراکنش را با استفاده از یک امضای مشترک امضا کنند. این ویژگی میتواند در برخی از سناریوها مفید و کارآمد باشد.
پیادهسازی: ECDSA یک الگوریتم پیچیدهتر برای پیادهسازی است و نیازمندیهای فنی بیشتری دارد. در مقابل، Schnorr الگوریتمی سادهتر است که پیادهسازی آن را آسانتر میکند و ممکن است در عملکرد و امنیت برخی از سیستمها بهبودی را به امتن قبلی در حالت ناقص قطع شد.
مزایای و نقاط ضعف امضای Schnorr
همانطور که گفته شد، امضاهای Schnorr مزایای متعددی نسبت به ECDSA دارند، از جمله اندازه امضای کوچکتر، زمان تأیید سریعتر، و مقاومت بهتر در برابر انواع خاصی از حملات. امضاهای Schnorr همچنین امکان تجمیع امضا را فراهم می کند که می تواند هزینه تراکنش ها را کاهش دهد و مقیاس پذیری را بهبود بخشد.
مزایا:
- شایان ذکر است که اگرچه امضاهای Schnorr ممکن است مناسبتر برای بیتکوین در نظر گرفته شوند، ECDSA هنوز به طور گسترده مورد استفاده قرار میگیرد و به عنوان یک طرح امضای امن در نظر گرفته میشود. انتخاب بین امضاهای Schnorr و ECDSA ممکن است به موارد استفاده خاص و الزامات امنیتی بستگی داشته باشد.
- اندازه کلید کوتاه: ECDSA از تابع هش و عملیات رمزنگاری مبتنی بر منحنیهای بیضوی استفاده میکند که امکان استفاده از کلیدهای کوتاهتر را فراهم میکند. این به این معنی است که الگوریتم ECDSA در مقایسه با الگوریتمهای دیگر مانند RSA، از حجم کلید کمتری برای کارایی مشابه بهره میبرد.
- مقاومت در برابر حملات کوانتومی: ECDSA به طور کلی مقاومت خوبی در برابر حملات کوانتومی دارد. این الگوریتم بر اساس منحنیهای بیضوی عمل میکند که محاسبات مربوط به آنها در مقابل کامپیوترهای کوانتومی مقاومت بیشتری دارد نسبت به برخی روشهای مبتنی بر اعداد بزرگ.
- کارایی بالا: ECDSA در مقایسه با الگوریتمهای دیگر امضای دیجیتال مانند RSA کارایی بالاتری دارد. استفاده از منحنیهای بیضوی باعث میشود که محاسبات مورد نیاز برای امضای و تأیید امضا کوتاهتر باشد.
نقاط ضعف:
- پیچیدگی پیادهسازی: ECDSA نیاز به پیادهسازی دقیق و صحیح دارد. در صورتی که پیادهسازی نادرست باشد، ممکن است آسیبپذیریهای امنیتی وجود داشته باشد که منجر به کاهش امنیت سیستم میشود.
- نیاز به منحنیهای بیضوی امن: انتخاب منحنیهای بیضوی امن برای استفاده در ECDSA بسیار حائز اهمیت است. انتخاب نادرست یا ضعیف منحنیهای بیضوی ممکن است منجر به آسیبپذیریهای امنیتی شود و امنیت الگوریتم را به خطر بیندازد.
- اعتماد به یک مرجع متمرکز: مانند بسیاری از الگوریتمهای امضای دیجیتال دیگر، ECDSA نیاز بهاعتماد به یک مرجع متمرکز دارد. برای اعتبارسنجی امضاها، باید به یک مرجع اعتماد کرد که کلید عمومی فرد صحیح را در اختیار دارد. این مرجع معمولاً یک مرکز گواهی امنیتی (Certificate Authority) است که هویت فرد را تأیید میکند و امضای دیجیتال را تأیید میکند.
در پایان
در چند سال گذشته بحث های زیادی در مورد اینکه چگونه شبکه بیت کوین باید مقیاس شود، وجود داشته است، به طوری که میلیونها (و در نهایت میلیاردها) نفر می توانند به طور همزمان و بدون اصطکاک از آن استفاده کنند.
امروزه، بیت کوین هنوز نمی تواند این تعداد کاربر را مدیریت کند. فضای محدودی برای تراکنشها در بلوکهایی که هر 10 دقیقه یک بار به بلاک چین اضافه میشوند، وجود دارد. این محدودیت به دلیل طراحی است تا اطمینان حاصل شود که میتوانیم ویژگیهایی را که بیت کوین را به یک نوآوری شگفت انگیز تبدیل می کند (مقاومت در برابر سانسور، تمرکززدایی، تغییر ناپذیری و دسترسی آزاد) حفظ کنیم.
با این ارتقای که مدت ها مورد انتظار بود، بیت کوین مزایای قابل توجهی در حفظ حریم خصوصی و مقیاس پذیری خواهد داشت. برخی حدس می زنند که جنبه تجمیع کلیدی امضای Schnorr می تواند ظرفیت شبکه بیت کوین را حداقل تا 25 درصد افزایش دهد، حتی بیشتر، زمانی که برای تراکنش های چند امضایی اعمال شود. همچنین، ذکر این نکته ضروری است که Schnorr جایگزین ECDSA نخواهد شد.
دیدگاهتان را بنویسید