تُعد تقنية Zero-Knowledge Proof (ZKP) تقنية تشفير تم تقديمها لأول مرة في ورقة بحثية بعنوان «التعقيد المعرفي لأنظمة الإثبات التفاعلية» في أوائل الثمانينيات من قبل S.Goldwasser وS.Micali وC.Rackoff. تم تصميمه في الأصل كنموذج نظري، وكان يهدف إلى مواجهة التحدي المتمثل في التحقق من البيانات الرياضية دون الكشف عن أي دليل. حظي هذا المفهوم باهتمام واسع في العالم الأكاديمي لتحدي حدود تقنيات التشفير التقليدية وتقديم نهج جديد للتعامل مع المعلومات الحساسة.
مع مرور الوقت، تطورت ZKP من مفهوم نظري مجرد إلى بروتوكولات ملموسة يمكن دمجها في تطبيقات مختلفة. في أوائل القرن الحادي والعشرين، مع النمو الهائل للإنترنت والاتصالات الرقمية، بدأ استكشاف إمكانات ZKP في العالم الحقيقي. خاصة مع ظهور بلوكتشين والعملات المشفرة، أثبتت ZKP قدرتها على تعزيز الخصوصية والأمان مع الحفاظ على كفاءة المعاملات ومعالجة البيانات.
اليوم، لا يعد ZKP موضوعًا ساخنًا في أبحاث التشفير فحسب، بل تم دمجه أيضًا في العديد من منصات وتطبيقات blockchain. على سبيل المثال، يقدم تطبيق ZK-SNARKS على Ethereum Layer2 معاملات مجهولة دون الكشف عن تفاصيل المعاملة. هذا الانتقال من النظرية إلى التطبيق العملي لا يثبت القيمة العملية لـ ZKP فحسب، بل يدفع أيضًا إلى استكشاف تفاعلات رقمية أكثر كفاءة وأمانًا. مع التقدم التكنولوجي المستمر، تلعب ZKP دورًا مهمًا بشكل متزايد في حماية الخصوصية الشخصية، وضمان أمن البيانات، وإنشاء أنظمة رقمية جديرة بالثقة.
Zero-Knowledge Proof (ZKP) هي طريقة تشفير تسمح لأحد الأطراف (المُثبت) بإثبات صحة البيان لطرف آخر (المدقق) دون الكشف عن أي معلومات إضافية، أي دون الكشف عن أي معرفة تعتمد عليها صحة البيان. لا تحمي هذه العملية خصوصية المُثبت فحسب، بل تضمن أيضًا أن المدقق لا يمكنه تكرار عملية الإثبات أو استخدامها للحصول على أي معلومات إضافية.
الرسم التخطيطي المفاهيمي لبراهين المعرفة الصفرية (المصدر: ChainLink)
يمكن تعريف المبادئ الأساسية لبراهين المعرفة الصفرية (ZKP) من خلال السمات الثلاث التالية:
غالبًا ما يُفهم مبدأ ZKP من خلال أمثلة بسيطة: إذا كنت بحاجة إلى إثبات للشخص A أن لدي رقم هاتف الشخص B، فلست بحاجة إلى الكشف مباشرة عن رقم B إلى A. بدلاً من ذلك، يمكنني إثبات ذلك عن طريق الاتصال برقم B. بمجرد اتصال المكالمة، فإنها توضح أنني أمتلك بالفعل رقم B، دون الكشف عن أي معلومات حول الرقم نفسه.
في التطبيقات العملية، تتطلب ZKP عادةً إنشاءات رياضية معقدة مثل المعادلات متعددة الحدود أو المنحنيات البيضاوية أو التحديات الرياضية الأخرى. يعتمد أمان هذه الإنشاءات على الصعوبة الحسابية لمشاكل مثل التحليل أو اللوغاريتمات المنفصلة. مع تقدم التشفير، ظهرت العديد من تطبيقات ZKP، مثل ZK-SNARKS و ZK-Starks، مما يوفر حماية فعالة للخصوصية في سياقات مختلفة، خاصة في مجالات blockchain والعملات المشفرة.
يتكون الشكل الأساسي لإثبات عدم المعرفة من ثلاثة عناصر: الشاهد والتحدي والاستجابة.
شاهد: في إثبات عدم المعرفة، يريد المُثبت إثبات معرفته ببعض المعلومات المخفية. تعمل هذه المعلومات السرية بمثابة «شاهد» على الإثبات. يقوم المُثبت، بناءً على معرفته بالشاهد، بإعداد مجموعة من الأسئلة التي لا يمكن الإجابة عليها إلا لشخص لديه معرفة بالمعلومات. وبالتالي، يختار المُثبت سؤالًا عشوائيًا لبدء الإثبات، ويحسب الإجابة، ثم يرسلها إلى المدقق.
التحدي: يختار المدقق عشوائيًا سؤالًا آخر من المجموعة ويطلب من المُثبت الإجابة عليه.
الرد: يتلقى المُثبت السؤال ويحسب الإجابة ويرسلها مرة أخرى إلى المدقق. تسمح استجابة المُثبت للمدقق بالتحقق مما إذا كان المُثبت لديه بالفعل حق الوصول إلى الشاهد. للتأكد من أن المُثبت لا يقوم فقط بالتخمين الأعمى بشكل صحيح عن طريق الصدفة، يختار المدقق سؤالًا آخر للاستفسار. من خلال تكرار هذه العملية عدة مرات، تقل احتمالية قيام المُثبت بتلفيق الحقيقة بشكل كبير حتى يتم إرضاء المدقق.
في مثال المكالمة الهاتفية المذكور أعلاه، «أنا» الشاهد غير الراغب في الكشف عن المعلومات، بينما A هو المدقق، والتحدي المطروح هو «إثبات أنني أمتلك رقم B». تتضمن عملية الاستجابة «أنا» توصيل مكالمة برقم B لإثبات أنني أملكها حقًا.
كما تمت مناقشته سابقًا، تقدم أدلة المعرفة الصفرية (ZKP) بطبيعتها مزايا كبيرة في مجال حماية الخصوصية. في عصر اليوم الذي يتسم بالحمل الزائد للمعلومات، غالبًا ما يتم تخزين البيانات الشخصية على منصات خارجية، مما يزيد من مخاطر انتهاكات البيانات. علاوة على ذلك، نظرًا للحواجز التقنية والتأخر في العقوبات القانونية، يعتمد أمن المعلومات إلى حد كبير على القيود الأخلاقية، مما يجعل من الصعب على المستخدمين التحكم حقًا في معلوماتهم الخاصة. يوفر ظهور تقنية ZKP حلاً يحمي الخصوصية ويعزز كفاءة التحقق والأمان.
بالمقارنة مع تقنيات التشفير الأخرى، تتمتع ZKP بمزايا متعددة:
سواء في Web 2.0 التقليدي أو مجال Web 3.0 الناشئ، فإن آفاق تطبيق ZKP واسعة النطاق.
هناك تطبيقات متعددة لبراهين المعرفة الصفرية، مثل zk-SNARks و ZK-Starks و PLONK و Bulletproofs. كل نوع له مزاياه وعيوبه من حيث حجم الإثبات ووقت الاختبار ووقت التحقق. تركز هذه المقالة على تقديم الأنواع الأربعة الأكثر استخدامًا في سيناريوهات التطبيق.
تُعد zk-SNARKs، التي تعني «حجة المعرفة غير التفاعلية الموجزة الخالية من المعرفة»، أدوات تشفير تُستخدم لإثبات أن شخصًا ما يعرف جزءًا من المعلومات دون الكشف عن أي من المعلومات نفسها. في zk-SNARks، تعني «المعرفة الصفرية» أن المُثبت يمكنه إثبات صحة العبارة دون تقديم أي معلومات بخلاف صحتها. يشير مصطلح «الإيجاز» إلى الحجم الصغير للإثبات وسرعة عملية التحقق. تعني كلمة «غير تفاعلي» بمجرد إنشاء الدليل، يمكن التحقق منه من قبل أي شخص دون مزيد من التفاعل بين المُثبت والمدقق. تشمل المكونات الأساسية لـ zk-SNARks ما يلي:
تُستخدم zk-SNARKs في العديد من سيناريوهات الحفاظ على الخصوصية، مثل العملات المشفرة ذات المعاملات المجهولة، وأنظمة التصويت الآمنة، والمصادقة التي تحافظ على الخصوصية ومشاركة البيانات، وتقنيات قابلية التوسع في blockchain.
تسمح ZK-Starks، أو «حجج المعرفة الشفافة القابلة للتطوير بدون معرفة»، لطرف واحد (المُثبت) بأن يثبت لطرف آخر (المدقق) أنه يعرف معلومات معينة دون الكشف عن المعلومات نفسها. على عكس zk-SNARks، لا تتطلب ZK-starks عملية إعداد موثوقة. وهذا يعني أنها لا تعتمد على سرية بعض المعلومات الخاصة، وهي ميزة غالبًا ما تعتبر ضرورية للأمان، حيث يمكن أن يكون الإعداد الموثوق به ثغرة أمنية نظامية.
يعتمد عمل ZK-starks على مفاهيم من العديد من المجالات الرياضية، بما في ذلك وظائف التجزئة والحسابات متعددة الحدود ونظرية تصحيح الأخطاء. إنهم يستخدمون بنية تُعرف باسم «الحجة الشفافة القابلة للتطوير بدون معرفة»، مما يسمح بتوليد الأدلة دون إعداد موثوق به. تتشابه التطبيقات المحتملة لـ ZK-Starks مع تلك الخاصة بـ ZK-SNARks، ولكن نظرًا لقابليتها للتطوير والشفافية، فهي مناسبة بشكل خاص للتطبيقات واسعة النطاق، بما في ذلك العملات المشفرة التي تحافظ على الخصوصية وتقنيات قابلية تطوير blockchain والتحقق الآمن في الحوسبة السحابية.
يشير PLONK، وليس اختصارًا، إلى ألقاب منشئيه. إنه مصمم لتوفير حل ZKP عالمي وفعال، خاصة في تطبيقات blockchain مثل العقود الذكية والمعاملات المحمية بالخصوصية. يتمثل جوهر PLONK في استخدام تقنية «الإخفاء المتماثل»، مما يسمح بالعمليات الحسابية على البيانات دون الكشف عن البيانات الأصلية. وهي تستخدم خوارزمية خاصة - مخطط التزام متعدد الحدود - لإنشاء البراهين وتمكين المثبتين من إثبات أن لديهم نتائج الحساب الصحيحة لمجموعة من البيانات بكفاءة.
إحدى السمات الرئيسية لـ PLONK هي عالميتها. بمجرد تعيين المعلمات لمهمة حسابية محددة (من خلال إعداد موثوق به لمرة واحدة)، يمكن إعادة استخدامها عدة مرات لإنشاء براهين جديدة، دون الحاجة إلى إعدادات جديدة في كل مرة. هذا يجعل PLONK عالي الكفاءة في إنشاء البراهين والتحقق منها وغالبًا ما يتم تصميمه لدعم المهام الحسابية المختلفة في blockchain والأنظمة الموزعة الأخرى.
لا يتطلب Bulletproofs، وهو حل ZKP تم تقديمه حديثًا، إعدادًا موثوقًا به وهو مصمم خصيصًا لإنشاء براهين النطاق وأنواع معينة من البراهين الحسابية. تم اقتراح Bulletproofs من قبل بينيديكت بونز وجوناثان بوتل ودان بونيه وآخرين في عام 2017، وتعمل على تركيبات رياضية معقدة مثل التشفير المتماثل وتشفير المنحنى الإهليلجي. إنهم يستفيدون من سلسلة من التقنيات الرياضية للسماح للمُثقبين بإنشاء إثبات نطاق فعال لرقم دون الكشف عن قيمته الدقيقة. خاصة في مجال العملات المشفرة، يمكن استخدام هذا لإثبات أن قيم المعاملات تقع ضمن النطاق القانوني دون الكشف عن مبالغ المعاملات الفعلية.
نظرًا لميزاتها المقاومة للنطاق، تُستخدم Bulletproofs على نطاق واسع في مجالات العملات المشفرة والبلوك تشين، لا سيما في عملات الخصوصية مثل Monero، لإخفاء مبالغ المعاملات مع التحقق من شرعية المعاملات. بالإضافة إلى ذلك، يمكن استخدامها في تطبيقات أخرى تتطلب الخصوصية الرقمية.
دعونا نفهم بشكل أفضل هذه التقنيات الأربعة المختلفة لإثبات المعرفة الصفرية (ZKP) - ZK-SNARKS و ZK-Starks و PLONK والرصاص - من خلال تشبيه خريطة الكنز.
تخيل أن لديك خريطة كنز تؤدي إلى الموقع الدقيق للكنز المدفون. تريد أن تثبت لشخص ما أنك تعرف مكان الكنز دون الكشف عن محتويات الخريطة أو الموقع الفعلي للكنز.
zk-SNARKS: يمكنك إنشاء أحجية معقدة لخريطة الكنز. يمكنك اختيار قطعة أساسية صغيرة من هذا اللغز (دليل) وإظهارها للطرف الآخر، بما يكفي لإقناعهم بأنك تعرف كيفية تجميع اللغز الكامل، أي موقع الكنز، دون الكشف عن اللغز بأكمله. ومع ذلك، للقيام بذلك، تحتاج إلى علامات خاصة من طابعة موثوقة لإثبات أن قطعة اللغز الخاصة بك أصلية.
ZK-starks: تعرض جزءًا من خريطة الكنز للطرف الآخر، وتخبره أنه يمكنه استخدام عدسة مكبرة خاصة (خوارزمية تحقق) للتحقق عشوائيًا من تفاصيل الخريطة للتحقق من أنها تشير بالفعل إلى الكنز، دون الحاجة إلى معرفة الموقع الدقيق للكنز. هذه العدسة المكبرة قوية جدًا لدرجة أنه حتى التقنيات المستقبلية (أجهزة الكمبيوتر الكمومية) لا يمكنها كسر سر خريطة الكنز الخاصة بك.
بلونك: هذه المرة، تقوم بإنشاء مجموعة من الألغاز، كل منها يشير إلى موقع الكنز. أنت تقدم طريقة عالمية للتحقق من حلول هذه الألغاز (إعداد عالمي) للطرف الآخر، بما يكفي ليعتقدوا أنك تعرف جميع الإجابات دون الحاجة إلى حل كل لغز على حدة.
مضاد للرصاص: تقرر إثبات أنك تعرف النطاق التقريبي لموقع الكنز دون الكشف عن موقعه الدقيق. يمكنك تقديم سلسلة من حلول المشكلات الرياضية التي توضح نطاق موقع الكنز. لا تتطلب طريقتك أي علامات خاصة أو تقنيات طباعة، مما يعني عدم وجود متطلبات ثقة أولية.
في هذا القياس:
كل طريقة لها مقايزاتها في التطبيقات العملية، ويعتمد الاختيار على سيناريو التطبيق المحدد واحتياجات الأمان.
قبل المقارنة، نحتاج إلى فهم معايير تقييم ZKPs:
الآن، دعونا نقارن ZK-SNARKS و ZK-Starks و PLONK و Bulletproofs بناءً على هذه المؤشرات ونناقش مزاياها وعيوبها.
الإيجابيات
السلبيات
الإيجابيات
السلبيات
الإيجابيات
السلبيات
الإيجابيات
السلبيات
في Web3، هناك العديد من حالات تطبيق ZKP، وقد اخترنا حالتين نموذجيتين للدراسة.
ZK-rollups عبارة عن حل من الطبقة الثانية يجمع مئات أو آلاف المعاملات خارج السلسلة ويولد إثبات ZK-SNARK. يتم تقديم هذا الدليل، جنبًا إلى جنب مع بيانات المعاملات، إلى سلسلة Ethereum الرئيسية. وهو يسمح بالتحقق من المعاملات دون معالجة السلسلة الرئيسية لكل معاملة، وبالتالي تقليل الرسوم وزيادة الإنتاجية. اعتمدت ZK-Sync Era و Starknet تقنية zk-rollup، وقدمت بوليجون مؤخرًا بوليغون ZK-EVM باستخدام مجموعات zk.
عرض توضيحي لتطبيق zk-SNARks في الطبقة الثانية (المصدر: سيمون براون)
يشير إثبات احتياطي الصرف إلى التحقق من الأرصدة التي تحتفظ بها بورصات العملات المشفرة أو المؤسسات المالية الأخرى، مما يضمن تطابق الأصول المسجلة مع الأصول الفعلية المحتفظ بها. في البداية، استخدمت البورصات أشجار Merkle وشركات التدقيق التابعة لجهات خارجية لإجراء هذا التحقق، ولكن هذه العملية اعتمدت على أطراف ثالثة ويمكن أن تتسرب بيانات المستخدم الخاصة مثل أرصدة الحسابات. تستخدم البورصات مثل Gate.io الآن تقنية ZK-SNARks للبراهين الاحتياطية، وتشفير بيانات المستخدم، والحصول على أرقام أصول المستخدم من خلال دوائر ZK-SNARK، وبالتالي إصدار تقارير إثبات احتياطي كاملة.
تسلط الحلول المتنوعة لتقنية مقاومة المعرفة الصفرية الضوء على إمكاناتها القوية في Web3. من حماية خصوصية البيانات إلى توسيع نطاق بلوكتشين، يعد ZKP مهمًا لبناء بنية تحتية آمنة وفعالة لـ Web3. في حين أن الأساليب المختلفة لها مزاياها وقيودها، إلا أنها تشير بشكل جماعي إلى مستقبل رقمي أكثر موثوقية ومحميًا للخصوصية. مع تقدم التكنولوجيا، سيتم التغلب على تحديات تحسين الأداء والأمان باستخدام ZKP تدريجيًا، مما يشير إلى دورها المتزايد الأهمية في العالم الرقمي.
تُعد تقنية Zero-Knowledge Proof (ZKP) تقنية تشفير تم تقديمها لأول مرة في ورقة بحثية بعنوان «التعقيد المعرفي لأنظمة الإثبات التفاعلية» في أوائل الثمانينيات من قبل S.Goldwasser وS.Micali وC.Rackoff. تم تصميمه في الأصل كنموذج نظري، وكان يهدف إلى مواجهة التحدي المتمثل في التحقق من البيانات الرياضية دون الكشف عن أي دليل. حظي هذا المفهوم باهتمام واسع في العالم الأكاديمي لتحدي حدود تقنيات التشفير التقليدية وتقديم نهج جديد للتعامل مع المعلومات الحساسة.
مع مرور الوقت، تطورت ZKP من مفهوم نظري مجرد إلى بروتوكولات ملموسة يمكن دمجها في تطبيقات مختلفة. في أوائل القرن الحادي والعشرين، مع النمو الهائل للإنترنت والاتصالات الرقمية، بدأ استكشاف إمكانات ZKP في العالم الحقيقي. خاصة مع ظهور بلوكتشين والعملات المشفرة، أثبتت ZKP قدرتها على تعزيز الخصوصية والأمان مع الحفاظ على كفاءة المعاملات ومعالجة البيانات.
اليوم، لا يعد ZKP موضوعًا ساخنًا في أبحاث التشفير فحسب، بل تم دمجه أيضًا في العديد من منصات وتطبيقات blockchain. على سبيل المثال، يقدم تطبيق ZK-SNARKS على Ethereum Layer2 معاملات مجهولة دون الكشف عن تفاصيل المعاملة. هذا الانتقال من النظرية إلى التطبيق العملي لا يثبت القيمة العملية لـ ZKP فحسب، بل يدفع أيضًا إلى استكشاف تفاعلات رقمية أكثر كفاءة وأمانًا. مع التقدم التكنولوجي المستمر، تلعب ZKP دورًا مهمًا بشكل متزايد في حماية الخصوصية الشخصية، وضمان أمن البيانات، وإنشاء أنظمة رقمية جديرة بالثقة.
Zero-Knowledge Proof (ZKP) هي طريقة تشفير تسمح لأحد الأطراف (المُثبت) بإثبات صحة البيان لطرف آخر (المدقق) دون الكشف عن أي معلومات إضافية، أي دون الكشف عن أي معرفة تعتمد عليها صحة البيان. لا تحمي هذه العملية خصوصية المُثبت فحسب، بل تضمن أيضًا أن المدقق لا يمكنه تكرار عملية الإثبات أو استخدامها للحصول على أي معلومات إضافية.
الرسم التخطيطي المفاهيمي لبراهين المعرفة الصفرية (المصدر: ChainLink)
يمكن تعريف المبادئ الأساسية لبراهين المعرفة الصفرية (ZKP) من خلال السمات الثلاث التالية:
غالبًا ما يُفهم مبدأ ZKP من خلال أمثلة بسيطة: إذا كنت بحاجة إلى إثبات للشخص A أن لدي رقم هاتف الشخص B، فلست بحاجة إلى الكشف مباشرة عن رقم B إلى A. بدلاً من ذلك، يمكنني إثبات ذلك عن طريق الاتصال برقم B. بمجرد اتصال المكالمة، فإنها توضح أنني أمتلك بالفعل رقم B، دون الكشف عن أي معلومات حول الرقم نفسه.
في التطبيقات العملية، تتطلب ZKP عادةً إنشاءات رياضية معقدة مثل المعادلات متعددة الحدود أو المنحنيات البيضاوية أو التحديات الرياضية الأخرى. يعتمد أمان هذه الإنشاءات على الصعوبة الحسابية لمشاكل مثل التحليل أو اللوغاريتمات المنفصلة. مع تقدم التشفير، ظهرت العديد من تطبيقات ZKP، مثل ZK-SNARKS و ZK-Starks، مما يوفر حماية فعالة للخصوصية في سياقات مختلفة، خاصة في مجالات blockchain والعملات المشفرة.
يتكون الشكل الأساسي لإثبات عدم المعرفة من ثلاثة عناصر: الشاهد والتحدي والاستجابة.
شاهد: في إثبات عدم المعرفة، يريد المُثبت إثبات معرفته ببعض المعلومات المخفية. تعمل هذه المعلومات السرية بمثابة «شاهد» على الإثبات. يقوم المُثبت، بناءً على معرفته بالشاهد، بإعداد مجموعة من الأسئلة التي لا يمكن الإجابة عليها إلا لشخص لديه معرفة بالمعلومات. وبالتالي، يختار المُثبت سؤالًا عشوائيًا لبدء الإثبات، ويحسب الإجابة، ثم يرسلها إلى المدقق.
التحدي: يختار المدقق عشوائيًا سؤالًا آخر من المجموعة ويطلب من المُثبت الإجابة عليه.
الرد: يتلقى المُثبت السؤال ويحسب الإجابة ويرسلها مرة أخرى إلى المدقق. تسمح استجابة المُثبت للمدقق بالتحقق مما إذا كان المُثبت لديه بالفعل حق الوصول إلى الشاهد. للتأكد من أن المُثبت لا يقوم فقط بالتخمين الأعمى بشكل صحيح عن طريق الصدفة، يختار المدقق سؤالًا آخر للاستفسار. من خلال تكرار هذه العملية عدة مرات، تقل احتمالية قيام المُثبت بتلفيق الحقيقة بشكل كبير حتى يتم إرضاء المدقق.
في مثال المكالمة الهاتفية المذكور أعلاه، «أنا» الشاهد غير الراغب في الكشف عن المعلومات، بينما A هو المدقق، والتحدي المطروح هو «إثبات أنني أمتلك رقم B». تتضمن عملية الاستجابة «أنا» توصيل مكالمة برقم B لإثبات أنني أملكها حقًا.
كما تمت مناقشته سابقًا، تقدم أدلة المعرفة الصفرية (ZKP) بطبيعتها مزايا كبيرة في مجال حماية الخصوصية. في عصر اليوم الذي يتسم بالحمل الزائد للمعلومات، غالبًا ما يتم تخزين البيانات الشخصية على منصات خارجية، مما يزيد من مخاطر انتهاكات البيانات. علاوة على ذلك، نظرًا للحواجز التقنية والتأخر في العقوبات القانونية، يعتمد أمن المعلومات إلى حد كبير على القيود الأخلاقية، مما يجعل من الصعب على المستخدمين التحكم حقًا في معلوماتهم الخاصة. يوفر ظهور تقنية ZKP حلاً يحمي الخصوصية ويعزز كفاءة التحقق والأمان.
بالمقارنة مع تقنيات التشفير الأخرى، تتمتع ZKP بمزايا متعددة:
سواء في Web 2.0 التقليدي أو مجال Web 3.0 الناشئ، فإن آفاق تطبيق ZKP واسعة النطاق.
هناك تطبيقات متعددة لبراهين المعرفة الصفرية، مثل zk-SNARks و ZK-Starks و PLONK و Bulletproofs. كل نوع له مزاياه وعيوبه من حيث حجم الإثبات ووقت الاختبار ووقت التحقق. تركز هذه المقالة على تقديم الأنواع الأربعة الأكثر استخدامًا في سيناريوهات التطبيق.
تُعد zk-SNARKs، التي تعني «حجة المعرفة غير التفاعلية الموجزة الخالية من المعرفة»، أدوات تشفير تُستخدم لإثبات أن شخصًا ما يعرف جزءًا من المعلومات دون الكشف عن أي من المعلومات نفسها. في zk-SNARks، تعني «المعرفة الصفرية» أن المُثبت يمكنه إثبات صحة العبارة دون تقديم أي معلومات بخلاف صحتها. يشير مصطلح «الإيجاز» إلى الحجم الصغير للإثبات وسرعة عملية التحقق. تعني كلمة «غير تفاعلي» بمجرد إنشاء الدليل، يمكن التحقق منه من قبل أي شخص دون مزيد من التفاعل بين المُثبت والمدقق. تشمل المكونات الأساسية لـ zk-SNARks ما يلي:
تُستخدم zk-SNARKs في العديد من سيناريوهات الحفاظ على الخصوصية، مثل العملات المشفرة ذات المعاملات المجهولة، وأنظمة التصويت الآمنة، والمصادقة التي تحافظ على الخصوصية ومشاركة البيانات، وتقنيات قابلية التوسع في blockchain.
تسمح ZK-Starks، أو «حجج المعرفة الشفافة القابلة للتطوير بدون معرفة»، لطرف واحد (المُثبت) بأن يثبت لطرف آخر (المدقق) أنه يعرف معلومات معينة دون الكشف عن المعلومات نفسها. على عكس zk-SNARks، لا تتطلب ZK-starks عملية إعداد موثوقة. وهذا يعني أنها لا تعتمد على سرية بعض المعلومات الخاصة، وهي ميزة غالبًا ما تعتبر ضرورية للأمان، حيث يمكن أن يكون الإعداد الموثوق به ثغرة أمنية نظامية.
يعتمد عمل ZK-starks على مفاهيم من العديد من المجالات الرياضية، بما في ذلك وظائف التجزئة والحسابات متعددة الحدود ونظرية تصحيح الأخطاء. إنهم يستخدمون بنية تُعرف باسم «الحجة الشفافة القابلة للتطوير بدون معرفة»، مما يسمح بتوليد الأدلة دون إعداد موثوق به. تتشابه التطبيقات المحتملة لـ ZK-Starks مع تلك الخاصة بـ ZK-SNARks، ولكن نظرًا لقابليتها للتطوير والشفافية، فهي مناسبة بشكل خاص للتطبيقات واسعة النطاق، بما في ذلك العملات المشفرة التي تحافظ على الخصوصية وتقنيات قابلية تطوير blockchain والتحقق الآمن في الحوسبة السحابية.
يشير PLONK، وليس اختصارًا، إلى ألقاب منشئيه. إنه مصمم لتوفير حل ZKP عالمي وفعال، خاصة في تطبيقات blockchain مثل العقود الذكية والمعاملات المحمية بالخصوصية. يتمثل جوهر PLONK في استخدام تقنية «الإخفاء المتماثل»، مما يسمح بالعمليات الحسابية على البيانات دون الكشف عن البيانات الأصلية. وهي تستخدم خوارزمية خاصة - مخطط التزام متعدد الحدود - لإنشاء البراهين وتمكين المثبتين من إثبات أن لديهم نتائج الحساب الصحيحة لمجموعة من البيانات بكفاءة.
إحدى السمات الرئيسية لـ PLONK هي عالميتها. بمجرد تعيين المعلمات لمهمة حسابية محددة (من خلال إعداد موثوق به لمرة واحدة)، يمكن إعادة استخدامها عدة مرات لإنشاء براهين جديدة، دون الحاجة إلى إعدادات جديدة في كل مرة. هذا يجعل PLONK عالي الكفاءة في إنشاء البراهين والتحقق منها وغالبًا ما يتم تصميمه لدعم المهام الحسابية المختلفة في blockchain والأنظمة الموزعة الأخرى.
لا يتطلب Bulletproofs، وهو حل ZKP تم تقديمه حديثًا، إعدادًا موثوقًا به وهو مصمم خصيصًا لإنشاء براهين النطاق وأنواع معينة من البراهين الحسابية. تم اقتراح Bulletproofs من قبل بينيديكت بونز وجوناثان بوتل ودان بونيه وآخرين في عام 2017، وتعمل على تركيبات رياضية معقدة مثل التشفير المتماثل وتشفير المنحنى الإهليلجي. إنهم يستفيدون من سلسلة من التقنيات الرياضية للسماح للمُثقبين بإنشاء إثبات نطاق فعال لرقم دون الكشف عن قيمته الدقيقة. خاصة في مجال العملات المشفرة، يمكن استخدام هذا لإثبات أن قيم المعاملات تقع ضمن النطاق القانوني دون الكشف عن مبالغ المعاملات الفعلية.
نظرًا لميزاتها المقاومة للنطاق، تُستخدم Bulletproofs على نطاق واسع في مجالات العملات المشفرة والبلوك تشين، لا سيما في عملات الخصوصية مثل Monero، لإخفاء مبالغ المعاملات مع التحقق من شرعية المعاملات. بالإضافة إلى ذلك، يمكن استخدامها في تطبيقات أخرى تتطلب الخصوصية الرقمية.
دعونا نفهم بشكل أفضل هذه التقنيات الأربعة المختلفة لإثبات المعرفة الصفرية (ZKP) - ZK-SNARKS و ZK-Starks و PLONK والرصاص - من خلال تشبيه خريطة الكنز.
تخيل أن لديك خريطة كنز تؤدي إلى الموقع الدقيق للكنز المدفون. تريد أن تثبت لشخص ما أنك تعرف مكان الكنز دون الكشف عن محتويات الخريطة أو الموقع الفعلي للكنز.
zk-SNARKS: يمكنك إنشاء أحجية معقدة لخريطة الكنز. يمكنك اختيار قطعة أساسية صغيرة من هذا اللغز (دليل) وإظهارها للطرف الآخر، بما يكفي لإقناعهم بأنك تعرف كيفية تجميع اللغز الكامل، أي موقع الكنز، دون الكشف عن اللغز بأكمله. ومع ذلك، للقيام بذلك، تحتاج إلى علامات خاصة من طابعة موثوقة لإثبات أن قطعة اللغز الخاصة بك أصلية.
ZK-starks: تعرض جزءًا من خريطة الكنز للطرف الآخر، وتخبره أنه يمكنه استخدام عدسة مكبرة خاصة (خوارزمية تحقق) للتحقق عشوائيًا من تفاصيل الخريطة للتحقق من أنها تشير بالفعل إلى الكنز، دون الحاجة إلى معرفة الموقع الدقيق للكنز. هذه العدسة المكبرة قوية جدًا لدرجة أنه حتى التقنيات المستقبلية (أجهزة الكمبيوتر الكمومية) لا يمكنها كسر سر خريطة الكنز الخاصة بك.
بلونك: هذه المرة، تقوم بإنشاء مجموعة من الألغاز، كل منها يشير إلى موقع الكنز. أنت تقدم طريقة عالمية للتحقق من حلول هذه الألغاز (إعداد عالمي) للطرف الآخر، بما يكفي ليعتقدوا أنك تعرف جميع الإجابات دون الحاجة إلى حل كل لغز على حدة.
مضاد للرصاص: تقرر إثبات أنك تعرف النطاق التقريبي لموقع الكنز دون الكشف عن موقعه الدقيق. يمكنك تقديم سلسلة من حلول المشكلات الرياضية التي توضح نطاق موقع الكنز. لا تتطلب طريقتك أي علامات خاصة أو تقنيات طباعة، مما يعني عدم وجود متطلبات ثقة أولية.
في هذا القياس:
كل طريقة لها مقايزاتها في التطبيقات العملية، ويعتمد الاختيار على سيناريو التطبيق المحدد واحتياجات الأمان.
قبل المقارنة، نحتاج إلى فهم معايير تقييم ZKPs:
الآن، دعونا نقارن ZK-SNARKS و ZK-Starks و PLONK و Bulletproofs بناءً على هذه المؤشرات ونناقش مزاياها وعيوبها.
الإيجابيات
السلبيات
الإيجابيات
السلبيات
الإيجابيات
السلبيات
الإيجابيات
السلبيات
في Web3، هناك العديد من حالات تطبيق ZKP، وقد اخترنا حالتين نموذجيتين للدراسة.
ZK-rollups عبارة عن حل من الطبقة الثانية يجمع مئات أو آلاف المعاملات خارج السلسلة ويولد إثبات ZK-SNARK. يتم تقديم هذا الدليل، جنبًا إلى جنب مع بيانات المعاملات، إلى سلسلة Ethereum الرئيسية. وهو يسمح بالتحقق من المعاملات دون معالجة السلسلة الرئيسية لكل معاملة، وبالتالي تقليل الرسوم وزيادة الإنتاجية. اعتمدت ZK-Sync Era و Starknet تقنية zk-rollup، وقدمت بوليجون مؤخرًا بوليغون ZK-EVM باستخدام مجموعات zk.
عرض توضيحي لتطبيق zk-SNARks في الطبقة الثانية (المصدر: سيمون براون)
يشير إثبات احتياطي الصرف إلى التحقق من الأرصدة التي تحتفظ بها بورصات العملات المشفرة أو المؤسسات المالية الأخرى، مما يضمن تطابق الأصول المسجلة مع الأصول الفعلية المحتفظ بها. في البداية، استخدمت البورصات أشجار Merkle وشركات التدقيق التابعة لجهات خارجية لإجراء هذا التحقق، ولكن هذه العملية اعتمدت على أطراف ثالثة ويمكن أن تتسرب بيانات المستخدم الخاصة مثل أرصدة الحسابات. تستخدم البورصات مثل Gate.io الآن تقنية ZK-SNARks للبراهين الاحتياطية، وتشفير بيانات المستخدم، والحصول على أرقام أصول المستخدم من خلال دوائر ZK-SNARK، وبالتالي إصدار تقارير إثبات احتياطي كاملة.
تسلط الحلول المتنوعة لتقنية مقاومة المعرفة الصفرية الضوء على إمكاناتها القوية في Web3. من حماية خصوصية البيانات إلى توسيع نطاق بلوكتشين، يعد ZKP مهمًا لبناء بنية تحتية آمنة وفعالة لـ Web3. في حين أن الأساليب المختلفة لها مزاياها وقيودها، إلا أنها تشير بشكل جماعي إلى مستقبل رقمي أكثر موثوقية ومحميًا للخصوصية. مع تقدم التكنولوجيا، سيتم التغلب على تحديات تحسين الأداء والأمان باستخدام ZKP تدريجيًا، مما يشير إلى دورها المتزايد الأهمية في العالم الرقمي.