أهم النقاط

  • يتيح إثبات المعرفة الصفرية لطرف ما أن يُثبت لطرف آخر أن عبارة ما صحيحة دون كشف أي بيانات كامنة.

  • إن zk-SNARKs هي نوع من بروتوكولات إثبات المعرفة الصفرية المستخدمة في التشفير للتحقق من معلومات مثل أرصدة الحسابات دون كشف التفاصيل الخاصة.

  • تستخدم Binance zk-SNARKs مع شجرات ميركل لتمكين المستخدمين من التحقق من أن أرصدتهم مدرجة ضمن إثبات الاحتياطيات الإجمالي دون كشف بيانات الحسابات الفردية.

  • بالإضافة إلى احتياطيات البورصة، تُستخدم إثباتات ZK بشكل متزايد في ZK-rollups والتحقق من الهوية وأنظمة التصويت عبر منظومة البلوك تشين.

مقدمة

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

من خلال استخدام بروتوكولات إثبات المعرفة الصفرية مثل zk-SNARKs إلى جانب هياكل بيانات تشفيرية مثل شجرات ميركل، يمكن إثبات صحة المعلومات دون كشف المعلومات نفسها. يشرح هذا المقال كيفية عمل هذه الأدوات وكيف تطبق Binance ذلك في إثبات الاحتياطيات.

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

يسمح إثبات المعرفة الصفرية لطرف واحد (المرسل/المُثبت - prover) بإقناع طرف آخر (المدقق/المتحقق - verifier) بأن عبارة ما صحيحة، دون مشاركة أي معلومات حول محتوى تلك العبارة. ظهرت الفكرة لأول مرة في ورقة بحثية أكاديمية عام 1985، ثم أصبحت منذ ذلك الحين عنصرًا أساسيًا في التشفير التطبيقي.

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

لشرح تقني أعمق، راجع المقال في الأكاديمية بعنوان ما هو إثبات المعرفة الصفرية وكيف يؤثر على البلوك تشين.

لماذا تعد إثباتات المعرفة الصفرية مفيدة؟

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

في مجال العملات الرقمية، تشمل الاستخدامات الشائعة:

  • إثبات امتلاك مفتاح خاص دون كشفه.

  • تمكين بورصة من التحقق من إجمالي احتياطيات المستخدمين دون الكشف عن أرصدة كل حساب على حدة.

  • إتاحة معاملات بلوك تشين قابلة للتوسع عبر ZK-rollups دون نشر كل معاملة على السلسلة.

تستخدم هذه الإثباتات خوارزميات تأخذ البيانات كمدخلات وتعيد إما true أو false، دون تسريب أي تفاصيل عن المدخلات نفسها.

الخصائص التقنية لإثباتات المعرفة الصفرية

يجب أن يحقق إثبات المعرفة الصفرية الصحيح ثلاث خصائص:

  • الإكتمال (Completeness). إذا كانت العبارة صحيحة، فإن المدقق الأمين سيتم إقناعه عبر الإثبات.

  • الصلابة/المتانة (Soundness). إذا كانت العبارة خاطئة، فلن يستطيع أي مرسل إقناع المدقق بأنها صحيحة.

  • المعرفة الصفرية (Zero-knowledge). إذا كانت العبارة صحيحة، لا يتعلم المدقق شيئًا سوى حقيقة أنها صحيحة.

ما هو zk-SNARK؟

إن zk-SNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) هو نوع من بروتوكولات إثبات المعرفة الصفرية. صُمم ليكون موجزًا (حجم إثبات صغير)، وغير تفاعلي (بدون تبادل ذهابًا وإيابًا بين المرسل والمدقق)، وموثوقًا تشفيريًا.

با zk-SNARK يمكن للمرسل (prover) إثبات امتلاكه لقيمة مخفية، أو أن عملية حسابية أُجريت بشكلٍ صحيح، دون كشف أي شيء عن المدخلات. في سياق بورصة عملات رقمية، يعني هذا إثبات أن مجموع جميع أرصدة المستخدمين يطابق الاحتياطيات المزعومة، دون إظهار أي رصيد فردي.

