بلوكتشين

كيف تعمل إثباتات المعرفة الصفرية ولماذا هي مهمة للخصوصية

يمكنك إثبات أنك تجاوزت 18 عامًا دون الكشف عن تاريخ ميلادك. يمكنك إثبات أنك تمتلك أموالًا كافية لإتمام معاملة دون الكشف عن رصيدك. يمكنك إثبات أن عملية حسابية تمت بشكل صحيح دون الكشف عن مدخلاتها. هذا كله أصبح ممكنًا بفضل “إثباتات المعرفة الصفرية”، التي تتحول بهدوء إلى أهم أداة تشفيرية في البلوكتشين منذ ظهور دالة التجزئة.

تبدأ معظم التعريفات بإثباتات المعرفة الصفرية بتشبيه “كهف علي بابا”، حيث يُظهر شخص ما أنه يعرف الكلمة السرية لفتح باب من خلال الخروج دائمًا من الجانب الذي يطلبه المدقق، دون الكشف عن الكلمة أبدًا. هذا التشبيه أنيق ولكنه عديم الفائدة تمامًا لفهم سبب أهمية إثباتات ZK عمليًا. فهو يخبرك أن مثل هذا الإثبات ممكن، لكنه لا يخبرك لماذا قد يحتاجه أي شخص على البلوكتشين.

لماذا نحتاج إثباتات المعرفة الصفرية؟ المشكلة الأساسية للشفافية

نقطة البداية العملية أبسط. كل بلوكتشين يواجه نفس المعضلة: الشفافية تمكن الثقة، لكن الشفافية تدمر الخصوصية. سجل معاملات البيتكوين عام. كل معاملة، كل رصيد، كل عنوان مرئي لأي شخص. إيثريوم هو نفسه. هذه الشفافية هي ما يجعل النظام قابلاً للتدقيق والثقة، لكنها تعني أيضًا أن أي شخص يعرف العنوان الذي يخصك يمكنه رؤية كل معاملة أجريتها، وكل توكن تملكه، وكل بروتوكول تعاملت معه.

إثباتات المعرفة الصفرية تحل هذه المعضلة. إنها تتيح لك إثبات حقائق حول بياناتك دون الكشف عن البيانات نفسها. يمكنك إثبات أن رصيد حسابك يتجاوز حدًا معينًا دون الكشف عن الرصيد الدقيق. يمكنك إثبات أن معاملة ما صحيحة دون الكشف عن المرسل أو المستلم أو المبلغ. يمكنك إثبات أنك لست على قائمة عقوبات دون الكشف عن هويتك. الرياضيات وراء ذلك عميقة، لكن التطبيقات فورية.

الخصائص الثلاث التي يجب أن يمتلكها أي إثبات ZK

يجب أن يفي كل نظام إثبات معرفة صفرية بثلاث خصائص، وفهمها ضروري لتقييم أي بروتوكول يعتمد على ZK.

  • الاكتمال: إذا كانت العبارة صحيحة واتبع كل من المُثبت والمدقق البروتوكول، فسيقتنع المدقق دائمًا. الإثبات الصحيح لا يفشل أبدًا في التحقق. إذا كنت تعرف السر حقًا، فسيعمل الإثبات دائمًا.
  • المتانة: إذا كانت العبارة خاطئة، فلا يمكن لأي مُثبت مخادع إقناع المدقق بأنها صحيحة، إلا باحتمال ضئيل جدًا. لا يمكن للمُثبت غير الأمين تزييف إثبات صحيح. احتمال قبول إثبات خاطئ ضئيل للغاية لدرجة أنه مستحيل عمليًا.
  • المعرفة الصفرية: لا يتعلم المدقق شيئًا سوى حقيقة أن العبارة صحيحة. لا يكشف الإثبات أي معلومات عن السر نفسه، أو أي عملية حسابية وسيطة، أو أي بيانات استُخدمت لتوليد الإثبات. معرفة المدقق بعد رؤية الإثبات مطابقة تمامًا لما كانت عليه إذا أخبره شخص ما بأن العبارة صحيحة.

