تفسيرzk-SNARKs و zk-STARKs

مشاركة
Copied to clipboard!
تفسيرzk-SNARKs و zk-STARKs
الإستماع الى هذه المقالة
00:00 / 00:00

لطالما كانت الخصوصية تُعتبر ميزة قيّمة في مجتمع العملات الرقمية. فهي مقدمة في مجال التبادل و شئ ضروري لشكل من النقود يستخدم على نطاق واسع. وبالمثل لا يرغب معظم مالكي العملات الرقمية في أن تكون ممتلكاتهم وتاريخ معاملاتهم عامًا تمامًا. من بين تقنيات التشفير المتنوعة التي تهدف إلى توفير الخصوصية للبلوكشين فإن براهين zk-SNARK و zk-STARK يعتبران مثالان جديران بالملاحظة.

كلمة zk-SNARK هي إختصار لـ (zero-knowledge succinct non-interactive argument of knowledge) و zk-STARK هي إختصار لـ(zero-knowledge succinct transparent argument of knowledge). يتم بالفعل استخدام إستخدام براهين Zk-SNARK في Zcash على نظام دفع JP Morgan Chase القائم على البلوكشين كطريقة لمصادقة العملاء إلى الخوادم بشكل آمن. لكن في الوقت الذي حققت فيه SNKK-ZARK تقدمًا كبيرًا لكونها راسخة و مستخدمة، يتم الآن وصف بروتوكولات Zk-STARK باعتبارها النسخة الجديدة والمحسّنة من البروتوكول والتي تتصدى للعديد من العيوب السابقة لـ zk-SNARKs.


حكاية كهف على بابا

في عام 1990، تم نشر ورقة بعنوان "كيفية شرح بروتوكولات المعرفة الصفرية لأطفالك" من قِبل عالم التشفير Jean-Jacques Quisquater (مع متعاونين آخرين). تقدم هذه الورقة مفهوم برهان ZK مع المثل الذي ينطوي على كهف علي بابا. تم تعديل المثل عدة مرات ولدينا الآن اختلافات متعددة منذ إنشائه. ومع ذلك، فإن المعلومات الأساسية لا ذالت واحدة بشكل طبيعي.

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

تفسيرzk-SNARKs و zk-STARKs

بعد فترة يمشي بوب عند المدخل ويصيح الجانب الذي يريد أن تظهر فيه أليس من (المسار 2 في هذه الحالة).

تفسيرzk-SNARKs و zk-STARKs

إذا كانت أليس حقا تعرف الكلمات السرية، سوف تظهر عندما ينطق بوب أسماء الممرات

تفسيرzk-SNARKs و zk-STARKs

يمكن تكرار العملية برمتها عدة مرات كطريقة للتأكيد على أن أليس لم تختار المسار الصحيح عن طريق الحظ. 

يوضح مثال كهف علي بابا مفهوم البراهين المعرفة الصفرية والتي هي جزء من بروتوكولات zk-SNARK و zk-STARK. يمكن أيضا استخدام براهين لإثبات معرفة بعض المعلومات دون الكشف عنها.


zk-SNARKs

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

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

ضمن اختصار SNARK، تعني كلمة "succinct" أي "إيجاز" باللغة العربية أن هذه البراهين صغيرة الحجم ويمكن التحقق منها بسرعة. و “Non-interactive” أي "غير تفاعلية" باللغة العربية يعني أن هناك تفاعل بسيط أو ضئيل بين القائم بالتدقيق والمؤيد.

تتطلب الإصدارات القديمة من بروتوكولات المعرفة الصفرية عادةً أن يثبت المؤيد والمدقق الاتصال وهكذا يعتبر بروتوكولات zk تفاعلية / Interactive. ولكن في الإنشاءات تعتبر غير تفاعلية non-interactive حيث لا يتعين على المحرضين والمحقين سوى تبادل دليل واحد فقط.

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

على الرغم من أن الإعداد العام الأولي أمر أساسي لتطبيقات zk-SNARK اليوم، إلا أن الباحثون يعملون على إيجاد بدائل أخرى كطريقة لتقليل مقدار الثقة المطلوبة في العملية. تعد مرحلة الإعداد الأولي مهمة في منع الإنفاق المزيّف لأنه إذا كان شخص ما لديه حق الوصول إلى الطريقة العشوائية التي تولّد المعلمات إذا فيمكنه إنشاء دلائل زائفة تبدو صالحة للمدقق. في Zcash ، تُعرف مرحلة الإعداد الأولي باسم "Parameter Generation Ceremony" أي مراسم توليد المعلمات.

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

بينما الجزء الأخير من اختصار الكلمة "of Knowledge" يعني أنه من غير الممكن أن يقوم القائم بالإثبات ببناء دليل دون أن يكون لديه بالفعل المعرفة (أو الشهادة) لدعم بيانهم.

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


zk-STARKs

تم إنشاء zk-STARKs كنسخة بديلة من براهين zk-SNARK وتعتبر بديل أسرع وأرخص للتكنولوجيا. ولكن الأهم من ذلك، لا يتطلب zk-STARKs الإعداد الأولي الموثوق به (وبالتالي فإن حرف "T" للـ transparent أي للشفافية).

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

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

من الواضح أن كلا من zk-SNARKS و zk-STARKs يعارض القلق المتزايد فيما يتعلق بالخصوصية. في إطار عالم العملات الرقمية تمتلك هذه البروتوكولات إمكانيات كبيرة وقد تكون سبيلاً رائداً نحو التبني السائد.

Loading