SNARK सुरक्षा और प्रदर्शन प्लेटोब्लॉकचैन डेटा इंटेलिजेंस। लंबवत खोज। ऐ.

SNARK सुरक्षा और प्रदर्शन

SNARK (ज्ञान का संक्षिप्त गैर-संवादात्मक तर्क) एक क्रिप्टोग्राफ़िक उपकरण है जो सिस्टम डिज़ाइन में रोमांचक नई संभावनाओं को खोलता है, विशेष रूप से विकेंद्रीकृत सेटिंग्स में। SNARKs डेटा को अविश्वसनीय संस्थाओं द्वारा संसाधित करने की अनुमति देते हैं, जो तब साबित कर सकते हैं कि डेटा वैध है और सही ढंग से संसाधित किया गया है। इसे साबित करने का एक भोला तरीका यह होगा कि डेटा को प्रकाशित किया जाए, जो किसी को भी इसकी वैधता की जांच करने और इसे सीधे संसाधित करने की अनुमति देता है। 

एक SNARK समान प्रभाव प्राप्त करता है, लेकिन बेहतर लागत के साथs सत्यापनकर्ताओं के लिए. उदाहरण के लिए, एक परत-दो (L2) सत्यापन योग्य रोलअप में, एक रोलअप सेवा ब्लॉकचेन लेनदेन को संसाधित करती है। सेवा समय-समय पर अपने उपयोगकर्ताओं के खाते की शेष राशि को परत-एक ब्लॉकचेन में पोस्ट करती है। हर बार जब यह शेष राशि के लिए एक अद्यतन पोस्ट करता है, तो यह एक SNARK प्रमाण जोड़ता है कि यह वैध लेन-देन के एक क्रम को जानता है जिसने पुराने खाते के शेष को अद्यतन में बदल दिया। इस तरह, ब्लॉकचैन सत्यापनकर्ताओं को लेन-देन की वैधता (जैसे, प्रत्येक लेनदेन के लिए एक डिजिटल हस्ताक्षर की जाँच) की जाँच करने की कड़ी मेहनत नहीं करनी पड़ती है और न ही अद्यतन शेष राशि की गणना करने के लिए लेन-देन को स्पष्ट रूप से संसाधित करना पड़ता है।  

My पिछले पोस्ट SNARK सिद्धातों के प्रदर्शन पर केंद्रित - SNARK प्रयोज्यता का प्राथमिक निर्धारक। SNARK प्रोवर चलाना कम्प्यूटेशनल रूप से गहन हो सकता है, इस हद तक कि बड़े पैमाने पर संगणना के लिए एक प्रमाण उत्पन्न करना संभव हो सकता है, SNARK सत्यापन आमतौर पर डेटा की सीधे जाँच और प्रसंस्करण की तुलना में बहुत सस्ता है। हालाँकि, SNARK सत्यापन लागत काफी भिन्न होती है। यह पोस्ट इन लागतों को खोलती है और विभिन्न SNARKs के सुरक्षा गुणों की तुलना करती है। 

विशेष रूप से, मैं समझाता हूं कि प्रशंसनीय पोस्ट-क्वांटम सुरक्षा (PQ-SNARKs) के साथ व्यावहारिक SNARKs में, सुरक्षा और सत्यापन लागतों के बीच एक महत्वपूर्ण तनाव है। इसके अलावा, कुछ मामलों में, इस तनाव को वर्तमान में सुरक्षा पर सत्यापन लागतों के पक्ष में हल किया जा रहा है।

SNARKs को अपनी क्षमता का एहसास करने के लिए, तैनात सिस्टम सुरक्षित होना चाहिए और उपयोगकर्ताओं को उनकी सुरक्षा में विश्वास होना चाहिए। मैं पोस्ट को समाप्त करने के लिए सरल कार्रवाइयों का प्रस्ताव करता हूं जो कि वेब3 समुदाय लंबी अवधि के लिए इन गुणों को सुनिश्चित करने में सहायता के लिए ले सकता है। 

मात्रात्मक सुरक्षा उपाय 

एक SNARK सुरक्षित है अगर यह कम्प्यूटेशनल रूप से एक झूठे बयान का एक ठोस प्रमाण प्रस्तुत करने के लिए अक्षम है। उदाहरण के लिए, L2 रोलअप के संदर्भ में, मेरे फंड को चुराने की इच्छा रखने वाला एक हमलावर फॉर्म के झूठे बयान को साबित करना चाहेगा: "मैं एक डिजिटल हस्ताक्षरित लेनदेन जानता हूं जो जस्टिन की सभी संपत्तियों को मेरे अपने खाते में स्थानांतरित करता है।" 

SNARK के सुरक्षा स्तर को उस कार्य की मात्रा से मापा जाता है जो एक झूठे बयान का एक ठोस प्रमाण खोजने के लिए किया जाना चाहिए। डिजिटल सिग्नेचर जैसे अन्य क्रिप्टोग्राफ़िक प्रिमिटिव के समान, इस कार्य की मात्रा के लघुगणक को "बिट्स ऑफ़ सिक्योरिटी" कहा जाता है। उदाहरण के लिए, सुरक्षा के 30 बिट का अर्थ है कि 230 SNARK पर हमला करने के लिए ≈ 1 बिलियन "काम के कदम" की आवश्यकता होती है। यह स्वाभाविक रूप से वास्तविक दुनिया की सुरक्षा का एक अनुमानित माप है क्योंकि काम के एक चरण की धारणा अलग-अलग हो सकती है, और स्मृति आवश्यकताओं या समानता के अवसरों जैसे व्यावहारिक विचारों पर विचार नहीं किया जाता है।

और गुणात्मक वाले

बिट्स ऑफ सिक्योरिटी एक है मात्रात्मक एक SNARK की सुरक्षा का उपाय। SNARK भी उनमें भिन्न होते हैं गुणात्मक सुरक्षा गुण। 

