SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

कैसे SHA256 और खनन बिटकॉइन नेटवर्क की रक्षा करते हैं

ऊर्जा द्वारा बिटकॉइन का बचाव कैसे किया जाता है? और एक गैर क्या है? इन और अन्य सवालों के जवाब भीतर दिए गए हैं!

खनन कार्य कैसे आकर्षक है। जब मैं इसे लोगों को समझाता हूं, तो मुझे उनका चेहरा देखकर मजा आता है, जब उनका दिमाग उड़ जाता है। मैं इसे यहाँ समझाता हूँ, लेकिन बस इतना जान लीजिए, मैं आपके सभी चेहरों की कल्पना कर रहा हूँ जैसे आपका दिमाग उड़ रहा है!

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

आपको यह समझने की आवश्यकता नहीं है कि इससे लाभ उठाने के लिए बिटकॉइन कैसे काम करता है, ठीक उसी तरह जैसे आपको यह समझने की आवश्यकता नहीं है कि इंटरनेट का उपयोग करने के लिए टीसीपी/आईपी कैसे काम करता है। लेकिन आगे बढ़ें, क्योंकि यह काफी दिलचस्प है और मैं इसे समझना आसान बना दूँगा, मैं वादा करता हूँ।

हैश फंक्शंस

आइए एक योजनाबद्ध के साथ शुरू करें जिसे मैं नीचे समझाऊंगा ...

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.
(ग्राफिक/@jirolls_btc)

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

पहला सिक्योर हैश एल्गोरिथम (SHA) मूल रूप से था एनएसए द्वारा विकसित और अब कई अलग-अलग संस्करण हैं (बिटकॉइन SHA256 का उपयोग करता है)। यह निर्देशों का एक सेट है कि कैसे एक बहुत ही जटिल लेकिन निर्दिष्ट तरीके से डेटा को अव्यवस्थित किया जाए। निर्देश एक रहस्य नहीं हैं और इसे हाथ से करना भी संभव है, लेकिन यह बहुत थकाऊ है।

SHA256 के लिए, आउटपुट 256-बिट संख्या है (संयोग नहीं)।

256-बिट संख्या का अर्थ है एक द्विआधारी संख्या 256 अंक लंबी। बाइनरी का मतलब है कि मान को दो प्रतीकों के साथ दर्शाया गया है, या तो 0 या 1. बाइनरी नंबरों को किसी अन्य प्रारूप में परिवर्तित किया जा सकता है, उदाहरण के लिए दशमलव संख्याएं, जिनसे हम परिचित हैं।

हालांकि फ़ंक्शन 256-अंकीय बाइनरी नंबर देता है, मान आमतौर पर हेक्साडेसिमल प्रारूप में व्यक्त किया जाता है, 64 अंक लंबा।

हेक्साडेसिमल का अर्थ है कि 10 संभावित प्रतीकों के बजाय जैसे हम दशमलव (0 से 9) के लिए उपयोग किए जाते हैं, हमारे पास 16 प्रतीक हैं (दस हम उपयोग किए जाते हैं, 0-9, प्लस अक्षर ए, बी, सी, डी, ई, और f; जिसका मान 11 से 15 है)। उदाहरण के तौर पर, दशमलव 15 के मान को हेक्साडेसिमल में दर्शाने के लिए, हम केवल "f" लिखते हैं और यह वही मान है। यदि आपको अधिक विस्तार की आवश्यकता है, तो त्वरित Google खोज के साथ ऑनलाइन बहुत सारी जानकारी उपलब्ध है।

कार्रवाई में SHA256 को प्रदर्शित करने के लिए, मैं नंबर 1 ले सकता हूं और इसे एक के माध्यम से चला सकता हूं ऑनलाइन हैश कैलकुलेटर, और यह आउटपुट मिला (हेक्साडेसिमल में):

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

शीर्ष बॉक्स इनपुट है, निचला बॉक्स परिणामी आउटपुट है।

