واژه‌نامه

اثبات دانش صفر (ZKP)

۱۴۰۵/۱/۲۸

یک اثبات دانش صفر (ZKP) یک پروتکل رمزنگاری است که در آن یک طرف (اثبات‌کننده) طرف دیگر (تأییدکننده) را متقاعد می‌کند که یک بیانیه درست است — بدون اینکه اطلاعات اضافی فراتر از حقیقت آن فاش شود. اثبات‌های دانش صفر توسط شفی گلدواسر، سیلویو میکالی و چارلز رکاف در مقاله ۱۹۸۵ آن‌ها "پیچیدگی دانش سیستم‌های اثبات تعاملی" معرفی شدند — نتیجه‌ای که جایزه گودل (۱۹۹۳) را برد و به جایزه تورینگ گلدواسر و میکالی (۲۰۱۲) کمک کرد.

سه ویژگی

هر سیستم اثبات دانش صفر دارای ویژگی‌های زیر است:

  • کامل بودن — اگر بیانیه درست باشد، یک اثبات‌کننده صادق می‌تواند یک تأییدکننده صادق را متقاعد کند
  • صدا بودن — اگر بیانیه نادرست باشد، هیچ اثبات‌کننده متقلبی نمی‌تواند تأییدکننده را متقاعد کند (به جز با احتمال ناچیز)
  • دانش صفر — تأییدکننده چیزی فراتر از حقیقت بیانیه یاد نمی‌گیرد؛ هیچ اطلاعاتی درباره چرا بیانیه درست است فاش نمی‌شود

شهود متعارف: اثبات اینکه شما یک رمز عبور را می‌دانید بدون اینکه رمز عبور را فاش کنید.

سیستم‌های اثبات مدرن

  • zk-SNARK (استدلال غیرتعاملی مختصر دانش) — اثبات‌های بسیار کوچک (صدها بایت)، تأیید در زمان ثابت. ساختارهای کلاسیک (Groth16، PGHR13) نیاز به یک راه‌اندازی مورد اعتماد خاص مدار دارند؛ PLONK و Marlin از یک راه‌اندازی قابل به‌روزرسانی جهانی استفاده می‌کنند؛ Halo 2 (توسعه‌یافته توسط شرکت الکتریک کوین برای Zcash) از یک تعهد چندجمله‌ای بدون راه‌اندازی مورد اعتماد استفاده می‌کند.
  • zk-STARK (استدلال شفاف مقیاس‌پذیر دانش) — معرفی شده توسط بن-ساسون و همکاران (۲۰۱۸). شفاف (بدون راه‌اندازی مورد اعتماد)، تنها به توابع هش متکی است و به طور قابل قبول پساکوانتومی امن است. اثبات‌ها بزرگتر هستند (ده‌ها تا صدها کیلوبایت). توسط StarkWare در Starknet و StarkEx استفاده می‌شود.
  • Bulletproofs — اثبات‌های کوتاه برد بدون راه‌اندازی مورد اعتماد. از سال ۲۰۱۸ توسط Monero برای مقادیر محرمانه استفاده می‌شود.
  • Nova / HyperNova، Plonky2 / Plonky3 — سیستم‌های SNARK تاشو و بازگشتی مدرن، بهینه‌سازی شده برای محاسبات افزایشی.

استفاده‌ها در کریپتو

حریم خصوصی

  • Zcash — تراکنش‌های محافظت‌شده با استفاده از zk-SNARKs (Groth16 → Halo 2)
  • شبکه Aztec، Aleo، Namada — قراردادهای هوشمند متمرکز بر حریم خصوصی
  • Monero — Bulletproofs برای اثبات‌های برد
  • Tornado Cash — مخلوط‌سازی zk-SNARK (تحریم‌های وزارت خزانه‌داری ایالات متحده به طور جزئی توسط دادگاه پنجم در سال ۲۰۲۴ لغو شد)

مقیاس‌پذیری — رول‌آپ‌های ZK

  • zkSync Era، Starknet، Polygon zkEVM، Scroll، Linea — فشرده‌سازی هزاران تراکنش L2 به یک اثبات اعتبار واحد که به اتریوم ارسال می‌شود. این رول‌آپ‌ها از ZK برای اختصار استفاده می‌کنند، نه برای پنهان کردن داده‌ها.

هویت و اعتبارنامه‌ها

  • Worldcoin — اثبات هویت از اسکن عنبیه بدون فاش کردن خود اسکن
  • zk-email — اثبات دریافت ایمیل بدون فاش کردن محتوای ایمیل
  • Polygon ID، Semaphore — هویت زنجیره‌ای بدون تاریخچه کیف پول قابل پیوند

محاسبات قابل تأیید

  • zkML (EZKL، Modulus Labs) — اثبات اینکه یک مدل هوش مصنوعی به درستی بر روی ورودی‌های خاص اجرا شده است
  • پردازنده‌های کمکی زنجیره‌ای (Axiom، Herodotus) — اثبات نتایج محاسبات خارج از زنجیره

تصور غلط رایج — "ZK" ≠ "خصوصی"

یک zk-rollup در نام خود "ZK" را تبلیغ می‌کند اما معمولاً حریم خصوصی کاربر را فراهم نمی‌کند. ویژگی دانش صفر در اینجا برای اختصار استفاده می‌شود — یک اثبات کوچک به بسیاری از تراکنش‌ها گواهی می‌دهد — نه برای پنهان کردن داده‌ها. همه تراکنش‌ها در رول‌آپ عمومی باقی می‌مانند. برای حریم خصوصی کاربر، طراحی اضافی مورد نیاز است (Aztec، Aleo).

همچنین ببینید