उदाहरण के लिए, कुछ SNARK को एक संरचित सिद्ध कुंजी उत्पन्न करने के लिए एक विश्वसनीय सेटअप समारोह की आवश्यकता होती है। SNARKs जिन्हें किसी विश्वसनीय सेटअप की आवश्यकता नहीं होती है, उन्हें कहा जाता है पारदर्शी। 

एक गैर-पारदर्शी SNARK के सुरक्षित होने के लिए, आमतौर पर समारोह में कम से कम एक प्रतिभागी को ईमानदारी से व्यवहार करना पड़ता है, जिसका अर्थ है कि उन्होंने एक "ट्रैपडोर" बनाया और फिर उसे छोड़ दिया, जिसे अगर अन्य सभी प्रतिभागियों के ट्रैपडोर के साथ जोड़ दिया जाए, तो यह आसान हो जाएगा। किसी भी झूठे बयान के लिए SNARK के "सबूत" को खोजने के लिए। विश्वसनीय सेटअप हैं जा रहा है रन इस धारणा को जितना संभव हो उतना हल्का करने के लिए सैकड़ों या हजारों प्रतिभागियों के साथ। 

SNARK भी क्वांटम हमलों के प्रति अपनी संवेदनशीलता में भिन्न हैं। विशेष रूप से, कई SNARKs (जैसे, ग्रोथ16, प्लोनके, मार्लिन, बुलेटप्रूफ, नवतारा) इस धारणा पर भरोसा करते हैं कि असतत लघुगणक की गणना करना मुश्किल है (और कुछ मामलों में, अतिरिक्त धारणाएं भी)। असतत लघुगणक की गणना कुछ ऐसा है जो क्वांटम कंप्यूटर कुशलता से करने में सक्षम होंगे। इसलिए, ये SNARK पोस्ट-क्वांटम सुरक्षित (गैर-PQ) नहीं हैं। 

जबकि पोस्ट-क्वांटम पर स्विच करने के लिए तत्काल प्रयास चल रहे हैं एन्क्रिप्शन योजनाएं, यह मुख्य रूप से एन्क्रिप्टेड संदेशों को भविष्य में कई दशकों तक गुप्त रखने की आवश्यकता से प्रेरित है। एक विरोधी जो आज एक इंटरसेप्टेड संदेश को संग्रहीत करता है और क्वांटम कंप्यूटर के आने का इंतजार करता है, कहते हैं, पचास साल, पचास साल पुराने संदेश को डिक्रिप्ट करने के लिए कंप्यूटर का उपयोग कर सकता है। SNARKs की स्थिति काफी अलग है। गैर-पीक्यू स्नार्क के उपयोग को आज भविष्य में ब्लॉकचेन की सुरक्षा से समझौता नहीं करना चाहिए, भले ही क्वांटम कंप्यूटर उस समय तक आ जाएं। 

बहुपद प्रतिबद्धता

सभी SNARK एक क्रिप्टोग्राफ़िक प्रिमिटिव का उपयोग करते हैं जिसे a के रूप में जाना जाता है बहुपद प्रतिबद्धता योजना, और यह घटक अक्सर एक प्रदर्शन अड़चन होता है. (विवरण के लिए, मेरा देखें पिछले पोस्ट।) इसके अलावा, एक SNARK की पारदर्शिता और प्रशंसनीय पोस्ट-क्वांटम सुरक्षा पूरी तरह से बहुपद प्रतिबद्धता योजना द्वारा निर्धारित की जाती है जिसका वह उपयोग करता है। 

एक प्रमुख उदाहरण तथाकथित है KZG बहुपद प्रतिबद्धता, जिनका उपयोग किया जाता है प्लोनके, मार्लिन, गंभीर प्रयास। KZG प्रतिबद्धताएं न तो पारदर्शी हैं और न ही पोस्ट-क्वांटम सुरक्षित हैं। अन्य वचनबद्धता योजनाएँ पारदर्शी हैं, लेकिन पोस्ट-क्वांटम नहीं, जिनमें शामिल हैं: बुलेटप्रूफ, hyrax, तथा हलकी नाव

अभी भी अन्य योजनाएं पारदर्शी और प्रशंसनीय रूप से पोस्ट-क्वांटम दोनों हैं। इसमे शामिल है मुफ़्त, प्रकाश, लाइगेरो++, हिम्मत हार जाना, तथा ओरियन. ये सभी योजनाएँ त्रुटि-सुधार कोड पर आधारित हैं। हैशिंग एकमात्र क्रिप्टोग्राफ़िक आदिम है जिसका वे उपयोग करते हैं। वे निम्नलिखित संपत्ति भी साझा करते हैं: सत्यापन लागत (हैश मूल्यांकन और क्षेत्र संचालन की संख्या से मापा जाता है) सुरक्षा के बिट्स की संख्या के साथ रैखिक रूप से बढ़ती है।

मोटे तौर पर, इन पोस्ट-क्वांटम बहुपद प्रतिबद्धताओं का एक "पुनरावृत्ति" सुरक्षा के केवल एक छोटी संख्या (2-4 कहते हैं) प्राप्त करता है। इसलिए सुरक्षा स्तर को "प्रवर्धित" करने के लिए प्रोटोकॉल को कई बार दोहराया जाना चाहिए, प्रत्येक पुनरावृत्ति के साथ सत्यापन लागत बढ़ रही है। इस प्रकार, PQ-SNARKs (और इसलिए ब्लॉकचैन अनुप्रयोगों में गैस की लागत) में सत्यापन लागत को नियंत्रित करने के लिए प्रोटोकॉल डिजाइनरों को सुरक्षा स्तर कम रखने के लिए प्रोत्साहित किया जाता है। 