ध्यान दें कि दुनिया के सभी कंप्यूटर एक ही आउटपुट का उत्पादन करेंगे, बशर्ते इनपुट समान हो और SHA256 फ़ंक्शन का उपयोग किया गया हो।

हेक्साडेसिमल संख्या आउटपुट, यदि दशमलव में परिवर्तित किया जाता है, है (ध्यान दें कि इसे लिखने में अधिक अंक लगते हैं):

48,635,463,943,209,834,798,109,814,161,294,753,926,839,975,257,569,795,305,637,098,542,720,658,922,315

और बाइनरी में परिवर्तित यह है:

11010111000011010110010011100111111111100110100111111001110000110011101011010111000000001001110111111110101101000111111010101110100011110101101101001001110101010100010001011110001110101001001110000000001111001010010110111011011011110000111010110110100101111010111001101011100110101110011010111001101011100110101110011010111001101011100111

बस रुचि के कारण, यहाँ वही मान है आधार 64.

1w1k5/5p+cM61wCd/rR+ro9bSdVEXjqTgDylu28OtpY=

ध्यान दें कि सबसे छोटा संभव मान SHA256 वापस आ सकता है, शून्य है, लेकिन LENGTH अभी भी 256 बिट्स है। इस प्रकार शून्य का प्रतिनिधित्व किया जाता है:

0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

और सबसे बड़ा संभावित मूल्य है:

1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

दशमलव में, वह है:

115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,457,584,007,913,129,639,935

हेक्साडेसिमल में, यह है:

एफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफएफ

ध्यान दें कि बिल्कुल 64 एफ हैं।

हेक्साडेसिमल में शून्य को केवल एक शून्य के रूप में लिखा जा सकता है, लेकिन हैश आउटपुट के लिए, निश्चित आकार के आउटपुट की आवश्यकता को पूरा करने के लिए उनमें से 64 हैं:

0000000000000000000000000000000000000000000000000000000000000000

यहां हैश फ़ंक्शन के बारे में कुछ तथ्यों का सारांश दिया गया है जिनकी सराहना करना महत्वपूर्ण है:

  • इनपुट को आउटपुट से निर्धारित नहीं किया जा सकता है
  • इनपुट किसी भी लम्बाई का हो सकता है
  • आउटपुट हमेशा समान लंबाई का होता है
  • यदि आप समान इनपुट प्रदान करते हैं तो आउटपुट हमेशा समान रूप से पुन: प्रस्तुत किया जाएगा।
  • इनपुट में कोई भी परिवर्तन, चाहे वह कितना भी छोटा क्यों न हो, अप्रत्याशित और बेतहाशा भिन्न आउटपुट का कारण बनेगा
  • आउटपुट प्रतीत होता है यादृच्छिक है, लेकिन वास्तव में नियतात्मक है (जिसका अर्थ है कि इसकी गणना और प्रतिलिपि प्रस्तुत करने योग्य है)
  • आउटपुट की भविष्यवाणी नहीं की जा सकती है। इसकी केवल गणना की जा सकती है और यह एक कंप्यूटर द्वारा (और पेंसिल और कागज के साथ घंटे) काम की एक मापनीय मात्रा लेता है! ऐसा मत करो।)

अब जब आप मूल अवधारणा को समझ गए हैं कि हैश क्या है, तो आप इस स्पष्टीकरण को समझ सकते हैं कि बिटकॉइन खनन कैसे काम करता है।

लेकिन इससे पहले कि आप आगे बढ़ें, मेरा सुझाव है कि आप एक ऑनलाइन हैश कैलकुलेटर पर जाएं और इसके साथ थोड़ा खेलें और अपने लिए परीक्षण करें कि मैंने हैश फ़ंक्शन के बारे में क्या कहा है। मैं यह पसंद है।

खनिज

मैं काम की एक अवधारणा का प्रदर्शन करके शुरू करूंगा, जो कि बिटकॉइन में "काम का सबूत" है।