الخاصية الثالثة هي ما يجعل إثباتات ZK مفيدة وليست مجرد صحيحة. التوقيعات الرقمية التقليدية تثبت أن رسالة وُقعت بمفتاح محدد، لكنها تكشف محتوى الرسالة. التزامات التجزئة التقليدية تثبت أنه تم الالتزام بقيمة، لكنها تكشف القيمة عند فتحها. إثباتات ZK تثبت وجود علاقة بين قيم سرية دون الكشف عن تلك القيم في أي وقت.

الفرق بين zk-SNARKs و zk-STARKs

النظامان الرئيسيان لإثباتات ZK في البلوكتشين هما zk-SNARKs وzk-STARKs. يحلان المشكلة نفسها بمقايضات مختلفة.

zk-SNARKs تنتج إثباتات صغيرة وسريعة التحقق. إثبات zk-SNARK النموذجي يتراوح حجمه بين 200 و300 بايت ويمكن التحقق منه على السلسلة مقابل حوالي 200,000 إلى 300,000 غاز على إيثريوم. وقت التحقق ثابت بغض النظر عن مدى تعقيد العملية الحسابية المُثبتة. التحقق من إثبات معاملة واحدة يستغرق نفس وقت التحقق من إثبات عشرة آلاف معاملة.

ثمن هذا الإيجاز هو إعداد موثوق به. معظم أنظمة zk-SNARK تتطلب مراسم لمرة واحدة حيث يتم توليد معلمات عشوائية ويتم إتلاف العشوائية بعد ذلك. إذا لم يتم إتلاف هذه العشوائية بشكل صحيح، يمكن للمهاجم تزوير الإثباتات. أجرت Zcash واحدة من أكثر مراسم الإعداد الموثوق به تفصيلاً في تاريخ التشفير (مراسم “قوة تاو”) بمشاركة مئات المشاركين حول العالم، حيث يكون افتراض الأمان هو أن مشاركًا واحدًا على الأقل أتلف عشوائيته بأمانة.

الأنظمة الأحدث مثل PLONK وHalo 2 قللت أو ألغت متطلب الإعداد الموثوق به، لكن التصور لا يزال قائمًا. بعض المشاريع تتجنب SNARKs تحديدًا بسبب مخاوف الإعداد الموثوق، حتى عندما لا تتطلب التطبيقات التي ستستخدمها ذلك.

zk-STARKs تلغي الإعداد الموثوق به تمامًا. تستمد أمانها من دوال التجزئة بدلاً من افتراضات المنحنيات الإهليلجية، مما يجعلها شفافة (بدون معلمات سرية) ومقاومة نظريًا للحوسبة الكمومية (يُعتقد أن التشفير القائم على التجزئة آمن ضد أجهزة الكمبيوتر الكمومية، بينما تشفير المنحنيات الإهليلجية ليس كذلك).

الثمن هو الحجم. إثباتات STARK أكبر بكثير من إثباتات SNARK، عادةً ما بين عشرات ومئات الكيلوبايتات مقارنة بمئات البايتات. على بلوكتشين حيث تكلفة تخزين البيانات بالغاز، الإثباتات الأكبر تعني تكاليف تحقق أعلى. تعالج StarkWare، المطور الرئيسي لتقنية STARK، هذا باستخدام تكوين الإثبات التكراري: إثبات أن الإثبات صالح، ثم إثبات أن إثبات الإثبات صالح، مما يضغط البصمة النهائية على السلسلة.

عمليًا، الفرق أقل أهمية مما كان عليه قبل خمس سنوات. أنظمة الإثبات الحديثة تمزج بشكل متزايد تقنيات من العائلتين، وتحول التركيز الهندسي من نظام الإثبات الذي يجب استخدامه إلى مدى سرعة المُثبت في توليد الإثباتات ومدى رخص تحقق المدقق منها.

إثباتات ZK لتوسيع نطاق البلوكتشين

تطبيق التوسع لإثباتات ZK مباشر من الناحية المفاهيمية. الـ Rollup ينفذ دفعة من المعاملات خارج السلسلة، ويولد إثباتًا بأن الدفعة نُفذت بشكل صحيح، وينشر الإثبات على إيثريوم. عقد التحقق على إيثريوم يفحص الإثبات في عملية واحدة ويقبل الحالة الجديدة.