दुर्लभ के साथ अपवादठोस सुरक्षा और सत्यापन लागत के बीच यह तनाव गैर-पीक्यू SNARKs (पारदर्शी और गैर-पारदर्शी समान) में उत्पन्न नहीं होता है। गैर-PQ-SNARK अण्डाकार वक्र समूहों का उपयोग करते हैं जिसमें असतत लघुगणक की गणना करना कठिन माना जाता है, और उनके सुरक्षा स्तर का उपयोग समूह द्वारा निर्धारित किया जाता है। उपयुक्त अण्डाकार वक्र समूह का आकार, और इसलिए प्रत्येक समूह संचालन की लागत वांछित सुरक्षा स्तर के साथ बढ़ती है। हालांकि संख्या एक प्रमाण में समूह तत्वों की संख्या समूह की पसंद से स्वतंत्र होती है। 

PQ-SNARKs में, न केवल हैश मूल्यांकन का आकार वांछित सुरक्षा स्तर के साथ रैखिक रूप से बढ़ता है, बल्कि प्रमाण में शामिल मूल्यांकन की संख्या और सत्यापनकर्ता द्वारा किया जाता है। 

तैनात SNARKs में ठोस सत्यापनकर्ता लागत और सुरक्षा

तैनात SNARKs की ठोस सत्यापनकर्ता लागत और सुरक्षा स्तर काफी भिन्न होते हैं। यहाँ कुछ उदाहरण हैं:

सत्यापनकर्ता लागत 

My पिछले पोस्ट ठोस सत्यापन लागतों के दो उदाहरणों का उल्लेख किया: प्लोनके सबूत लागत के अंतर्गत 300,000 गैस एथेरियम पर सत्यापित करने के लिए, जबकि स्टार्कवेयर के प्रमाणों की कीमत लगभग 5 मिलियन गैस है। स्टार्कवेयर के प्रमाण पारदर्शी और प्रशंसनीय रूप से पोस्ट-क्वांटम हैं जबकि प्लॉनके नहीं हैं। हालांकि, जैसा कि आगे बताया गया है, स्टार्कवेयर के प्रूफ एथेरियम पर प्लॉनके प्रूफ की तुलना में बहुत कम सुरक्षा स्तर पर चलाए जा रहे हैं।

पुख्ता सुरक्षा

एथेरियम प्रीकंपाइल्स के साथ एकमात्र अण्डाकार वक्र को altbn128 कहा जाता है, इसलिए यह एथेरियम उपयोग पर तैनात सभी गैर-पीक्यू SNARKs वक्र है, जिसमें शामिल हैं एज़्टेक'रेत zkSync'एस। यह वक्र - और इसलिए इसका उपयोग करने वाले SNARK भी तैनात हैं - मूल रूप से माना जाता था कि यह लगभग 128 बिट सुरक्षा प्रदान करता है। लेकिन के कारण बेहतर हमले (जिसका सटीक रनटाइम है निर्धारित करने में मुश्किल), वक्र को अब व्यापक रूप से 100 से 110 बिट्स की सुरक्षा प्रदान करने वाला माना जाता है। 

ईआईपी हैं के अंतर्गत विचार अलग-अलग वक्रों के लिए प्रीकंपाइल पेश करने के लिए जो अभी भी 128 बिट सुरक्षा प्रदान करने के लिए माना जाता है। ऐसे वक्र हैं पहले से ही इस्तेमाल किया हुआ ZCash, Algorand, Dfinity, Filecoin और Aleo सहित गैर-एथेरियम परियोजनाओं के SNARKs में। 

इसके विपरीत, ऑन-चेन डेटा के अनुसार, StarkWare के PQ-SNARKs (इसके तथाकथित SHARP सिस्टम में, SHARed Prover के लिए संक्षिप्त) को 80 बिट सुरक्षा को लक्षित करने के लिए कॉन्फ़िगर किया गया है। यह सुरक्षा स्तर एफआरआई की सांख्यिकीय सुदृढ़ता के बारे में कुछ अनुमानों के तहत है (जिसे मैं इस पोस्ट में बाद में संबोधित करूंगा)। 

इस संदर्भ में "80 बिट्स ऑफ सिक्योरिटी" शब्द अस्पष्ट है, इसलिए मुझे इसे अनपैक करने दें। मोटे तौर पर, इसका मतलब है कि एक हमलावर हैश फ़ंक्शन 2 का मूल्यांकन करके एक झूठे बयान का एक ठोस प्रमाण प्रस्तुत कर सकता है80 टाइम्स (अर्थात् KECCAK-256, एथेरियम द्वारा उपयोग किया जाने वाला हैश फ़ंक्शन)। अधिक सटीक होने के लिए, एक हमलावर जो प्रदर्शन करने को तैयार है 2k हैश मूल्यांकन मोटे तौर पर 2 की संभावना के साथ एक ठोस प्रमाण प्रस्तुत कर सकता हैk-80. उदाहरण के लिए, 2 के साथ70 हैश मूल्यांकन, लगभग 2 की संभावना के साथ एक झूठे बयान का एक SNARK "प्रमाण" पा सकता है-10 = 1 / 1024। 

यह धारणा अन्य संदर्भों में "80 बिट्स ऑफ सिक्योरिटी" शब्द की तुलना में कमजोर है। उदाहरण के लिए, एक टक्कर-प्रतिरोधी हैश फ़ंक्शन (CRHFs) 80 बिट सुरक्षा के लिए कॉन्फ़िगर किया गया है जो 160-बिट आउटपुट का उत्पादन करेगा। यदि हैश फ़ंक्शन अच्छी तरह से डिज़ाइन किया गया है, तो सबसे तेज़ टक्कर खोजने की प्रक्रिया होगी जन्मदिन का हमला, एक ब्रूट-फोर्स प्रक्रिया जो लगभग 2 के साथ टकराव का पता लगा सकती है160/2 = 280 हैश मूल्यांकन। हालाँकि, 2 के साथk हैश मूल्यांकन, जन्मदिन के हमले में केवल 2 की संभावना के साथ टक्कर मिलेगी2k-160