ऑनलाइन हैश कैलकुलेटर पर जाएं और टाइप करें "मैं 50 बिटकॉइन बना रहा हूं और खुद को इस राशि का भुगतान कर रहा हूं।"

पूर्ण विराम सहित, इसे ठीक-ठीक टाइप करें, केस संवेदी। आपको यह आउटपुट मिलना चाहिए:

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

अब, एक नियम बनाते हैं जो कहता है कि इस भुगतान संदेश के मान्य होने के लिए, हमें एक शून्य से शुरू करने के लिए हैश की आवश्यकता है। ऐसा करने के लिए, हमें किसी तरह इनपुट को बदलना होगा। लेकिन, जैसा कि आपने सीखा है, यह अनुमान नहीं लगाया जा सकता है कि किसी दिए गए इनपुट के लिए आउटपुट क्या होगा। शून्य से शुरू होने वाले हैश को सुनिश्चित करने के लिए हम क्या संशोधन कर सकते हैं?

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

"नॉन्स" शब्द "केवल एक बार उपयोग की गई संख्या" से लिया गया माना जाता है, लेकिन मुझे यह दिखाई नहीं देता है।

नीचे ध्यान दें कि कैसे "नॉन:" को एक अतिरिक्त फ़ील्ड हेडिंग के रूप में जोड़ने से हैश आउटपुट बदल जाता है।

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

आउटपुट अभी भी "0" से शुरू नहीं होता है, तो चलिए कुछ बकवास जोड़ते हैं (मैंने एक अर्थहीन "x" जोड़ा):

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

यह अभी भी शून्य से शुरू नहीं होता है। हैश शून्य से शुरू होने तक मैंने कुछ और पात्रों की कोशिश की:

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

हम वहाँ चलें। अब, मैंने बिटकॉइन के इस नकली संस्करण के लिए निर्धारित मनमाने नियमों के अनुसार, इनपुट विंडो में टेक्स्ट एक वैध ब्लॉक है जिसमें एक लेनदेन मुझे 50 बिटकॉइन का भुगतान करता है।

ध्यान दें कि बिटकॉइन ब्लॉक अनिवार्य रूप से एक खाता बही के पृष्ठ हैं। प्रत्येक ब्लॉक को क्रमांकित किया जाता है और उपयोगकर्ताओं के बीच लेनदेन को सूचीबद्ध करने के साथ-साथ नया बिटकॉइन बनाता है। यह रिकॉर्ड वह जगह है जहां बिटकॉइन रहता है।

अब एक नया नियम। अगले ब्लॉक के लिए, पिछले ब्लॉक के हैश को शामिल किया जाना चाहिए। मैं थोड़ी जटिलता जोड़ूंगा और वास्तविक बिटकॉइन ब्लॉक के दृष्टिकोण के लिए कुछ और फ़ील्ड जोड़ूंगा।

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

हैश "f" से शुरू होता है न कि "0" से, इसलिए मुझे गैर फ़ील्ड में कुछ मानों को आज़माना होगा:

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

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

ध्यान दें कि बिटकॉइन के क्षेत्र इस तरह हैं, लेकिन और भी विवरण हैं जो मैंने नहीं जोड़े हैं। यह सिर्फ एक बिंदु को स्पष्ट करने के लिए है, जरूरी नहीं कि बिटकॉइन ब्लॉक कैसा दिखता है, इसका विस्तार से वर्णन करें।

मैं अगले ब्लॉक में एक समय फ़ील्ड जोड़ूंगा क्योंकि मुझे अगले "कठिनाई समायोजन" की व्याख्या करने की आवश्यकता है:

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

ऊपर ब्लॉक नंबर तीन है। इसमें पिछले ब्लॉक का हैश शामिल है और अब मैंने समय भी शामिल करना शुरू कर दिया है। एक बार जब मैंने सफलतापूर्वक हैश को शून्य से शुरू किया (मैं हैश लक्ष्य पूरा होने तक "1" टाइप करता रहा)।

