نظرة شاملة على تقنية إثبات المعرفة الصفرية على مدى 40 عامًا: من ZKSNARK إلى تطوير ZKEVM وآفاق المستقبل

zk-SNARKs التقنية الشاملة والرؤية المستقبلية

ملخص

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

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

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

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

فهرس

مقدمة

أ. أساسيات zk-SNARKs 1.نظرة عامة 2. أمثلة على براهين المعرفة الصفرية

ثانياً، zk-SNARKs غير التفاعلية

  1. الخلفية
  2. طرح NIZK
  3. تحويل فيات-شامير
  4. جنس جروث وأبحاثه
  5. أبحاث أخرى

ثالثًا، إثبات المعرفة الصفرية القائم على الدوائر 1.الخلفية 2.المفاهيم الأساسية وخصائص نموذج الدائرة 3. تصميم الدوائر في zk-SNARKs وتطبيقاتها 4. العيوب والتحديات المحتملة

٤. zk-SNARKs نموذج 1.الخلفية 2.نماذج الخوارزميات الشائعة 3.方案 يعتمد على PCP الخطي ومشكلة اللوغاريتم المتقطع 4. خطة تستند إلى إثبات الأشخاص العاديين 5. إثبات قابل للتحقق بناءً على الاحتمالات ( PCP ) zk-SNARKs 6. تصنيف مرحلة الإعداد لبناء إثبات عام CPC( استنادًا إلى )

خمسة، نظرة عامة على آلة الافتراضية ذات المعرفة الصفرية وتطورها 1.الخلفية 2. تصنيف ZKVM الحالي 3. نمط الواجهة الأمامية والخلفية 4. مزايا وعيوب نموذج ZKVM

ستة، نظرة عامة على آلة الإيثيريوم الافتراضية ذات المعرفة الصفرية وتطورها

  1. الخلفية
  2. كيفية عمل ZKEVM
  3. عملية تنفيذ ZKEVM
  4. ميزات ZKEVM

سبعة، نظرة عامة على خطة الشبكة الثنائية للمعرفة الصفرية وتطورها

  1. الخلفية
  2. آلية عمل zk-Rollup
  3. عيوب ZK Rollup والتحسينات

ثمانياً، اتجاهات التطور المستقبلية للزك-سنارك

  1. تسريع تطوير بيئة الحوسبة
  2. طرح وتطور zk-SNARKs
  3. تطورات تقنية توسيع ZKP
  4. تطور التداخل بين zk-SNARKs

التاسع، الاستنتاج

المراجع

مقدمة

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

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

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

تجعل هذه الميزة ZKP تلعب دورًا رئيسيًا في معاملات blockchain وتطبيقات العملات المشفرة، لا سيما في مجالات حماية الخصوصية وتوسيع الشبكة، مما يجعلها ليست فقط محورًا للبحث الأكاديمي، بل تُعتبر أيضًا واحدة من أهم الابتكارات التكنولوجية منذ تنفيذ تقنية دفتر الأستاذ الموزع - لا سيما Bitcoin - بنجاح. وهي أيضًا المسار الرئيسي لتطبيقات الصناعة والاستثمار المخاطر.

نتيجة لذلك، ظهرت العديد من المشاريع الشبكية المعتمدة على zk-SNARKs، مثل ZkSync وStarkNet وMina وFilecoin وAleo، وغيرها. مع تطور هذه المشاريع، تتوالى الابتكارات في خوارزميات zk-SNARKs، حيث يُذكر أنه يتم إصدار خوارزمية جديدة تقريباً كل أسبوع. بالإضافة إلى ذلك، يتقدم تطوير الأجهزة المتعلقة بتقنية zk-SNARKs بسرعة، بما في ذلك الرقائق المصممة خصيصاً لتحسين أداء zk-SNARKs. على سبيل المثال، أكملت مشاريع مثل Ingonyama وIrreducible وCysic جمع الأموال على نطاق واسع، ولم تظهر هذه التطورات فقط التقدم السريع في تقنية zk-SNARKs، بل تعكس أيضاً التحول من الأجهزة العامة إلى الأجهزة المتخصصة مثل GPU وFPGA وASIC.

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

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

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