उदाहरण के लिए, एक्सएनएनएक्स70 हैश मूल्यांकन 2 की संभावना के साथ टक्कर देगा-20  ≈ 1/1,000,000। यह एक हमलावर की 1/1,000 संभावना से बहुत कम है जो सुरक्षा के 80 बिट्स के लिए कॉन्फ़िगर किए गए PQ-SNARK प्रूफ को फोर्ज करता है। 

यह अंतर किसी हमले को करने के आकर्षण को काफी हद तक बदल सकता है। उदाहरण के लिए, कल्पना करें कि एक हमलावर के पास $100K का बजट है, जो 2 खरीद सकता है70 हैश मूल्यांकन। और मान लीजिए कि अगर हमलावर सफल हो जाता है, तो अदायगी $200 मिलियन है। सुरक्षा के 80 बिट्स के लिए कॉन्फ़िगर किए गए PQ-SNARK के विरुद्ध हमले का अपेक्षित मूल्य (1/1,000) * $200 मिलियन, या $200K - लागत का दोगुना है। यदि सफलता की संभावना केवल 1/1,000,000 थी, जैसा कि CRHF के साथ होता है, तो हमले का अपेक्षित मूल्य केवल $200 होगा। 

"80 बिट्स ऑफ सिक्योरिटी" की दो धारणाएं भी स्वतंत्र हमलों के लिए उनकी मजबूती में नाटकीय रूप से भिन्न हैं। उदाहरण के लिए, मान लीजिए कि 1,000 स्वतंत्र पार्टियां 2 प्रदर्शन करके PQ-SNARK पर हमला करती हैं70 हैश मूल्यांकन। चूंकि प्रत्येक लगभग 1/1,000 की संभावना के साथ सफल होता है, उनमें से कम से कम एक के सफल होने की काफी संभावना है। यह मामला नहीं होगा यदि प्रत्येक केवल 1/1,000,000 की संभावना के साथ सफल होता है।

अच्छी तरह से डिज़ाइन किए गए अण्डाकार वक्र समूहों से CRHFs के समान व्यवहार करने की उम्मीद की जाती है, जैसे कि जन्मदिन जैसे हमले पोलार्ड का आरओ एल्गोरिथम सबसे अच्छा जाना जाता है। इसका मतलब यह है कि 128 बिट सुरक्षा प्रदान करने वाले समूह में, 2k समूह संचालन को केवल 2 की प्रायिकता के साथ असतत लघुगणक समस्या के उदाहरण का समाधान देना चाहिए2k-256। उदाहरण के लिए, 270 समूह संचालन केवल 2 की एक खगोलीय रूप से छोटी संभावना के साथ एक असतत लघुगणक खोजेगा-116. इसके अलावा, प्रत्येक समूह का संचालन CRHF मूल्यांकन की तुलना में धीमा है। 

आज कितने हैश मूल्यांकन संभव हैं?

जनवरी 2020 में, कंप्यूटिंग की लागत सिर्फ 2 से कम है64 जीपीयू का उपयोग कर एसएचए-1 मूल्यांकन था $45,000. यह 2 की लागत डालता है70 GPU पर SHA-1 का मूल्यांकन कुछ मिलियन डॉलर (शायद एथेरियम मर्ज के बाद कम हो गया है, क्योंकि कार्य खनन के GPU-वर्चस्व वाले सबूत से दूर होने से GPU कंप्यूटिंग की मांग कम हो जाएगी, इसकी लागत कम हो जाएगी)। 

वैधता रोलअप के साथ पहले से ही उपयोगकर्ता निधियों में करोड़ों डॉलर जमा हैं, झूठे बयान का एक ठोस प्रमाण खोजने से कई मिलियन डॉलर का लाभ मिल सकता है। आक्रामक अनुमानों के तहत सुरक्षा के 80 बिट्स पर PQ-SNARK को कॉन्फ़िगर करने से लाभदायक हमलों और PQ-SNARK की अनुमानित सुरक्षा के बीच 10 बिट्स की जगह छूट जाती है।

एक अन्य डेटा बिंदु के रूप में, बिटकॉइन का नेटवर्क हैश रेट वर्तमान में लगभग 2 है64  प्रति सेकंड हैश मूल्यांकन, जिसका अर्थ है कि बिटकॉइन खनिक समग्र रूप से प्रदर्शन करते हैं 280 SHA-256 हर 18 घंटे में मूल्यांकन करता है। बेशक, यह आंख मारने वाली संख्या बिटकॉइन खनन के लिए एएसआईसी में भारी निवेश के कारण है। 

मान लें छह बिटकॉइन ब्लॉक प्रति घंटे बनाया गया, और प्रति ब्लॉक 6.25 बिटकॉइन का वर्तमान ब्लॉक इनाम दिया गया, ये 280 SHA-256 मूल्यांकन की लागत संभवतः $22,000 * 18 * 6 * 6.25 ≈ $15 मिलियन से कम है। अन्यथा, बिटकॉइन माइनिंग मौजूदा कीमतों पर लाभदायक नहीं होगी। 

एक स्वस्थ पारिस्थितिकी तंत्र के लिए प्रस्तावित कार्य