अब यहाँ पर्याप्त है कि मैं बिटकॉइन ब्लॉकचैन और खनन के बारे में कुछ दिलचस्प अवधारणाओं को समझाना शुरू कर सकता हूं।

एक ब्लॉक जीतना

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

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

प्रत्येक ब्लॉक के साथ, नए बिटकॉइन बनाए जा रहे हैं और सामूहिक रूप से अब तक की कुल आपूर्ति करते हैं। यदि कई खनिक हैं, तो सांख्यिकीय रूप से हमें उम्मीद करनी चाहिए कि ब्लॉक तेजी से उत्पादित होंगे, और इसलिए बिटकॉइन तेजी से बनाया जाएगा। समस्या, है ना?

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

नोड्स: मैं "वैध" ब्लॉक का उल्लेख करता हूं। तो क्या? कौन चेक कर रहा है? बिटकॉइन नोड्स हैं। एक बिटकॉइन नोड अब तक ब्लॉकचेन की एक प्रति रखता है और नियमों के एक सेट का पालन करता है ताकि यह जांचा जा सके कि नए ब्लॉक नियमों के भीतर हैं और जो नहीं हैं उन्हें अस्वीकार कर दें। नियम कहां हैं? कोड में। एक कंप्यूटर जो बिटकॉइन कोड डाउनलोड करता है वह एक नोड है।

कठिनाई समायोजन

नए बिटकॉइन ब्लॉक बनाने के औसत समय की गणना प्रत्येक 2016 ब्लॉक में प्रत्येक नोड द्वारा की जाती है (यही कारण है कि समय क्षेत्र की आवश्यकता है)। यह प्रोटोकॉल और नियमों का हिस्सा है जिसका पालन नोड्स करते हैं। प्रत्येक ब्लॉक हैश को मान्य होने के लिए शून्य की संख्या को समायोजित करने के लिए एक सूत्र लागू किया जाता है।

कड़ाई से, यह शून्य की संख्या नहीं है जिसे समायोजित किया गया है, लेकिन हैश का लक्ष्य मान नीचे होना चाहिए, लेकिन अग्रणी शून्य के बारे में सोचना व्याख्या करना आसान है।

यदि ब्लॉक बहुत तेजी से उत्पादित किए जा रहे हैं, तो हैश लक्ष्य को पूर्व-निर्धारित नियमों के अनुसार समायोजित किया जाता है जो सभी नोड्स समान रूप से पालन करते हैं (यह उनके कोड में है)।

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

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

यहाँ अगला ब्लॉक है:

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

समय पर ध्यान दें। पिछले ब्लॉक के बाद से 10 मिनट से अधिक समय बीत चुका है (मैंने अभी प्रदर्शन करने के लिए समय बनाया है)। 10 मिनट का लक्ष्य संभाव्य है; अगला ब्लॉक कब मिलेगा इसका ठीक-ठीक पता नहीं है।

मैंने कीबोर्ड पर एक मिनट तक गड़बड़ की जब तक कि दो शून्य दिखाई नहीं दिए। यह एक शून्य को खोजने की तुलना में तेजी से कठिन था। एक पंक्ति में दो शून्य खोजने की संभावना 1 में 16 है2, या 1 में से 256 मौका।

यदि अधिक लोगों को खनन और नए बिटकॉइन के लिए प्रतिस्पर्धा में शामिल होना था, तो अंततः तीन शून्य की आवश्यकता होगी।

मैंने अभी पिछले वास्तविक बिटकॉइन ब्लॉक को देखा, जिसमें पिछले ब्लॉक का हैश शामिल है। हैश था:

000000000000000000084d31772619ee08e21b232f755a506bc5d09f3f1a43a1

वह 19 शून्य है! 1 में 16 होता है19 प्रत्येक प्रयास के साथ ऐसे ब्लॉक को खोजने का मौका। बिटकॉइन खनिक दुनिया भर में सामूहिक रूप से प्रति सेकंड कई प्रयास करते हैं।

