हजारपेक्षा जास्त प्रीमियम लेखांचा आस्वाद घ्या ई-पेपर अर्काइव्हचा पूर्ण अॅक्सेस कार्यक्रमांमध्ये निवडक सदस्यांना सहभागी होण्याची संधी ई-पेपर डाउनलोड करण्याची सुविधा
गौरव सोमवंशी
सातोशी नाकामोटोने ३ जानेवारी २००९ च्या रात्री पावणेबाराच्या सुमारास सुरू केलेली कोडे सोडवण्याची स्पर्धा आजपर्यंत सुरू आहे. ते कोडे यशस्वीपणे सोडविणारे ‘बिटकॉइन’ची कमाई करतात, ती कशी?
आज आपण जे कोडे सोडवण्याचा प्रयत्न करणार आहोत, त्याचे ‘बिटकॉइन’च्या जगतात विशेष स्थान आहे. हेच कोडे याच क्षणी हजारो लोक सोडवीत आहेत. म्हणजे त्यांनी हे करण्यासाठी त्यांच्या संगणकांना नेमले आहे. हे कोडे सोडवून तुम्हाला जे बक्षीस मिळते ते म्हणजे- ‘बिटकॉइन’! एरवी पारंपरिक पैशाची जशी छपाई केली जाते; तसे नवीन ‘बिटकॉइन’चा उगम व्हायचा असेल, तर त्यासाठी एकच मार्ग उपलब्ध आहे : हे कोडे सोडवणे! सातोशी नाकामोटोने हे कोडे सोडवण्याची स्पर्धा ३ जानेवारी २००९ च्या रात्री पावणेबाराच्या सुमारास सुरू केली, ती आजपर्यंत सुरू आहे. फक्त कोडे सोडवणारी मंडळी वाढत गेली, एकाची हजार झाली. विकेंद्रित (डिसेन्ट्रलाइज्ड) आणि वितरित (डिस्ट्रिब्युटेड) अशा ‘ब्लॉकचेन’ तंत्रज्ञानावर आधारित ‘बिटकॉइन’मध्ये हे गणिती कोडे केंद्रस्थानी आहे.
ते कोडे काय आहे आणि कशासाठी आहे, हे समजून घेण्याआधी आपण प्रथम ‘हॅशिंग’ या संकल्पनेविषयी (‘हॅशिंग.. हॅशकॅश ते ब्लॉकचेन!’, या २६ मार्चच्या लेखात पाहिलेच, पण) थोडे आणखी जाणून घेऊ. ‘हॅशिंग’ ही अशी कार्यपद्धती आहे, ज्यात कितीही मोठा माहितीचा साठा ओतला की बाहेर फक्त एक मर्यादित अक्षर-आकडय़ांचे संयोजन येते. हे करण्याचे- म्हणजे ‘हॅशिंग’चे अनेक प्रकार आहेत. माहितीच्या मोठय़ा साठय़ाला मर्यादित स्वरूपात आणणे, यासोबत त्या माहितीचा अद्वितीय ‘हॅश’ बनवणे हा आपला उद्देश असतो. यास आपण चित्राकृतीतून (पाहा : चित्राकृती १) समजून घेऊ.
यामध्ये तुम्ही तुमच्या मनाने काहीही इनपुट (मूळ माहिती) टाकू शकता. जसे मी ‘अस्र्स्र्’ी’, ‘अढढछए’, ‘अस्र्ढछी’ आणि ‘अॅपल’ हे चार इनपुट टाकले आहेत. आपण ‘एसएचए-२५६’ ही एक विशिष्ट ‘हॅशिंग’ कार्यप्रणाली वापरली आहे. यामध्ये तुम्ही काहीही इनपुट दिला की तुम्हाला त्या इनपुटसाठी एक अद्वितीय, मर्यादित आणि ठरावीक आकडय़ांनी बनलेले आउटपुट (प्रक्रियोत्तर माहिती) मिळते. काही वेळ चित्राकृती-१ कडे नीट लक्ष देऊन पाहा. सारे इनपुट बऱ्याच अर्थाने सारखेच वाटतील, म्हणजे एकाच शब्दात किंचित बदल करून नवीन इनपुट म्हणून दिले आहेत. पण त्याच चित्राकृतीत उजवीकडे ‘एसएचए-२५६’ या ‘हॅशिंग’ कार्यप्रणालीने आलेला आउटपुट नीट निरखून पाहा. त्या आकडय़ांमध्ये एकमेकांत काही साम्य आहे का? तर, इनपुटमध्ये बरेच साम्य असले, तरी ‘एसएचए-२५६’चे दिलेले आउटपुट काय असेल याचे भाकीत करता येत नाही.
आणखी एक गोष्ट, इथे आपण पाच अक्षरी इनपुट वापरले आहे. पण इनपुट कितीही मोठे असले तरी ‘एसएचए-२५६’ कार्यप्रणालीचा वापर करून आलेला आउटपुट ठरावीक आकाराचाच असतो. समजा, ‘लोकसत्ता’चे आजवरचे सारे अंक इनपुट म्हणून टाकले, तरी आउटपुट तितक्याच आकाराचा असेल जितका ‘अॅपल’ या इनपुटचा दिसतो आहे. दुसरे म्हणजे, त्या-त्या इनपुटसाठी आउटपुट नेहमी तेच असेल.
मग कोडे काय आहे?
तर.. समजा, मी तुम्हाला काही इनपुट स्वत:हून देतो. उदाहरणार्थ, मी दोन इनपुट दिले (ते काहीही असोत, ठरावीकच असतील) आणि तुम्हास असे आव्हान दिले की, आता एसएचए-२५६ या कार्यप्रणालीचा वापर करून मला असे आउटपुट द्या ज्याच्या उत्तरात पहिले चार आकडे हे ‘शून्य’ असतील (पाहा : चित्राकृती २). पुढचे आकडे काहीही असले तरी माझे काही म्हणणे नाही, पण पहिले चार आकडे मात्र शून्यच हवेत. जसे चित्राकृती-१ मध्ये ‘अॅपल’च्या हॅश आउटपुटची सुरुवात ही ‘२अ९९’ अशी होते. हे असेच का? चारच शून्य का; पाच का नाहीत? या प्रश्नांची उत्तरे पुढे जाणून घेऊच.
इथे तुम्हाला हा प्रश्न पडला असेल की, जर ‘एसएचए-२५६’मध्ये कोणत्याही इनपुटसाठी एक आउटपुट ठरलेलेच असेल, तर स्वत:च्या पसंतीचे- म्हणजेच सुरुवातीला चार शून्य असलेले आउटपुट आपण कसे मागू शकतो? तर.. याचे उत्तर (पाहा : चित्राकृती ३) असे की, तुम्हाला स्वत:चा नवीन इनपुट द्यायचे पूर्ण स्वातंत्र्य आहेच; पण मी दिलेल्या इनपुटला तुमचे स्वत:चे इनपुट जोडून तुम्हाला हे पाहावे लागेल की, येणारे आउटपुट हे चार शून्यांनी सुरू होते की नाही. समजा, तुम्ही ‘१’ या आकडय़ाने सुरुवात केली. म्हणजे मी दिलेल्या इनपुटला ‘१’ हा आकडा जोडून या साऱ्याचे हॅश आउटपुट काय येते हे तुम्ही पाहाल. जोपर्यंत तुम्हाला पहिले चार आकडे शून्य असलेले आउटपुट दिसत नाही, तोपर्यंत तुम्ही नवनवीन इनपुट जोडणी अविरत करत राहाल. आपल्यापैकी कोणी ना कोणी सर्वात आधी असा आकडा शोधून काढेलच, जो मी दिलेल्या इनपुटसोबत जोडला तर येणाऱ्या हॅश आउटपुटचे पहिले चार आकडे हे शून्य असतील. हे करण्यात जो यशस्वी होईल, ती व्यक्ती तो आकडा इतरांना पाठवेल. खरे तर असा आकडा शोधून काढणे हे अवघड काम आहे. पण जर तो आकडा मिळाला, तर तो चूक आहे की बरोबर हे पडताळून पाहणे फार सोपे आहे. जसे सुडोकू किंवा शब्दकोडे सोडवायला अवघड असते; पण एकदा का कोणी उत्तर दिले, की ते उत्तर बरोबर आहे की चूक याची पडताळणी लगेच होऊ शकते. त्याप्रमाणे वरील कोडे सोडवू पाहणाऱ्यांमध्येही एखाद्यास तो आकडा मिळाला, की इतर लोकतो बरोबर आहे का हे पाहतील आणि बरोबर असल्यास तो आकडा शोधणाऱ्यास विजेता घोषित करतील.
त्याला बक्षीस म्हणून काय मिळेल? तर त्याला ‘बिटकॉइन’ मिळतील! हे ‘बिटकॉइन’ कोणाचे असतील? ते एका मर्यादित ऑनलाइन साठय़ातून दिले जातील, ज्यावर कोणाचीच मालकी नाही- अगदी सातोशी नाकामोटोचीसुद्धा नाही. त्याबरोबर ठरलेल्या आकडय़ाला ‘बिटकॉइन’च्या जगतात ‘नॉन्स नंबर’ म्हटले जाते. मी दिलेले ठरावीक इनपुट कोणते? तर हे इनपुट म्हणजे जगभर होणारे व्यवहार. तो ‘नॉन्स नंबर’ शोधून काढण्यासाठी वेळ आणि ऊर्जा खर्च करून जे काम केले जाते त्याला म्हणतात ‘प्रूफ ऑफ वर्क’ कार्यप्रणाली, जी सातोशी नाकामोटोने जगासमोर मांडली. ‘नॉन्स नंबर’ शोधून बक्षीस म्हणून ‘बिटकॉइन’ मिळवणे या प्रक्रियेला म्हणतात ‘मायनिंग’.. कारण हे खाणीतून धातू शोधण्यासारखेच तर आहे!
जगभर ही प्रक्रिया सुरू आहे. तर.. नक्की कोणते कोडे सोडवून ‘बिटकॉइन’ मिळवले जाते, हे आपण आज पाहिले. ते कोडे का सोडवायचे, त्यामागील उद्देश काय, हे पुढील लेखात पाहू. तेव्हा अॅलिस, बॉब, चार्ली आणि डीलन या चौघांची भेट होणारच आहे!
लेखक ब्लॉकचेन तंत्रज्ञानाच्या उपयोजन क्षेत्रात कार्यरत आहेत. ईमेल : gaurav@emertech.io
गौरव सोमवंशी
सातोशी नाकामोटोने ३ जानेवारी २००९ च्या रात्री पावणेबाराच्या सुमारास सुरू केलेली कोडे सोडवण्याची स्पर्धा आजपर्यंत सुरू आहे. ते कोडे यशस्वीपणे सोडविणारे ‘बिटकॉइन’ची कमाई करतात, ती कशी?
आज आपण जे कोडे सोडवण्याचा प्रयत्न करणार आहोत, त्याचे ‘बिटकॉइन’च्या जगतात विशेष स्थान आहे. हेच कोडे याच क्षणी हजारो लोक सोडवीत आहेत. म्हणजे त्यांनी हे करण्यासाठी त्यांच्या संगणकांना नेमले आहे. हे कोडे सोडवून तुम्हाला जे बक्षीस मिळते ते म्हणजे- ‘बिटकॉइन’! एरवी पारंपरिक पैशाची जशी छपाई केली जाते; तसे नवीन ‘बिटकॉइन’चा उगम व्हायचा असेल, तर त्यासाठी एकच मार्ग उपलब्ध आहे : हे कोडे सोडवणे! सातोशी नाकामोटोने हे कोडे सोडवण्याची स्पर्धा ३ जानेवारी २००९ च्या रात्री पावणेबाराच्या सुमारास सुरू केली, ती आजपर्यंत सुरू आहे. फक्त कोडे सोडवणारी मंडळी वाढत गेली, एकाची हजार झाली. विकेंद्रित (डिसेन्ट्रलाइज्ड) आणि वितरित (डिस्ट्रिब्युटेड) अशा ‘ब्लॉकचेन’ तंत्रज्ञानावर आधारित ‘बिटकॉइन’मध्ये हे गणिती कोडे केंद्रस्थानी आहे.
ते कोडे काय आहे आणि कशासाठी आहे, हे समजून घेण्याआधी आपण प्रथम ‘हॅशिंग’ या संकल्पनेविषयी (‘हॅशिंग.. हॅशकॅश ते ब्लॉकचेन!’, या २६ मार्चच्या लेखात पाहिलेच, पण) थोडे आणखी जाणून घेऊ. ‘हॅशिंग’ ही अशी कार्यपद्धती आहे, ज्यात कितीही मोठा माहितीचा साठा ओतला की बाहेर फक्त एक मर्यादित अक्षर-आकडय़ांचे संयोजन येते. हे करण्याचे- म्हणजे ‘हॅशिंग’चे अनेक प्रकार आहेत. माहितीच्या मोठय़ा साठय़ाला मर्यादित स्वरूपात आणणे, यासोबत त्या माहितीचा अद्वितीय ‘हॅश’ बनवणे हा आपला उद्देश असतो. यास आपण चित्राकृतीतून (पाहा : चित्राकृती १) समजून घेऊ.
यामध्ये तुम्ही तुमच्या मनाने काहीही इनपुट (मूळ माहिती) टाकू शकता. जसे मी ‘अस्र्स्र्’ी’, ‘अढढछए’, ‘अस्र्ढछी’ आणि ‘अॅपल’ हे चार इनपुट टाकले आहेत. आपण ‘एसएचए-२५६’ ही एक विशिष्ट ‘हॅशिंग’ कार्यप्रणाली वापरली आहे. यामध्ये तुम्ही काहीही इनपुट दिला की तुम्हाला त्या इनपुटसाठी एक अद्वितीय, मर्यादित आणि ठरावीक आकडय़ांनी बनलेले आउटपुट (प्रक्रियोत्तर माहिती) मिळते. काही वेळ चित्राकृती-१ कडे नीट लक्ष देऊन पाहा. सारे इनपुट बऱ्याच अर्थाने सारखेच वाटतील, म्हणजे एकाच शब्दात किंचित बदल करून नवीन इनपुट म्हणून दिले आहेत. पण त्याच चित्राकृतीत उजवीकडे ‘एसएचए-२५६’ या ‘हॅशिंग’ कार्यप्रणालीने आलेला आउटपुट नीट निरखून पाहा. त्या आकडय़ांमध्ये एकमेकांत काही साम्य आहे का? तर, इनपुटमध्ये बरेच साम्य असले, तरी ‘एसएचए-२५६’चे दिलेले आउटपुट काय असेल याचे भाकीत करता येत नाही.
आणखी एक गोष्ट, इथे आपण पाच अक्षरी इनपुट वापरले आहे. पण इनपुट कितीही मोठे असले तरी ‘एसएचए-२५६’ कार्यप्रणालीचा वापर करून आलेला आउटपुट ठरावीक आकाराचाच असतो. समजा, ‘लोकसत्ता’चे आजवरचे सारे अंक इनपुट म्हणून टाकले, तरी आउटपुट तितक्याच आकाराचा असेल जितका ‘अॅपल’ या इनपुटचा दिसतो आहे. दुसरे म्हणजे, त्या-त्या इनपुटसाठी आउटपुट नेहमी तेच असेल.
मग कोडे काय आहे?
तर.. समजा, मी तुम्हाला काही इनपुट स्वत:हून देतो. उदाहरणार्थ, मी दोन इनपुट दिले (ते काहीही असोत, ठरावीकच असतील) आणि तुम्हास असे आव्हान दिले की, आता एसएचए-२५६ या कार्यप्रणालीचा वापर करून मला असे आउटपुट द्या ज्याच्या उत्तरात पहिले चार आकडे हे ‘शून्य’ असतील (पाहा : चित्राकृती २). पुढचे आकडे काहीही असले तरी माझे काही म्हणणे नाही, पण पहिले चार आकडे मात्र शून्यच हवेत. जसे चित्राकृती-१ मध्ये ‘अॅपल’च्या हॅश आउटपुटची सुरुवात ही ‘२अ९९’ अशी होते. हे असेच का? चारच शून्य का; पाच का नाहीत? या प्रश्नांची उत्तरे पुढे जाणून घेऊच.
इथे तुम्हाला हा प्रश्न पडला असेल की, जर ‘एसएचए-२५६’मध्ये कोणत्याही इनपुटसाठी एक आउटपुट ठरलेलेच असेल, तर स्वत:च्या पसंतीचे- म्हणजेच सुरुवातीला चार शून्य असलेले आउटपुट आपण कसे मागू शकतो? तर.. याचे उत्तर (पाहा : चित्राकृती ३) असे की, तुम्हाला स्वत:चा नवीन इनपुट द्यायचे पूर्ण स्वातंत्र्य आहेच; पण मी दिलेल्या इनपुटला तुमचे स्वत:चे इनपुट जोडून तुम्हाला हे पाहावे लागेल की, येणारे आउटपुट हे चार शून्यांनी सुरू होते की नाही. समजा, तुम्ही ‘१’ या आकडय़ाने सुरुवात केली. म्हणजे मी दिलेल्या इनपुटला ‘१’ हा आकडा जोडून या साऱ्याचे हॅश आउटपुट काय येते हे तुम्ही पाहाल. जोपर्यंत तुम्हाला पहिले चार आकडे शून्य असलेले आउटपुट दिसत नाही, तोपर्यंत तुम्ही नवनवीन इनपुट जोडणी अविरत करत राहाल. आपल्यापैकी कोणी ना कोणी सर्वात आधी असा आकडा शोधून काढेलच, जो मी दिलेल्या इनपुटसोबत जोडला तर येणाऱ्या हॅश आउटपुटचे पहिले चार आकडे हे शून्य असतील. हे करण्यात जो यशस्वी होईल, ती व्यक्ती तो आकडा इतरांना पाठवेल. खरे तर असा आकडा शोधून काढणे हे अवघड काम आहे. पण जर तो आकडा मिळाला, तर तो चूक आहे की बरोबर हे पडताळून पाहणे फार सोपे आहे. जसे सुडोकू किंवा शब्दकोडे सोडवायला अवघड असते; पण एकदा का कोणी उत्तर दिले, की ते उत्तर बरोबर आहे की चूक याची पडताळणी लगेच होऊ शकते. त्याप्रमाणे वरील कोडे सोडवू पाहणाऱ्यांमध्येही एखाद्यास तो आकडा मिळाला, की इतर लोकतो बरोबर आहे का हे पाहतील आणि बरोबर असल्यास तो आकडा शोधणाऱ्यास विजेता घोषित करतील.
त्याला बक्षीस म्हणून काय मिळेल? तर त्याला ‘बिटकॉइन’ मिळतील! हे ‘बिटकॉइन’ कोणाचे असतील? ते एका मर्यादित ऑनलाइन साठय़ातून दिले जातील, ज्यावर कोणाचीच मालकी नाही- अगदी सातोशी नाकामोटोचीसुद्धा नाही. त्याबरोबर ठरलेल्या आकडय़ाला ‘बिटकॉइन’च्या जगतात ‘नॉन्स नंबर’ म्हटले जाते. मी दिलेले ठरावीक इनपुट कोणते? तर हे इनपुट म्हणजे जगभर होणारे व्यवहार. तो ‘नॉन्स नंबर’ शोधून काढण्यासाठी वेळ आणि ऊर्जा खर्च करून जे काम केले जाते त्याला म्हणतात ‘प्रूफ ऑफ वर्क’ कार्यप्रणाली, जी सातोशी नाकामोटोने जगासमोर मांडली. ‘नॉन्स नंबर’ शोधून बक्षीस म्हणून ‘बिटकॉइन’ मिळवणे या प्रक्रियेला म्हणतात ‘मायनिंग’.. कारण हे खाणीतून धातू शोधण्यासारखेच तर आहे!
जगभर ही प्रक्रिया सुरू आहे. तर.. नक्की कोणते कोडे सोडवून ‘बिटकॉइन’ मिळवले जाते, हे आपण आज पाहिले. ते कोडे का सोडवायचे, त्यामागील उद्देश काय, हे पुढील लेखात पाहू. तेव्हा अॅलिस, बॉब, चार्ली आणि डीलन या चौघांची भेट होणारच आहे!
लेखक ब्लॉकचेन तंत्रज्ञानाच्या उपयोजन क्षेत्रात कार्यरत आहेत. ईमेल : gaurav@emertech.io