ما يجعل هذا قويًا هو عدم التماثل بين الإثبات والتحقق. توليد إثبات لدفعة من 10,000 معاملة قد يستغرق جهازًا قويًا عدة دقائق. التحقق من الإثبات يستغرق جزءًا من الثانية ويكلف مبلغًا ثابتًا من الغاز بغض النظر عن عدد المعاملات في الدفعة. هذا عدم التماثل هو ما يسمح لـ ZK rollups بضغط آلاف المعاملات في تحقق واحد على إيثريوم.

تتخذ ZK rollups الرئيسية نهجًا مختلفًا لكل منها لهذه البنية:

  • zkSync Era: تستخدم آلة افتراضية مخصصة (zkEVM) متوافقة مع Solidity على مستوى اللغة ولكنها تترجم إلى مجموعة تعليمات مختلفة محسّنة لتوليد إثباتات ZK. يمكن إعادة ترجمة عقود إيثريوم الحالية لـ zkSync مع تغييرات طفيفة.
  • StarkNet: تستخدم لغة برمجة Cairo وإثباتات STARK. Cairo لغة مصممة خصيصًا للحوسبة القابلة للإثبات، مما يمنحها مزايا أداء ولكنه يتطلب من المطورين تعلم لغة ونموذج جديد.
  • Polygon zkEVM: تهدف إلى تكافؤ EVM، مما يعني أنها تستطيع تنفيذ نفس البايت كود مثل إيثريوم دون إعادة ترجمة. هذا يزيد التوافق إلى أقصى حد ولكنه يقدم تعقيدًا هندسيًا في جعل كل كود تشغيلي لـ EVM قابلاً للإثبات.
  • Scroll: تستهدف أيضًا تكافؤ EVM الكامل وتستخدم نهجًا مجتمعيًا لتطبيق zkEVM الخاص بها، بهدف أن تكون أكثر ZK rollup توافقًا مع إيثريوم.

المنافسة بين هذه الأساليب هي في النهاية منافسة بين التوافق والأداء. كلما كان ZK rollup أكثر توافقًا مع أدوات إيثريوم الحالية، كان انتقال المطورين أسهل. كلما حسّن الـ rollup مجموعة تعليماته لقابلية الإثبات، أصبحت إثباتاته أسرع وأرخص.

إثباتات ZK للخصوصية

تطبيق الخصوصية هو حيث تصبح إثباتات ZK الأكثر تأثيرًا والأكثر إثارة للجدل.

المعاملة القياسية على إيثريوم تكشف عنوان المرسل وعنوان المستلم والمبلغ المحول والعقد الذكي المستدعى. هذه المعلومات عامة بشكل دائم. شركات تحليل السلاسل مثل Chainalysis وElliptic بنت أعمالًا كاملة على تتبع تدفقات المعاملات عبر السجل الشفاف، وربط العناوين بهويات حقيقية من خلال بيانات KYC للتبادلات وتسميات الكيانات المعروفة والأنماط السلوكية.

بروتوكولات الخصوصية القائمة على ZK تكسر سلسلة الرؤية هذه. في معاملة خاصة قائمة على ZK، يولد المستخدم إثباتًا بأن معاملته صحيحة (المرسل لديه أموال كافية، لا إنفاق مزدوج، المبالغ متوازنة) دون الكشف عن من أرسلها أو من استلمها أو كم كان المبلغ. يُنشر الإثبات على السلسلة ويتم التحقق منه من قبل الشبكة، لكن تفاصيل المعاملة الأساسية تبقى مشفرة.

كانت Zcash أول تطبيق رئيسي لهذا المفهوم، حيث أُطلقت في عام 2016 بمعاملات محمية باستخدام zk-SNARKs. يمكن لمستخدم Zcash الاختيار بين المعاملات الشفافة (المطابقة لسجل البيتكوين العام) والمعاملات المحمية (حيث يكون المرسل والمستلم والمبلغ مخفيين خلف إثبات ZK). عمليًا، كان اعتماد المعاملات المحمية على Zcash أقل مما يأمل المؤيدون، حيث لا تزال غالبية معاملات Zcash تستخدم المجمع الشفاف.