خطوة التحقق سريعة للغاية مقارنةً بالوقت المطلوب لإنشاء الإثبات نفسه. وهذا يجعل zk-SNARKs عمليًا للتطبيقات واسعة النطاق مثل تدقيق البورصات أو قابلية التوسع في البلوك تشين.

ما هي شجرة ميركل (Merkle Tree)؟

شجرة ميركل هي بنية بيانات تشفيرية تُنظّم كميات كبيرة من البيانات بكفاءة. يتم تحويل كل قطعة بيانات إلى تجزئة (hash)، ثم يتم دمج هذه التجزئات على شكل أزواج حتى يتم إنتاج تجزئة جذر واحدة. أي تغيير في أي قيمة مدخلات يغيّر تجزئة الجذر، ما يجعل العبث سهل اكتشافه.

دوال التجزئة (Hash functions)

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

على سبيل المثال، تشغيل 100 كتاب عبر دالة التجزئة SHA-256 ينتج سلسلة فريدة بطول 64 حرفًا. إذا غيّرت حرفًا واحدًا في تلك الكتب، يتغير الناتج بالكامل. تجعل هذه الخاصية من السهل التحقق من سلامة البيانات دون مقارنة كل المحتوى الأصلي.

شجرات ميركل في العملات الرقمية

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

بالنسبة للبورصات، توفر شجرات ميركل طريقة لتنظيم أرصدة العملاء بحيث يمكن تدقيقها دون كشف كل حساب على حدة.

القيود عند استخدام شجرات ميركل وحدها

قد تبني بورصة عملات رقمية شجرة ميركل من جميع أرصدة حسابات العملاء لدعم إثبات الاحتياطيات (PoR). لكن بدون حماية إضافية، لهذه المقاربة نقاط ضعف.

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

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

كيف تعمل zk-SNARKs مع شجرات ميركل معًا

يؤدي الجمع بين zk-SNARKs وشجرات ميركل إلى إزالة الحاجة إلى الثقة في طرف ثالث. يقوم.البورصة ببناء شجرة ميركل لجميع أرصدة المستخدمين ثم توليد إثبات zk-SNARK يضمن رياضيًا ما يلي:

  • يتم تضمين كل رصيد مستخدم في شجرة ميركل (بدون حذف أي حساب).

  • لا يملك أي مستخدم رصيدًا صافياً سلبيًا (أي لا توجد بيانات مُفبركة).

  • يكون جذر ميركل صحيحًا دون تغيير.

يمكن للمستخدمين التحقق من أن رصيدهم الخاص ساهم في جذر ميركل. كما يمكنهم التحقق من إثبات zk-SNARK للتأكد من إنشاء الشجرة بشكل صحيح، دون رؤية رصيد أي شخص آخر.

كيف تطبق Binance هذا النظام

تحدد Binance القيود (constraints) لما تريد إثباته على أنه دائرة قابلة للبرمجة (programmable circuit). وبالنسبة لكل عقدة طرفية لرصيد المستخدم في شجرة ميركل، تتحقق الدائرة من ثلاث شروط:

  • يتم تضمين أصول المستخدم ضمن حساب الرصيد الصافي الإجمالي.

  • الرصيد الصافي الإجمالي للمستخدم أكبر من أو يساوي الصفر.

  • يكون جذر ميركل صحيحًا بعد إدراج بيانات المستخدم تلك.

بعد ذلك، تولد Binance إثبات zk-SNARK لكامل شجرة ميركل. وفي كل مرة يتم فيها إصدار إثبات الاحتياطيات (PoR)، تنشر Binance إثبات ميركل لكل مستخدم وإثبات zk-SNARK مع مدخلاته العامة (public inputs). يستطيع أي شخص التحقق من الاثنين بشكل مستقل باستخدام كود مفتوح المصدر متاحًا للجميع.

