जैसा कि मैं यह लिख रहा हूं, मैं लंदन कार्यालय में बैठा हूं और विचार कर रहा हूं कि एथेरियम के प्रोटोकॉल, क्लाइंट और पी2पी-नेटवर्क को सुरक्षित करने के लिए हम जो काम कर रहे हैं, उसके बारे में आपको अच्छी जानकारी कैसे दें। जैसा कि आपको याद होगा, सुरक्षा ऑडिट का प्रबंधन करने के लिए मैं पिछले साल के अंत में एथेरियम टीम में शामिल हुआ था। चूंकि वसंत बीत चुका है और गर्मियां आ गई हैं और इस बीच कई ऑडिट समाप्त हो गए हैं, अब मेरे लिए विश्व कंप्यूटर के मशीन रूम के निरीक्षण से कुछ परिणाम साझा करने का अच्छा समय है। 😉
यह बहुत स्पष्ट है, क्योंकि ग्राहकों की डिलीवरी एक विस्तृत उत्पाद विकास प्रक्रिया है, यह एक रोमांचक लेकिन अत्यधिक जटिल शोध प्रयास है। उत्तरार्द्ध कारण है कि सबसे अच्छा नियोजित विकास कार्यक्रम भी परिवर्तन के अधीन है क्योंकि हम अपने समस्या डोमेन के बारे में और अधिक खोजते हैं।
एथेरियम के लिए अधिकतम सुरक्षा सुनिश्चित करने के लिए एक सामान्य रणनीति के विकास के साथ पिछले साल के अंत में सुरक्षा ऑडिट शुरू हुआ। जैसा कि आप जानते हैं, हमारे पास शेड्यूल संचालित विकास प्रक्रिया के बजाय सुरक्षा संचालित है। इसे ध्यान में रखते हुए, हमने एक बहु-स्तरीय लेखापरीक्षा दृष्टिकोण को एक साथ रखा है जिसमें निम्न शामिल हैं:
- स्थापित ब्लॉकचैन शोधकर्ताओं और विशेष सॉफ्टवेयर सुरक्षा कंपनियों द्वारा नए प्रोटोकॉल और एल्गोरिदम का विश्लेषण
- एक विश्व स्तरीय विशेषज्ञ सुरक्षा परामर्श द्वारा प्रोटोकॉल और कार्यान्वयन का एंड-टू-एंड ऑडिट (सी ++ द्वारा पीछा किया जाता है और शैक्षिक पायथन क्लाइंट के लिए एक बुनियादी ऑडिट), साथ ही साथ
- बग बाउंटी प्रोग्राम.
नए प्रोटोकॉल और एल्गोरिदम के विश्लेषण में सुरक्षा जैसे विषय शामिल हैं:
- गैस अर्थशास्त्र
- कार्य पहेली के साथ-साथ नव निर्मित ASIC-प्रतिरोधी प्रमाण
- खनन नोड्स का आर्थिक प्रोत्साहन।
हमारे बग बाउंटी कार्यक्रम के साथ “भीड़-स्रोत” ऑडिट घटक क्रिसमस के आसपास शुरू हुआ। हमने अपने कोड में बग खोजने वाले लोगों को पुरस्कृत करने के लिए 11 अंकों की सातोशी राशि निर्धारित की थी। हमने बहुत उच्च गुणवत्ता देखी है प्रविष्टियों हमारे बग बाउंटी कार्यक्रम के लिए और शिकारियों को इसी तरह के पुरस्कार मिले। बग बाउंटी कार्यक्रम अभी भी चल रहा है और हमें आवंटित बजट का उपयोग करने के लिए और सबमिशन की आवश्यकता है…
सुरक्षा सलाहकार लीस्ट अथॉरिटी द्वारा पहला बड़ा सुरक्षा ऑडिट (गैस अर्थशास्त्र और पीओडब्ल्यू पहेली को कवर करते हुए) जनवरी में शुरू किया गया था और सर्दियों के अंत तक जारी रहा। हमें बहुत खुशी है कि हम अपने अधिकांश बाहरी लेखापरीक्षकों से सहमत हैं कि लेखापरीक्षा कार्य और निष्कर्षों को ठीक करने के पूरा होने के बाद वे लेखापरीक्षा रिपोर्ट सार्वजनिक रूप से उपलब्ध होंगी। तो इस ब्लॉग पोस्ट के साथ, हम सबसे कम प्राधिकरण पेश करते हुए प्रसन्न हैं परीक्षण विवरण और साथ ब्लॉग भेजा. इसके अलावा, रिपोर्ट में ऐप डेवलपर्स के लिए उपयोगी सिफारिशें शामिल हैं ताकि सुरक्षित डिजाइन और अनुबंधों की तैनाती सुनिश्चित की जा सके। जैसे ही वे उपलब्ध होंगे हम और रिपोर्ट प्रकाशित करने की उम्मीद करते हैं।
हमने गो कार्यान्वयन पर ऑडिट कवरेज प्रदान करने के लिए वर्ष की शुरुआत में एक अन्य सॉफ्टवेयर सुरक्षा फर्म को भी शामिल किया है। कई ग्राहकों के साथ आने वाली बढ़ी हुई सुरक्षा को देखते हुए और जैसा कि गाव ने अपनी पिछली पोस्ट में उल्लेख किया है, हमने जुलाई की शुरुआत में पायथन और सी ++ ऑडिट को एक हल्का सुरक्षा ऑडिट देने का भी फैसला किया है। C++ कोड को ठीक बाद एक पूर्ण ऑडिट प्राप्त होगा – इस दृष्टिकोण के साथ हमारा लक्ष्य रिलीज प्रक्रिया के दौरान जितनी जल्दी हो सके कई उपलब्ध लेखापरीक्षित ग्राहकों को सुनिश्चित करना है।
हमने फरवरी में एक सप्ताह की कार्यशाला के साथ गो क्लाइंट, उर्फ ”एंड टू एंड ऑडिट” के लिए इस सबसे व्यापक ऑडिट को बंद कर दिया, जिसके बाद नियमित चेक-इन कॉल और साप्ताहिक ऑडिट रिपोर्ट के सप्ताह होंगे। ऑडिट को बग ट्रैकिंग और फिक्सिंग, प्रबंधित और पूरी तरह से एक व्यापक प्रक्रिया में एम्बेड किया गया था जीथब पर ट्रैक किया गया क्रिस्टोफ और दिमित्री के साथ गुस्ताव द्वारा संबंधित आवश्यक परीक्षणों को कोडित करना।
जैसा कि नाम से पता चलता है, एंड-टू-एंड ऑडिट को “सब कुछ” (नेटवर्किंग से एथेरियम वीएम से पीओडब्ल्यू को सिंकिंग लेयर तक) कवर करने के लिए स्कोप किया गया था ताकि कम से कम एक ऑडिटर ने एथेरियम की विभिन्न कोर लेयर्स को क्रॉस चेक किया हो। सलाहकारों में से एक ने हाल ही में स्थिति को संक्षेप में संक्षेप में प्रस्तुत किया: “ईमानदार होने के लिए, एथेरियम की परीक्षण की ज़रूरतें मैंने पहले देखी गई चीज़ों की तुलना में अधिक जटिल हैं”। जैसा कि गाव ने अपने में बताया अंतिम ब्लॉग पोस्ट, नेटवर्किंग और सिंकिंग रणनीति में महत्वपूर्ण बदलावों के कारण हमने अंततः गो के लिए और ऑडिट कार्य शुरू करने का निर्णय लिया – जिसे हम इस सप्ताह समाप्त करने वाले हैं। एंड-टू-एंड सी++ और बेसिक पायथन ऑडिट के लिए किक-ऑफ अब हो रहा है।
बाद के बग फिक्सिंग और रिग्रेशन टेस्टिंग के साथ-साथ संबंधित रीफैक्टरिंग और रीडिज़ाइन (नेटवर्किंग और सिंकिंग लेयर) के साथ ऑडिट का काम अधिकांश काम करता है जो डेवलपर्स को अभी व्यस्त रखता है। इसी तरह, निष्कर्षों को ठीक करना, नया स्वरूप और प्रतिगमन परीक्षण डिलीवरी में देरी का कारण हैं। इसके अलावा, ओलंपिक परीक्षण चरण ने हमें विभिन्न परिदृश्यों में लचीलेपन के बारे में बहुत कुछ सिखाया है, जैसे धीमे कनेक्शन, बुरे साथी, अजीब व्यवहार करने वाले साथी और पुराने साथी। अब तक की सबसे बड़ी चुनौती कांटे से लड़ना और उबरना रही है। जब इस प्रकार के परिदृश्यों और घटनाओं से निपटने की बात आती है तो आवश्यक प्रक्रियाओं के संदर्भ में हमने पुनर्प्राप्ति प्रयासों से बहुत कुछ सीखा है।
यह आश्चर्य की बात नहीं हो सकती है कि विभिन्न ऑडिट एक महत्वपूर्ण व्यय का प्रतिनिधित्व करते हैं – और हमें लगता है कि पैसा बेहतर निवेश नहीं किया जा सकता है।
जैसे-जैसे हम रिलीज के करीब आ रहे हैं, सुरक्षा और विश्वसनीयता हमारे दिमाग में सबसे ऊपर है, विशेष रूप से ओलंपिक टेस्ट रिलीज में पाए जाने वाले कुछ महत्वपूर्ण मुद्दों को देखते हुए। हम अब तक सभी लेखापरीक्षकों द्वारा किए गए उत्साह और संपूर्ण कार्य के लिए बहुत आभारी हैं। उनके काम ने हमें येलो पेपर में विनिर्देशों को तेज करने और अस्पष्टता को दूर करने और कई सूक्ष्म मुद्दों को ठीक करने में मदद की, और उन्होंने कई कार्यान्वयन बगों की पहचान करने में मदद की।