البروتوكولات الأحدث تبني خصوصية قابلة للبرمجة، حيث يمكن تنفيذ منطق عقود ذكية تعسفي بشكل خاص وليس فقط تحويلات التوكنات. Aztec Network يبني طبقة ثانية خاصة بالخصوصية على إيثريوم حيث تكون جميع المعاملات خاصة افتراضيًا. Aleo يبني بلوكتشين طبقة أولى بدعم ZK أصلي للعقود الذكية الخاصة. كلاهما يستخدم إثباتات ZK للتحقق من انتقالات الحالة دون الكشف عن الحساب أو البيانات المعنية.

إمكانات الخصوصية تمتد إلى ما هو أبعد من المعاملات الفردية. إثباتات ZK يمكن أن تمكن التصويت الخاص (إثبات أنك صوتت دون الكشف عن اختيارك)، والتحقق الخاص من الهوية (إثبات أنك مواطن في بلد معين دون الكشف عن رقم جواز سفرك)، وDeFi الخاص (توفير السيولة لمجمع دون الكشف عن عنوانك أو حجم مركزك).

الاصطدام التنظيمي

الخصوصية في العملات المشفرة تحتل مساحة قانونية متنازع عليها لا تزال قيد التحديد.

في أغسطس 2022، فرض مكتب مراقبة الأصول الأجنبية التابع للخزانة الأمريكية عقوبات على Tornado Cash، وهو خلاط قائم على إيثريوم يستخدم إثباتات ZK لكسر الرابط بين عناوين الإيداع والسحب. فرض العقوبات على كود عقد ذكي مفتوح المصدر، بدلاً من شخص أو شركة، كان غير مسبوق وأرسل صدمات عبر مجتمع خصوصية العملات المشفرة.

في مايو 2024، أدين Alexey Pertsev، أحد مطوري Tornado Cash، من قبل محكمة هولندية بتهمة تسهيل غسيل الأموال. أنشأت الإدانة سابقة قانونية مفادها أن كتابة كود يحافظ على الخصوصية يمكن أن تحمل مسؤولية جنائية إذا تم استخدام الأداة لأغراض غير مشروعة، بغض النظر عما إذا كان المطور قد سهل النشاط غير القانوني شخصيًا.

شكلت هذه الإجراءات اتجاه تطوير خصوصية ZK. الجيل الحالي من بروتوكولات الخصوصية يبني حول القيود التنظيمية بدلاً من تجاهلها.

الكشف الانتقائي يسمح للمستخدم بإثبات حقائق محددة حول هويته أو سجل معاملاته دون الكشف عن كل شيء. يمكن للمستخدم إثبات أنه اجتاز KYC مع بورصة مرخصة، أو إثبات أنه ليس على قائمة عقوبات OFAC، أو إثبات أن أمواله لم تنشأ من عنوان خاضع للعقوبات، كل ذلك باستخدام إثباتات ZK التي لا تكشف شيئًا سوى الادعاء المحدد الذي يتم التحقق منه.

مجمعات الخصوصية، وهو مفهوم صاغه فيتاليك بوتيرين وآخرون، تسمح للمستخدمين بإثبات أن سحبهم من مجموعة خصوصية ينتمي إلى مجموعة فرعية نظيفة من الإيداعات. بدلاً من خلط جميع الإيداعات بشكل عشوائي، يحتفظ البروتوكول بمجموعات ارتباط تستبعد العناوين غير المشروعة المعروفة. يثبت المستخدمون عضويتهم في المجموعة النظيفة دون الكشف عن الإيداع المحدد الذي يسحبونه.

ما إذا كانت هذه الحلول الوسطية ترضي الجهات التنظيمية يبقى أن نرى. التوتر الأساسي، أن الخصوصية والمراقبة غير متوافقين هندسيًا، لن يحله التكنولوجيا وحدها. إثباتات ZK تعطي صناع السياسات أداة لم يمتلكوها من قبل: القدرة على التحقق من الامتثال دون طلب الكشف. ما إذا كانوا يختارون استخدامها هو سؤال سياسي، وليس سؤالًا تشفيريًا.

