آشنایی با طرز کار پرایوسی کوینها و zk-SNARK
پرایوسی کوینهایی مثل زی کش از یک نوع رمزنگاری «دانش صفر» به اسم zk-SNARK استفاده میکنند. در این مطلب شما را با این پروتکل آشنا میکنیم.
خلاصه
- zk-SNARKها یکی از انواع رمزنگاری هستند که پرایوسی کوینهایی مثل زی کش از آنها استفاده میکنند.
- در این مطلب هر آنچه نیاز است درباره طرز کار این کوینها بدانید و اینکه کجا میتوانید آنها را پیدا کنید، به شما خواهیم گفت.
پرایوسی کوینها (یا کوینهای پیگیرگریز) یکی از مهم ترین مباحث در حوزه ارزهای دیجیتال هستند که تراکنشهای آنها به صورت کاملاً ناشناس اجرا میشود. این کوینها که مهم ترین آنها زی کش است از فناوری به اسم zk-SNARK استفاده میکنند که مخفف Zero-Knowledge Succinct Non-Interactive Argument of Knowledge است. به این حوزه، رمزنگاری دانش صفر هم گفته میشود.
شاید این اصطلاحات تخصصی و مبهم به نظر برسند اما در این مطلب با توضیحاتی ساده و قابل درک شما را با این مفهوم آشنا میکنیم.
رمزنگاری
به زبان ساده، رمزنگاری علم تکنیکهای برقراری ارتباط به صورت امن است. معمولاً وقتی از رمزنگاری استفاده میکنیم که مایلیم فقط فرستنده و گیرنده پیام امکان خواندن و درک محتوای آن را داشته باشند.
رمزنگاری از قرنها پیش ابداع شده و یکی از اولین نمونههای آن در مصر باستان شکل گرفت که در آن روی مقبره خومهوتپ دوم نمادهای رمزی حک شده بود که آغازی برای حرکت از حروف مصری سنتی به سمت حروف رمزی جدید بود.
یکی از مهم ترین عناصر رمزنگاری در دنیای ارزهای دیجیتال، توابع هش هستند که پایه و اساس هر بلاکچینی محسوب میشوند. توابع هش، بخصوص SHA-256 که در اکثر بلاکچینها از آن استفاده میشود – یک ورودی مثل یک عبارت یا عدد را تبدیل به یک قطعه اطلاعات رمزنگاری شده با طول مشخص میکنند؛ چیزی شبیه به این عبارت:
77077b1f4c3ad44c83dc0bdb8d937e9b71c0ef07a35c2664bb7da85be738eacf
توابع هش به بلاکچینهایی مثل بلاکچین بیتکوین امکان میدهند تراکنشها را پردازش کنند، بلاکها را به هم پیوست کنند و از حفظ جامعیت اطلاعات بلاکچین مطمئن باشند.
zk-SNARK هم مثل تابع هش یک نوع رمزنگاری است که قابلیت بیشتری برای حفاظت از حریم خصوصی کاربران دارد.
زی کش، نمونهای عملی از zk-SNARK
zk-SNARKها یک نوع رمزنگاری دانش صفر (zero-knowledge یا به اختصار zk) هستند. zk-SNARKها به کاربران ارزهای دیجیتال امکان میدهند که تراکنشها را به روشی کاملاً رمزنگاری شده بر روی بلاک چین ارسال کنند – یعنی هیچکس امکان خواندن آنها را نخواهد داشت – و در عین حال بررسی تراکنشها به روشی کاملاً مجاز و معتبر انجام شود. اما این کار به چه روشی انجام میشود؟
اثبات دانش صفر به شخص A امکان میدهد که به شخص B اثبات کند جمله X صحیح است بدون اینکه به غیر از خود جمله X اطلاعات دیگری را افشا کند. فرض کنید که میتوانید به شخصی ثابت کنید از 21 سالگی گذشته اید بدون اینکه تاریخ تولدتان را اعلام کنید یا اینکه به او بگویید 25 ساله هستید. طرز کار zk-SNARK هم تقریباً به همین صورت است.
وقتی دو شخص در زی کش تراکنش اجرا میکنند دقیقاً همین اتفاق رخ میدهد. زی کش یکی از برترین پرایوسی کوینهای صنعت ارزهای دیجیتال است که هدف آن ناشناس سازی حداکثری اطلاعات و تراکنشها است.
در سایت زی کش آمده "ضمانت قوی حفاظت از حریم خصوصی توسط زی کش ناشی از این واقعی است که امکان رمزنگاری کامل تراکنشهای زی کش وجود دارد ولی در عین حال میتوان با استفاده از اثباتهای zk-SNARK اعتبار و درستی آنها را تأیید کرد."
چنین تراکنشهای حفاظت شدهای با آنچه که در شبکهای مثل بیتکوین مشاهده میکنیم تفاوت دارند. در چنین شبکههایی آدرس فرستنده و گیرنده و همچنین مبلغ تراکنش برای همه قابل مشاهده است.
زی کش در تراکنشهای حفاظت شده از zk-SNARK استفاده میکند تا نشان دهد که فرستنده تراکنش مالک حقیقی وجه است یا اینکه قصد ارسال آن را دارد و امکان دستکاری تراکنش توسط اشخاص ثالث وجود ندارد.
زی کش یک ارز دیجیتال با تمرکز بر حفاظت از حریم خصوصی است.
برای اینکه چنین تراکنشهای حفاظت شدهای درست کار کنند، باید یکسری شرایط خاص را برآورده کنند. مثلاً در زی کش کاربران باید یک تعهد منتشر کرده و یک رقم خنثی کننده (nullifier) را اعلام کند.
این تعهد یک مبلغ خرج نشده در بلاکچین زی کش است. مثل شبکه بیتکوین نودهای زی کش هم فهرستی از چنین موجودیهایی دارند که نشان میدهند وجه مورد نظر واقعاً وجود داشته و در دسترس است.
شخصی که قصد ارسال زی کش برای شخص دیگر را داشته باشد یک تعهد منتشر میکند تا اعلام کند که این مقدار پول را دارد. خنثی کننده هم نشان میدهد که این مبلغ برای شخصی دیگر ارسال شده است.
به عبارت دیگر خنثی کنندهها به تعهدهای مربوطه گره خورده اند و اعدادی هستند که باید برای خرج کردن مبلغ تعهد شده مشخص شوند. اگر آلیس بخواهد برای باب زی کش ارسال کند، از یک تعهد استفاده میکند تا نشان دهد قدرت خرج کردن این وجه را دارد. همچنین یک خنثی کننده که مبلغ حفظ شده برای باب را نشان میدهد (البته بدون افشای اینکه باب دریافت کننده این مبلغ است).
هر تراکنش حفاظت شده جدیدی منجر به شکل گیری سه نوع رکورد در بلاکچین میشود – رکوردهایی که با استفاده از یک هش حفاظت میشوند. این هشها آدرس گیرنده تراکنش، مبلغ خرج شده و عددی منحصربفرد برای آن تراکنش را نشان میدهند.
نتیجه نهایی این است که تراکنشهای حفاظت شده مثل بیتکوین مبتنی بر تابع هش هستند اما zk-SNARK یک لایه امنیتی به آنها اضافه میکند.
کوینهایی مثل زی کش و مونرو به دلیل اینکه آزادی خواهان زیادی در بازار ارزهای دیجیتال وجود دارند، محبوبیت زیادی در این حوزه دارند. هر دو کوین سعی دارند با این ادعا که کاملاً از اطلاعات مالی کاربرانشان حفاظت میکنند، خودشان را از ارزهایی مثل بیتکوین جدا کنند.
اما از آنجایی که ارزهای دیجیتال – و بخصوص پرایوسی کوینها – میتوانند به انجام جرایم کمک کنند، چنین پروژههایی بین نهادهای قانونی محبوبیت چندانی ندارند.
آینده zk-SNARK
zk-SNARK ابزار خوبی برای ناشناس سازی تراکنشهای کریپتو است اما از طرفی کاربردهای دیگری هم دارد. مثلاً Celo یک پروتکل ارز دیجیتال است که متمرکز بر پرداختهای موبایلی است و سعی به ایجاد اقتصادی فراگیرتر دارد.
Pranay Mohan که در زمینه تولید محصولات در شرکت Celo کار میکند میگوید شاید وقتی که مردم برای اولین بار اسم zk-SNARKها میشنوند زی کش از نظرشان جالب توجه باشد اما کاربردهای این فناوری بسیار وسیع تر است. برای مثال Mohan به قابلیتهای zk-SNARK برای کمک به شهروندان کشورهای در حال توسعه اشاره میکند.
او میگوید "اگر به این فکر کنیم که این افراد چطور باید از ارزهای دیجیتال استفاده کنند، بعید است که از متاماسک استفاده کنند و هزاران دلار برای پروژههای DeFi خرج کنند. کاربران میتوانند با استفاده از zk-SNARKها به صورت فوری با استفاده از تلفن همراه با یک بلاکچین همگام شوند – این سیستم ویژگیهای ارزهای دیجیتال از نظر عدم نیاز به اعتماد به دیگران را حفظ میکند اما این قابلیت را روی دستگاههایی ایجاد میکند که ظرفیت فنی بالایی دارند."
با وجود قابلیتهای zk-SNARKها هنوز این ابزارها در حد محدودی استفاده میشوند و حتی در صنعتی تخصصی مثل ارزهای دیجیتال خیلیها با این مفهوم آشنایی ندارند. اما با ورود شرکتهای مختلف به این حوزه، شرایط رو به تغییر است.
از جمله این شرکتها میتوان به استارتاپ Aleo اشاره کرد که 28 میلیون دلار جذب سرمایه کرد تا ابزارهایی بسازد که به برنامه نویسان امکان میدهند اثبات دانش صفر را در اپلیکیشنهای اینترنتی مختلف پیاده سازی کنند – پروژهای که میتواند به مصرف کنندگان امکان دهد دنیای وب را اکتشاف کنند بدون اینکه نیاز به افشای اطلاعات خودشان داشته باشند.
شرکت EY که یکی از بزرگترین شرکتهای حسابداری جهان است در حال آزمایش کار با این تکنیک رمزنگاری پیشرفته است.
Paul Brody مدیر راهکارهای بلاکچین این شرکت میگوید این شرکت از اثباتهای دانش صفر مثل zk-SNARK استفاده میکند تا مشتریانش از امکانات بلاکچین بهره مند شوند بدون اینکه حریم خصوصی آنها دچار مخاطره شود.
به گفته Brody راهکار Nightfall این شرکت ابزاری برای اجرای تراکنش در شبکه اتریوم با حفظ حریم خصوصی است و این منافع را نه فقط در اختیار افراد بلکه در اختیار سازمان قرار میدهد.
و هر چند نگرانیهایی قانونی درباره چنین تراکنشهای خصوصی وجود دارد اما Brody معتقد است که در آینده کاربرد zk-SNARK به طور چشمگیری بیشتر خواهد شد.
او میگوید "برای کاربران بیزنسی حریم خصوصی اهمیت ویژهای دارد. برای سازمانها اینکه چه کالایی را، از چه کسی و با چه مبلغ و حجمی خریداری کرده اند جزء اطلاعات سری محسوب میشود."