یکی از اصول کارکرد بلاکچین و رمزارزها، عدم انتشار دادههای محرمانه است. برای تحقق این هدف، بلاکچین به روشهای مختلف به کاربران امکان سنجش صحت مسائل مربوط به بلاکچین مانند تایید تراکنشها بدون افشای اطلاعات محرمانه را میدهد. یکی از روشهای مرسوم برای انجام این عمل، استفاده از الگوریتمهای اثبات دانش صفر (Zero-Knowledge Proof) است. با استفاده از این روش، مشارکتکنندگان بلاکچین میتوانند بدون افشای اطلاعات کاربران، تراکنشها و سایر اقدامات در شبکه را اعتبارسنجی کنند. یکی از مهمترین الگوریتمهای اثبات دانش صفر، zkSTARK است که در این مقاله به معرفی و بررسی آن میپردازیم. با ما همراه باشید.
zkSTARK چیست؟
الگوریتم zkSTARK که مخفف شده عبارت Zero-Knowledge Scalable Transparent Argument of Knowledge است، نوعی اثبات دانش صفر است که به یک طرف (اثباتکننده) اجازه میدهد که به طرف دیگر (تاییدکننده) ثابت کند که یک گزاره خاص درست است و بدون اینکه هیچ اطلاعاتی در مورد آن افشا کند، تایید این گزاره را دریافت کند. استارکها تمرکز ویژهای روی توابع هش دارند و همین عامل باعث کاربرد بیشتر این الگوریتم در بین انواع مختلف الگوریتمهای دانش صفر شده است.
یک مثال عملی از موارد استفاده zkSTARKها، تایید محاسبات پیچیده مانند تراکنش ارز دیجیتال است. در این مثال، فرستنده تراکنش (Prover) از zkSTARKها استفاده میکند تا به تاییدکننده (شبکه نودهایی که بلاکچین را حفظ میکنند) ثابت کند که وجوه لازم برای تکمیل تراکنش را بدون افشای موجودی واقعی یا سایر اطلاعات حساس خود دارد.
تاریخچه zkSTARK
تحقیقات ابتدایی شکلگیری مفهوم استارکها به دهه ۹۰ میلادی باز میگردد. البته این مفهوم در آن زمان در حد ایده باقی ماند؛ زیرا با سیستمهای ابتدایی آن زمان، امکان پیادهسازی و اجرای این تکنولوژی امکانپذیر نبود. پس از گذشت سالها، در سال ۲۰۱۸ با انتشار مقالهای با عنوان Scalable, Transparent, and Post-Quantum Secure Computational به نویسندگی الی بن ساسون (Eli Ben Sasson)، ایدو بنتوف (Iddo bentov)، ینون هورش (Yinon Horesh) و مایکل ریابزف (Michael Ryabzev) این مفهوم به صورت جدی به دنیای بلاکچین معرفی شد.
نویسندگان در این مقاله، سیستمی را معرفی کردند که از ساختاری بهتر از الگوریتم معرفی شده توسط زی کش یعنی zkSNARK بهره میبرد.
نحوه کارکرد zkSTARK
پیش از پرداختن به نحوه کارکرد استارکها، باید به دلیل شکلگیری این الگوریتم بپردازیم. استارک در نقطه مقابل اسنارک قرار دارد. الگوریتم دانش صفر اسنارک (zkSNARK) یکی از پروتکلهای رمزنگاری است که برای حفظ محرمانگی تراکنشها از الگوریتمهای ریاضی پیچیده و رمزنگاری شده استفاده میکند. البته که اسنارکها بسیار ایمن هستند، اما به دلیل پیچیدگی بالا، استفاده از آنها بسیار دشوار است. حال zkSTARK فرایند رمزنگاری را به عملی بسیار ساده و قابل استفاده تبدیل کرده است. بنابراین استارک برای بهینهسازی و اصلاح اسنارک به وجود آمده است.
استارک برخلاف zkSNARK به راهاندازی اولیهای که نیاز به اعتماد داشته باشد، نیاز ندارند و از نظر تئوری، در برابر حملات کامپیوتری کوانتومی آسیبپذیر نیستند. از طرفی zkSTARK محاسبات پیچیده را به مکانی خارج از زنجیره اصلی منتقل میکند تا مقیاسپذیری شبکه را افزایش دهد. اثبات STARK که صحت محاسبات خارج از زنجیره را تایید میکند، میتواند توسط خدمات خارج از زنجیره تولید شود. پس از آن، این اثباتها مجددا به زنجیره اصلی ارسال میشوند تا هر مشارکتکنندهای که علاقه دارد، بتواند محاسبات را تایید کند.
موارد استفاده از zkSTARK
به صورت کلی هر پلتفرمی که نیاز به ایجاد بستری امن و خصوصی داشته باشد، میتواند از تکنولوژی دانش صفر استارک استفاده کنند. یکی از صنایعی که استارکها در آن بسیار پرکاربرد هستند، صنعت بلاکچین و ارزهای دیجیتال است. در حال حاضر برخی از پروژههای لایه دو اتریوم برای ارسال تراکنشهای امن و خصوصی به خارج از زنجیره اصلی، از این الگوریتم استفاده میکنند.
مزایا و معایب zkSTARK
تکنولوژی استارک دانش صفر نیز مانند سایر پروتکلهای حریم خصوصی، دارای مزایا و معایب مختص به خود است. این نقاط قوت و ضعف شامل موارد زیر میشود.
مزایای zkSTARK:
- مقاوم در برابر حملات کوانتومی: zkSTARKها در برابر حملات کامپیوترهای کوانتومی مقاوم هستند.
- بدون نیاز به راهاندازی قابل اعتماد: عدم وجود یک تنظیم قابل اعتماد، به این معنی است که zkSTARKها در برابر انواع خاصی از حملات و سوءاستفادهها کمتر آسیبپذیر هستند.
- شفافیت: به کمک این تکنولوژی، هیچ پارامتر رمزنگاری مخفی وجود ندارد که بتوان از آن بهرهبرداری کرد.
معایب zkSTARK:
- اندازههای اثبات بزرگ: اثباتهای تولید شده توسط zkSTARKها به طور قابل توجهی بزرگتر از نمونههای zkSNARK هستند، که میتواند برای برنامههایی با محدودیت فضای ذخیرهسازی یا پهنای باند محدود مشکلساز باشد.
- مستندات توسعه کم: ZkSTARKها به دلیل نوظهور بودن، منابع توسعه، کتابخانهها و پشتیبانی جامعه کمتری در مقایسه با zkSNARKها دارند.
- هزینه محاسباتی بالا: اندازههای اثبات بزرگتر به این معنی است که محاسبات بیشتری برای تایید هر اثبات مورد نیاز است، که میتواند هزینه تراکنشها را در سیستمهای خاص افزایش دهد.
پروژههای ارز دیجیتال مطرح zkSTARK
همانطور که مطالعه کردید، برخی از پروژههای راهکار لایه دو اتریوم از این تکنولوژی استفاده میکنند. برخی از مطرحترین این پروژهها عبارتند از:
- استارک نت (StarkNet): استارک نت یک راه حل لایه ۲ است که از استارک برای کمک به مقیاسپذیری ایمن اتریوم و در عین حال بهبود سرعت و کاهش هزینه تراکنشها استفاده میکند. این پلتفرم ظرفیت پردازش تراکنش استثنایی و کاهش هزینههای گس را ارائه میدهد و همان سطوح بالای امنیت لایه ۱ اتریوم را حفظ میکند و در عین حال حریم خصوصی را نیز فراهم میکند.
- جدی سواپ (JediSwap): جدی سواپ یک AMM (بازارساز خودکار) کاملا قابل ترکیب و بدون نیاز به مجوز است، که کاربران را قادر میسازد تا داراییها را با کارمزد تقریبا صفر مبادله کنند.
- آرجنت ولت (Argent Wallet): کیف پول آرجنت یکی از پروژههای اکوسیستم استارک نت است که استفاده از شبکه اتریوم با کارمزد پایین را فراهم میکند. این والت در نسخههای برنامه موبایل و افزونه مرورگر در دسترس است.
تفاوت zkSTARK با zkSNARK
با وجود اینکه دو الگوریتم دانش صفر استارک و اسنارک امنیت و حریم خصوصی کاربران را تامین میکنند، اما در مواردی با یکدیگر متفاوت هستند. مفهوم اسنارکها به مراتب قدیمیتر از مفهوم استارک است و ابتدا توسط زی کش مورد استفاده قرار گرفت. در ادامه در جدولی تفاوتهای مهم این دو را با یکدیگر مقایسه میکنیم.
ویژگی | zkSTARK | zkSNARK |
---|---|---|
تکنولوژی | توابع هش | رمزنگاری منحنی |
اندازه اثبات | بزرگ | کوچک |
نیاز به اعتماد برای راهاندازی | نیازی به تنظیم قابل اعتماد ندارد | به یک راهاندازی قابل اعتماد نیاز دارد |
زمان تایید | سریعتر از اسنارک، فقط با مجموعه دادههای بزرگ | زمان تایید سریع |
مقاوم در برابر حملات کامپیوترهای کوانتومی | در برابر حملات کوانتومی ایمن است | احتمال حمله کوانتومی وجود دارد |
شفافیت | بالا | پایین |
مقیاسپذیری | بالا | پایین |
zkSTARK، آینده پروتکلهای حریم خصوصی
همانطور که گفته شد، تکنولوژی دانش صفر استارک مزایایی مانند مقیاسپذیری و شفافیت بالا، عدم نیاز به تنظیمات قابل اعتماد و مقاوم در مقابل حملات کامپیوترهای کوانتومی را مهیا میکند. البته دامنه استفاده از استارکها به وسعت گسترش تکنولوژی دانش صفر اسنارک نیست؛ اما با وجود ویژگیهای منحصربهفرد این الگوریتم، احتمالا در آینده با پذیرش بیشتر آن مواجه خواهیم بود. در حال حاضر استارک نت بزرگترین پلتفرمی است که از این تکنولوژی بهره میبرد و اکوسیستم در حال گسترشی نیز دارد. نظر شما درباره zkSTARK چیست؟ آیا میتواند برای بلاکچینها حریم خصوصی و سرعت بالا ایجاد کند؟