لتكلفة الإثبات آثار ملموسة على التطبيقات التي تتبنى تقنية ZK أولاً. المعاملات المالية عالية القيمة، حيث تكون تكلفة توليد الإثبات ضئيلة مقارنة بحجم المعاملة، كانت من أوائل المتبنين. التحويلات المؤسسية عبر السلاسل، ومراكز DeFi الكبيرة، وأنظمة التسوية المؤسسية يمكنها تحمل تكلفة إثبات تبلغ عدة دولارات لكل معاملة دون التأثير على اقتصادياتها. تطبيقات المستهلك، حيث قد تبلغ قيمة المعاملات الفردية بضعة دولارات فقط، تحتاج إلى انخفاض تكاليف الإثبات بمرتبة أخرى من حيث الحجم قبل أن تصبح خصوصية ZK عملية للاستخدام اليومي. جهود تسريع الأجهزة من قبل الشركات التي تبني ASICs مخصصة لـ ZK تستهدف هذا الحاجز التكلفي مباشرة.

تقارب تطبيقات التوسع والخصوصية ربما يكون الجانب الأكثر استخفافًا بتقنية ZK. ZK rollup يعالج المعاملات بشكل خاص سيجمع بين فوائد الإنتاجية للتنفيذ خارج السلسلة مع فوائد السرية لانتقالات الحالة المشفرة. سيحصل المستخدمون على معاملات سريعة ورخيصة وغير مرئية أيضًا لتحليل السلاسل. العديد من المشاريع، بما في ذلك Aztec وPolygon Miden، تبني هذا المزيج بالضبط، على الرغم من أن التعقيد الهندسي لدمج كلتا القدرتين في نظام إنتاج كبير لا يزال كبيرًا.

ماذا لا يغطي هذا المقال

لا يغطي هذا المقال رياضيات التزامات كثيرات الحدود، أو ثنائيات المنحنيات الإهليلجية، أو تحويلات Fiat-Shamir التي تقوم عليها أنظمة إثبات ZK. فهم هذه يتطلب جبرًا تجريديًا على مستوى الدراسات العليا وليس ضروريًا لتقييم البروتوكولات القائمة على ZK كمستخدم أو مستثمر.

لا يغطي هذا المقال تعلم الآلة ZK (zkML)، وهو مجال ناشئ يستخدم إثباتات ZK للتحقق من أن نموذج تعلم الآلة أنتج مخرجًا محددًا دون الكشف عن أوزان النموذج أو بيانات التدريب. هذا التطبيق تجريبي وآثاره العملية لا تزال قيد الدراسة.

لا يتناول هذا المقال سباق تسريع الأجهزة لتوليد إثباتات ZK. شركات مثل Cysic وIngonyama وFabric Cryptography تبني ASICs وFPGAs مخصصة لإثبات ZK، مما قد يقلل تكاليف الإثبات بمراتب من حيث الحجم. مشهد الأجهزة يتحرك بسرعة كبيرة بحيث لا يسمح بتحليل ثابت.