1. نظرة عامة

في عام 1985، قدم العلماء Goldwasser وMicali وRackoff لأول مرة مفهوم zk-SNARKs في ورقتهم البحثية "تعقيد المعرفة في أنظمة الإثبات التفاعلية"، حيث عرّفوا العديد من المفاهيم التي أثرت على الأبحاث الأكاديمية اللاحقة. على سبيل المثال، تم تعريف المعرفة بأنها "مخرجات حساب غير ممكن"، مما يعني أن المعرفة يجب أن تكون مخرجات، ويجب أن تكون حاسبة غير ممكنة، أي لا يمكن أن تكون دالة بسيطة، بل يجب أن تكون دالة معقدة. يمكن فهم الحساب غير الممكن عادةً على أنه مشكلة NP، أي مشكلة يمكن التحقق من صحة حلها في وقت متعدد الحدود، حيث يشير وقت متعدد الحدود إلى الوقت الذي يمكن أن يستغرقه خوارزمية يتم التعبير عنه بدالة متعددة الحدود لحجم المدخلات. يعد هذا معيارًا مهمًا في علوم الكمبيوتر لقياس كفاءة الخوارزميات وقابليتها للتطبيق. نظرًا لأن عملية حل مسائل NP معقدة، فإنها تعتبر حسابات غير ممكنة؛ لكن عملية التحقق منها بسيطة نسبيًا، لذا فهي مناسبة جدًا لاستخدامها في تحقق zk-SNARKs.

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

قدم غولدواسر وآخرون في ورقتهم مفهوم "تعقيد المعرفة" ### knowledge complexity ( لقياس كمية المعرفة التي يكشفها المبرهن للمتحقق في أنظمة الإثبات التفاعلية. كما اقترحوا أنظمة الإثبات التفاعلية ) Interactive Proof Systems, IPS (، حيث يتفاعل المبرهن ) Prover ( والمتحقق ) Verifier ( عبر عدة جولات لإثبات صحة بيان معين.

وبالتالي، فإن تعريف zk-SNARKs الذي قدمه جولدووتر وآخرون هو نوع خاص من الإثباتات التفاعلية، حيث لا يحصل المصدق على أي معلومات إضافية بخلاف صحة البيان أثناء عملية التحقق؛ كما قدموا ثلاثة خصائص أساسية تشمل:

  1. الاكتمال ) completeness (: إذا كان البرهان صحيحًا، يمكن للمدعي الأمين إقناع المُتحقق الأمين بهذه الحقيقة؛

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

3.zk-SNARKs)zero-knowledge(: بعد اكتمال عملية الإثبات، يحصل المُتحقق فقط على "معلومات تفيد بأن المُثبت لديه هذه المعرفة"، ولا يمكنه الحصول على أي محتوى إضافي.

) # 2. مثال على إثبات المعرفة الصفرية

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

الخطوة الأولى: إعداد (Setup)

في هذه الخطوة، هدف المُثبت هو إنشاء دليل يُظهر أنه يعرف الرقم السري معين s، ولكن دون عرض s مباشرة. لنفترض أن الرقم السري هو s؛

اختيار عددين أوليين كبيرين p و q ، وحساب ناتج ضربهما n. افترض العددين الأوليين p و q ، ثم احسب النتيجة n؛

احسب v=s^2 mod n، هنا، يتم إرسال v كجزء من الإثبات إلى المُحقق، لكنه غير كافٍ لتمكين المُحقق أو أي مُتفرج من استنتاج s.

اختر عددًا صحيحًا عشوائيًا r، واحسب x = r^2 mod n وأرسله إلى المدقق. تُستخدم هذه القيمة x في عملية التحقق اللاحقة، ولكن لا تكشف أيضًا عن s. لنفترض أن العدد الصحيح العشوائي r، تم حساب x.