रोलअप में SNARKs का उपयोग करने का पूरा बिंदु ब्लॉकचैन स्केलेबिलिटी प्राप्त करना है, बिना उपयोगकर्ताओं को रोलअप सेवा पर आँख बंद करके भरोसा करने की आवश्यकता है। चूंकि रोलअप सेवा ने स्मार्ट अनुबंध लिखा है जो SNARK सत्यापनकर्ता के रूप में कार्य करता है, जनता को अनुबंध का निरीक्षण करने और यह पुष्टि करने में सक्षम होना चाहिए कि यह वास्तव में उपयुक्त कथनों के SNARK प्रमाणों की पुष्टि कर रहा है। यह सुनिश्चित करने के लिए कि रोलअप सेवा अपने स्वयं के उपयोगकर्ताओं को सेंसर करने में सक्षम नहीं है, स्मार्ट अनुबंध की सार्वजनिक जांच भी आवश्यक हो सकती है। सेंसरशिप-प्रतिरोध के लिए प्रस्तावित तरीकों के लिए रोलअप के स्मार्ट अनुबंध की आवश्यकता होती है, ताकि रोलअप सेवा उनके लेनदेन को संसाधित करने में विफल होने पर उपयोगकर्ताओं को अपने धन की निकासी के लिए मजबूर कर सके। 

इन प्रोटोकॉल की परिष्कृत प्रकृति को देखते हुए, सार्वजनिक जांच का यह प्रतिमान विशेषज्ञों पर खुले तौर पर और स्पष्ट रूप से तैनात अनुबंधों की सुरक्षा पर चर्चा करने के लिए कुछ बोझ डालता है। 

लेकिन PQ-SNARKs के साथ, विशेषज्ञों के लिए तैनात प्रोटोकॉल के सुरक्षा स्तर का पता लगाना भी मुश्किल हो सकता है क्योंकि सुरक्षा और सत्यापनकर्ता प्रदर्शन इन SNARKs के लिए तनाव में हैं: सुरक्षा स्तर (और सत्यापनकर्ता लागत) के आंतरिक मापदंडों पर निर्भर करता है। स्नार्क। और कम से कम स्टार्कवेयर के लिए स्मार्ट अनुबंध, ये पैरामीटर, कॉलd logBlowupFactor, प्रूफऑफवर्कबिट्स और n_Queries, सीधे स्मार्ट कॉन्ट्रैक्ट के कोड में निर्दिष्ट नहीं हैं, बल्कि सार्वजनिक डेटा के रूप में स्मार्ट कॉन्ट्रैक्ट में पास किए गए हैं। जहां तक ​​​​मुझे पता है, इन मापदंडों को ऑन-चेन जानकारी से पहचानने का सबसे आसान तरीका चार-चरणीय प्रक्रिया है: 

  1. देखने के लिए उपयुक्त स्मार्ट अनुबंध इथरस्कैन जैसे ब्लॉक एक्सप्लोरर पर, 
  2. एक पर क्लिक करें उचित "प्रमाण सत्यापित करें" लेनदेन
  3. लेन-देन के इनपुट डेटा को डिकोड करें, और
  4. पता करें कि कैसे करना है व्याख्या प्रमुख SNARK मापदंडों को सीखने के लिए डिकोड किए गए इनपुट डेटा जो एक साथ सुरक्षा स्तर निर्धारित करते हैं। 

इस अंतिम चरण के लिए लेन-देन को लागू करने के लिए उपयुक्त सॉलिडिटी कोड खोजने की आवश्यकता होती है, जो अपने आप में एक भ्रमित करने वाला कार्य हो सकता है। (जब मैं तैयारी कर रहा था सर्वेक्षण वार्ता इस गर्मी में रोलअप पर, Etherscan उपरोक्त चरण 2 के अनुसार प्रासंगिक इनपुट डेटा को SHARP सत्यापनकर्ता लेनदेन में डिकोड करने में सक्षम था। लेकिन यह अब काम नहीं कर रहा है।)

प्रस्ताव 1: जांच 

इसे ध्यान में रखते हुए, वेब 3 समुदाय के लिए मेरा पहला सुझाव यह है कि पोस्ट-क्वांटम SNARKs के सुरक्षा स्तर की जांच करना बहुत आसान बना दिया जाए। इसमें ऑन-चेन डेटा को समझने के लिए बेहतर टूलिंग शामिल है और इन मापदंडों को ज्ञात करने में परियोजनाओं द्वारा स्वयं की पारदर्शिता में वृद्धि हुई है। 

प्रस्ताव 2: मजबूत मानदंड

80 बिट्स की सुरक्षा बहुत कम है, विशेष रूप से कमजोर संस्करण जिसमें 270 हैश मूल्यांकन लगभग 1/1000 की संभावना के साथ सफलतापूर्वक हमला करने के लिए पर्याप्त हैं - इससे भी अधिक क्रिप्टोग्राफिक प्रिमिटिव्स पर आश्चर्यजनक हमलों के लंबे इतिहास को देखते हुए। एक, जिसका उल्लेख ऊपर किया गया है, युग्मन-अनुकूल अण्डाकार वक्रों जैसे altbn128 पर बेहतर हमले हैं। एक अधिक प्रसिद्ध उदाहरण SHA-1 है, जिसे 80 बिट सुरक्षा पर मानकीकृत किया गया था लेकिन अंततः केवल 60 बिट प्राप्त करने के लिए दिखाया गया था। इस इतिहास को ध्यान में रखते हुए, सुरक्षा स्तर को कॉन्फ़िगर करते समय PQ-SNARK डिजाइनरों को खुद को 10 बिट्स से अधिक विगल रूम छोड़ना चाहिए, खासकर अगर सुरक्षा विश्लेषण में FRI जैसे अपेक्षाकृत नए प्रोटोकॉल की सांख्यिकीय सुरक्षा के बारे में मजबूत अनुमान शामिल हैं।

