براهين المعرفة الصفرية أو الإثبات بلا كشف أو بروتوكول Zero-Knowledge، والذي يتم اختصاره ببروتوكول ZK، هو بروتوكول تشفير، يمكّن شخصاً واحداً (المُثبِت)، من إقناع شخص أخر (المدقق)، بأن ادعاءً معيناً صحيحاً دون الكشف عن أي تفاصيل حول المطالبة نفسها.
براهين المعرفة الصفرية ZK وأنواعها
قدم الباحثون شافي جولدفاسر، وسيلفيو ميكالي، وتشارلز راكوف، الفكرة لأول مرة في أوائل الثمانينيات. الهدف الرئيسي من إثبات ZK هو إقناع المدقق بأن المطالبة صحيحة دون الكشف عن أي معلومات بخلاف صحة الادعاء.
يجب أن تفي براهين المعرفة الصفرية الجيد بالمعايير الثلاثة التالية:
- الاكتمال: سيقبل المدقق الإثبات باحتمالية عالية إذا كان الاقتراح صحيحاً، ويلتزم كل من المُثبِت والمدقق بالبروتوكول.
- السلامة: إذا كان الادعاء غير صحيح، فلا يجب أن يتمكن أي مُثبِت من إقناع المحقق بالعكس، إلا في ظل ظروف غير محتملة للغاية.
- المعرفة الصفرية: حتى بعد التعامل مع المُثبِّت، لا يفهم المدقق سوى حقيقة البيان ولا شيء أخر عن السر.
هناك أنواع مختلفة من براهين ZK:
البراهين ZK التفاعلية
تتطلب براهين المعرفة الصفرية التفاعلية، اتصالاً ذهاباً وإياباً بين المُثبِّت والمحقق.
البراهين ZK غير التفاعلية
توفر براهين المعرفة الصفرية غير التفاعلية، دليلاً مضغوطاً يمكن التحقق منه في خطوة واحدة.
البراهين الإحصائية ZK
توفر البراهين الإحصائية ZK، سلامة حسابية مع احتمال ضئيل للخطأ.
إثبات المعرفة (PoK)
PoK هي فئة فرعية من إثباتات ZK، التي تُظهر أن المُثبِت يمتلك معرفة محددة تتعلق بالبيان.
البراهين على المراوغة والمدى
تُستخدم إثباتات ZK هذه في التصويت الإلكتروني ومعاملات الحفاظ على الخصوصية.
بروتوكولات سيجما Sigma
بروتوكولات سيجما هي فئة من بروتوكولات ZK التي تتضمن ثلاث خطوات: الالتزام والتحدي والاستجابة.
بروتوكول Bulletproofs
تم تصميم بروتوكول Bulletproofs لتوفير أدلة نطاق فعالة لمجموعات كبيرة من القيم.
كيف يعمل بروتوكول ZK؟
تسمح أدلة ZK للمثقف بإقناع المدقق بصحة البيان دون الكشف عن أي معلومات حول التأكيد نفسه. يتفاعل المُثبِّت والمحقق في جولات متعددة من البروتوكول، وفي الختام، يطور المدقق الثقة في صحة الادعاء دون معرفة أي معلومات إضافية حول السر.
دعنا نستخدم “مشكلة الألوان الثلاثة”، والمعروفة أيضاً باسم “مشكلة تلوين الرسم البياني”، كتوضيح لكيفية عمل تجارب ZK.
المشكلة
تخيل أن لديك خريطة بمناطق متعددة (رؤوس) متصلة بخطوط (حواف)، وهذه هي المشكلة. الهدف هو استخدام أحد الألوان الثلاثة لتلوين كل منطقة بحيث لا يكون هناك جزئين متجاورين لهما نفس اللون. هل يمكنك إقناع شخص ما بأنك على دراية بالتلوين الصحيح دون تعريض الأشكال الفعلية المعطاة لكل منطقة؟
الحل باستخدام بروتوكول ZK– الإثبات
التثبيت
يتفق كل من المُثبِت والمدقق على مناطق وروابط الرسم البياني (الخريطة).
الإفادة
يؤكد المثل أن لديه ثلاثة ألوان موثوقة للرسم البياني المقدم.
الجولة الأولى: الالتزام
يختار المُثبِّت الألوان عشوائياً لكل موقع في الخفاء دون الكشف عنها. بدلاً من ذلك، يوفر المُثبِت للمدقق وعداً مشفراً واحداً لكل منطقة. لا يستطيع المدقق رؤية الألوان الموجودة داخل الالتزامات لأنها مقفلة مثل الصناديق.
الجولة الثانية: التحدي
يختار المدقق منطقة عشوائية ويطلب أن يفتح المدقق الالتزام لتلك المنطقة المعينة. يجب أن يكشف المُثبِت عن درجة التزام تلك المنطقة.
الجولة الثالثة: الاستجابة
بعد الالتزام بالألوان، يجب على المُثبِّت الآن أن يثبت أن التلوين المكشوف دقيق. هذا يستلزم عرض اختلافات اللون بين الأقسام المجاورة. يقوم المدقق بفحص الاستجابة للتأكد من أن المُثبِت اتبع القواعد بشكل صحيح.
التكرار
يتم تكرار الجولتين 2 و3 عدة مرات باستخدام مناطق مختلفة يتم اختيارها عشوائياً. يتم تكرار هذا الإجراء عدة مرات حسب الضرورة لإثبات درجة عالية من الثقة في صحة تأكيد المُثبِت.
الخاتمة
يصبح المدقق واثقاً من أن المُثبَّت لديه بالفعل ثلاثة ألوان صالحة دون معرفة الألوان الفعلية المستخدمة إذا كان المُثبِت ينتج بانتظام ردوداً صالحة لكل جولة.
يعمل المدقق تدريجياً على زيادة قدرة المُثبِّت على التعرف على ثلاثة ألوان صالحة للرسم البياني عن طريق تكرار الإجراء لمناطق مختلفة. ومع ذلك، يتم الاحتفاظ بخاصية المعرفة الصفرية نظراً لأن المدقق لا يكتشف أبداً الألوان الحقيقية المخصصة لكل منطقة أثناء الإجراء.
يوضح المثال التوضيحي أعلاه كيف يمكن استخدام براهين المعرفة الصفرية ZK لإقناع شخص ما بوجود حل مع الحفاظ على سرية هوية الحل، مما يوفر أداة فعالة لتعزيز الخصوصية والأمان في مجموعة متنوعة من التطبيقات.
ما هي تطبيقات براهين المعرفة الصفرية؟
تعد إثباتات ZK أدوات مفيدة لها العديد من الاستخدامات في مجموعة متنوعة من المجالات وتعالج مشكلات الخصوصية والأمان المهمة.
تعد إثباتات ZK ضرورية في عالم العملات المشفرة لتحسين خصوصية المعاملات وقابلية التوسع. إنها تسمح بالمعاملات مجهولة المصدر دون الكشف عن تفاصيل المعاملة أو هوية المستخدمين، كما هو الحال مع العملات المشفرة التي تركز على الخصوصية، مثل زدكاش ZEC.
يمكن استخدام إثباتات ZK في مجالات المصادقة والتحكم في الوصول لإثبات فهم كلمة المرور أو مفتاح التشفير دون الكشف عن كلمة المرور أو المفتاح نفسه. ينتج عن هذا تقنيات مصادقة أمنة وسهلة الاستخدام.
تُستخدم أدلة ZK أيضاً في أنظمة التصويت الإلكتروني، حيث تسمح للناخبين بإثبات شرعية تصويتهم دون الكشف عن التصويت الفعلي، مما يحمي خصوصية الناخبين ونزاهة العملية الانتخابية.
ولإثباتات ZK أيضاً أثار على النقل الأمن للبيانات والتحقق منها، مما يمنح أحد الجانبين القدرة على إثبات دقة الحسابات على البيانات الخاصة دون الكشف عن البيانات نفسها.
يمكن لبراهين المعرفة الصفرية تحسين خصوصية المعاملات في العملات الرقمية للبنك المركزي (CBDC) من خلال تسهيل المعاملات الخاصة ودعم إخفاء هوية المستخدم. من خلال موازنة الخصوصية والشفافية في معاملات CBDC، تتيح براهين المعرفة الصفرية إمكانية التدقيق دون الكشف عن تفاصيل المعاملات.
هل يمكن دمج براهين ZK في منصات البلوكتشين؟
نعم، يمكن دمج براهين ZK في منصات البلوكتشين، وفي الواقع، تم تنفيذها بنجاح في العديد من شبكات البلوكتشين. توفر براهين ZK تقنية فعالة لتعزيز الكفاءة والأمان والخصوصية في أنظمة البلوكتشين.
عند دمجها في منصات البلوكتشين، يمكن أن تخدم براهين المعرفة الصفرية أغراضاً متعددة:
الخصوصية والسرية
تسمح إثباتات ZK بالمعاملات الخاصة، مما يسمح للمستخدمين بإجراء المعاملات دون الكشف عن المعلومات الأساسية، مثل مبلغ المعاملة وعناوين المرسل والمستقبل. يعتمد تحسين خصوصية المستخدم على سلاسل الكتل المفتوحة على هذا.
التدقيق والمراجعة
دون الكشف عن البيانات أو المعلومات الحقيقية، يمكن استخدام إثباتات ZK للتحقق من دقة حسابات أو بيانات محددة. هذا يضمن سلامة البيانات ويجعل إجراءات التدقيق الفعالة ممكنة.
قابلية التوسع
يمكن لبراهين ZK زيادة قابلية توسيع النظام الأساسي من خلال تقديم أدلة موجزة للحسابات المعقدة، والتي يمكن أن تساعد في تقليل النفقات الحسابية والتخزينية على البلوكتشين.
الهوية والمصادقة
باستخدام براهين ZK للتحقق الآمن من الهوية والمصادقة مع حماية خصوصية المستخدم، ستكون التطبيقات المستندة إلى البلوكتشين أمنة.
قابلية التشغيل البيني عبر سلسلة
يمكن أن تساعد ZK-proofs في الاتصالات عبر السلاسل وعمليات نقل الأصول مع حماية الخصوصية من خلال تسهيل التشغيل البيني بين مختلف شبكات الشبكات.
ما هي عيوب براهين المعرفة الصفرية؟
توفر براهين المعرفة الصفرية ZK، مزايا الخصوصية والأمان، ولكن يمكن أن تكون معقدة من الناحية الحسابية ومعقدة في التنفيذ.
يمكن أن يكون تطوير إثباتات ZK والتحقق منها مكثفاً من حيث الموارد والحساب، خاصةً بالنسبة إلى البراهين الأكثر تعقيداً. يمكن أن يؤدي هذا إلى أوقات معالجة أطول للمعاملات والمزيد من العمل الحسابي، مما قد يجعل أنظمة البلوكتشين أكثر صعوبة في القياس.
علاوة على ذلك، قد تضيف أدلة ZK طبقة من التعقيد قد تجعل البروتوكول أكثر صعوبة للتدقيق والتحقق، مما يثير مخاوف بشأن عيوب أو أخطاء أمنية محتملة. علاوة على ذلك، بينما تعمل براهين المعرفة الصفرية على تحسين الخصوصية عن طريق إخفاء المعلومات، فإنها قد تسهل أيضًا النشاط غير القانوني في بعض المواقف، مما يخلق صعوبات للامتثال التنظيمي.
قد لا تكون أدلة ZK مناسبة أيضاً لجميع حالات أو قطاعات الاستخدام لأنها تتطلب تدريباً خاصاً وخبرة للتنفيذ بشكل صحيح. قد يمنع هذا من استخدامها على نطاق واسع وتبنيها في العديد من المجالات.
على الرغم من أن براهين المعرفة الصفرية ZK، توفر ميزات مفيدة للخصوصية والأمان، إلا أن عيوبها تتطلب دراسة وتقييم المفاضلات المرتبطة بها قبل اعتمادها في أنظمة أو تطبيقات معينة.
إخلاء المسؤولية: الآراء والتحليلات والأخبار الواردة لا تعكس رأي بت شين. لا ينبغي اعتبار أي من المعلومات التي تقرأها على موقع بت شين بمثابة نصيحة استثمارية، ولا تصادق بت شين على أي مشروع قد يتم ذكره أو ربطه في هذه المقالة. يجب اعتبار شراء وتداول العملات المشفرة نشاطًا عالي المخاطر. ويرجى بذل المجهود الواجب قبل اتخاذ أي إجراء يتعلق بالمحتوى المذكور ضمن هذا التقرير. لا تتحمل بت شين أي مسؤولية في حالة خسارة الأموال في تداول العملات المشفرة.