تحليل تطبيق وتطور تقنية zk-SNARKs في مجال البلوكتشين

تطبيقات وتطور تقنية zk-SNARKs في مجال البلوكتشين

ملخص

الzk-SNARKs(ZKP)التقنية كابتكار مهم في مجال البلوكتشين , وقد حظيت باهتمام واسع في السنوات الأخيرة. تستعرض هذه المقالة بشكل منهجي تاريخ تطور تقنية ZKP على مدى الأربعين عامًا الماضية، مع التركيز على تحليل أحدث تطبيقاتها في مجال البلوكتشين .

أولاً، تم تقديم المفهوم الأساسي لـ ZKP والخلفية التاريخية له. بعد ذلك، تم التركيز على تقنية ZKP المستندة إلى الدوائر، بما في ذلك تصميم وتحسين حلول zkSNARK، نموذج Ben-Sasson، Pinocchio، Bulletproofs وLigero. في جانب البيئة الحاسوبية، قدمت المقالة مبادئ ZKVM وZKEVM وتطبيقاتها في تعزيز قدرة معالجة المعاملات، وحماية الخصوصية، وزيادة كفاءة التحقق. كما تم توضيح آلية عمل ZK Rollup كحل للتوسع من الطبقة الثانية وطرق تحسينه، بالإضافة إلى التقدم الأخير في تسريع الأجهزة، والحلول المختلطة، وZK EVM المخصصة.

أخيرًا، تستشرف هذه المقالة المفاهيم الناشئة مثل ZKCoprocessor وZKML وZKThreads وZK Sharding وZK StateChannels، وتناقش إمكانياتها في توسيع نطاق البلوكتشين وتعزيز التوافق وحماية الخصوصية.

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

المحتويات

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

المقدمة

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

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

تجعل هذه الميزة ZKP تلعب دورًا أساسيًا في معاملات البلوكتشين وتطبيقات العملات المشفرة، خاصة في مجالات حماية الخصوصية وتوسيع الشبكة. لم تصبح فقط محورًا للأبحاث الأكاديمية، بل أيضًا مجالًا رئيسيًا لتطبيقات الصناعة والاستثمارات المغامرة. ظهرت العديد من المشاريع الشبكية المستندة إلى ZKP مثل ZkSync وStarkNet وMina وFilecoin وAleo وغيرها. مع تطور هذه المشاريع، تتجدد ابتكارات خوارزميات ZKP بشكل مستمر، حيث تظهر خوارزميات جديدة تقريبًا كل أسبوع. بالإضافة إلى ذلك، يتم أيضًا تحقيق تقدم سريع في تطوير الأجهزة المرتبطة بتقنية ZKP، بما في ذلك الرقائق المصممة خصيصًا لتحسين ZKP.

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

واحد، zk-SNARKs الأساسيات

1.نظرة عامة

في عام 1985، قدم Goldwasser وMicali وRackoff مفهوم zk-SNARKs وIZK لأول مرة. وقد عرفوا "المعرفة" بأنها "مخرجات غير قابلة للحساب"، أي أن المعرفة يجب أن تكون ناتج دالة معقدة، وعادة ما يمكن فهمها على أنها مشكلة NP. عملية حل مشكلة NP معقدة، لكن عملية التحقق منها بسيطة نسبياً، لذا فهي مناسبة جداً لاستخدامها في تحقق ZKP.

قدم غولدواسر وآخرون مفهوم "تعقيد المعرفة"، لقياس كمية المعرفة التي يكشفها المُثبِت للمُتحقِق. كما اقترحوا نظام إثبات تفاعلي (IPS)، حيث يتفاعل المُثبِت والمُتحقِق من خلال جولات متعددة لإثبات صحة بيان ما.

تتضمن الخصائص الأساسية الثلاث لـ ZKP:

  1. الاكتمال: إذا كانت البرهنة صحيحة، يمكن للمُثبت الصادق إقناع المُحقق الصادق بهذه الحقيقة.

  2. الموثوقية: إذا كان المثبت لا يعرف محتوى البيان، فلا يمكنه إلا بخطر ضئيل خداع المصدق.

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

( 2.أمثلة على zk-SNARKs

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

الخطوة الأولى: إعداد )Setup( يخلق المُثبت دليلاً يُظهر أنه يعرف رقمًا سريًا معينًا s، لكن دون الكشف عن s مباشرة. يختار عددين أوليين كبيرين p و q، ويحسب n=pq. يختار عددًا صحيحًا عشوائيًا r، ويحسب x=r^2 mod n ويرسله إلى المُحقق.

الخطوة الثانية: التحدي )Challenge### يختار المدقق عشوائيًا موضعًا a(0 أو 1)، ويرسله إلى المبرهن.

الخطوة الثالثة: استجابة (Response) بناءً على قيمة a، يقوم المُثبت بالاستجابة:

  • إذا كانت a=0، أرسل y=r
  • إذا كانت a=1، احسب y=rs mod n وأرسل

المحقق يتحقق مما إذا كان x يساوي y^2 mod n( عندما a=0) أو y^2v mod n( عندما a=1). إذا كانت المعادلة صحيحة، يقبل المحقق هذه الشهادة.

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

٢. إثبات المعرفة الصفرية غير التفاعلي

( 1.خلفية

تتمثل البروتوكولات التقليدية لـ ZKP عادةً في شكل تفاعلي وعبر الإنترنت. ومع ذلك، في بعض السيناريوهات، مثل المعاملات الفورية أو التصويت، غالبًا ما لا يكون هناك فرصة لإجراء تفاعلات متعددة. وبالتالي، تم ظهور مفهوم إثبات المعرفة الصفرية غير التفاعلي )NIZK(.

) 2. تم تقديم NIZK