प्रति सेकंड प्रयासों की संख्या को "हैश रेट" के रूप में जाना जाता है। वर्तमान में, अनुमानित विश्व हैश दर केवल 200 मिलियन टेराहैश प्रति सेकंड (एक टेराहाश एक ट्रिलियन हैश है) से कम है। प्रति सेकंड इतने प्रयासों के साथ, हर 19 मिनट में 10 शून्य से शुरू होने वाला हैश वाला एक ब्लॉक पाया जाता है।

भविष्य में, जैसे-जैसे अधिक खनिक शामिल होंगे, हैश दर बढ़ेगी, ब्लॉक तेजी से मिलेंगे, और बिटकॉइन की कठिनाई को 20 शून्य की आवश्यकता के लिए समायोजित किया जाएगा, जो ब्लॉक उत्पादन को लगभग 10 मिनट तक वापस धकेल देगा।

हाल्टिंग

जब बिटकॉइन पहली बार शुरू हुआ, तो प्रत्येक ब्लॉक के साथ 50 बिटकॉइन का उत्पादन किया गया था। बिटकॉइन ब्लॉकचेन के नियम निर्दिष्ट करते हैं कि प्रत्येक 210,000 ब्लॉक के बाद इनाम को आधा कर दिया जाएगा। इस क्षण को "आधा" के रूप में जाना जाता है और यह लगभग हर चार साल में होता है। हॉल्टिंग, 10 मिनट के अंतराल पर ब्लॉक रखने में कठिनाई समायोजन के साथ संयुक्त, इसका मतलब है कि वर्ष 2140 के आसपास, ब्लॉक इनाम 0.00000001, या 1 सतोशी, बिटकॉइन की सबसे छोटी इकाई होगी, और इसे अब आधा नहीं किया जा सकता है। खनन बंद नहीं होगा, लेकिन ब्लॉक इनाम शून्य होगा। उस क्षण से, कोई नया बिटकॉइन नहीं बनाया जाएगा और बिटकॉइन की संख्या गणितीय रूप से गणना योग्य है और 21 मिलियन सिक्कों के काफी करीब है। इस तरह से कुल आपूर्ति ज्ञात होती है - यह प्रोग्रामेटिक रूप से सेट होती है।

यहां तक ​​​​कि शून्य पर ब्लॉक इनाम के साथ, लेन-देन शुल्क अर्जित करने के लिए खनिकों को अभी भी काम करने के लिए प्रोत्साहित किया जाएगा।

ब्लॉक इनाम को आधा कैसे काट दिया जाता है? यह नोड्स द्वारा आयोजित कोड में है। वे 210,000, 25 के बाद किसी भी नए ब्लॉक को अस्वीकार करना जानते हैं जहां एक खनिक खुद को 420,000 बिटकॉइन से अधिक का भुगतान करता है। और फिर 12.5 के बाद किसी भी ब्लॉक को अस्वीकार करने के लिए जहां एक खनिक खुद को XNUMX बिटकॉइन से अधिक का भुगतान करता है, और इसी तरह।

लेन - देन शुल्क

अब तक मैंने केवल एक ही लेन-देन के साथ काल्पनिक ब्लॉक दिखाए हैं - वह लेन-देन जहां खनिक को इनाम दिया जाता है। इसे "कॉइनबेस लेनदेन" कहा जाता है।

इसका नाम कंपनी कॉनबेस के नाम पर नहीं है, मेरा मतलब कॉइनबेस है। कंपनी ने खुद को कॉइनबेस लेनदेन के नाम पर रखा, न कि दूसरी तरफ। भ्रमित न हों।

कॉइनबेस लेनदेन के अलावा, एक दूसरे को भुगतान करने वाले लोगों के लेनदेन भी होते हैं। यहाँ एक कल्पित उदाहरण है:

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

