في السنوات الأخيرة، شهدت صناعة البلوكشين نموًا انفجاريًا في مشاريع إثبات المعرفة الصفرية (ZKP)، وخاصة في مجالات توسيع القدرة وحماية الخصوصية. ومع ذلك، نظرًا للطبيعة الرياضية العالية لـ ZKP، فإن فهمه بعمق يمثل تحديًا معينًا لعشاق التشفير العاديين. ستقوم هذه المقالة بتوضيح نظرية ZKP وتطبيقاته من البداية، واستكشاف تأثيره وقيمته على صناعة التشفير كجزء من سلسلة.
واحد، تطور zk-SNARKs
نظام zk-SNARKs الحديث نشأ في عام 1985 من نظرية أنظمة الإثبات التفاعلية التي اقترحها Goldwasser وMicali وRackoff. تبحث هذه النظرية في الحد الأدنى من كمية المعرفة التي يجب تبادلها لإثبات صحة بيان ما من خلال عدة جولات من التفاعل في نظام تفاعلي. إذا كان من الممكن إكمال الإثبات دون الكشف عن أي معلومات إضافية، يُطلق عليه اسم zk-SNARKs.
كانت أنظمة إثبات المعرفة الصفرية المبكرة تعاني من نقص في الكفاءة والعملية، وكانت تقتصر بشكل رئيسي على المستوى النظري. على مدار العقد الماضي، ومع الاستخدام الواسع للتشفير في مجال العملات المشفرة، أصبحت إثباتات المعرفة الصفرية تدريجياً اتجاه بحث مهم. ومن بين ذلك، يعد تطوير بروتوكولات إثبات المعرفة الصفرية العامة وغير التفاعلية ذات حجم إثبات صغير واحداً من الأهداف الرئيسية.
كان الاختراق المهم في إثبات عدم المعرفة هو ما قدمه Groth في عام 2010 من إثبات عدم المعرفة القصير غير التفاعلي القائم على الاقتران، مما وضع الأساس النظري لـ zk-SNARKs. في عام 2015، قام مشروع Zcash بتطبيق إثبات عدم المعرفة لأول مرة في حماية خصوصية المعاملات، مما أدى إلى دمج zk-SNARKs مع العقود الذكية.
بعد ذلك، استمرت مجموعة من الإنجازات الأكاديمية في دفع تطوير zk-SNARKs:
في عام 2013، تم ضغط بروتوكول بينوكيو لوقت الإثبات والتحقق
في عام 2016، قامت خوارزمية Groth16 بتقليص حجم الإثبات وزيادة كفاءة التحقق.
في عام 2017 تم تقديم Bulletproofs كدليل زيرو-معرفة غير تفاعلي قصير.
في عام 2018، تم تنفيذ zk-STARKs كنظام إثبات بدون إعداد موثوق
بالإضافة إلى ذلك، فإن الخوارزميات الجديدة مثل PLONK و Halo2 تستمر في تحسين zk-SNARKs.
ثانياً، التطبيقات الرئيسية للـ zk-SNARKs
zk-SNARKs تُستخدم حالياً بشكل رئيسي في اتجاهين: حماية الخصوصية والتوسع.
حماية الخصوصية
حظيت مشاريع التداول الخاصة المبكرة مثل Zcash و Monero باهتمام كبير، ولكن نظرًا لعدم وجود الطلب الفعلي المتوقع، فقد تراجعت حاليًا إلى الصف الثاني.
على سبيل المثال، تتضمن عملية تداول Zcash خطوات مثل: إعداد النظام، توليد المفاتيح، سك العملة، تداول Pour، التحقق والاستلام. ومع ذلك، لا تزال Zcash تواجه بعض القيود، مثل صعوبة التوسع بناءً على نموذج UTXO، وانخفاض معدل استخدام المعاملات الخاصة في الواقع.
تستخدم Tornado Cash تصميم بركة خلط رئيسية واحدة، استنادًا إلى شبكة Ethereum، مما يوفر قابلية استخدام أفضل. يمكنها ضمان أن العملات المودعة فقط يمكن سحبها، وأن كل عملة يمكن سحبها مرة واحدة فقط، مع ميزات مثل الربط مع nullifier.
توسيع
يمكن تحقيق توسيع ZK في شبكة من الطبقة الأولى ( مثل Mina ) أو في شبكة من الطبقة الثانية ( أي ZK rollup ). تشمل ZK rollup بشكل رئيسي نوعين من الأدوار: Sequencer و Aggregator: Sequencer مسؤول عن تجميع المعاملات، و Aggregator مسؤول عن دمج المعاملات وإنشاء zk-SNARKs، لتحديث شجرة حالة الإيثريوم.
تتمثل مزايا ZK rollup في انخفاض الرسوم، والسرعة في إنهاء المعاملات، وحماية الخصوصية، ولكنها تواجه أيضًا تحديات مثل حجم الحسابات الكبير والحاجة إلى إعداد موثوق. تشمل المشاريع الرئيسية لـ ZK rollup حاليًا StarkNet وzkSync وAztec Connect وPolygon Hermez/Miden وLoopring وScroll، مع التركيز على الاختيار بين SNARK/STARK والتوافق مع EVM.
تعتبر التوافقية مع EVM واحدة من التحديات الكبيرة التي تواجه أنظمة zk-SNARKs. اختارت بعض المشاريع تطوير آلات افتراضية ولغات برمجة مخصصة، بينما تركز أخرى على تحقيق التوافق التام مع Solidity. لقد وفرت التقدم السريع الأخير في التوافق مع EVM المزيد من الخيارات للمطورين.
ثلاثة، المبادئ الأساسية لـ ZK-SNARKs
ZK-SNARK( zk-SNARKs) هو واحد من أكثر أنظمة الإثباتات الصفرية استخداماً في الوقت الحالي. يتمتع بالخصائص التالية:
zk-SNARKs: لا تكشف عن معلومات إضافية
بسيط: حجم التحقق صغير
غير تفاعلي: لا حاجة لتفاعلات متعددة
الموثوقية: لا يمكن للمُثبتين ذوي القدرة الحاسوبية المحدودة تزوير الإثباتات
المعرفة: يجب على المُثبت أن يعرف المعلومات الصحيحة لبناء الإثبات
تتضمن عملية إثبات zk-SNARKs من إصدار Groth16 ما يلي:
تحويل المشكلة إلى دائرة
تحويل الدائرة إلى شكل R1CS
تحويل R1CS إلى شكل QAP
إنشاء إعدادات موثوقة، توليد مفتاح الإثبات ومفتاح التحقق
توليد والتحقق من إثباتات zk-SNARKs
هذه العملية وضعت الأساس للتطبيق الفعلي لـ zk-SNARKs. ستتناول المقالات اللاحقة المزيد من المناقشة حول مبادئ zk-SNARKs، حالات الاستخدام، وكذلك المقارنة مع zk-STARKs وغيرها من المحتويات.
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
تسجيلات الإعجاب 15
أعجبني
15
4
مشاركة
تعليق
0/400
just_here_for_vibes
· 07-22 19:36
لقد أصبحت zkp مشهورة لعدة جولات الآن
شاهد النسخة الأصليةرد0
RunWithRugs
· 07-21 01:12
اقتحام hiddenvault اقتحام麻了
شاهد النسخة الأصليةرد0
ZKProofster
· 07-21 01:11
تقنيًا، فإن أناقة snark لا تزال لا مثيل لها بصراحة
تحليل تقنية zk-SNARKs: المبادئ، التطبيقات وتأثيرها على الصناعة
zk-SNARKs: من المبدأ إلى التطبيق
المقدمة
في السنوات الأخيرة، شهدت صناعة البلوكشين نموًا انفجاريًا في مشاريع إثبات المعرفة الصفرية (ZKP)، وخاصة في مجالات توسيع القدرة وحماية الخصوصية. ومع ذلك، نظرًا للطبيعة الرياضية العالية لـ ZKP، فإن فهمه بعمق يمثل تحديًا معينًا لعشاق التشفير العاديين. ستقوم هذه المقالة بتوضيح نظرية ZKP وتطبيقاته من البداية، واستكشاف تأثيره وقيمته على صناعة التشفير كجزء من سلسلة.
واحد، تطور zk-SNARKs
نظام zk-SNARKs الحديث نشأ في عام 1985 من نظرية أنظمة الإثبات التفاعلية التي اقترحها Goldwasser وMicali وRackoff. تبحث هذه النظرية في الحد الأدنى من كمية المعرفة التي يجب تبادلها لإثبات صحة بيان ما من خلال عدة جولات من التفاعل في نظام تفاعلي. إذا كان من الممكن إكمال الإثبات دون الكشف عن أي معلومات إضافية، يُطلق عليه اسم zk-SNARKs.
كانت أنظمة إثبات المعرفة الصفرية المبكرة تعاني من نقص في الكفاءة والعملية، وكانت تقتصر بشكل رئيسي على المستوى النظري. على مدار العقد الماضي، ومع الاستخدام الواسع للتشفير في مجال العملات المشفرة، أصبحت إثباتات المعرفة الصفرية تدريجياً اتجاه بحث مهم. ومن بين ذلك، يعد تطوير بروتوكولات إثبات المعرفة الصفرية العامة وغير التفاعلية ذات حجم إثبات صغير واحداً من الأهداف الرئيسية.
كان الاختراق المهم في إثبات عدم المعرفة هو ما قدمه Groth في عام 2010 من إثبات عدم المعرفة القصير غير التفاعلي القائم على الاقتران، مما وضع الأساس النظري لـ zk-SNARKs. في عام 2015، قام مشروع Zcash بتطبيق إثبات عدم المعرفة لأول مرة في حماية خصوصية المعاملات، مما أدى إلى دمج zk-SNARKs مع العقود الذكية.
بعد ذلك، استمرت مجموعة من الإنجازات الأكاديمية في دفع تطوير zk-SNARKs:
بالإضافة إلى ذلك، فإن الخوارزميات الجديدة مثل PLONK و Halo2 تستمر في تحسين zk-SNARKs.
ثانياً، التطبيقات الرئيسية للـ zk-SNARKs
zk-SNARKs تُستخدم حالياً بشكل رئيسي في اتجاهين: حماية الخصوصية والتوسع.
حماية الخصوصية
حظيت مشاريع التداول الخاصة المبكرة مثل Zcash و Monero باهتمام كبير، ولكن نظرًا لعدم وجود الطلب الفعلي المتوقع، فقد تراجعت حاليًا إلى الصف الثاني.
على سبيل المثال، تتضمن عملية تداول Zcash خطوات مثل: إعداد النظام، توليد المفاتيح، سك العملة، تداول Pour، التحقق والاستلام. ومع ذلك، لا تزال Zcash تواجه بعض القيود، مثل صعوبة التوسع بناءً على نموذج UTXO، وانخفاض معدل استخدام المعاملات الخاصة في الواقع.
تستخدم Tornado Cash تصميم بركة خلط رئيسية واحدة، استنادًا إلى شبكة Ethereum، مما يوفر قابلية استخدام أفضل. يمكنها ضمان أن العملات المودعة فقط يمكن سحبها، وأن كل عملة يمكن سحبها مرة واحدة فقط، مع ميزات مثل الربط مع nullifier.
توسيع
يمكن تحقيق توسيع ZK في شبكة من الطبقة الأولى ( مثل Mina ) أو في شبكة من الطبقة الثانية ( أي ZK rollup ). تشمل ZK rollup بشكل رئيسي نوعين من الأدوار: Sequencer و Aggregator: Sequencer مسؤول عن تجميع المعاملات، و Aggregator مسؤول عن دمج المعاملات وإنشاء zk-SNARKs، لتحديث شجرة حالة الإيثريوم.
تتمثل مزايا ZK rollup في انخفاض الرسوم، والسرعة في إنهاء المعاملات، وحماية الخصوصية، ولكنها تواجه أيضًا تحديات مثل حجم الحسابات الكبير والحاجة إلى إعداد موثوق. تشمل المشاريع الرئيسية لـ ZK rollup حاليًا StarkNet وzkSync وAztec Connect وPolygon Hermez/Miden وLoopring وScroll، مع التركيز على الاختيار بين SNARK/STARK والتوافق مع EVM.
تعتبر التوافقية مع EVM واحدة من التحديات الكبيرة التي تواجه أنظمة zk-SNARKs. اختارت بعض المشاريع تطوير آلات افتراضية ولغات برمجة مخصصة، بينما تركز أخرى على تحقيق التوافق التام مع Solidity. لقد وفرت التقدم السريع الأخير في التوافق مع EVM المزيد من الخيارات للمطورين.
ثلاثة، المبادئ الأساسية لـ ZK-SNARKs
ZK-SNARK( zk-SNARKs) هو واحد من أكثر أنظمة الإثباتات الصفرية استخداماً في الوقت الحالي. يتمتع بالخصائص التالية:
تتضمن عملية إثبات zk-SNARKs من إصدار Groth16 ما يلي:
هذه العملية وضعت الأساس للتطبيق الفعلي لـ zk-SNARKs. ستتناول المقالات اللاحقة المزيد من المناقشة حول مبادئ zk-SNARKs، حالات الاستخدام، وكذلك المقارنة مع zk-STARKs وغيرها من المحتويات.