اثباتهای دانش صفر (ZKPs) چگونه کار میکنند؟
بسیاری از کسب و کارها برای بدست آوردن بینش، آگاهی و بهبود محصولات و خدمات خود، حجم وسیعی از دادههای مشتریها را جمعآوری میکنند که این میتواند در برابر تهدیدات سایبری و نقض دادهها آسیبپذیر باشد. سال به سال اشتباه در دادهها افزایش مییابد و تا به کنون این خسارت به ۴.۲ میلیون دلار رسیده است.
فناوریهای تقویتکننده حریم خصوصی (PETs) مانند اثباتهای دانش صفر (ZKPs) راههایی را برای کسب و کارها فراهم میکنند تا از دادههای حساس خود محافظت کنند. ما در این مقاله قصد داریم عملکرد ZKP و نمونههایی از کاربرد آن را برای کمک به مدیران اجرایی در تقویت وضعیت امنیت سایبری سازمانشان توضیح دهیم.
اثبات دانش صفر (ZKPs) چیست؟
به زبان ساده، این سیستم کریپتویی که اثبات دانش صفر یا همان Zero Knowledge Proof نامیده میشود، ساخته شده تا صحت و درستی یک موضوعی را ثابت کند که در عین حال اطلاعاتی که مهم نیست برای آن موضوع فاش نشود و حریم خصوصی کاربر بهبود پیدا کند.
اثباتهای دانش صفر چگونه کار میکنند؟
برای درک بهتر عملکرد اثباتهای دانش صفر بگذارید مثالی بیاوریم: فرض کنید شما (اثبات کننده) یک دوست کوررنگ (تأیید کننده) دارید که نمیتواند یک توپ سبز و قرمز را از یکدیگر تشخیص دهد (در مورد رنگهای مختلف توپها اطلاعات صفر دارد). شما باید ثابت کنید که رنگ توپها متفاوت است اما دوست شما برای متقاعد شدن به چیزی بیشتر از کلمات شما نیاز دارد. روشهای اثباتهای دانش صفر برای این مشکل به صورت زیر است:
دوست شما توپها را میگیرد و به شما اجازه میدهد تا ببینید کدام توپ در کدام دست است، سپس توپ را بین دستان خود جا به جا میکند؛ بعد توپها را نشان میدهد و از شما میپرسد که آیا توپها را عوض کرده است یا خیر. چون شما رنگها را تشخیص میدهید به راحتی به این سوال پاسخ میدهید؛ اما دوست شما هنوز به طور کامل قانع نشده است. شما ۵۰ درصد شانس دارید که به درستی حدس بزنید. اگر دوست شما این کار را چندین بار تکرار کند، احتمال اینکه شما به درستی حدس بزنید که آیا هر بار توپها را عوض کرده است یا نه، بسیار کم خواهد شد. این به او امکان میدهد بدون دانستن رنگ واقعی توپها، دریابد که رنگهای توپها متفاوت است یا نه.
کارایی اثبات دانش صفر چیست؟
روشهای اثبات دانش صفر (ZKP) باید این معیارها را برآورده کند:
کامل بودن: اگر اطلاعات ارائه شده توسط اثبات کننده درست باشد، اثبات دانش صفر تایید کننده را قادر میسازد تا درستی اطلاعات ارائه شده را بپذیرد.
درستی: اگر اطلاعات ارائه شده نادرست باشد، باید به تایید کننده این امکان داده شود آن را نپذیرد.
دانش صفر: این روش باید مورد دیگری را جز اینکه آیا اثبات کننده حقیقت را میگوید را برای تأیید کننده آشکار کند.
انواع مختلف اثباتهای دانش صفر
دو نوع اثبات دانش صفر وجود دارد:
اثباتهای دانش صفر تعاملی: در این نوع اثبات کننده و تایید کننده چندین بار با هم تعامل دارند. تأییدکننده، اثباتکننده را تا زمانی که آن را متقاعد کند، به چالش میکشد.
اثباتهای دانش صفر غیر تعاملی: در روش غیر تعاملی فقط یکبار در هر زمانی اثبات ارائه شده توسط اثبات کننده، توسط تایید کننده مورد قبول واقع شود. این روش به قدرت محاسباتی بیشتری نسبت به نوع اول نیاز دارد.
کاربردها و موارد استفاده از اثباتهای دانش صفر
از اثباتهای دانش صفر میتوان برای محافظت از حریم خصوصی دادهها در مجموعه متنوعی در رابطه با کریپتوگرافیک استفاده کرد، مانند:
بلاکچین: شفافیت بلاکچینهای عمومی مانند بیت کوین و اتریوم امکان تایید عمومی تراکنش ها را فراهم میکند. اثبات دانش صفر میتواند منجر به بهبود حریم خصوصی و مقیاس پذیری بلاکچین شود.
امورمالی: ING ( یک بانک مستقر در هلند که بلاکچین دانش صفر جدید خود را راهاندازی کرده است.) از اثبات دانش صفرهایی استفاده میکند که به مشتریان این امکان را میدهد ثابت کنند که درآمد آنها در محدوده مشخصی قرار دارد؛ به عنوان مثال متقاضی وام میتواند ثابت کند که درآمد خود بدون اینکه حقوق دقیق خود را اعلام کند، در محدوده قابل قبول قرار دارد.
رای گیری آنلاین: ZKP به کاربران این قابلیت را میدهد به طور ناشناس رای دهند.
احراز هویت: از ZKP میتوان برای احراز هویت کاربران بدون در اختیار گذاشتن اطلاعات مخفی، مانند رمز عبور استفاده کرد.
یادگیری ماشین: ZKPها میتوانند به صاحب یک الگوریتم یادگیری ماشین اجازه دهند تا دیگران را در مورد نتایج بدون افشای هیچ اطلاعاتی در مورد مدل آن متقاعد کند.
چالشهایی که با اثبات دانش صفر روبرو هستیم، چیست؟
ضمانت ۱۰۰ درصدی ندارند: حتی اگر احتمال تأیید توسط تأیید کننده در حالی که اثبات کننده دروغ میگوید کم باشد، ZKPها تضمین نمیکنند که این ادعا ۱۰۰ درصد درست است. همانطور که در بالا نشان داده شد، احتمال دروغ گفتن یک اثبات کننده در هر تکرار فرآیند برداشتن توپ کاهش مییابد، اما هرگز به صفر نمیرسد.
شدت محاسبات: شدت الگوریتمهای مورد استفاده از نظر محاسباتی باید زیاد باشد؛ چون ما به تعاملات زیادی بین تأیید کننده و اثبات کننده در روش تعاملی و قابلیتهای محاسباتی زیادی در روش غیر تعاملی نیاز داریم. این یعنی اثبات دانش صفر برای دستگاههای کند یا تلفن همراه نامناسب میباشد.
رمزارزهایی که از اثبات دانش صفر استفاده میکنند
Zcash
Zcash یک پلتفرم بلاکچینی متن باز است که از اثبات دانش صفر برای حفظ حریم خصوصی دادههای تراکنشی استفاده میکند و این رمزارز جزو کوینهای محرمانه قرار دارد.
StarkWare
Starkware یکی دیگر از اکوسیستمهاییست که از ZKP به منظور بهبود حریم خصوصی، مشکل مقیاسپذیری استفاده میکند.
QED-it
یک استارتاپ که Zero Knowledge Proof به منظور حفظ امنیت استفاده میکند. QED-it یک شرکت اسرائیلی است که به دلیل مدیریت دادههای محرمانه بدون نظارت شخص ثالث، به شرکتهای دیگر حریم خصوصی ارائه میدهد.
PIVX
یکی دیگر از شرکتهایی که از ZKP استفاده میکند PIVX است که هدف آن حفظ اطلاعات مالی است، یعنی در این سیستم شما فقط قادر خواهید بود تاییدیه پول ارسال شده را ببینید، اما خبری از آدرس و زمان تراکنش نیست.
LRC
لوپرینگ (Loopring) یک پروتکل مقیاسپذیر لایه ۲ اتریوم محسوب میشود که LRC رمزارز اختصاصی آن است. این پروتکل از ZKP برای تایید تراکنشهای خارج از زنجیره میکند.
در آخر باید اضافه کنیم که اتحادیه اروپا به تازگی صحبتهایی در مورد استفاده از سیستم کریپتویی اثبات دانش صفر در آیدیهای دیجیتالی انجام داده و باید منتظر ماند و دید که چه تصمیمهایی در آینده گرفته میشود.