मैंने इस बार एक वास्तविक हैश खोजने की जहमत नहीं उठाई (यह वास्तव में ब्लॉक 200,001 में रिपोर्ट किया गया वास्तविक हैश है)। गैर-मैं सिर्फ मनोरंजन के लिए बना हूं, लेकिन ध्यान दें कि वहां एक संदेश एम्बेड किया जा सकता है।

सतोशी ने दिन के लिए अखबार की हेडलाइन के बाद, पहले बिटकॉइन ब्लॉक (द जेनेसिस ब्लॉक) में "बैंकों के लिए दूसरी बेलआउट के कगार पर चांसलर" शब्दों को प्रसिद्ध रूप से शामिल किया।

SHA256 और माइनिंग बिटकॉइन नेटवर्क प्लेटोब्लॉकचैन डेटा इंटेलिजेंस की सुरक्षा कैसे करते हैं। लंबवत खोज। ऐ.

यहां मुद्दा यह है कि इसमें 132 लेन-देन शामिल हैं (सभी नहीं दिखाए गए हैं)। लेन-देन देखें #132 - 2.3 बिटकॉइन एक पते से 2.1 बिटकॉइन दूसरे पते पर और दूसरे पते पर 0.1 बिटकॉइन की राशि का भुगतान कर रहा है (मैंने पते की लंबाई को छोटा करने के लिए डॉट्स का उपयोग किया है)।

तो 2.3 बिटकॉइन का एक स्रोत कुल 2.2 बिटकॉइन (2.2 + 0.1 = 2.2) का भुगतान करता है। क्या 0.1 बिटकॉइन गायब है? नहीं, अंतर का दावा खनिक द्वारा किया जाता है, जैसा कि मैं समझाता हूँ।

खनिक को खुद को ब्लॉक इनाम के रूप में 25 बिटकॉइन का भुगतान करने की अनुमति है (क्योंकि 210,000 ब्लॉक बीत चुके हैं इसलिए इनाम 50 से 25 तक आधा कर दिया गया है)। लेकिन अगर आप देखें, तो कॉइनबेस ट्रांजैक्शन 27.33880022 है। अतिरिक्त 2.33880022 बिटकॉइन ब्लॉक में अन्य 132 लेनदेन से आता है - इनपुट सभी आउटपुट के कुल से थोड़ा अधिक होंगे। तो खनिक को खुद को भुगतान के रूप में इस "छोड़े गए" बिटकॉइन का दावा करना पड़ता है। ये खनिक को भुगतान किए गए लेनदेन शुल्क माने जाते हैं।

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

इसलिए जब ब्लॉक इनाम लगातार कम हो जाता है, हर चार साल में आधा हो जाता है और अंततः शून्य हो जाता है, तब भी खनिकों को इस तरह से भुगतान मिलता है।

कुछ ने सुझाव दिया है कि एक दिन खनिकों को इनाम पर्याप्त नहीं होगा और इससे बिटकॉइन विफल हो जाएगा। इस चिंता को पूरी तरह से खारिज कर दिया गया है और मैं इसे यहां नहीं दोहराऊंगा।

क्या एक ब्लॉक को फिर से लिखा जा सकता है?

यह बेहद असंभव है और यह समझने लायक है कि क्यों। फिर आप इस बात की सराहना करेंगे कि बिटकॉइन लेनदेन अपरिवर्तनीय (अपरिवर्तनीय) क्यों हैं।

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

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

संपादित ब्लॉक से नवीनतम ब्लॉक तक पूरी दुनिया के सामूहिक हैशिंग प्रयास को दोहराना बिटकॉइन के संपादन में बाधा है। उन सभी असंभव शून्यों के साथ उन हैश को बनाने के लिए ऊर्जा खर्च की गई थी और बिटकॉइन को संपादित करने के लिए ऊर्जा व्यय को दोहराया जाना चाहिए। यही कारण है कि बिटकॉइन को माइन करने के लिए उपयोग की जाने वाली ऊर्जा "बर्बाद" नहीं होती है; यह बिटकॉइन को संपादन से बचाने के लिए है, एक केंद्रीय प्राधिकरण पर भरोसा किए बिना खाता बही को अपरिवर्तनीय बनाने के लिए।