यहां तक ​​कि PQ-SNARKs के लिए भी, उचित सुरक्षा स्तर हमेशा प्राप्त किया जा सकता है, केवल सत्यापन लागत बढ़ाकर। उदाहरण के लिए, SHARP के सत्यापनकर्ता की सुरक्षा को 80 से बढ़ाकर 128 बिट्स (FRI की सांख्यिकीय सुदृढ़ता के बारे में अनुमान के तहत) से गैस की लागत में लगभग दो गुना वृद्धि होगी, 5 मिलियन से थोड़ा अधिक से 10 मिलियन से थोड़ा अधिक। एफआरआई के बारे में अनुमान के बिना, गैस की लागत दो के एक और कारक से बढ़कर 20 मिलियन से अधिक हो जाएगी। 

मेरा अगला सुझाव, तब यह है कि वेब 3 समुदाय को तैनात SNARKs के लिए उपयुक्त सुरक्षा स्तरों के आसपास मजबूत मानदंड विकसित करने चाहिए। यदि SNARK की सुरक्षा गैर-मानक धारणाओं पर आधारित है, तो मेरी व्यक्तिगत सिफारिश कम से कम 100 बिट्स और कम से कम 128 होगी। मैं ऐसा करने वाला पहला व्यक्ति नहीं हूं ऐसा प्रस्ताव बनाओ.

यहां, मैं "मानक धारणा" बिना शर्त सुरक्षा के रूप में वर्गीकृत करने के लिए तैयार हूं यादृच्छिक ओरेकल मॉडल, यदि तैनात SNARK में रैंडम ऑरेकल को KECCAK-256 जैसे मानक हैश फ़ंक्शन के साथ त्वरित किया जाता है। रैंडम ऑरेकल मॉडल एक आदर्श सेटिंग है जो अच्छी तरह से डिज़ाइन किए गए क्रिप्टोग्राफ़िक हैश फ़ंक्शंस के व्यवहार को कैप्चर करने के लिए है। इसका उपयोग अक्सर PQ-SNARKs की सुरक्षा का विश्लेषण करने के लिए किया जाता है। 

गैर-मानक मान्यताओं का एक उदाहरण एफआरआई जैसे प्रोटोकॉल की मात्रात्मक सुदृढ़ता के बारे में अनुमान (नीचे वर्णित) है, या तो एक इंटरैक्टिव सेटिंग में या यादृच्छिक ऑरेकल मॉडल में एक गैर-इंटरैक्टिव प्रोटोकॉल के रूप में।

SNARK डिज़ाइनर कई रोमांचक तरीकों से नवाचार कर रहे हैं, जिनमें से कुछ सुरक्षा के मामले में लिफाफे को आगे बढ़ा सकते हैं - उदाहरण के लिए, SNARK के अनुकूल हैश फ़ंक्शंस का उपयोग करके जो कि अधिक मानक हैश फ़ंक्शंस के रूप में क्रिप्टैनालिसिस के अधीन नहीं हैं। मैं इस तरह के प्रयासों को समाप्त करने का आह्वान नहीं कर रहा हूं - इससे बहुत दूर। लेकिन इन प्रिमिटिव्स को सुरक्षा स्तरों पर त्वरित किया जाना चाहिए जो ज्ञात, व्यवहार्य हमलों से 10 बिट्स से अधिक हो। 

SNARKs का उपयोग करने वाले रोलअप को आमतौर पर उनके L1 की सुरक्षा के रूप में वर्णित किया जाता है। लेकिन यह एक कठिन मामला है अगर उन्हें L1 द्वारा उपयोग किए जाने वाले किसी भी क्रिप्टोग्राफ़िक प्रिमिटिव की तुलना में बहुत कम सुरक्षा स्तरों पर कॉन्फ़िगर किया गया है। जैसा कि SNARKs बढ़ते गोद लेने को देखते हैं, हमें यह सुनिश्चित करना चाहिए कि हम उन्हें उन तरीकों से तैनात करें जो उनके बारे में बात करने के तरीके के अनुरूप हों। जब तक SNARKs का सावधानीपूर्वक विश्लेषण किया जाता है, उचित रूप से कॉन्फ़िगर किया जाता है, और सही ढंग से लागू किया जाता है, तब तक वे उतने ही सुरक्षित होते हैं जितने कि आज उपयोग में आने वाले किसी भी क्रिप्टोग्राफ़िक आदिम। 

एक तरफ: PQ-SNARK सुरक्षा में और भी गहरा गोता लगाना

StarkWare के PQ-SNARKs में 80 बिट्स की सुरक्षा का हिसाब इस प्रकार है। ये PQ-SNARKs नामक बहुपद प्रतिबद्धता योजना का उपयोग करते हैं मुफ़्त, और StarkWare का SHARP सत्यापनकर्ता अनुमान के तहत सुरक्षा के 48 बिट्स पर FRI चलाता है। मोटे तौर पर, अनुमान यह है कि एफआरआई की मजबूती पर एक साधारण हमला इष्टतम है। इस हमले में, एक धोखा देने वाला, थोड़े से प्रयास के साथ, एक "FRI प्रूफ" उत्पन्न करता है, जो सत्यापनकर्ता के यादृच्छिक रूप से चुने गए चेक को संभाव्यता 2 के साथ पास करता है।-48

StarkWare FRI को "ग्राइंडिंग" नामक तकनीक से जोड़ता है। इसके लिए ईमानदार प्रोवर को FRI प्रूफ तैयार करने से पहले 32-बिट वर्क प्रूफ तैयार करने की आवश्यकता होती है। ग्राइंडिंग का लाभ यह है कि यह ऊपर उल्लिखित एफआरआई पर साधारण हमले को अंजाम देने के लिए धोखेबाज़ साबित करने वाले के लिए आवश्यक कार्य को लगभग 2 तक बढ़ा देता है।32 हैश मूल्यांकन। 

चूंकि (उम्मीद में) 248 उनमें से एक के सफल होने से पहले साधारण हमले के प्रयास आवश्यक हैं, धोखा देने वाले को एफआरआई सबूत बनाने के लिए कुल काम की मात्रा लगभग 2 है48 * 232 = 280 हैश मूल्यांकन।

