Bitcoin Development Philosophy एक सार्वजनिक रूप से उपलब्ध पुस्तक है, जो Bitcoin विकास के पीछे के कारणों और समझौतों को समझाती है। मुख्य लेखक Kalle Rosenbaum और सहलेखिका Linnéa Rosenbaum हैं; Chaincode Labs ने यह कार्य करवाया और इसका वित्तपोषण किया। यह तकनीकी बुनियाद जानने वाले उन पाठकों के लिए है जो बदलाव के प्रस्तावों को बेहतर परखना चाहते हैं।
किसी प्रस्ताव में प्रोग्रामिंग त्रुटि न हो, फिर भी वह पूरे सिस्टम को कमज़ोर कर सकता है। उदाहरण के लिए, कुछ सत्यापन बाहरी सेवा को सौंपकर उपयोग आसान बनाया जा सकता है। पुस्तक पहचानने में मदद करती है कि इस लेन-देन से हमें क्या मिलता है और हम किस पर भरोसा करने लगते हैं। लेखक व्याख्या को पुरानी बहसों और अनुभवी डेवलपरों के विचारों से जोड़ते हैं। पाठक किसी प्रसिद्ध नाम के कारण पक्ष चुनने के बजाय प्रस्ताव के कारणों को परखता है। [2]
पहले Proof of Work, यानी माइनिंग में प्रमाणित किया जाने वाला काम, ब्लॉक बनना और प्रसारित होने से चेन में शामिल होने तक लेन-देन की यात्रा समझनी चाहिए। आगे 9 मुख्य अध्याय हैं: विकेंद्रीकरण, Trustlessness, निजता, सीमित आपूर्ति, अपग्रेड, Adversarial thinking, खुला विकास, क्षमता विस्तार और घटनाओं से निपटना। यह पहला बिटकॉइन खरीदने की शुरुआती मार्गदर्शिका नहीं है। यह आधारभूत जानकारी से आगे बढ़कर पूछती है कि खास नियम और तरीके क्यों महत्त्वपूर्ण हैं। [2] [1]
Trustlessness का अर्थ यह नहीं कि अब कभी किसी पर भरोसा न करें। उद्धृत Pieter Wuille के अनुसार, इसका अर्थ है भरोसेमंद मध्यस्थ के बिना प्रोटोकॉल का काम कर पाना। Full Node, यानी पूरी जाँच करने वाला नोड, खुद देखता है कि मिला हुआ ब्लॉक अनधिकृत सिक्के तो नहीं बनाता या एक ही राशि को दो बार तो नहीं खर्च करता। अपनी जाँच न हो तो यह काम किसी और को सौंपते हैं। फिर भी नोड किसी विशेष सॉफ़्टवेयर और हार्डवेयर पर चलता है, जिनमें कमियाँ हो सकती हैं। [3]
कल्पना करें कि भुगतान वाले ब्लॉक की जगह बाद में चेन की दूसरी वैध शाखा आ जाती है। इतिहास में इस बदलाव को पुनर्गठन कहते हैं और इससे भुगतान की स्थिति भी बदल सकती है। David Harding के संदर्भ से अध्याय नियमों की जाँच और इस जोखिम से सुरक्षा को अलग करता है। अधिक पुष्टियों का अर्थ है कि भुगतान के ब्लॉक के बाद और ब्लॉक जुड़ गए हैं, जिससे उसे बदलना आम तौर पर कठिन होता है। यह वादा नहीं कि अपना नोड इतिहास के हर पुनर्लेखन को रोक देगा। [3]
भुगतान जाँचने से पहले एक और प्रश्न है: क्या डाउनलोड किया प्रोग्राम प्रकाशित स्रोत कोड से मेल खाता है? पुनरुत्पादनीय बिल्ड में अलग लोग समान सामग्री से एक जैसी परिणाम फ़ाइल बना सकते हैं। तुलना से वितरित प्रोग्राम की जाँच में मदद मिलती है। लेकिन अध्याय Carl Dong की व्याख्या भी याद दिलाता है: प्रोग्राम बनाने वाले उपकरणों का स्रोत भी महत्त्वपूर्ण है। फ़ाइलें समान होने से कोड, कंपाइलर या कंप्यूटर का त्रुटिरहित होना साबित नहीं होता। [3]
Adversarial thinking का अर्थ है विरोधी की नज़र से प्रस्ताव को परखना। सवाल सिर्फ़ यह नहीं कि ईमानदार भागीदारों के साथ वह काम करता है या नहीं, बल्कि यह भी कि हमलावर उसके दुरुपयोग से क्या पा सकता है। अध्याय Andrew Poelstra और Jameson Lopp के विचारों के सहारे सुरक्षा की मान्यताएँ समझाता है। उदाहरणों में नोड को ईमानदार नेटवर्क से अलग करना या खुले सहयोग में जानबूझकर बाधा डालना शामिल है। सिस्टम का अब तक काम करना अपने आप पूरे सिस्टम की सुरक्षा का औपचारिक प्रमाण नहीं है। [4]
उद्धृत Eric Voskuil का प्रतिरोध का स्वयंसिद्ध इस मान्यता से शुरू होता है कि कोई सिस्टम राज्य के नियंत्रण का प्रतिरोध कर सकता है। यहाँ स्वयंसिद्ध तर्क का शुरुआती आधार है, ऐसा परीक्षण-परिणाम नहीं जो Bitcoin को अजेय सिद्ध करता हो। आम पाठक के लिए भी अंतर अहम है: मज़बूत समाधान खोजना सार्थक है, लेकिन इसका अर्थ यह नहीं कि हमारा हर समाधान हर खतरा झेल लेगा। पुस्तक ऐसी मान्यताओं को पहचानने और छूटे हुए पहलुओं को कम करने का तरीका देती है। [4]
हर दावे पर पूछें कि क्या सत्यापित है, क्या अब भी मान्यता है और बदलाव से उपयोगकर्ता को कौन-सी सुविधा मिलती है। लेखक लेखों और व्याख्यानों के लिंक देते हैं; लेखों की प्रतियाँ और स्रोत-सूचना रिपॉज़िटरी के अलग संग्रह में रखते हैं। यह परिचय पूरे आरंभिक परिचय तथा Trustlessness और Adversarial thinking के संपूर्ण पाठ पर आधारित है। अन्य अध्याय विषयसूची से बताए गए हैं। यह पूरी पुस्तक और उसके सभी लिंक की समीक्षा या किया गया सुरक्षा ऑडिट नहीं है। [2] [3] [4]
पूरी तस्वीर के लिए इस प्रविष्टि के साथ यह भी पढ़ें Bitcoin Core, सहमति के नियम, Soft Fork, Full Node.
01क्या यह बिल्कुल नए व्यक्ति की पहली पुस्तक हो सकती है?+
इसे शुरुआती तकनीकी परिचय के बाद पढ़ना बेहतर है। पहले लेन-देन, ब्लॉक और Proof of Work समझें। फिर यह बताती है कि सुविधाजनक फ़ीचर जोड़ने भर से विकास का काम समाप्त क्यों नहीं होता। यह प्रोटोकॉल विनिर्देश या ऐसे व्यावहारिक पाठ्यक्रम का स्थान नहीं लेती जिसके अभ्यास हमने यहाँ आज़माए हों।
02क्या Trustlessness का मतलब है कि अब किसी चीज़ पर भरोसा नहीं करना पड़ेगा?+
नहीं। अपना नोड दूसरों के दावों पर निर्भर रहने के बजाय Bitcoin के नियम जाँचने देता है। फिर भी सॉफ़्टवेयर और हार्डवेयर इस्तेमाल होते हैं, और चेन के पुनर्गठन का जोखिम ध्यान में रखना पड़ता है। उद्देश्य यह समझना है कि सत्यापन से कौन-सी निर्भरता घटी और कौन-सी बनी रही।