यदि दो खनिकों को एक ही समय में एक ब्लॉक मिल जाए तो क्या होगा?

यह वास्तव में समय-समय पर होता है, और यह हमेशा अपने आप को इस प्रकार व्यवस्थित करता है:

प्रत्येक नोड को पहले नए लगभग एक साथ आने वाले ब्लॉकों में से एक प्राप्त होगा और वह उसे स्वीकार करेगा और कुछ ही क्षण बाद आने वाले को अस्वीकार कर देगा। इसके परिणामस्वरूप नेटवर्क का विभाजन हो जाता है, लेकिन यह अस्थायी है।

उदाहरण के लिए, आइए एक ब्लॉक को नीला और दूसरे को लाल कहें (उनका कोई रंग नहीं है, बस मेरे साथ है)।

खनिक फिर अगले ब्लॉक पर काम करते हैं, लेकिन एक विभाजन होगा कि वे किस ब्लॉक से श्रृंखला का विस्तार करते हैं।

मान लें कि विजेता खनिक को नीली श्रृंखला का उपयोग करके एक ब्लॉक मिला। वे सभी नोड्स को नया ब्लॉक भेजेंगे और सबसे लंबी श्रृंखला स्पष्ट होगी। जिन नोड्स ने लाल श्रृंखला को स्वीकार किया था, वे इसे छोड़ देंगे और नीली श्रृंखला को अपनाएंगे।

लाल श्रृंखला पर काम करने वाले सभी खनिक बंद हो जाएंगे और अब लंबी श्रृंखला पर काम करेंगे, जो कि नीली श्रृंखला है। लाल जंजीर मर चुकी है।

परिशिष्ट

क्यों एक रनर अप माइनर का ब्लॉक अमान्य है

मान लीजिए ब्लॉक 700,000 को माइनर-ए द्वारा अभी-अभी खनन किया गया है। तीस सेकंड बाद, माइनर-बी ने 700,000 ब्लॉक का एक अलग संस्करण भी बनाया। जब मिनर-बी इस विकल्प को प्रसारित करता है, तो प्रत्येक नोड इसे अस्वीकार कर देगा क्योंकि उन्होंने पहले ही माइनर-ए द्वारा ब्लॉक को देखा और स्वीकार कर लिया है। इसके अलावा, उस 30 सेकंड में, मान लें कि माइनर-सी को ब्लॉक 700,001 मिला। यह देखते हुए कि माइनर-बी का प्रतिस्पर्धी 700,000वां ब्लॉक वर्तमान श्रृंखला (जो कि 700,001 तक है) का विस्तार नहीं करता है, इस कारण से इसे भी खारिज कर दिया गया है।

इससे भी अधिक दिलचस्प बात यह है कि यदि माइनर-बी 700,001 के प्रतिस्पर्धी संस्करण के बजाय ब्लॉक 700,000 पर काम कर रहा होता, तो उनके पास एक वैध ब्लॉक 700,001 खनन करने का उतना ही मौका होता, जितना कि उन्हें अंततः एक वैकल्पिक ब्लॉक 700,000 खोजना होता। इसलिए जैसे ही कोई खनिक एक नया ब्लॉक देखता है, उन्हें अगले ब्लॉक पर अपना प्रयास करना चाहिए।

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

यह अरमान द परमान की अतिथि पोस्ट है। व्यक्त की गई राय पूरी तरह से उनकी अपनी हैं और जरूरी नहीं कि वे बीटीसी इंक या . के विचारों को प्रतिबिंबित करें बिटकॉइन पत्रिका.

समय टिकट:

से अधिक बिटकॉइन पत्रिका