في عام 1988، قدم بلوم وفيلدمان وميكالي مفهوم NIZK لأول مرة، وأثبتوا أنه في ظل عدم الحاجة إلى تفاعل متعدد الجولات، يمكن للبرهان والمتحقق إكمال عملية المصادقة. يمكن تقسيم NIZK إلى ثلاث مراحل: الإعداد، والحساب، والتحقق.

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

) 3.تحويل فيات-شامير

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

4.جينس غروث وأبحاثه

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

( 5.أبحاث أخرى

بالإضافة إلى أعمال Groth، هناك العديد من الأبحاث الهامة حول NIZK، بما في ذلك:

  • خطة تشفير المفتاح العام القائمة على دالة التجزئة العامة التي طورها كرامر وشوب
  • طريقة جديدة لتحويل Fiat-Shamir المحسنة المقترحة من قبل دامغارد وفازيو ونيكولوسي
  • مفهوم "الموثوقية الضعيفة القابلة للإرجاع" الذي قدمه Ventre و Visconti
  • تحويل Unruh، كبديل لتحويل Fiat-Shamir، يوفر أمانًا قابلًا للإثبات NIZK ضد الخصوم الكمومية.
  • نظام إثبات مسائل اتخاذ القرار العشوائي القائم على تقنية استرجاع المعلومات الخاصة لكالاي وآخرون

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

ثلاثاً، zk-SNARKs المعتمدة على الدوائر

) 1.الخلفية

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

2. المفاهيم الأساسية وخصائص نموذج الدائرة

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

  • الدوائر الحسابية: تتكون بشكل أساسي من بوابات الجمع والضرب، وتستخدم لمعالجة العناصر على الحقول المحدودة.
  • الدوائر المنطقية: تتكون من البوابات المنطقية الأساسية مثل البوابة AND والبوابة OR والبوابة NOT، وتستخدم لمعالجة العمليات البولية.

3. تصميم الدوائر وتطبيقها في zk-SNARKs

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

  1. تمثيل المشكلة: تحويل المشكلة المراد إثباتها إلى شكل الدائرة.
  2. تحسين الدوائر: تحسين تصميم الدوائر من خلال تقنيات مثل دمج البوابات وطي الثوابت.
  3. تحويل إلى تمثيل متعدد الحدود: تحويل الدائرة المحسنة إلى شكل متعدد الحدود.
  4. توليد سلسلة مرجعية عامة ###CRS###: في مرحلة تهيئة النظام، يتم توليد CRS الذي يتضمن مفتاح الإثبات ومفتاح التحقق.
  5. توليد وإثبات التحقق: يقوم المُثبِت بتوليد الإثبات بناءً على المدخلات الخاصة وCRS، بينما يقوم المُتحقق بالتحقق من صحة الإثبات بناءً على وصف الدائرة العامة وCRS.

4. العيوب والتحديات المحتملة

تواجه zk-SNARKs المستندة إلى الدوائر بعض التحديات، بما في ذلك:

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

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

أربعة، zk-SNARKs النموذج

1.خلفية

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

( 2.نماذج الخوارزميات الشائعة

  1. نموذج zkSNARK: تم اقتراحه من قبل Bitansky وآخرين في عام 2011، وهو آلية ZKP محسنة.

  2. نموذج Ben-Sasson: نموذج ZKP لتنفيذ برنامج معمارية RISC الخاصة بـ فون نويمان.

  3. نموذج بينوكيو: مجموعة توليد ZKP غير التفاعلية الكاملة، تتضمن مترجمًا متقدمًا وبرنامج حسابات ثانوية ) QAPs ###.

  4. نموذج Bulletproofs: لا يتطلب إعداد موثوق، وحجم الإثبات ينمو بشكل لوغاريتمي مع حجم قيمة الشهادة.

  5. نموذج Ligero: نموذج خفيف الوزن للـ zk-SNARKs، تعقيد الاتصالات يتناسب مع الجذر التربيعي لحجم دائرة التحقق.

3.方案 قائمة على PCP الخطي ومشكلة اللوغاريتمات المنفصلة

تشمل هذه الأنظمة نموذج Groth16 ونموذج Sonic ونموذج PLONK ونموذج Marlin ونموذج SLONK ونموذج SuperSonic وغيرها. تستند هذه النماذج إلى PCP الخطي و/أو مشكلة اللوغاريتمات المنفصلة، لكنها لا تتمتع بالأمان ضد الكم.

4.方案 مبني على إثبات الأشخاص العاديين

"إثباتات الشخص العادي" هي طريقة جديدة لـ zk-SNARKs اقترحها Goldwasser وKalai وRothblum. تشمل النماذج المستندة إلى هذا المفهوم نموذج Hyrax ونموذج Libra ونموذج Spartan.

( 5. إثبات قابل للتحقق بناءً على الاحتمالات ) PCP ### من zk-SNARKs

تشمل هذه الأنظمة نموذج STARK ونموذج Aurora وSuccinct

شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • 3
  • مشاركة
تعليق
0/400
GraphGuruvip
· 08-02 06:07
مرة أخرى يتحدث عن zkp
شاهد النسخة الأصليةرد0
DegenMcsleeplessvip
· 08-02 06:00
Defi الكراث القديم ، اصنع القنب ثم ابق
شاهد النسخة الأصليةرد0
CryptoCrazyGFvip
· 08-02 05:55
لا تفهم هذا، على أي حال هو ثور وانتهى الأمر~
شاهد النسخة الأصليةرد0
  • تثبيت