अंत में, आइए जानें कि एफआरआई के लिए सुरक्षा के 48 बिट कैसे उत्पन्न होते हैं। एफआरआई सत्यापनकर्ता प्रतिबद्ध बहुपद के लिए "प्रश्न" करता है। एफआरआई सत्यापन लागत प्रश्नों की संख्या के साथ रैखिक रूप से बढ़ती है। उदाहरण के लिए, 36 एफआरआई सत्यापनकर्ता प्रश्न 4 प्रश्नों की तुलना में मोटे तौर पर 9 गुना महंगे हैं। लेकिन अधिक प्रश्नों का अर्थ है अधिक सुरक्षा। "सुरक्षा बिट्स प्रति क्वेरी" की संख्या एफआरआई के एक अन्य पैरामीटर पर निर्भर करती है, जिसे कोड दर कहा जाता है। 

विशेष रूप से, एफआरआई रीड-सोलोमन कोड ऑफ रेट नामक कुछ का उपयोग करता है r, जहां r हमेशा 0 और 1 के बीच की एक संख्या होती है। FRI प्रोवर की लागत इसके व्युत्क्रमानुपाती होती है r, इसलिए 1/16 की दर एक कहावत की ओर ले जाती है जो ¼ की दर से लगभग चार गुना धीमी और अधिक स्थान-गहन है। 

SHARP सत्यापनकर्ता 1/16 की कोड दर और 12 सत्यापनकर्ता प्रश्नों के साथ FRI चला रहा है।

StarkWare का अनुमान है कि प्रत्येक FRI सत्यापनकर्ता क्वेरी लॉग जोड़ता है2(1 /r) सुरक्षा के टुकड़े। इस अनुमान के तहत, 12 सत्यापनकर्ता प्रश्नों से 12 * लॉग प्राप्त होता है2(16) = 48 बिट सुरक्षा।

हालाँकि, वर्तमान विश्लेषण केवल यह स्थापित करते हैं कि प्रत्येक सत्यापनकर्ता क्वेरी लॉग से थोड़ा कम जोड़ती है2(1/r1/2) सुरक्षा के टुकड़े। तो 12 एफआरआई सत्यापनकर्ता प्रश्न केवल 12 * लॉग से कम उपज देते हैं2(4) = "साबित" सुरक्षा के 24 बिट्स। 

सुरक्षा और प्रदर्शन के बीच तनाव को कम करने का प्रस्ताव

प्रैक्टिकल PQ-SNARKs में सत्यापनकर्ता लागतें होती हैं जो सुरक्षा के बिट्स की वांछित संख्या के साथ रैखिक रूप से बढ़ती हैं। इस तनाव को कम करने के लिए एक आशाजनक तकनीक SNARK रचना है - जिसे मैंने अपनी पिछली पोस्ट में प्रोवर और सत्यापनकर्ता लागतों के बीच तनाव को हल करने के साधन के रूप में वर्णित किया था, लेकिन यह सुरक्षा को भी संबोधित कर सकता है। 

दो उदाहरण 

बहुभुज हर्मेज़ है PlonK के साथ PQ-SNARKs की रचना. विचार यह है कि कहावत पहले एक PQ-SNARK प्रमाण π उत्पन्न करती है। यदि PQ-SNARK को तेज़ प्रोवर और पर्याप्त सुरक्षा स्तर के लिए कॉन्फ़िगर किया गया है, तो π बड़ा होगा। इसलिए कहावत सत्यापनकर्ता को π नहीं भेजती है। इसके बजाय, यह साबित करने के लिए कि वह π जानता है, PlonK का उपयोग करता है। 

इसका मतलब है कि PlonK को एक ऐसे सर्किट पर लागू करना जो π को इनपुट के रूप में लेता है और जाँचता है कि PQ-SNARK सत्यापनकर्ता π को स्वीकार करेगा। चूंकि PQ-SNARK में पॉलीलॉगरिदमिक सत्यापन लागत है, PlonK को एक छोटे सर्किट पर लागू किया जाता है, और इसलिए PlonK प्रोवर तेज़ है। चूंकि प्लॉनके प्रूफ छोटे होते हैं और सत्यापित करने के लिए सस्ते होते हैं, सत्यापन लागत कम होती है। 

दुर्भाग्य से, प्लॉनके का उपयोग पारदर्शिता और पोस्ट-क्वांटम सुरक्षा को नष्ट कर देता है। कोई इसके बजाय π के ज्ञान को साबित करने के लिए PlonK के स्थान पर खुद PQ-SNARK का उपयोग करने पर विचार कर सकता है (वास्तव में Polygon द्वारा उपयोग किया जाने वाला PQ-SNARK इस तरीके से स्व-निर्मित है)। 

PQ-SNARK के इस दूसरे आवेदन में, π के ज्ञान को साबित करने के लिए, सिस्टम को यथोचित आकार के प्रमाणों के साथ पर्याप्त सुरक्षा प्राप्त करने के लिए कॉन्फ़िगर किया जा सकता है, उदाहरण के लिए, FRI में उपयोग के लिए बहुत छोटी कोड दर का चयन करके। मुख्य बिंदु यह है कि, जबकि यह छोटा कोड दर प्रोवर समय के लिए खराब है, PQ-SNARK का दूसरा अनुप्रयोग केवल एक छोटे सर्किट पर लागू होता है, इसलिए कुल प्रोवर समय अभी भी छोटा होना चाहिए।

