हालिया दिनों में, क्रिप्टोकरंसी के आगमन ने डिजिटल मुद्राओं को हमारे जीवन में काफी प्रासंगिक बना दिया है। नियमन के अभाव और इसकी अनाम प्रकृति के कारण कई सरकारों ने तो इस पर प्रतिबंध लगा दिया है जबकि अल-साल्वाडोर जैसे कुछ देशों ने तो इसे वैध मुद्रा का दर्जा दे दिया है।
दिलचस्प बात तो यह है कि अधिकांश लोगों को यह नहीं मालूम है कि क्रिप्टोकरंसी काम कैसे करती है। इस दो भाग के लेख में हम पहले क्रिप्टोकरंसियों के काम करने की प्रणाली को समझने का प्रयास करेंगे। इसको सरल तरीके से समझने के लिए हम कुछ दोस्तों का उदाहरण लेते हुए स्वयं के क्रिप्टोकरंसी मॉडल का निर्माण करेंगे और इस आधार पर क्रिप्टोकरंसी मॉडल की पूरी कार्यप्रणाली को समझेंगे। दूसरे भाग में हम राष्ट्रीय अर्थव्यवस्थाओं, विशेष रूप से भारत, पर क्रिप्टोकरंसी के प्रभाव पर ध्यान केंद्रित करेंगे और मामले का गहराई से विश्लेषण करके इसके विभिन्न पहलुओं को समझने की कोशिश करेंगे।
क्रिप्टोकरंसी क्या है?
क्रिप्टोकरंसी पूरी तरह से एक डिजिटल मुद्रा है जो निवेश के साथ-साथ खरीदारी का भी एक साधन है। चूंकि इसका कोई भौतिक वजूद नहीं है इसलिए इसे डिजिटल मुद्रा कहा जाता है। यह सरकार द्वारा विनियमित नहीं है और एक ऐसी प्रणाली के तहत काम करती है जिसके कामकाज के लिए किसी भी उपयोगकर्ता से सम्बंधित मुद्रा में किसी प्रकार के भरोसे की अपेक्षा नहीं होती।
पारंपरिक मुद्राओं के संदर्भ में सरकार इस बात की गारंटी देती है कि 10 रुपए का नोट आपको देशभर में कहीं भी 10 रूपए की क्रय शक्ति देता है जबकि क्रिप्टोकरंसी के साथ ऐसा कोई वचन नहीं जुड़ा है। प्रणाली की गैर-भरोसा आधारित प्रकृति के चलते, क्रिप्टोकरंसी लेनदेन को सत्यापित करने के लिए बैंकों की आवश्यकता नहीं होती है और यह पूरी तरह से विकेंद्रीकृत होती है (हालांकि, केंद्रीकृत क्रिप्टोकरेंसी के कई उदाहरण मौजूद हैं)। कोई नहीं जानता कि क्रिप्टोकरेंसी प्रणाली का आविष्कार किसने किया लेकिन दुनिया भर के उपयोगकर्ता इसमें निवेश करते हैं और लेनदेन के लिए भी इसका उपयोग करते हैं।
क्रिप्टोकरंसी प्रणाली कैसे काम करती है?
क्रिप्टोकरंसी के काम करने की प्रणाली और बिटकॉइन जैसी क्रिप्टोकरंसी का मालिक होने के मतलब को हम एक उदाहरण से समझने की कोशिश करते हैं। हो सकता है इसको समझने की प्रक्रिया में हम अनजाने में बिटकॉइन के समान अपनी खुद की एक क्रिप्टोकरेंसी विकसित कर लें।
1. लेजर (बहीखाता)
मान लीजिए कि चार दोस्त सुशील, सोमेश, प्रतिका और ज़ुबैर हर सप्ताह के अंत में एक साथ डिनर के लिए पास के एक रेस्तरां में जाते हैं। प्रत्येक व्यक्ति बिल को बराबर विभाजित करने पर सहमत हैं लेकिन हर सप्ताह कोई एक व्यक्ति पूरे बिल का भुगतान करता है। महीने के अंत में खर्चों का मिलान किया जाता है और यह गणना की जाती है कि कौन देनदार है और कौन लेनदार। इसके बाद चारों दोस्त आपस में लेनदेन कर हिसाब का निपटारा करते हैं।
यह सुनिश्चित करने के लिए कि कौन, किसका, कितने पैसे का देनदार है, पूरे महीने के दौरान किए गए भुगतानों को रिकॉर्ड किया जाता है। चार दोस्तों द्वारा तैयार किया गया यह छोटा सा रिकॉर्ड बहीखाते का एक उदाहरण है।
2. गैर-भरोसा आधारित प्रणाली
आइए, अब इस उदाहरण में एक दिलचस्प शर्त जोड़ते हैं। जैसा कि हमने पहले बताया था कि क्रिप्टोकरंसी एक गैर-भरोसा आधारित प्रणाली है। तो क्या होगा यदि ये चार दोस्त एक-दूसरे पर भरोसा न करते हों? यानी यदि चारों को एक दूसरे पर संदेह हो कि प्रत्येक मौका मिलने पर अपने व्यक्तिगत लाभ के लिए खाते में हेरफेर कर सकता है? इस मामले में, सभी दोस्तों को कुछ ऐसे परिवर्तन करने होंगे ताकि यह प्रणाली निजी विश्वास के बगैर भी काम कर सके और वे बेफिक्री से अपने डिनर का आनंद ले सकें। इसके लिए क्रिप्टोग्राफी क्षेत्र के कुछ विचारों को उधार लिया गया है। संक्षेप में,
बहीखाता – भरोसा + क्रिप्टोग्राफी = क्रिप्टोकरंसी
यह क्रिप्टोकरंसी का सटीक विवरण तो नहीं है लेकिन हम अपने उदाहरण को आगे थोड़ा और जटिल बनाएंगे ताकि हम एक ऐसा मॉडल विकसित कर लें जो बिटकॉइन के समान हो।
बिटकॉइन क्रिप्टोकरंसी का मात्र पहला उदाहरण है। इसकी शुरुआत तो 2009 में हुई थी लेकिन इसकी जड़ें 1983 में डेविड चौम की क्रिप्टोग्राफिक इलेक्ट्रॉनिक मनी से जुड़ी हैं जिसे ई-कैश भी कहा जाता है। यह क्रिप्टोग्राफिक इलेक्ट्रॉनिक भुगतान का एक प्रारंभिक रूप था। इसमें किसी बैंक से धन निकालने के लिए एक सॉफ्टवेयर की आवश्यकता होती थी और किसी विशेष व्यक्ति को भेजे जाने से पहले विशिष्ट एन्क्रिप्टेड कुंजियां निर्धारित की जाती थीं। धन स्थानांतरण करने की इस पद्धति ने जारीकर्ता बैंक, सरकार या किसी अन्य तीसरी पार्टी के लिए डिजिटल मुद्रा का अता-पता लगाना असंभव कर दिया।
डेविड चौम के प्रारंभिक विचार ने एक दशक से भी अधिक समय बाद अधिक औपचारिक क्रिप्टोकरंसी को जन्म दिया। आज बाज़ार में हज़ारों क्रिप्टोकरंसी मौजूद हैं। इसकी बुनियादी प्रणाली को समझकर इस प्रक्रिया के प्रमुख अदाकारों को पहचानने और डिज़ाइन के विभिन्न विकल्पों को समझने में मदद मिल सकती है।
3. डिजिटल हस्ताक्षर
क्रिप्टोकरंसी और पेपर मनी के बीच का अंतर यह है कि क्रिप्टोकरंसी में लेनदेन की पुष्टि करने वाला कोई बैंक नहीं होता है, बल्कि यह प्रणाली एक विकेंद्रीकृत लेनदेन के आधार पर काम करती है जहां डिजिटल हस्ताक्षर और क्रिप्टोग्राफिक हैश फंक्शन्स की कूट-प्रकृति के कारण परस्पर भरोसे की आवश्यकता नहीं होती। यहां दो बहुत ही जटिल शब्दों का उपयोग किया गया है जिन्हें समझना ज़रूरी है।
आइए एक बार फिर अपने चार दोस्त सुशील, सोमेश, प्रतिका और ज़ुबैर से मिलते हैं। सुशील, सोमेश, प्रतिका और ज़ुबैर अक्सर डिनर के लिए बाहर जा रहे हैं इसलिए उन्हें नकदी लेनदेन में काफी असुविधा हो रही है। इसके लिए वे पहले से ही एक सामूहिक बहीखाते का उपयोग कर रहे हैं ताकि महीने के अंत में लेनदेन को निपटा सकें।
यह बहीखाता तालिका 1 जैसा दिखेगा।
तालिका 1
दिनांक लेनदेन राशि (रुपए)
xyz सुशील ने सोमेश को भुगतान किया 180
abc सोमेश ने प्रतिका को भुगतान किया 290
def प्रतिका ने ज़ुबैर को भुगतान किया 210
ghi ज़ुबैर ने सुशील को भुगतान किया 300
ऐसे बहीखाते का सार्वजनिक होना आवश्यक है ताकि चारों दोस्त जब चाहें इसे देख सकें। यह एक वेबसाइट की तरह भी हो सकता है जहां चारों दोस्त जाकर नई लेनदेन पंक्ति जोड़ सकते हैं। हर महीने के अंत में, यदि आपने भुगतान से अधिक पैसे प्राप्त किए हैं तो आपको भुगतान करना होगा और यदि आपने प्राप्त करने से अधिक भुगतान किया है तो आपको राशि प्राप्त होगी।
बहीखाते का प्रोटोकॉल तालिका 2 जैसा होगा।
तालिका 2
क्र. प्रोटोकॉल
1. चारों में से कोई भी भुगतान सम्बंधी नई पंक्ति जोड़ सकता है
2. प्रत्येक माह के अंत में, सभी इंदराज़ों का पैसे अदा करके हिसाब साफ कर दिया जाएगा
अब इस तरह के सार्वजनिक बहीखाते से एक समस्या हो सकती है खासकर जब चार दोस्त एक-दूसरे पर भरोसा नहीं करते हैं। जब इनमें कोई भी नई पंक्ति जोड़ सकता है तो फिर सुशील को गुपचुप ऐसी लाइन जोड़ने से कैसे रोका जा सकता है जिसमें लिखा हो:
ज़ुबैर ने सुशील को भुगतान किया 500 रुपए
तो हम कैसे विश्वास कर सकते हैं कि बहीखाते की सभी पंक्तियां वैध हैं? यहीं पर डिजिटल हस्ताक्षर की भूमिका महत्वपूर्ण हो जाती है। यहां मुख्य विचार यह है कि जिस तरह हम हस्तलिखित हस्ताक्षर के माध्यम से लेनदेन या किसी अनुबंध को वैधता प्रदान करते हैं उसी तरह ज़ुबैर के लिए यह संभव होना चाहिए कि वह बहीखाते में किसी के द्वारा उससे सम्बंधित जोड़ी गई पंक्ति में ऐसा कुछ जोड़ सके जिससे यह साबित हो कि उसने इस इंदराज़ को देखा है और स्वीकृत किया है। किसी के लिए भी जाली हस्ताक्षर बनाना असंभव होना चाहिए।
पहली नज़र में आपको लगेगा कि डिजिटल हस्ताक्षर के साथ तो यह आसानी से संभव है क्योंकि कॉपी-पेस्ट का निर्देश तो लंबे समय से मौजूद रहा है। तो डिजिटल हस्ताक्षर की जालसाज़ी को कैसे रोका जाए क्योंकि जब हाथ से किए गए हस्ताक्षर की तुलना में डिजिटल हस्ताक्षर को कॉपी करना काफी आसान है?
लेकिन क्रिप्टोकरंसी में यह व्यवस्था निम्नानुसार काम करती है - प्रत्येक उपयोगकर्ता एक सार्वजनिक कुंजी/ निजी कुंजी की जोड़ी बनाता है। ये कुंजियां अंकों की एक अर्थहीन शृंखला की तरह दिखती हैं। जैसा कि नाम से साफ है, निजी कुंजी को हर व्यक्ति गोपनीय रखना चाहता है।
बैंक के लेनदेन में, आपके हस्तलिखित हस्ताक्षर किसी दस्तावेज़ या लेनदेन की प्रकृति से स्वतंत्र एक जैसे दिखते हैं। इस मामले में, डिजिटल हस्ताक्षर वास्तव में हस्तलिखित हस्ताक्षर से अधिक सुरक्षित साबित हो सकता है क्योंकि यह प्रत्येक लेनदेन में बदलता रहता है। यह 1 और 0 अंकों की लंबी शृंखला होती है, जिसे संदेश से जोड़ने पर पूरा डिजिटल हस्ताक्षर बनता है। संदेश में थोड़ा सा परिवर्तन करने पर भी डिजिटल हस्ताक्षर में बड़ा परिवर्तन आ जाता है। अर्थात
संदेश + निजी कुंजी = डिजिटल हस्ताक्षर
इस तरह, हस्ताक्षर फंक्शन सत्यापित करता है कि हस्ताक्षर मान्य है। सत्यापन में सार्वजनिक कुंजी की भूमिका सामने आती है।
सत्यापन फंक्शन (संदेश + 256-बिट शृंखला + सार्वजनिक कुंजी) = सत्य या असत्य
सार्वजनिक कुंजी वास्तव में सत्यापन के काम आती है। इससे यह निर्धारित होता है कि क्या कोई विशेष डिजिटल हस्ताक्षर उपयोगकर्ता की निजी कुंजी से उत्पन्न किया गया है जो सार्वजनिक कुंजी से जुड़ी है।
सरल शब्दों में कहें तो इन दोनों फंक्शन के पीछे का तर्क वास्तव में यह सुनिश्चित करना है कि यदि किसी व्यक्ति के पास निजी कुंजी नहीं है तो उसके लिए वैध हस्ताक्षर उत्पन्न करना भी असंभव है। इस कुंजी का अनुमान लगाने का एकमात्र तरीका यह है कि 0 और 1 के सारे संयोजनों का अनुमान लगाया जाए और तब तक लगाया जाए जब तक कि काम करने वाली सही कुंजी हाथ न लग जाए। इसको ब्रूट फोर्स अटैक या ज़बरदस्ती के रूप में जाना जाता है। 256 बिट की संख्या में 0 और 1 के कुल 2256 संभावित संयोजन हो सकते हैं। 2256 एक बहुत विशाल संख्या है और इसलिए सभी संभावित संयोजनों को आज़माने के लिए जितना समय और कंप्यूटर शक्ति चाहिए वह जुटा पाना असंभव हो जाता है। फिर भी यदि कोई इस तरीके से कोशिश करता है तो उसे रोका जा सकता है - असफल मिलानों की संख्या को सीमित करके। इस तरह से हस्ताक्षर और सत्यापन की पूरी प्रक्रिया बेहद सुरक्षित बन जाती है।
यहां एक और समस्या का सामना करना पड़ सकता है। आइए हम एक बार फिर अपने चार दोस्तों से मिलते हैं और इस लेनदेन पर एक नज़र डालते हैं (तालिका 3)।
तालिका 3
दिनांक लेनदेन राशि (रुपए) हस्ताक्षरित
abc प्रतिका ने ज़ुबैर को भुगतान किया 500 010001011110101101
यह तो सही है कि ज़ुबैर किसी अन्य लेनदेन में प्रतिका के हस्ताक्षर की नकल नहीं कर सकता लेकिन अभी भी वह एक युक्ति से फायदा उठा सकता है। ज़ुबैर एक ही लेनदेन को एक ही कुंजी के साथ बार-बार कॉपी पेस्ट कर सकता है, और यह काम कर जाएगा क्योंकि संदेश और हस्ताक्षर का संयोजन अपरिवर्तित रहता है (तालिका 4)।
तालिका 4
दिनांक लेनदेन राशि (रुपए) हस्ताक्षरित
abc प्रतिका ने ज़ुबैर को भुगतान किया 500 010001011110101101
abc प्रतिका ने ज़ुबैर को भुगतान किया 500 010001011110101101
abc प्रतिका ने ज़ुबैर को भुगतान किया 500 010001011110101101
abc प्रतिका ने ज़ुबैर को भुगतान किया 500 010001011110101101
यानी यह प्रणाली अभी भी त्रुटिपूर्ण है क्योंकि “हस्ताक्षर सत्यापन” फंक्शन हर लेनदेन पर “सत्य” ही दर्शाएगा। तो, कोई तरीका खोजना होगा जिसमें यह सुनिश्चित किया जा सके कि एक ही लेनदेन के ऐसे दो प्रकरण न दर्ज किए जा सकें जिनमें एक ही डिजिटल हस्ताक्षर का उपयोग किया गया हो।
क्रिप्टोकरंसी प्रणाली और पारंपरिक बैंकिंग प्रणाली में प्रत्येक लेनदेन को एक विशिष्ट नंबर दिया जाता है जिसे युनीक आईडी कहा जाता है। इस तरह यदि लेनदेन को बहीखाते पर दोहराया जाता है तो हर बार एक नई आईडी की आवश्यकता होगी। चूंकि प्रतिका को लेनदेन की आईडी पता होगी जिससे उसने ज़ुबैर को 500 रुपए का भुगतान किया है, ऐसे में ज़ुबैर एक ही लेनदेन को बार-बार कॉपी पेस्ट नहीं कर सकता क्योंकि बहीखाते में जोड़ी गई प्रत्येक नई लाइन के लिए एक सर्वथा नई लेनदेन आईडी होगी।
इस तरह से चारों दोस्तों के बीच बहीखाते का प्रोटोकॉल अब कुछ इस प्रकार होगा;
1. कोई भी नई पंक्ति जोड़ सकता है
2. प्रत्येक माह के अंत में, सभी टैब्स को पैसे अदा करके साफ कर दिया जाएगा
3. प्रत्येक लेनदेन की एक युनीक लेनदेन आईडी होगी
4. केवल हस्ताक्षरित लेनदेन ही मान्य होंगे
हालांकि, इस प्रणाली में अभी भी समस्याएं हैं। क्योंकि क्रिप्टोकरंसी एक गैर-भरोसा आधारित प्रणाली है और चार दोस्तों की हमारी प्रणाली अभी भी इस भरोसे पर काम करती है कि महीने के अंत में हर कोई भुगतान कर देगा। तो भरोसे का यह तत्व भी क्यों रहे?
क्या होगा यदि किसी महीने के दौरान सोमेश पर हज़ारों रुपए का कर्ज़ हो जाए और वह भुगतान करने या फिर डिनर में आने से ही इन्कार कर दे? अब एक ऐसी प्रणाली बनाने की ज़रुरत है जिसमें चारों दोस्त एक सामूहिक गुल्लक में 500-500 रुपए डाल दें और उनको इससे अधिक खर्च करने अनुमति न मिले। इस मामले में, बहीखाते की पहली कुछ पंक्तियां तालिका 5 में दिखाए अनुसार होंगी।
तालिका 5
लेनदेन दिनांक लेनदेन राशि हस्ताक्षरित
आईडी (रुपए)
00001 abc सुशील को मिले 500 0101101111010110
00002 abc सोमेश को मिले 500 1001011100001010
00003 abc प्रतिका को मिले 500 1111100101101001
00004 abc ज़ुबैर को मिले 500 1011001101000111
इसके बाद, “बहीखाते के प्रोटोकॉल” में “प्रत्येक माह के अंत में, सभी टैब्स के पैसे अदा करके हिसाब साफ कर दिया जाएगा” की जगह “तय राशि से अधिक खर्च नहीं करना” हो जाएगा। इस तरह से चार दोस्त उस लेनदेन को स्वीकार नहीं करेंगे जहां कोई व्यक्ति गुल्लक में डाली गई राशि से अधिक खर्च करता है। उदाहरण के लिए तालिका 6 देखें।
तालिका 6
लेनदेन दिनांक लेनदेन राशि हस्ताक्षरित
आईडी (रुपए)
00001 abc सोमेश ने प्रतीका को दिए 200 0101101111010110
00002 abc सोमेश ने ज़ुबैर को दिए 250 1001011100001010
00003 abc सोमेश ने सुशील को दिए 50 1111100101101001
00004 abc सोमेश ने ज़ुबैर को दिए 100 अमान्य!
इसमें अंतिम पंक्ति को अमान्य माना जाएगा क्योंकि सोमेश ने सामूहिक गुल्लक में 500 रुपए डाले थे और 600 रुपए खर्च करने की कोशिश की। इसका मतलब यह हुआ कि लेनदेन को सत्यापित करने के लिए हमें सोमेश द्वारा पिछले लेनदेन की जानकारी भी होनी चाहिए। यह लगभग वैसा ही है जैसे सोमेश का उस बहीखाते में स्वयं का बैंक खाता हो। यह बात क्रिप्टोकरंसी और पारंपरिक बैंकिंग प्रणाली में कमोबेश एक समान है। यहां एक दिलचस्प बात यह है कि यह प्रक्रिया सैद्धांतिक रूप से बहीखाता और वास्तविक भौतिक नकद के बीच के सम्बंध को हटा देती है। यदि हर कोई इस बहीखाते का उपयोग करे तो कोई भी अपना पूरा जीवन इस बहीखाते के माध्यम से चला सकता है बहीखाते के अपने धन को नकद में परिवर्तित किए बगैर।
आइए अब इस उदाहरण में एक जटिलता और जोड़ते हैं और बहीखाते में लिखे गए इस धन को “फ्रेंडकॉइन्स” या संक्षिप्त में “एफसी” का नाम देते हैं। यहां 1 रुपया = 1 एफसी हो सकता है, लेकिन यह आवश्यक नहीं कि हमेशा एक एफसी का मूल्य एक रुपया ही हो। इस स्थिति में सभी को अपनी इच्छा के अनुसार रुपयों के बदले एफसी खरीदने और बहीखाते में दर्ज करने के लिए एफसी के बदले सामूहिक गुल्लक में रुपए डालने की अनुमति होगी। उदाहरण के लिए, सुशील सोमेश को वास्तविक दुनिया में 100 रुपए दे सकता है और उसके बदले सामूहिक बहीखाते में निम्नलिखित लेनदेन को जोड़ने और हस्ताक्षर करने की अनुमति देता है।
सोमेश ने सुशील को भुगतान किया 100 एफसी
वैसे हमारे बहीखाते के प्रोटोकॉल में इस तरह के आदान-प्रदान की कोई गारंटी नहीं है। ठीक उसी तरह जैसे विदेशी मुद्रा का विनिमय होता है जिसमें आदान-प्रदान की दरें बाज़ार में मांग और आपूर्ति की स्थिति से प्रभावित होती हैं।
और यही चीज़ बिटकॉइन जैसी क्रिप्टोकरंसी के बारे में पहली और सबसे महत्वपूर्ण बात है: क्रिप्टोकरेंसी मूल रूप से एक बहीखाता और पूर्व में किए गए लेनदेन का ब्यौरा है। और पूर्व के लेनदेन का यही ब्यौरा मुद्रा या करंसी है। यहां बिटकॉइन के मामले में यह ध्यान रखना काफी महत्वपूर्ण है कि लोगों द्वारा नकदी से खरीदारी को बहीखाते में लिखा नहीं जाता है। इस लेख में हम आगे पढ़ेंगे कि नए धन को बहीखाते में कैसे लिखा जाता है।
इससे पहले कि हम इस बारे में बात करें कि बहीखाते में धन को कैसे लिखा जाता है; हमें पहले एक और समस्या से निपटना होगा जिसका चार दोस्तों को फ्रेंडकॉइन के साथ सामना करना पड़ रहा है जो उनकी मुद्रा को पारंपरिक क्रिप्टोकरंसी से अलग करता है।
जैसा कि आपको याद होगा कि क्रिप्टोकरंसी एक गैर-भरोसा-आधारित प्रणाली है यानी यह एक ऐसी प्रणाली है जहां मुद्रा के मूल्य का निर्धारण करने के लिए मुद्रा में भरोसे की आवश्यकता नहीं होती है। लेकिन हमारे पास अभी भी फ्रेंडकॉइन प्रणाली में एक ऐसा बिंदु है जो भरोसे पर काम करता है: हमारा बहीखाता जिसे चार दोस्तों द्वारा एक वेबसाइट पर साझा किया जाता है। यह वेबसाइट किसी के स्वामित्व में है, जिसका मतलब यह है कि बहीखाता इस भरोसे पर काम करता है कि वेबसाइट का मालिक बहीखाते की जानकारी में हेरफेर नहीं करेगा और चार दोस्तों द्वारा झूठी प्रविष्टियों के लिए उसे रिश्वत नहीं दी जाएगी।
इससे बचने के लिए और वेबसाइट मालिकों में विश्वास की आवश्यकता को खत्म करने के लिए हम सुशील, सोमेश, प्रतिका और ज़ुबैर, प्रत्येक को बहीखाते की एक-एक प्रति देते हैं। अब तालिका 7 के लेनदेन को प्रतिका ज़ुबैर, सोमेश और सुशील को प्रसारित करेगी जिससे प्रत्येक उस लेनदेन को अपने-अपने बहीखाते में नोट कर लेगा और यदि कोई लेनदेन सभी बहीखातों पर मौजूद नहीं हुआ तो उसे अमान्य माना जाएगा और इससे जाली बहीखाता बनाने की संभावना समाप्त हो जाएगी।
तालिका 7
लेनदेन दिनांक लेनदेन राशि हस्ताक्षरित
आईडी (एफसी)
00036 abc प्रतिका ने ज़ुबैर को 100 010010001000010
वास्तविक दुनिया में तो यह प्रणाली अत्यंत अव्यावहारिक और बेतुकी साबित होगी। एक कठिन सवाल यह है कि सभी को इस बात पर सहमत कैसे कराया जाए कि सही बहीखाता क्या है?
जब ज़ुबैर को प्रतिका से 100 एफसी प्राप्त होते हैं, तो यह कैसे सुनिश्चित होगा कि सुशील और सोमेश भी इस लेनदेन पर विश्वास करेंगे और इससे भी महत्वपूर्ण बात यह कि क्या उन्होंने भी इस लेनदेन को अपने बहीखाते में दर्ज कर लिया है ताकि ज़ुबैर सुशील या सोमेश को 100 एफसी का भुगतान कर सके जो उसे पिछली तारीख में प्रतिका से प्राप्त हुए हैं? प्रसारित लेनदेन को निरंतर रिकॉर्ड करना और यह उम्मीद करना कि कोई आपके द्वारा प्रसारित लेनदेन को सही क्रम में दर्ज कर रहा है यह प्रक्रिया उनकी दोस्ती को एक खटाई में डाल सकती है।
स्वयं का क्रिप्टोकरंसी मॉडल डिज़ाइन करके क्रिप्टोकरंसी के वास्तविक कार्य को समझते-समझते हम एक बहुत दिलचस्प मोड़ पर आ गए हैं। क्या हम एक ऐसा बहीखाता प्रोटोकॉल बना सकते हैं जिसके आधार पर लेनदेन को स्वीकार या अस्वीकार किया जाएगा और हम कैसे यह सुनिश्चित करेंगे कि पूरी दुनिया में इसी प्रोटोकॉल का पालन करने वाले लोगों के पास मौजूद बहीखाते हूबहू हमारे जैसे हैं?
कूटनाम के तहत काम करने वाले “सातोशी नकामोतो” नामक एक व्यक्ति या व्यक्तियों के समूह द्वारा लिखित बिटकॉइन पर मूल पेपर में इसी समस्या का समाधान प्रस्तुत किया गया है।
सातोशी नाकामोतो ने एक योजना सुझाई जिसे “प्रूफ ऑफ वर्क” (मेहनत का प्रमाण) के रूप में जाना जाता है। सरल शब्दों में, जिस बहीखाते के पीछे सबसे अधिक मात्रा में गणनात्मक कार्य होगा, उसे सबसे विश्वसनीय बहीखाता माना जाएगा। वैसे तो यह एक बहुत ही बेतुका विचार लगता है। लेकिन जैसे-जैसे आप आगे पढ़ते जाएंगे आपको प्रूफ ऑफ वर्क की व्यवस्था स्पष्ट होती जाएगी।
प्रूफ ऑफ वर्क योजना का मुख्य उपकरण क्रिप्टोग्राफिक हैश फंक्शन है। प्रूफ ऑफ वर्क योजना में क्रिप्टोग्राफिक हैश फंक्शन की भूमिका को समझने से पहले इसके पीछे के सामान्य विचार को समझते हैं। सामान्य विचार यह है कि हम भरोसे के एक आधार के रूप में गणना कार्य का उपयोग करते हैं। इसके लिए हम ऐसी व्यवस्था बनाएंगे कि धोखाधड़ी वाले लेनदेन और परस्पर विरोधी बहीखातों के लिए अव्यवहारिक मात्रा में गणना शक्ति की आवश्यकता होगी। एक बार जब हम इसके काम करने के तरीके को पूरी तरह समझ जाते हैं तो हम आज के समय में उपयोग किए जाने वाले क्रिप्टोकरंसी मॉडल को समझ पाएंगे।
4. क्रिप्टोग्राफिक हैश फंक्शन
अब हम यह समझने का प्रयास करते हैं कि हैश फंक्शन क्या है। आम तौर पर इस्तेमाल किया जाने वाला हैश फंक्शन SHA-256 है।
हैश फंक्शन किसी भी प्रकार के संदेश (‘इनपुट’) या फाइल को लेता है और इसे 0 और 1 की 256 बिट शृंखला (या निश्चित बिट्स की लंबाई की किसी अन्य शृंखला) के अनुक्रम में परिवर्तित करता है। यह कार्य भारी-भरकम कंप्यूटर शक्ति की मदद से किया जाता है। आउटपुट को ‘हैश’ कहा जाता है और यह पूरी तरह से 0 और 1 से बनी बेतरतीब संख्या के रूप में दिखाई देता है। वास्तव में यह संख्या बेतरतीब नहीं होती है क्योंकि एक ही इनपुट हमेशा एक ही आउटपुट देता है लेकिन यदि इस इनपुट में थोड़ा भी बदलाव करते हैं तो हैश का मान बदल जाता है। SHA-256 में, मान में होने वाले परिवर्तन इस तरह से होते हैं कि उनका अनुमान नहीं लगाया जा सकता है और इसीलिए ‘हैश’ से शुरू करके उल्टी गणना करके इनपुट का पता नहीं लगाया जा सकता। SHA-256 को क्रिप्टोग्राफिक हैश फंक्शन कहते हैं और सामान्य हैश फंक्शन के विपरीत इसकी उल्टी गणना नहीं की जा सकती है। सभी क्रिप्टोकरंसियां अलग-अलग क्रिप्टोग्राफिक हैश फंक्शंस का उपयोग करती हैं।
SHA-256 हैश-फंक्शन के कार्य को देखते हुए अब आपको यह विचार आ सकता है कि आउटपुट को रिवर्स-इंजीनियर करके (यानी उल्टी गणना करके), इनपुट पता लगाया जा सकता है। लेकिन अभी तक किसी को ऐसा कोई रास्ता नहीं मिला है और अभी तक के सबसे शक्तिशाली आधुनिक कंप्यूटर का उपयोग करने वाली वर्तमान गणनात्मक शक्तियां भी इतनी सक्षम नहीं हैं कि वे किसी मनुष्य के जीवन काल में इस तरह से इनपुट को उजागर कर सकें।
हैश-फंक्शन और उसके सुरक्षित स्वरूप को समझने के बाद, अब हम इस बात पर ध्यान देते हैं कि कैसे यह फंक्शन यह प्रमाणित कर सकता है कि लेनदेन की कोई सूची उच्च गणनात्मक प्रयासों से जुड़ी है।
मान लीजिए कि आपको तालिका 8 जैसा लेनदेन दिखाया जाता है। और फिर आपको यह बताया जाता है कि किसी ने बहीखाते के अंत में दी गई संख्या को डालने के बाद इसे SHA-256 के माध्यम से चलाया है। इस संख्या की खास बात यह है कि जब आप संख्या को इस विशिष्ट बहीखाते के अंत में डालते हैं तो SHA-256 हैश आउटपुट के पहले 50 अंक शून्य हो जाते हैं।
तालिका 8
लेनदेन दिनांक लेनदेन राशि हस्ताक्षरित
आईडी (एफसी)
00001 abc सोमेश ने प्रतिका को भुगतान किया 2000 0101101111010110
00002 abc सोमेश ने ज़ुबैर को भुगतान किया 2530 1001011100001010
00003 abc सोमेश ने सुशील को भुगतान किया 500 1111100101101001
00004 abc सोमेश ने ज़ुबैर को भुगतान किया 1000 1011011001011011
आपके विचार में किसी के लिए उस संख्या को खोज पाना कितना मुश्किल है? किसी भी बेतरतीब संख्या के लिए, हैश के शुरुआत में 50 लगातार अंक शून्य होने की संभावना 1/250 = 1/1,125,899,906,842,624होती है। यह एक अत्यंत बड़ी संख्या है।
इस गुण वाली विशेष संख्या खोजने का एकमात्र तरीका है कि 1,125,899,906,842,624 बार अनुमान लगाया जाए।
5. प्रूफ ऑफ वर्क
एक बार यह संख्या मिल जाए, तो बगैर किसी मेहनत के यह सत्यापित करना बहुत आसान हो जाता है कि वास्तव में आउटपुट में 50 शून्य हैं या नहीं। दूसरे शब्दों में, यह सत्यापित करना संभव हो जाता है कि इस संख्या को खोजने के लिए भारी मात्रा में गणनात्मक काम किया गया है। इसको प्रूफ ऑफ वर्क कहा जाता है और सबसे बड़ी बात तो यह है कि यह पूरा कार्य लेनदेन की उस सूची विशेष से जुड़ा हुआ है। यदि हम उस लेनदेन में ‘somesh’ को बदलकर ‘5omesh’ कर दें, तो आउटपुट पूरी तरह बदल जाता है। तो अब हमें 50 शून्य वाले आउटपुट को प्राप्त करने के लिए 250 प्रयासों के साथ एक विशेष संख्या की भी आवश्यकता होगी।
क्योंकि अब हम प्रूफ ऑफ वर्क योजना और इसके काम करने में क्रिप्टोग्राफिक हैश फंक्शन की भूमिका को समझ चुके हैं तो आइए अब हम अपने चार दोस्तों से एक बार फिर मिलते हैं।
अब हमारे चार दोस्त एक भारी-भरकम गणनात्मक प्रयास के आधार पर बहीखाते पर भरोसा करना जान गए हैं। उनमें से प्रत्येक अपने लेनदेन का प्रसारण कर रहा है और अब हम एक ऐसे तरीके पर चारों की सहमति चाहते हैं कि कौन-सा बहीखाता सबसे सही बहीखाता है।
6. ब्लॉक चेंस
अब हम प्रूफ ऑफ वर्क के विचार का उपयोग करते हुए बहीखाते को पृष्ठों में विभाजित कर सकते हैं। क्रिप्टोकरंसी की दुनिया में, इनमें से प्रत्येक पृष्ठ को ब्लॉक कहा जाता है। प्रत्येक पृष्ठ में प्रूफ ऑफ वर्क होता है और सारे दोस्त इस बात से सहमत होते हैं कि केवल उन्हीं पृष्ठों को मान्य माना जाएगा जिनमें प्रूफ ऑफ वर्क है। बहीखाते का प्रत्येक पृष्ठ एक ऐसी संख्या के साथ समाप्त होगा कि पृष्ठ या ब्लाक पर SHA-256 को लागू करने के बाद हैश आउटपुट शून्य की एक शृंखला से शुरू हो। उदाहरण के लिए हम यह निर्णय ले सकते हैं कि इसकी शुरुआत 60 शून्यों से होनी चाहिए।
बहीखाते की सुरक्षा को और बढ़ाने के लिए बहीखाते के प्रत्येक पृष्ठ को पिछले पृष्ठ के हैश से शुरू करना चाहिए। चार दोस्त यह निर्णय लेते हैं ताकि कोई भी बहीखाते के पृष्ठ में बाद में कोई परिवर्तन या बदलाव न कर सके। किसी पृष्ठ को बदलने से अगले पृष्ठ पर लिखे गए हैश से भिन्न हैश प्राप्त होगा और परिणामस्वरूप बाद के पृष्ठ भी इससे प्रभावित होंगे। यानी एक पृष्ठ को बदलने के लिए सभी पृष्ठों को नए सिरे से ठीक करना होगा जिसके लिए ज़रूरी प्रूफ ऑफ वर्क की मात्रा गणनात्मक लिहाज़ से असंभव हो जाएगी। क्रिप्टोकरंसी की दुनिया में, पृष्ठों (ब्लॉक) की परस्पर जुड़ी शृंखला को ब्लॉक चेन कहते हैं।
यह कुछ ऐसे काम करता है - सुशील, सोमेश, ज़ुबैर और प्रतिका दुनिया में किसी को भी अपने लेनदेन को रिकॉर्ड करने और ब्लॉक के अंत में जोड़ने के लिए विशेष संख्या खोजने (ताकि हैश 60 शून्य वाला हैश मिले) के लिए प्रूफ ऑफ वर्क की अनुमति देते हैं। यह अज्ञात व्यक्ति इस पूरे काम के बदले चार दोस्तों द्वारा किए गए सभी लेनदेन के ऊपर एक विशेष लेनदेन जोड़ता है (तालिका 9)।
तालिका 9
लेनदेन दिनांक लेनदेन राशि हस्ताक्षरित
आईडी (एफसी)
000001 abc ब्लॉक निर्माता को मिलता है ब्लॉक रिवॉर्ड 100 आवश्यक नहीं
7. माइनिंग
यह लेनदेन काफी खास है क्योंकि किसी को भी इसके लिए कोई हस्ताक्षर या भुगतान नहीं करना पड़ता है। ब्लॉक निर्माता को मिले इन फ्रेंडकॉइन्स को ब्लॉक-रिवॉर्ड कहते हैं। ये नए कॉइन्स फ्रेंडकॉइन अर्थव्यवस्था में बहुत ही महत्वपूर्ण भूमिका निभाते हैं, ये कुल धन की आपूर्ति में वृद्धि करते हैं। जब भी ब्लॉक निर्माता एफसी के बदले वास्तविक धन चाहता है तो वह इसे किसी ऐसे व्यक्ति को बेच सकता है जो एफसी खरीदना चाहता है। ऐसे नए ब्लॉक का निर्माण काफी मेहनत का काम है और इसके ज़रिए अर्थव्यवस्था में नई फ्रेंडकॉइन्स शामिल होती हैं। अत: नए ब्लॉक निर्माण को ‘माइनिंग’ या खनन कहा जाता है।
तो खनिक वास्तव में करते क्या हैं; वे
1. प्रसारित लेनदेन पर नज़र रखते हैं
2. ब्लॉक निर्माण करते हैं
3. प्रूफ ऑफ वर्क जोड़ते हैं
4. नए बनाए गए ब्लॉकों को प्रसारित करते हैं।
यह एक लॉटरी में प्रतिस्पर्धा करने जैसा है जहां कई खनिक किसी विशेष ब्लॉक के प्रूफ ऑफ वर्क को पूरा करने के लिए एक-दूसरे से मुकाबला करते हैं और जो इसमें जो अव्वल आता है उसको पुरस्कृत किया जाता है।
8. विकेंद्रित सर्वसम्मति
ऐसे में यदि कोई स्वयं के ब्लॉक चेन को अपडेट करते समय ब्लॉक चेन में परस्पर विरोधी लेनदेन देखता है, तो वह लंबे ब्लॉकचेन को चुन सकता है क्योंकि इसको तैयार करने में अधिक काम किया गया है। बराबरी की स्थिति में थोड़ी प्रतीक्षा करनी होती है जब तक कि उनमें से कोई एक ब्लॉकचेन थोड़ी लंबी न हो जाए। ऐसे में भले ही कोई केंद्रीय प्राधिकरण न हो और हर कोई बहीखाते की स्वयं की एक कॉपी रखता हो, सबसे लंबे ब्लॉक चेन पर सबसे अधिक भरोसा करने की बात से सभी को स्वयं के व्यक्तिगत बहीखातों को अपडेट करना आसान हो जाता है। इसे विकेंद्रित सर्वसम्मति कहते हैं।
यह समझने के लिए कि वह कौन-सी चीज़ है जो विकेंद्रित सर्वसम्मति की प्रणाली को भरोसेमंद बनाती है, हम इन चार दोस्तों को बेवकूफ बनाने की कोशिश करते हैं और यह देखते हैं कि इस तरह की प्रणाली को चकमा देने के लिए क्या करना होगा। मान लीजिए कि ज़ुबैर को मूर्ख बनाने के लिए सुशील यह विश्वास दिलाता है कि ज़ुबैर पर उसके 100 एफसी बकाया हैं। इसके लिए सुशील क्या कर सकता है? वह गुप्त तौर पर एक ब्लॉक (S) को माइन करेगा और उसे सिर्फ ज़ुबैर को प्रसारित करेगा। हालांकि, सोमेश और प्रतिका के बहीखाते में इस तरह का कोई ब्लॉक नहीं है, इसलिए वे अभी भी बाकी दुनिया (ROW) से ब्लॉक स्वीकार कर रहे हैं।
अब ज़ुबैर के पास आने वाले ब्लॉकों के दो परस्पर विरोधी संस्करण हैं, एक तो सुशील का कपटपूर्ण ब्लॉक (S1) और दूसरा बाकी दुनिया से आने वाले (ROW1, ROW2,......)। अब सुशील को अपने कपटपूर्ण 100 एफसी के लेनदेन को जारी रखने के लिए न केवल यहां से प्रत्येक ब्लॉक की माइनिंग को सबसे पहले पूरा करना होगा बल्कि इस प्रक्रिया को जारी रखना होगा ताकि यह सुनिश्चित किया जा सके कि विश्वभर के लाखों माइनर्स द्वारा तैयार की गई ब्लॉक चेन की लंबाई उसके द्वारा बनाई गई ब्लॉकचेन से लंबी न हो जाए अन्यथा उसका सारा काम बेकार हो जाएगा। सुशील के लिए ऐसा कर पाना संभव नहीं हो पाएगा क्योंकि दुनियाभर के लाखों माइनर्स के पास इस स्तर की गणनात्मक शक्ति है जिसका मुकाबला सुशील का इकलौता लैपटॉप नहीं कर सकता।
अंतत:, ज़ुबैर यह देखेगा कि शेष दुनिया की ब्लॉक चेन की लंबाई सुशील द्वारा प्रसारित ब्लॉक चेन से अधिक है या नहीं। इस तरह वह लंबे ब्लॉक चेन के अनुसार अपने बहीखाते को अपडेट करेगा। यह पूरी घटना सुशील के पक्ष में तभी हो सकती है जब उनके पास दुनियाभर की गणनात्मक शक्ति के 51 प्रतिशत या उससे अधिक का स्वामित्व हो और वह इस पूरी क्षमता का उपयोग अपनी बाकी की जिंदगी में 100 एफसी के कपटपूर्ण लेनदेन के कार्य को आगे बढ़ाने के लिए करता रहे। उसके बाद भी, सुशील को अधिक से अधिक प्रोसेसिंग शक्ति खरीदना होगी क्योंकि दुनियाभर के लोग लगातार नए कंप्यूटर खरीद रहे हैं और सुशील को दुनिया की कुल कंप्यूटिंग शक्ति का 51 प्रतिशत या उससे अधिक अपने पास रखना होगा। आप खुद देख सकते हैं कि यह पूरी प्रक्रिया अत्यधिक असंभाव्य है।
इसका मतलब यह हुआ कि हाल ही में जोड़े गए ब्लॉक पर तब तक भरोसा नहीं किया जा सकता जब तक कि इसके ऊपर कम से कम कुछ और ब्लॉक्स नहीं जोड़े जाते। यह सुनिश्चित करता है कि ज़ुबैर जिस ब्लॉक चेन को अपडेट करता है उसी का उपयोग सोमेश, प्रतिका और सुशील भी कर रहे हैं।
अब हमने मोटे तौर पर क्रिप्टोकरंसी के काम करने के मुख्य विचारों को प्रस्तुत कर दिया है। कमोबेश बिटकॉइन और अन्य क्रिप्टोकरंसियां भी कुछ इसी तरह काम करती हैं।
बिटकॉइन में सारा धन अंतत: ब्लॉक रिवार्ड्स से आता है और हर चार वर्ष में ब्लॉक रिवॉर्ड को आधा कर दिया जाता है। शुरुआत में, यानी 2009 से 2012 के बीच यह रिवॉर्ड 50 बीटीसी प्रति ब्लॉक था और आज यह 6.25 बीटीसी प्रति ब्लॉक है। हर चार वर्षों में, लगभग 2,01,000 बिटकॉइन ब्लॉक्स को माइन किया जाता है क्योंकि समय के साथ इनाम तेज़ी से कम हो जाता है जिसके आधार पर यह कहा जा सकता है कि कभी भी बिटकॉइन की संख्या 21 मिलियन (2 करोड़ 10 लाख) से अधिक नहीं होगी।
हालांकि, इसका मतलब यह नहीं है कि माइनर्स अंतत: पैसा कमाना बंद कर देंगे। जिनके लेनदेन अभी भी ब्लॉक में हैं उनसे माइनर्स अभी भी लेनदेन शुल्क के माध्यम से स्वेच्छा से पैसा कमा सकते हैं। लोगों द्वारा लेनदेन शुल्क का भुगतान भी इसलिए किया जाएगा ताकि माइनर्स उनका लेनदेन एकदम अगले ब्लॉक में शामिल करें।
बिटकॉइन में, प्रत्येक ब्लॉक में केवल 2400 लेनदेन ही हो सकते हैं जो लेनदेन की प्रक्रिया को काफी धीमा कर सकते हैं। तुलना के लिए देखें कि VISA और Rupay प्रति सेकंड 20,000 से अधिक लेनदेन को संभाल सकते हैं। ऐसे में लेनदेन शुल्क माइनर्स को बढ़ावा देता है कि वे आपके लेनदेन को अगले ही ब्लॉक में जोड़ें, बजाय इसके कि उसे 5-6 ब्लॉक के बाद आप खुद निशुल्क जोड़ दें।
निष्कर्ष
हमारे समक्ष क्रिप्टोकरंसी के काम करने की प्रणाली को समझने का एक मोटा-मोटा मॉडल तैयार है। हालांकि, अभी भी कई ऐसे सवाल होंगे जिनका उत्तर नहीं दिया गया है। लोग इन मुद्राओं में निवेश क्यों करते हैं। यह दुनियाभर में भुगतान करने का प्रचलित तरीका क्यों नहीं है? कई सरकारें अपने देश में इन मुद्राओं को वैध मुद्रा बनाने के विचार के खिलाफ क्यों हैं? क्रिप्टोकरंसियों के साथ ऐसी क्या समस्याएं हैं जिनका प्रणाली के पास कोई जवाब नहीं है? इसकी अस्पष्ट प्रकृति के कारण कर चोरी, अवैध खरीद-फरोख्त और आतंकी फंडिंग के प्रयोजनों के लिए क्रिप्टोकरंसी के दुरुपयोग की संभावना से कैसे निपटा जा सकता है? क्या सरकारें क्रिप्टोग्राफी और ब्लॉक चेन तकनीक को लागू करके केंद्रीकृत पारंपरिक बैंकिंग प्रणाली को मज़बूत कर सकती हैं? लेख के अगले भाग में ऐसे ही कुछ मुद्दों पर चर्चा की जाएगी। (स्रोत फीचर्स)