इस एएमए में, हमें डीन ट्रिबल का साक्षात्कार करने का सौभाग्य मिला। डीन एगोरिक के सीईओ हैं, और 80 के दशक से विभिन्न सॉफ्टवेयर प्रोजेक्ट्स और स्टार्टअप्स में शामिल होकर टेक में एक विशाल यात्रा की थी। वह बड़े पैमाने पर नेटवर्क वाले कंप्यूटर सिस्टम की दृष्टि का पीछा कर रहा है और इससे उसे स्मार्ट अनुबंधों की ओर अग्रसर किया गया है।
सारा पिंटो, डीन ट्रिबल, दिमितार बोचवारोव्स्की, पवन शर्मा, मोनिका फ्रीटास और लिमार्क अंबालिना का यह स्लोगिंग थ्रेड स्लोगिंग के आधिकारिक #amas चैनल में हुआ, और इसे पठनीयता के लिए संपादित किया गया है।
अरे @चैनल, कृपया हमारे अगले एएमए अतिथि, डीन ट्रिबल, http://agoric.com के सीईओ का स्वागत करने में मेरे साथ शामिल हों। एगोरिक एक ओपन-सोर्स डेवलपमेंट कंपनी है जो इंटरऑपरेबल प्रूफ-ऑफ-स्टेक चेन और इकोनॉमी लॉन्च कर रही है।
कृपया बेझिझक डीन से इस बारे में कुछ भी पूछें:
नमस्ते! मुझे रखने के लिए धन्यवाद!
हे डीन ट्रिबल, आपको यहां हमारे साथ पाकर बहुत अच्छा लगा। क्या हम आपकी पृष्ठभूमि के बारे में कुछ बताकर शुरुआत कर सकते हैं?
जब मैं 15 साल का था, तब मेरी पहली कंप्यूटर नौकरी थी, मेरा पहला स्टार्टअप (अटारी के संस्थापक, नोलन बुशनेल द्वारा वित्त पोषित) जब मैं 17 साल का था। इसलिए मैं 80 के दशक से सॉफ्टवेयर और स्टार्टअप कर रहा हूं। इसका अधिकांश भाग बड़े पैमाने पर वितरित प्रणालियों के निर्माण में रहा है।
मैं सचमुच दशकों से बड़े पैमाने पर नेटवर्क वाले कंप्यूटर सिस्टम की दृष्टि का अनुसरण कर रहा हूं। मैंने शुरुआती सुरक्षित वितरित प्रोग्रामिंग भाषाओं और ऑपरेटिंग सिस्टम पर ज़ेरॉक्स PARC (एगोरिक में अपने कुछ सहयोगियों के साथ) में काम किया। जावास्क्रिप्ट और RUST में आधुनिक-दिन के वादे उसी काम से उतरते हैं। मैं तब गया और ज़ानाडु में हाइपरटेक्स्ट (वेब से पहले) पर काम किया। कहीं न कहीं 1989 में मैंने पहले प्रोडक्शन स्मार्ट कॉन्ट्रैक्ट पर काम किया (हाँ, विटालिक के जन्म से 5 साल पहले ।
तब से मैंने जावा में शुरुआती ब्रोकरेज इंफॉर्मेशन सिस्टम से लेकर मल्टीबिलियन डॉलर पेमेंट इंस्ट्रूमेंट के अपने पिछले गिग तक कई बड़े पैमाने पर काम किया है। आम तौर पर यह मो अजनबी को और अधिक सफलतापूर्वक सहयोग करने में सक्षम बनाने के लिए बाजार में नई तकनीक लाने के बारे में है!
यही मुझे पहली बार में स्मार्ट अनुबंधों में मिला: "कई पार्टियों के बीच अनुबंध जैसी व्यवस्था की शर्तों को लागू करने वाला सॉफ़्टवेयर" दुनिया में इतना अधिक सहयोग सक्षम करता है। ईबे और पेपाल से लेकर एयरबीएनबी और लिफ़्ट तक सभी व्यवसाय उस तरह के व्यवसाय हैं।
उन सभी को एक विश्वसनीय मध्यस्थ की आवश्यकता होती है, और जैसा कि हम जानते हैं कि वे हमेशा भरोसेमंद नहीं होते हैं । लेकिन फिर ब्लॉकचेन आया जो अलग-अलग अधिकार क्षेत्र में स्वतंत्र कंप्यूटरों को एक ही सॉफ्टवेयर चलाने और एक दूसरे के काम को सत्यापित करने में सक्षम बनाता है, और अचानक आप विश्वसनीय मध्यस्थ के बिना स्मार्ट अनुबंध व्यवसाय चला सकते हैं। यही मुझे अगली पीढ़ी के ब्लॉकचेन के लिए स्मार्ट कॉन्ट्रैक्ट इंफ्रास्ट्रक्चर बनाने में मिला। और यहाँ हम हैं
इससे मुझे एहसास होता है कि मैंने सन और माइक्रोसॉफ्ट को वहां छोड़ दिया है।
सन लैब्स में 90 के दशक में, हमारे पास एक स्मार्ट कॉन्ट्रैक्ट प्लेटफॉर्म बनाने की परियोजना थी। यह प्रारंभिक डिजाइन कार्य का एक बड़ा हिस्सा है जिसके कारण एगोरिक के जावास्क्रिप्ट स्मार्ट कॉन्ट्रैक्ट प्लेटफॉर्म के तत्व सामने आए।
माइक्रोसॉफ्ट में, मैं मिडोरी (रिसर्च) ऑपरेटिंग सिस्टम पर एक आर्किटेक्ट था, एक रिसर्च ऑपरेटिंग सिस्टम उसी aysnc संदेश/ओकैप/वादा आधारित आर्किटेक्चर दृष्टिकोण का उपयोग कर रहा था जिसे अब हम एगोरिक वीएम/कर्नेल में उपयोग करते हैं।
क्या करियर है
जावास्क्रिप्ट क्यों? मेरा मतलब है, मैं व्यक्तिगत रूप से एक वेब डेवलपर हूं और अपने दैनिक जीवन में जेएस का उपयोग करता हूं, और यह वह भाषा है जिसे मैं किसी और चीज के लिए नहीं बदलूंगा, लेकिन जेएस के साथ आने वाले मुद्दों के बारे में बहुत सी चर्चा है, जैसे कि गतिशील प्रकार, और स्मृति प्रबंधन के साथ गलतियाँ करने में आसानी...
और मैं काइल सिम्पसन का बहुत बड़ा प्रशंसक हूं, उल्लेख करने के लिए। उसके पास js . में ऑब्जेक्ट क्षमताओं के लिए दिलचस्प पाठ्यक्रम हैं
मुझे वह प्रश्न पसंद है क्योंकि इसमें आश्चर्यजनक और आश्चर्यजनक दोनों उत्तर हैं।
अचंभित करने वाला उत्तर "... वह भाषा है जिसे मैं किसी और चीज़ के लिए नहीं बदलूंगा ..."। 13.9M डेवलपर्स! मैं दुनिया में और अधिक सहयोग देखना चाहता हूं, और ऐसा होने में मदद करने के लिए स्मार्ट अनुबंध एक अविश्वसनीय रूप से शक्तिशाली उपकरण हैं। हालांकि इसके लिए, यह दुनिया के अधिकांश प्रोग्रामर के लिए उपलब्ध होना चाहिए। यह बहुत मददगार नहीं है, अगर, एक स्मार्ट अनुबंध बनाने के लिए, आपको 10k महंगे सॉलिडिटी डेवलपर्स के पुरोहितवाद के लिए प्रार्थना करनी होगी। एक अच्छा वकील ढूंढना और इसे पुराने ढंग से करना आसान है! इसलिए हम उन देवों से मिलने के लिए निकल पड़े जहां वे हैं और उन्हें स्मार्ट अनुबंध बनाने के लिए सशक्त बनाते हैं।
आश्चर्यजनक उत्तर यह है कि हमारे मुख्य वैज्ञानिक, मार्क मिलर के योगदान के कारण जावास्क्रिप्ट अन्य प्रोग्रामिंग भाषाओं की तुलना में अधिक सुरक्षित है। वह शुरू से ही हमारे पहले के सुरक्षित भाषा कार्य से आवश्यक तत्वों को जावास्क्रिप्ट में चला रहा है। "क्षमता-आधारित वित्तीय उपकरण" पर वित्तीय क्रिप्टोग्राफी पर उनके 2015 के पेपर ने ई प्रोग्रामिंग भाषा में उदाहरण दिखाए जिन्हें अब आप एगोरिक पर जावास्क्रिप्ट में लिख सकते हैं।
जेएस अधिक सुरक्षित होने का कारण आंशिक रूप से इतिहास की दुर्घटना भी है: जेएस भाषा को ईसीएमए में मानकीकृत किया गया था, जबकि इसके लिए ब्राउज़र होस्ट वातावरण डब्ल्यू 3 सी में मानकीकृत था। यह एक उपयोगकर्ता-मोड/सिस्टम-मोड अलगाव से मेल खाता है जो सुरक्षित ऑपरेटिंग सिस्टम के लिए आवश्यक है। आपने कभी भी एक डिजाइन सीमा नहीं देखी है और साथ ही साथ बचाव भी किया है क्योंकि समितियां अपने मैदान की रक्षा करती हैं 😄। तो एकमात्र तरीका है कि एक जेएस प्रोग्राम/मॉड्यूल/जो कुछ भी सिस्टम में किसी भी चीज़ के लिए अधिकार प्राप्त करता है वह यह है कि इसे मूल्यांकन के लिए उपयोग की जाने वाली वैश्विक वस्तु में डाल दिया जाता है। ब्राउज़र में, उस वैश्विक में शामिल हैं
document
ऐसे, जबकि नोड में, वैश्विक शामिल हैं fs
तथा process
और जैसे। मार्क और अन्य ने जेएस को उस ट्रैक पर रखा है। और कुछ अतिरिक्त सुविधाओं के साथ (जैसे, freeze
) हम जेएस कोड का मूल्यांकन करने में सक्षम हैं (उदाहरण के लिए, ब्लॉकचैन या सर्वर में) जहां इसे प्राप्त करने वाला एकमात्र अधिकार विशिष्ट सेवाओं के लिए है जो हम इसे प्रदान करते हैं यह फाइल सिस्टम, नेटवर्क आदि पर नहीं मिल सकता है। वह "कठोर जावास्क्रिप्ट" है। यह खुला स्रोत है, https://github.com/endojs/endo पर web2 और web3 के लिए उपलब्ध है, और किसी भी मानक JS वातावरण में चलता है। यह मेटामास्क के अगले जेन वॉलेट की रीढ़ है, जिसका उपयोग सेल्सफोर्स के ऐप एक्सचेंज में किया जाता है, और निश्चित रूप से हमारे स्मार्ट कॉन्ट्रैक्ट प्लेटफॉर्म के लिए उपयोग किया जाता है।
डीन ट्रिबल, यह अविश्वसनीय है! आपके पास काफी यात्रा थी। मुझे पूछना है, गैर-तकनीक-प्रेमी लोगों के नाम पर, क्या आप ब्लॉकचेन पर स्मार्ट अनुबंधों के बारे में विस्तार से बता सकते हैं? और कंपोज़िबिलिटी से आपका क्या मतलब है?
एक स्मार्ट अनुबंध क्या है: "कई पार्टियों के बीच अनुबंध जैसी व्यवस्था की शर्तों को लागू करने वाला सॉफ़्टवेयर"। बस यही है! इसलिए ईबे और पेपाल और लिफ़्ट और स्टबहब सभी बड़े पैमाने पर एक "विश्वसनीय मध्यस्थ" द्वारा तैनात स्मार्ट अनुबंध व्यवसाय हैं। इसलिए स्मार्ट कॉन्ट्रैक्ट्स $1T+ मार्केट कैप *ब्लॉकचेन से पहले* थे। हम अपने सॉफ़्टवेयर को ईमानदारी से निष्पादित करने के लिए बिचौलियों पर भरोसा करते हैं, और अधिकांश लेनदेन होस्टिंग कंपनी द्वारा किसी भी मानवीय भागीदारी के बिना होते हैं।
एक बार अच्छे पुस्तकालय और प्लेटफ़ॉर्म होने के बाद ऐसे व्यवसायों ने बहुत तेज़ी से नए व्यवसायों की रचना की, बिना स्क्रैच से सब कुछ कोडिंग किए (जैसे, शॉपिफाई, स्ट्राइप, आदि। सभी प्रदान किए गए घटक जो डेवलपर्स पुन: उपयोग कर सकते हैं)।
"ब्लॉकचैन पर निष्पादित किए जा सकने वाले कोड" के साथ आना इतना कठिन क्यों था, जो कि सामान्य रूप से स्मार्ट अनुबंध है (अगर मैं गलत हूं तो मुझे सुधारें), और हमें इसके साथ आने के लिए एथेरियम की प्रतीक्षा करने की आवश्यकता थी। समाधान?
लेकिन मेरा पसंदीदा घटक मॉडल उदाहरण यूआई स्पेस में है (मैंने यूआई पर पीएआरसी में स्मॉलटाक समूह में इंटर्न के रूप में काम किया)। प्रतिक्रिया/व्यू/आदि से पहले, विशेषज्ञ जावास्क्रिप्ट में कुछ बहुत अच्छी चीजें बना सकते थे। लेकिन कच्चे एचटीएमएल/जेएस में लिखे गए फैंसी ऐप्स को डीबग करना एक दुःस्वप्न है (मुझे अभी भी डीबग करने की कोशिश करने का मेरा आखिरी दौर याद है जब उपयोगकर्ता ने अपना ज़िप कोड बदला तो कुछ खरीद पृष्ठ की कर दर क्यों नहीं बदल रही थी)। रिएक्ट यूजर इंटरफेस घटकों के लिए एक घटक ढांचा प्रदान करता है जो फैंसी यूआई के निर्माण में कई कठिन समस्याओं को पूरी तरह से संबोधित करता है, और अधिक, कई पार्टियों द्वारा बनाए गए घटकों को बहुत अच्छी तरह से एक साथ काम करने में सक्षम बनाता है।
नतीजा यह है कि रिएक्ट के बाहर आने के तुरंत बाद, नए डेवलपर्स रिएक्ट से एक साल पहले विशेषज्ञों की तुलना में कट्टर, सुरक्षित, अधिक प्रतिक्रियाशील, अधिक उपयोगी एप्लिकेशन बना सकते हैं। यही एक घटक ढांचा आपको मिलता है।
हमारा लक्ष्य एक ऐसा ढांचा है जो एक ही तरह का समर्थन प्रदान करता है, लेकिन स्मार्ट अनुबंधों के लिए जो डिजिटल संपत्ति, मूल्य निर्धारण, आदि को संभालता है (उसके बजाय क्लिक और रेंडरिंग)। एथेरियम जैसे प्लेटफार्मों में, क्रिप्टो विशेषज्ञों के लिए स्पष्ट रूप से बहुत अधिक जोखिम वाले सुरक्षा खतरे हैं, अकेले एप्लिकेशन प्रोग्रामर को अपनी व्यावसायिक समस्या को हल करने की कोशिश कर रहे हैं। हमारा ढांचा डेवलपर्स को उन खतरों से बचाने के लिए बनाया गया है।
तो एक स्मार्ट अनुबंध "ब्लॉकचैन पर निष्पादित किया जा सकने वाला कोड" नहीं है, क्योंकि ब्लॉकचैन से पहले स्मार्ट अनुबंधों में मूल्य का $ 1T + था!
बिटकॉइन अपने आप में एक स्मार्ट अनुबंध है; यह सॉफ्टवेयर है जो बीटीसी के हस्तांतरण के नियमों को लागू कर रहा है। यह पहला स्मार्ट अनुबंध है जिसे एक विश्वसनीय मध्यस्थ की आवश्यकता नहीं थी।
एथ अन्य लोगों के सॉफ़्टवेयर को चलाने के लिए समर्थन लेकर आया। उसके लिए कुछ आवश्यकताएं थीं। ब्लॉकचेन का स्वर्ण मानक है
विभिन्न न्यायालयों और विभिन्न प्रशासनिक डोमेन में कई कंप्यूटर डेटा, विकल्प और गणना के बारे में आम सहमति पर आ रहे हैं।
मैं इसे अनपैक करूँगा, और फिर बात करूँगा कि यह क्यों महत्वपूर्ण है ।
हे डीन ट्रिबल क्या आप कृपया एगोरिक में ऑफ़र सुरक्षा के बारे में कुछ समझा सकते हैं और क्या यह मूल संपत्ति के साथ-साथ लेनदेन शुल्क या सिर्फ मूल संपत्ति वापस करता है?
विभिन्न न्यायालयों और विभिन्न प्रशासनिक डोमेन में कई कंप्यूटर सभी आम सहमति पर आ रहे हैं
इसका मतलब है कि कोई भी इंसान, संगठन या सरकार एकतरफा सिस्टम व्यवहार को नहीं बदल सकती है। गणना की अखंडता से समझौता करने के लिए उन्हें एक साथ अधिकांश मशीनों (जो अन्य पार्टियों द्वारा नियंत्रित होती हैं) से समझौता करना होगा।
डेटा, विकल्प और गणना के बारे में।
डेटा: "डीन के खाते में $100 हैं"
विकल्प: "नीलामी बंद होने से पहले डीन ने अपना प्रस्ताव वापस लेने की कोशिश की। क्या उसने नीलामी जीती और अपना पैसा खर्च किया या उसे अपना पैसा वापस मिल गया?
गणना: "नीलामी चली और निर्धारित किया कि डीन विजेता होगा"
उपन्यास कठिन तकनीकी हिस्सा "सभी आम सहमति पर आ रहा है"। यदि आप सभी कंप्यूटरों को जानते हैं (आप नहीं करते हैं) और आप उन सभी पर भरोसा कर सकते हैं कि धोखा न दें (आप नहीं कर सकते), तो हम जानते हैं कि वोट कैसे गिनें और सुनिश्चित करें कि यह बहुमत है। बीजान्टिन फॉल्ट टॉलरेंस के क्षेत्र में "क्या होगा अगर वे धोखा देते हैं" को संभालना शामिल है। बिटकॉइन में सबसे शानदार अंतर्दृष्टि यह थी कि जब आप सभी भाग लेने वाले कंप्यूटरों को नहीं जानते हैं तो आम सहमति को कैसे संबोधित किया जाए।
अंत में, उन सभी कंप्यूटरों के लिए यह जाँचने के लिए कि वे सहमत हैं, उन्हें वास्तव में सहमत होना होगा! तो एक ही प्रोग्राम को एक ही तर्क के साथ कई जगहों पर कई बार चलाने के लिए एक ही जवाब देना होता है (इसे "नियतात्मक" कहा जाता है)। यह मुश्किल हो जाता है! अगर वे घड़ी देख सकते हैं, तो वे अलग तरह से व्यवहार कर सकते हैं। यदि वे कोई स्मृति पता देख सकते हैं, तो वे अलग तरह से व्यवहार कर सकते हैं। अगर वे देख सकते हैं कि कब कचरा संग्रहण होता है, ... आपको अंदाजा हो जाता है।
इसलिए सॉलिडिटी में बहुत सारे मुद्दे हैं, और यह बहुत निम्न-स्तर का है, लेकिन यह निश्चित रूप से निष्पादित होता है। हमारी कठोर जावास्क्रिप्ट आपको निश्चित रूप से जावास्क्रिप्ट चलाने देती है! इससे यह सब बहुत अधिक डेवलपर्स के लिए सुलभ हो जाएगा
पवन शर्मा एगोरिक में "ऑफ़र सेफ्टी" के बारे में पूछते हैं। यह स्मार्ट अनुबंध ढांचे के महत्वपूर्ण गुणों में से एक है। परिचित सुरक्षा गुण स्मृति सुरक्षा और प्रकार की सुरक्षा जैसी चीजें हैं, जहां वे बग के कुछ बड़े वर्ग को पूरी तरह से समाप्त कर देते हैं। वे सब कुछ हल नहीं करते हैं, लेकिन वे टेबल से 80% बग निकाल सकते हैं।
ऑफ़र सुरक्षा आर्थिक स्तर पर एक सुरक्षा संपत्ति है।
पहली सेटिंग: मौजूदा ब्लॉकचैन स्मार्ट कॉन्ट्रैक्ट सिस्टम में, आप "रैंडम नंबर" (खाता पता) पर पैसे भेजकर लेनदेन निष्पादित करते हैं और उम्मीद करते हैं कि कुछ अच्छा होता है। लोगों ने "पते" पर संपत्ति भेजी (और खोई) जो वास्तविक खाते नहीं थे, जो गलत खाते थे, अनुबंधों के लिए जो तब विफल रहे थे, आदि। यह मॉडल त्रुटि-प्रवण और एक भयानक उपयोगकर्ता इंटरैक्शन दोनों है। मैं अपने दोस्त जॉन को पैसे भेजना चाहता हूं, 0x234ag3453 पर नहीं।
वास्तविक व्यवसाय में प्रतिफल शामिल है: "यदि आप मुझे कॉन्सर्ट टिकट Y देते हैं तो मैं आपको $X दूंगा"। हम सीधे तौर पर इसका समर्थन करते हैं। तो हमारे एपीआई में, ग्राहक स्मार्ट अनुबंधों का आह्वान करते हैं
offer
एस। प्रत्येक प्रस्ताव कहता है कि वे क्या करते हैं want
, वे क्या करेंगे give
के लिए, और किन परिस्थितियों में वे कर सकते हैं exit
उनकी संपत्ति के साथ। उस ऑफ़र में भुगतान तब ढांचे में ही जाता है न कि स्मार्ट अनुबंध में। स्मार्ट कॉन्ट्रैक्ट को संपत्ति प्राप्त करने का एकमात्र तरीका यह है कि यदि वह वह संपत्ति प्रदान करता है जो वह चाहता है। तो नीलामी के लिए ऑफ़र सुरक्षा कैसा दिखता है?
Zoe के पास सभी संपत्तियां हैं, और उन्होंने प्रत्येक ऑफ़र के अनुबंध को अधिसूचित किया है। जब नीलामी बंद हो जाती है, तो नीलामी परमाणु रूप से अनुबंधित हो जाती है
reallocates
विजेता बोली लगाने वाले को कंसर्ट टिकट और विक्रेता को विजेता बोली लगाने वाले का पैसा। वह पुनर्आवंटन तभी सफल होगा जब विजेता बोली विक्रेता के लिए पर्याप्त हो और यदि कॉन्सर्ट टिकट वास्तव में बोली लगाने वाले के लिए बोली हो।इसका मतलब है कि नीलामी के ग्राहक ज्यादा सुरक्षित हैं। उन्हें यह जानने के लिए नीलामी कोड पढ़ने की आवश्यकता नहीं है कि उन्हें उनका वांछित टिकट या उनका पैसा वापस मिल गया है।
साथ ही नीलामी अनुबंध के निर्माता भी खुश हैं: सॉलिडिटी में कई खतरे पैसे को संभालने के आसपास हैं, जिन्हें आपको पकड़ना नहीं है। अनुबंधों से पैसे वापस करने के मैला संचालन के कारण सचमुच $1B+ खो गया/चोरी हो गया है। Zoe और ऑफ़र सुरक्षा के साथ, आपको अनुबंध में सुरक्षित तरीके से निपटने के लिए कोड की एक भी पंक्ति लिखने की आवश्यकता नहीं है।
एक संबंधित संपत्ति "पेआउट लाइवनेस" है: याद रखें कि प्रत्येक बंद में एक है
exit
इसकी शर्तों के हिस्से के रूप में। उसके लिए डिफ़ॉल्ट (जिसे आपको आसानी से निर्दिष्ट करने की आवश्यकता नहीं है) "जब भी मैं चाहता हूं; यह मेरा पैसा है! ”। ठीक है इसे "ऑन डिमांड" कहा जाता है - इसका सीधा सा मतलब है कि आप जब चाहें बाहर निकल सकते हैं, और फिर, अनुबंध की ओर से कोई बग या दुर्भावनापूर्ण व्यवहार आपको ऑफ़र से बाहर निकलने और अपनी संपत्ति वापस पाने में देरी नहीं कर सकता है। हालांकि, ध्यान दें कि "आपकी संपत्ति" कुछ वास्तविक आवंटन के बाद हो सकती है। यदि आप पेशकश करते हैं "मैं एक्स मूल के लिए एन टिकट खरीदूंगा", तो हो सकता है कि यह पहले से ही उन एन में से कुछ को आपको पुनः आवंटित कर चुका हो और उनके लिए पैसे ले लिया हो, want
जो आपने निर्दिष्ट किया था। लेकिन एक बार जब आपका निकास संकेत आता है, तो ज़ो आपकी संपत्ति को खींच लेता है और अनुबंध के हस्तक्षेप के बिना उन्हें आपको वापस कर देता है। इसी तरह, यदि अनुबंध क्रैश हो जाता है, हैंग हो जाता है, आदि। ज़ो आपके प्रस्ताव से बाहर निकल जाएगा। यह आश्चर्यजनक है कि अनुबंधों में अनजाने में "लॉक अप" कितना पैसा है जहां उपयोगकर्ताओं के पास अपना पैसा वापस पाने का कोई साधन नहीं है! डीन ट्रिबल, आपके विस्तृत उत्तर के लिए बहुत-बहुत धन्यवाद! स्मार्ट अनुबंध कमजोरियों के बारे में क्या? उन्हें कैसे कम किया जा सकता है?
डीन ट्रिबल महान व्याख्या !!
स्मार्ट अनुबंध कमजोरियों को कम करने के तरीकों के लिए, हमने चर्चा की
अतिरिक्त महत्वपूर्ण तरीके:
एथेरियम और अन्य श्रृंखलाओं (हाल ही में पॉलीनेटवर्क) में, अरबों का नुकसान "पुन: प्रवेश" से हुआ है। यही वह जगह है जहां 2 घटक (या अनुबंध) हैं, ए ने बी को कॉल करने और फिर कुछ एक्स करने की योजना बनाई है, लेकिन बी एक्स में पहुंचने से पहले एक (फिर से प्रवेश करता है) में वापस कॉल करता है। उदाहरण के लिए, ए एक नीलामी है, एक बी बोली से धनवापसी का अनुरोध करता है। बी कहता है "मुझे मेरा धनवापसी भेजें", और इसलिए ए इसे देखता है, और बी को धनवापसी भेजता है, और फिर रिकॉर्ड करता है कि उसने बी को धनवापसी दी है। लेकिन जब बी को धनवापसी भेजी जाती है, तो "धन्यवाद" का जवाब देने के बजाय, यह तुरंत ए को "मुझे धनवापसी भेजें" संदेश फिर से भेजता है। चूंकि ए ने अभी तक यह दर्ज नहीं किया है कि बी को अपना धनवापसी प्राप्त हो गया है, यह आगे बढ़ता है और धनवापसी को फिर से भेजता है। और फिर, बी "मुझे धनवापसी भेजें" के साथ प्रतिक्रिया करता है। ए सेवा कभी भी रिकॉर्ड करने के बिंदु तक नहीं पहुंचती है कि बी ने अपनी धनवापसी प्राप्त कर ली है, इसलिए बी ऐसा तब तक करता है जब तक कि वह ए के खाते को खत्म नहीं कर देता। जब इस तरह कहा जाता है तो यह बेतुका लगता है, लेकिन 2017 में यह बिल्कुल बग था जिसने लोगों को आश्चर्यचकित कर दिया कि क्या एगोरिक के पीछे की तकनीक ब्लॉकचेन की मदद कर सकती है। और पिछले साल $660M का एक शोषण एक ही मूल समस्या थी। ऐसा इसलिए है क्योंकि एथ का आर्किटेक्चर अनुमति देता है, समर्थन करता है और यहां तक कि पुनर्प्रवेश की भी आवश्यकता होती है।
एगोरिक मॉडल मूल रूप से एसिंक्रोनस है, जिसका अर्थ है कि जब ए बी को संदेश भेजता है, तो वह बी के कुछ करने की प्रतीक्षा में वहां नहीं बैठता है। यह आगे बढ़ता है और रिकॉर्डिंग को पूरा करता है जिसे रिकॉर्ड करने की आवश्यकता होती है। इसका मतलब है कि तुच्छ उदाहरण काफी तुच्छ नहीं हैं, लेकिन इसका मतलब यह भी है कि गैर-तुच्छ उदाहरण (जैसे डीएफआई) सुरक्षा खतरों से भरे नहीं हैं।
हे डीन ट्रिबल! बढ़िया, आप हमारे साथ हैं! जब आप डेफी में अर्थव्यवस्था के निर्माण की बात करते हैं तो आप क्या कहेंगे कि मुख्य चुनौतियां क्या हैं?
ओह मैं समझा। डीन ट्रिबल, समझाने के लिए धन्यवाद। पुनर्वित्त बहुत परेशानी का कारण बन सकता है। क्या यह जानने का कोई तरीका है कि हम पुनर्प्रवेश प्रणाली के साथ कब काम कर रहे हैं?
पुनः किराएदारी; यह सिस्टम आर्किटेक्चर का हिस्सा है, और इसलिए इसे विभिन्न भाषाओं या सहायक पुस्तकालयों के साथ तैयार नहीं किया जा सकता है। एक प्रणाली जिसमें अनुबंध या अनुबंध घटकों के बीच कॉल कॉल-रिटर्न (ए कॉल बी और उत्तर की प्रतीक्षा करता है) लगभग हमेशा पुनर्विक्रेता होते हैं। यदि A, B को कॉल कर रहा है ("हे गेट मी माई रिफंड"), तो कोई अन्य व्यक्ति A को कॉल कर सकता है, तो यह संभावित रीएंट्रेंट है। आर्किटेक्चर जो या तो एसिंक्रोनस मैसेजिंग (जैसे एगोरिक) का उपयोग नहीं करते हैं या केवल सीमित शब्दार्थ हैं (जैसे, कडेना)।
डेफी में अर्थव्यवस्था के निर्माण में फिर से चुनौतियां
डीन ट्रिबल, जावास्क्रिप्ट डेवलपर्स के माध्यम से वेब 3 को स्केल करने के बारे में क्या? उससे तुम्हारा क्या मतलब है? क्या कुछ एगोरिक काम कर रहा है?
हम जिस पर काम कर रहे हैं, वह उसके दिल में है। बहुत से लोग लेन-देन की गति को बढ़ाने या ब्लॉक करने या विलंबता के बारे में बात करते हैं। लेकिन स्केल करने के लिए सबसे कठिन काम डेवलपर आधार है। डेवलपर्स के काफी बड़े समुदाय तक पहुंचने के लिए, हम यह उम्मीद नहीं कर सकते हैं कि वे अपनी वर्तमान भाषाओं और उपकरणों को छोड़ देंगे और एक और प्रोग्रामिंग भाषा पर काम करेंगे। हमें "उनसे मिलना चाहिए जहाँ वे हैं"।
तो एगोरिक के साथ:
विशिष्टता मायने रखती है (उदाहरण के लिए, एसिंक निष्पादन के साथ जावास्क्रिप्ट और ऐसे) लेकिन यह भी मायने रखता है कि प्राथमिकता डेवलपर्स को सक्षम कर रही है जो बस कुछ करना चाहते हैं। हमारे प्लेटफॉर्म को जेएस और नोड की तरह विकसित होना चाहिए: तेह ग्राउंड अप से क्योंकि यह प्रोग्रामर को सामान प्राप्त करने में सक्षम बनाता है! :)
मेरा लक्ष्य है कि "यदि आप क्लाउड के लिए वेब2 एप्लिकेशन बना सकते हैं, तो आप एगोरिक के लिए वेब3 एप्लिकेशन बना सकते हैं"। यह जल्दी है, इसलिए हम अभी तक नहीं हैं, लेकिन हम रहेंगे।
हाय डीन ट्रिबल हमारे साथ जुड़ने के लिए धन्यवाद! मेरा सवाल है: ओपन सोर्स क्यों? इस मॉडल के क्या फायदे और नुकसान हैं और इसके फायदे नुकसान से कैसे ज्यादा हैं?
ओपन सोर्स के बहुत सारे कारण।
व्यक्तिगत प्रेरणा: मुझे कुछ अद्भुत परियोजनाओं पर काम करने का अवसर मिला है। समस्या यह है कि कुछ सबसे आश्चर्यजनक जहाज नहीं गए, और इसलिए मेरे जीवन के उस हिस्से में कुछ मज़ेदार, दिलचस्प, लेकिन अंततः बहुत कम मूल्यवान समय व्यतीत हुआ। हम जो कुछ भी कर रहे हैं, वह वास्तव में उपयोगी तकनीक का एक ओपन सोर्स संस्करण बना रहा है जिसे हमने कई अवतारों में बनाया है, लेकिन आसानी से नई परियोजनाओं में आगे नहीं बढ़ पाए हैं।
सांस्कृतिक प्रेरणा: जावास्क्रिप्ट काफी हद तक ओपन-सोर्स दुनिया है। और हम बहुत सारे पुन: प्रयोज्य घटक चाहते हैं। ऐतिहासिक रूप से, इस तरह का पुन: उपयोग एक खुले स्रोत वातावरण में सबसे अच्छा फलता-फूलता है: देव जानते हैं कि अन्य देव घटकों के लिए एक ही तकनीकी स्टैक पर चलते हैं, इसलिए वे अपने घटकों का निर्माण और योगदान करेंगे।
और अंत में: ब्लॉकचैन का मुख्य मूल्य विकेन्द्रीकरण के माध्यम से उच्च अखंडता है: विभिन्न न्यायालयों में स्वतंत्र ऑपरेटरों द्वारा चलाए जा रहे कई कंप्यूटरों पर स्मार्ट अनुबंध निष्पादित किए जाते हैं। यदि वे सभी समान, क्लोज्ड-सोर्स सॉफ़्टवेयर चला रहे हैं, तो हमें अनिवार्य रूप से कोई विकेंद्रीकरण नहीं मिलेगा। कार्यान्वयनकर्ता विफलता का एकमात्र स्रोत हैं। और वास्तव में इसे समुदाय के स्वामित्व वाले कोड में विकसित होने की आवश्यकता है। वह केवल ओपन-सोर्स के साथ वास्तव में काम करता है।
वह एक कवर है! डीन ट्रिबल, हमारे सवालों का जवाब देने के लिए यहां आने के लिए आपका बहुत-बहुत धन्यवाद। क्या आपके पास कोई अंतिम विचार है या क्या कोई ऐसी चीज है जिसका आप प्रचार करना चाहते हैं?
हम इंटरचेन वातावरण के लिए समुदाय समर्थित स्थिर टोकन प्रदान करने के लिए अपना "मेननेट 1" लॉन्च करेंगे। http://agoric.com/discord में समुदाय के साथ भाग लें और न्यूज़लेटर और http://agoric.com/newsletter के लिए साइन अप करें! और अगर आप web2 डेवलपर हैं, तो endojs चेकआउट करें। मुझे रखने के लिए धन्यवाद!
और निश्चित रूप से हमारे एगोरिक घोषणा चैनल,
टेलीग्राम ( https://t.me/agoric_ann ) और ट्विटर ( https://twitter.com/agoric )।