توفر هذه المقاربة ضمانًا رياضيًا بدل الاعتماد على ثقة المدقق وحدها.

تطبيقات أوسع تتجاوز إثبات الاحتياطيات

لقد توسعت تقنية إثباتات ZK بشكل كبير خارج نطاق تدقيق البورصات. أصبحت ZK-rollups الآن أحد أبرز حلول التوسعة على الطبقة الثانية (Layer 2) في Ethereum، حيث تتم معالجة المعاملات خارج السلسلة (off-chain) وإرسال إثباتات ZK إلى السلسلة الرئيسية لتأكيد صحتها. يمكن أن يؤدي ذلك إلى زيادة الإنتاجية مع الحفاظ على الأمان.

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

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

ما هو إثبات المعرفة الصفرية (zero-knowledge proof) ببساطة؟

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

لماذا تستخدم Binance zk-SNARKs في إثبات الاحتياطيات؟

تستخدم Binance zk-SNARKs لإثبات أن أرصدة العملاء مدعومة بالكامل دون كشف تفاصيل الحسابات الفردية. يوفر إثبات ZK تحققًا رياضيًا بأن جميع الحسابات مُدرجة ولا توجد أرصدة سالبة، دون الحاجة إلى أن يثق المستخدمون بمدقق.

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

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

هل يمكن للمستخدمين التحقق بشكل مستقل من إثبات الاحتياطيات لدى Binance؟

نعم. تنشر Binance إثبات ميركل لكل مستخدم وإثبات zk-SNARK مع مدخلاته العامة. يمكن للمستخدمين التحقق من أن رصيدهم تم إدراجه في شجرة ميركل وأن إثبات zk-SNARK يؤكد أن الشجرة بُنيت بشكل صحيح، وذلك باستخدام كود Binance مفتوح المصدر الذي تم نشره علنًا.

هل تُستخدم إثباتات المعرفة الصفرية فقط لاحتياطيات البورصة؟

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

خلاصة الأفكار

من خلال الجمع بين zk-SNARKs وشجرات ميركل، يمكن للبورصات تقديم دليل تشفيري على الاحتياطيات دون المساس ببيانات المستخدمين. وبعيدًا عن تدقيق الاحتياطيات، تجد تقنية ZK مكانها في قابلية التوسع للبلوك تشين، وأنظمة الهوية، والحوكمة اللامركزية.

مزيد من القراءة

  • ما هو إثبات المعرفة الصفرية وكيف يؤثر على البلوك تشين؟

  • شرح zk-SNARKs وzk-STARKs

  • ما هي ZK-Rollups؟

  • ما هو إثبات الاحتياطيات وكيف يعمل على Binance

  • شرح شجرات ميركل وجذور ميركل

إخلاء المسؤولية: يتم تقديم هذا المحتوى لك على أساس "كما هو" لأغراض المعلومات العامة والتعليم فقط، دون أي تمثيل أو ضمان من أي نوع. لا ينبغي تفسيره على أنه نصيحة مالية أو قانونية أو غيرها من النصائح المهنية، كما لا يهدف إلى التوصية بشراء أي منتج أو خدمة معينة. ينبغي لك طلب المشورة الخاصة بك من مستشارين مهنيين مناسبين. عندما يساهم طرف ثالث في المحتوى، يُرجى ملاحظة أن الآراء الواردة فيه تعود للمساهم/الطرف الثالث، ولا تعكس بالضرورة آراء Binance Academy. قد تكون أسعار الأصول الرقمية متقلبة. قد تنخفض قيمة استثمارك أو ترتفع وقد لا تتمكن من استرداد مبلغ الاستثمار. أنت وحدك المسؤول عن قراراتك الاستثمارية، وBinance Academy غير مسؤولة عن أي خسائر قد تتكبدها. لمزيد من المعلومات، راجع شروط الاستخدام والتحذير من المخاطر و‍شروط Binance Academy.