فحوصات عملية قبل استخدام بروتوكول قائم على ZK

  • تحقق من حالة تدقيق نظام الإثبات: أنظمة إثبات ZK معقدة رياضيًا وأخطاء التنفيذ يمكن أن تكون كارثية. خطأ في الدائرة (التمثيل الرياضي للحساب الذي يتم إثباته) يمكن أن يسمح للمهاجم بتزوير الإثباتات وسك التوكنات أو سرقة الأموال. تحقق مما إذا كان نظام الإثبات ودوائره قد تم تدقيقها من قبل شركات متخصصة في تشفير ZK، وليس فقط مدققي العقود الذكية العامين.
  • افهم ما هو خاص فعليًا: ليست كل البروتوكولات القائمة على ZK توفر نفس المستوى من الخصوصية. بعضها يخفي مبالغ المعاملات لكنه يكشف العناوين. بعضها يخفي العناوين لكنه يكشف المبالغ. بعضها يخفي كل شيء. اقرأ وثائق البروتوكول لفهم المعلومات التي يتم إخفاؤها بدقة وما يبقى مرئيًا. البيانات الوصفية مثل توقيت المعاملات وأنماط الغاز وتكرار التفاعل يمكن أن تكشف هوية المستخدمين حتى عندما تكون بيانات المعاملة الأساسية مخفية.
  • تحقق من حالة الإعداد الموثوق: إذا كان البروتوكول يستخدم zk-SNARKs، فحدد ما إذا كان يتطلب إعدادًا موثوقًا وكيف تم إجراء هذا الإعداد. مراسم الحوسبة متعددة الأطراف بمئات المشاركين أكثر جدارة بالثقة من المراسم الصغيرة التي تضم حفنة من الكيانات المعروفة. البروتوكولات التي تستخدم STARKs أو PLONK مع إعداد عالمي أو Halo 2 لا تتطلب إعدادات موثوقة على الإطلاق.
  • قيّم المخاطر التنظيمية: تعمل بروتوكولات الخصوصية في بيئة قانونية غير مؤكدة. فكر فيما إذا كان البروتوكول لديه آلية امتثال (كشف انتقائي، مجمعات خصوصية، إثباتات امتثال اختيارية) وما إذا كانت تلك الآلية قد اختبرت ضد التدقيق التنظيمي الفعلي. استخدام بروتوكول خصوصية يتم فرض عقوبات عليه لاحقًا يمكن أن يعقد قدرتك على نقل الأصول أو بيعها.
  • اختبر وقت الإثبات: توليد إثبات ZK مكثف حسابيًا. على جهاز محمول، قد يستغرق إثبات معاملة بسيطة من 30 ثانية إلى دقيقتين. على سطح المكتب، قد يستغرق بضع ثوانٍ. إذا كان وقت الإثبات طويلاً جدًا لحالة الاستخدام الخاصة بك، فقد لا يكون البروتوكول عمليًا للمعاملات المتكررة. بعض البروتوكولات تنقل الإثبات إلى خوادم مخصصة، وهو أسرع ولكنه يقدم افتراض ثقة أن الخادم لا يتعلم بياناتك الخاصة.

الأسئلة الشائعة

ما هو إثبات المعرفة الصفرية بكلمات بسيطة؟

إثبات المعرفة الصفرية هو طريقة لإثبات أن شيئًا ما صحيح دون الكشف عن سبب صحته. في البلوكتشين، هذا يعني أنه يمكنك إثبات أن معاملة صحيحة، أو أنك تمتلك أموالًا كافية، أو أن عملية حسابية تمت بشكل صحيح، كل ذلك دون الكشف عن تفاصيل المعاملة الفعلية أو رصيدك أو البيانات المستخدمة في الحساب. يصبح المدقق مقتنعًا بأن العبارة صحيحة لكنه لا يتعلم أي شيء آخر.

ما الفرق بين zk-SNARKs وzk-STARKs؟

zk-SNARKs تنتج إثباتات صغيرة جدًا (مئات البايتات) رخيصة التحقق ولكنها تاريخيًا تطلبت مراسم إعداد موثوقة لتوليد معلمات النظام الأولية. zk-STARKs تنتج إثباتات أكبر (عشرات إلى مئات الكيلوبايتات) ولكنها لا تتطلب إعدادًا موثوقًا ومقاومة نظريًا لهجمات الحوسبة الكمومية. عمليًا، تتقارب أنظمة الإثبات الحديثة وتصبح المقايضات بين الحجم والسرعة وافتراضات الثقة أقل حدة.

كيف تساعد إثباتات ZK في توسيع نطاق البلوكتشين؟

ZK rollups تنفذ آلاف المعاملات خارج السلسلة وتولد إثباتًا واحدًا بأن جميع المعاملات نُفذت بشكل صحيح. يتم التحقق من هذا الإثبات على إيثريوم في عملية واحدة تكلف مبلغًا ثابتًا من الغاز بغض النظر عن عدد المعاملات في الدفعة. عدم التماثل بين تكلفة توليد الإثبات (عالية لكن يتحملها مشغل الـ rollup) والتحقق منه (منخفضة ويُدفع مرة واحدة للدفعة بأكملها) هو ما يخلق تأثير التوسع.

موجه السوق

خبير استراتيجي في تحليل الأسواق المالية، يقدم نصائح مستنيرة واستراتيجيات فعالة لتعزيز النجاح المالي.
زر الذهاب إلى الأعلى