الخطوة الثانية: التحدي (Challenge)

يختار المدقق بشكل عشوائي موقعًا a( يمكن أن يكون 0 أو 1)، ثم يرسله إلى المُثبِت. هذا "التحدي" يحدد الخطوات التي يحتاج المُثبِت إلى اتخاذها بعد ذلك.

الخطوة الثالثة: استجابة ###Response(

استجابة المُثبت للقيمة a التي أرسلها المُحقق:

إذا كانت a=0، يرسل المقدم g=r) حيث r هو الرقم العشوائي الذي اختاره سابقًا (.

إذا كانت a=1، يقوم المُثبت بحساب g=rs mod n وإرساله. افترض أن المُحقق يرسل البت العشوائي a، بناءً على قيمة a، يقوم المُثبت بحساب g;

أخيرًا، يقوم المدقق بالتحقق من ما إذا كانت g^2 mod n تساوي xa^v mod n بناءً على g الذي تم استلامه. إذا كانت المعادلة صحيحة، يقبل المدقق هذا الإثبات. عندما يكون a=0، يقوم المدقق بحساب g^2 mod n، والتحقق من الجانب الأيمن xa^v mod n؛ عندما يكون a=1، يقوم المدقق بحساب g^2 mod n، والتحقق من الجانب الأيمن xa^v mod n.

هنا، نرى أن g^2 mod n=xa^v mod n الذي تم حسابه بواسطة المدقق يشير إلى أن المثبت قد نجح في عملية التحقق، دون أن يكشف عن رقمه السري s. هنا، نظرًا لأن a يمكن أن تتخذ فقط القيم 0 أو 1، هناك حالتان فقط ممكنتان، ويعتمد احتمال نجاح المثبت في التحقق على الحظ ) عندما تكون a=0 هو 1/2. ولكن المدقق يتحدى المثبت بعد ذلك n مرة، ويقوم المثبت بتغيير الأرقام ذات الصلة باستمرار، ويقدمها للمدقق، وبهذه الطريقة ينجح دائمًا في عملية التحقق، وبالتالي فإن احتمال نجاح المثبت في التحقق بالاعتماد على الحظ ( 1/2)^n ( يقترب بلا حدود من 0)، مما يثبت أن المثبت يعرف بالفعل رقمًا سريًا معينًا s. هذه الحالة تثبت سلامة وموثوقية ونزاهة نظام الإثباتات الصفرية.

( اثنان، zk-SNARKs غير التفاعلية

)# 1. الخلفية

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

(# 2. تقديم NIZK

1

شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • 7
  • مشاركة
تعليق
0/400
CommunityLurkervip
· منذ 5 س
لقد كنت أبحث في هذا الرقم الصفر منذ خمس سنوات.
شاهد النسخة الأصليةرد0
LiquidationWatchervip
· 07-13 12:17
كتبت كل شيء عن الثور، الآن حان الوقت للحديث عن المال، أليس كذلك؟
شاهد النسخة الأصليةرد0
BoredWatchervip
· 07-13 12:17
لم يتوقف الهواء بعد أن انتهيت من التحدث عن zk
شاهد النسخة الأصليةرد0
SybilSlayervip
· 07-13 12:16
لقد أصبحت الأمور معقدة جداً يا صديقي
شاهد النسخة الأصليةرد0
BrokenYieldvip
· 07-13 12:14
دورة ضجيج أخرى حول zk... لقد رأينا هذا الفيلم من قبل في عام 2019 ونعلم جميعًا كيف انتهى ذلك، عذرًا.
شاهد النسخة الأصليةرد0
SchrodingerWalletvip
· 07-13 12:12
هل استيقظ ZKEVM مرة أخرى؟
شاهد النسخة الأصليةرد0
MissedTheBoatvip
· 07-13 12:09
كتبت لفترة طويلة ولم يكن أفضل من الاندفاع إلى منطقة zk
شاهد النسخة الأصليةرد0
  • تثبيت