निर्मित SNARKs की सुरक्षा के बारे में हमारी सैद्धांतिक समझ वांछित होने के लिए बहुत कुछ छोड़ देती है। हालाँकि, उन पर कोई ज्ञात हमले नहीं हैं जो व्यक्तिगत रूप से घटक SNARKs में से एक पर हमला करने से तेज़ हैं। उदाहरण के लिए, यदि PlonK के साथ PQ-SNARK की रचना करते हैं, तो हम PQ-SNARK पर हमला करने से बेहतर कोई हमला नहीं जानते हैं (यानी, एक झूठे बयान का PQ-SNARK सबूत π खोजें), या PlonK पर हमला करने के लिए (यानी, झूठे कथन का एक प्लॉनके प्रमाण खोजें "मुझे एक PQ-SNARK प्रमाण π पता है जिसे सत्यापनकर्ता ने स्वीकार कर लिया होगा।")

SNARKs की रचना इस तरह से प्रदर्शन को बेहतर बनाने का एक तेजी से लोकप्रिय तरीका है। मुझे उम्मीद है कि प्रोटोकॉल डिजाइनर भी इसका इस्तेमाल सुरक्षा में सुधार के लिए करेंगे।

***

जस्टिन थेलेर जॉर्जटाउन यूनिवर्सिटी में एसोसिएट प्रोफेसर हैं। जॉर्जटाउन में शामिल होने से पहले, उन्होंने न्यूयॉर्क में याहू लैब्स में रिसर्च साइंटिस्ट के रूप में दो साल बिताए, इससे पहले वे न्यूयॉर्क में रिसर्च फेलो थे। कम्प्यूटिंग के सिद्धांत के लिए सिमंस संस्थान यूसी बे मेंrkeley. 

संपादक: टिम सुलिवन @tim_org

***

यहां व्यक्त किए गए विचार व्यक्तिगत एएच कैपिटल मैनेजमेंट, एलएलसी ("a16z") कर्मियों के हैं जिन्हें उद्धृत किया गया है और यह a16z या इसके सहयोगियों के विचार नहीं हैं। यहां निहित कुछ जानकारी तृतीय-पक्ष स्रोतों से प्राप्त की गई है, जिसमें a16z द्वारा प्रबंधित निधियों की पोर्टफोलियो कंपनियों से भी शामिल है। जबकि विश्वसनीय माने जाने वाले स्रोतों से लिया गया, a16z ने स्वतंत्र रूप से ऐसी जानकारी को सत्यापित नहीं किया है और किसी भी स्थिति के लिए सूचना की स्थायी सटीकता या इसकी उपयुक्तता के बारे में कोई प्रतिनिधित्व नहीं करता है। इसके अतिरिक्त, इस सामग्री में तृतीय-पक्ष विज्ञापन शामिल हो सकते हैं; a16z ने ऐसे विज्ञापनों की समीक्षा नहीं की है और उनमें निहित किसी भी विज्ञापन सामग्री का समर्थन नहीं करता है।

यह सामग्री केवल सूचना के उद्देश्यों के लिए प्रदान की जाती है, और कानूनी, व्यापार, निवेश या कर सलाह के रूप में इस पर भरोसा नहीं किया जाना चाहिए। आपको उन मामलों में अपने स्वयं के सलाहकारों से परामर्श लेना चाहिए। किसी भी प्रतिभूति या डिजिटल संपत्ति के संदर्भ केवल दृष्टांत उद्देश्यों के लिए हैं, और निवेश सलाहकार सेवाएं प्रदान करने के लिए एक निवेश अनुशंसा या प्रस्ताव का गठन नहीं करते हैं। इसके अलावा, यह सामग्री किसी भी निवेशक या संभावित निवेशकों द्वारा उपयोग के लिए निर्देशित नहीं है और न ही इसका इरादा है, और किसी भी परिस्थिति में a16z द्वारा प्रबंधित किसी भी फंड में निवेश करने का निर्णय लेते समय इस पर भरोसा नहीं किया जा सकता है। (a16z फंड में निवेश करने की पेशकश केवल निजी प्लेसमेंट मेमोरेंडम, सब्सक्रिप्शन एग्रीमेंट, और ऐसे किसी भी फंड के अन्य प्रासंगिक दस्तावेज द्वारा की जाएगी और इसे पूरी तरह से पढ़ा जाना चाहिए।) किसी भी निवेश या पोर्टफोलियो कंपनियों का उल्लेख, संदर्भित, या वर्णित a16z द्वारा प्रबंधित वाहनों में सभी निवेशों के प्रतिनिधि नहीं हैं, और इस बात का कोई आश्वासन नहीं दिया जा सकता है कि निवेश लाभदायक होगा या भविष्य में किए गए अन्य निवेशों में समान विशेषताएं या परिणाम होंगे। आंद्रेसेन होरोविट्ज़ द्वारा प्रबंधित निधियों द्वारा किए गए निवेशों की सूची (उन निवेशों को छोड़कर जिनके लिए जारीकर्ता ने सार्वजनिक रूप से कारोबार की गई डिजिटल संपत्ति में सार्वजनिक रूप से और साथ ही अघोषित निवेशों का खुलासा करने के लिए a16z की अनुमति नहीं दी है) https://a16z.com/investments पर उपलब्ध है। /.

इसमें दिए गए चार्ट और ग्राफ़ केवल सूचना के उद्देश्यों के लिए हैं और निवेश का कोई भी निर्णय लेते समय उन पर भरोसा नहीं किया जाना चाहिए। पूर्व प्रदर्शन भविष्य के परिणाम का संकेत नहीं है। सामग्री केवल इंगित तिथि के अनुसार बोलती है। इन सामग्रियों में व्यक्त किए गए किसी भी अनुमान, अनुमान, पूर्वानुमान, लक्ष्य, संभावनाएं और/या राय बिना किसी सूचना के परिवर्तन के अधीन हैं और दूसरों द्वारा व्यक्त की गई राय के विपरीत या भिन्न हो सकते हैं। अतिरिक्त महत्वपूर्ण जानकारी के लिए कृपया https://a16z.com/disclosures देखें।

समय टिकट:

से अधिक आंद्रेसेन होरोविट्ज़