व्यवहार — ETH.BUILD
ETH.BUILD या शैक्षणिक टूलचा वापर करून इथेरियम व्यवहार कसे कार्य करतात याचे प्रात्यक्षिक. इथेरियम नेटवर्कवर व्यवहार कसे तयार केले जातात, त्यावर स्वाक्षरी कशी केली जाते आणि ते कसे पाठवले जातात ते पहा.
Date published: 14 जानेवारी, 2021
ऑस्टिन ग्रिफिथ यांचे एक ट्युटोरियल जे ETH.BUILD या व्हिज्युअल प्रोग्रामिंग टूलचा वापर करून इथेरियम व्यवहार कसे कार्य करतात हे दाखवते — ज्यामध्ये व्यवहाराची रचना, गॅसची किंमत, स्वाक्षरी करणे, ब्रॉडकास्टिंग आणि व्यवहार पूल यांचा समावेश आहे.
ही ट्रान्सक्रिप्ट ऑस्टिन ग्रिफिथ यांनी प्रकाशित केलेल्या मूळ व्हिडिओ ट्रान्सक्रिप्टची (opens in a new tab) एक सुलभ प्रत आहे. वाचनीयतेसाठी यात थोडे संपादन केले आहे.
व्यवहार शुल्क आणि मायनर प्रोत्साहन (0:00)
आज ETH.BUILD वर आपण व्यवहारांबद्दल बोलणार आहोत. आतापर्यंत, आपण हे व्यवहार ब्लॉक्समध्ये माइन केलेले, ब्लॉक्समध्ये पॅकेज केलेले आणि चेनमध्ये माइन केलेले पाहिले आहेत. ब्लॉक बक्षीस व्यतिरिक्त, मायनरला आपला व्यवहार पूलमधून बाहेर काढून ब्लॉकमध्ये टाकण्यासाठी आणि चेनवर माइन करण्यासाठी काय प्रोत्साहन देते, याबद्दल आपल्याला बोलायचे आहे, विशेषतः पूलमधील इतर लोकांच्या तुलनेत. पूलमध्ये हजारो लोक असू शकतात जे सर्वजण बोली लावत असतात आणि ती बोली या शुल्कासह असते.
माझ्या व्यवहारामध्ये एक शुल्क असू शकते जे सांगते "मी ॲलिस आहे आणि मी बॉबला 5 पाठवत आहे, आणि रिप्ले संरक्षणासाठी माझा नॉन्स 1 आहे." तसेच, जो कोणी हे माइन करेल तो हे शुल्क स्वतःसाठी घेऊ शकतो. मुळात, ॲलिस बॉबला 5 पाठवत आहे पण ते चेनमध्ये टाकण्यासाठी मायनरला एक निकेल (नाणे) देखील देत आहे.
इथेरियम व्यवहाराची रचना (1:10)
इथेरियमवर व्यवहार कसा दिसतो? आपल्याकडे आता "बॉब" आणि "ॲलिस" नसतील — आपल्याकडे पत्ते असतील. मूल्य ETH मध्ये नसून Wei मध्ये असेल. आणि शुल्क देखील Wei मध्ये असेल.
चला तर मग या व्यवहाराकडे पाहूया. माझ्याकडे एक खाते आहे ज्यामध्ये निमोनिक (mnemonic) टाकलेले आहे, आणि मी इथरियम मेननेटशी जोडलेला आहे. मी CoinMarketCap वरून किमतीचा डेटा मिळवण्यासाठी एक मॉड्यूल देखील चालवत आहे, जेणेकरून मी पाहू शकेन की 0.1 काहीतरी ETH म्हणजे सुमारे 23 डॉलर्स होतात.
व्यवहार सेट करणे (2:25)
मी काय करणार आहे तर एक व्यवहार तयार करणार आहे आणि मायनरला तो उचलून ऑनचेन टाकण्यासाठी प्रोत्साहित करणार आहे. माझ्याकडे दोन पात्रे आहेत — ॲलिस आणि बॉब. ॲलिस तिच्या खाजगी की वापरून बॉबला काही मूल्य पाठवणार आहे. येथे "from" (कडून) पत्ता फील्ड नाही कारण — लक्षात ठेवा — आपण आपल्या की जोडीने स्वाक्षरी करत आहोत आणि रिकव्हर करत आहोत. व्यवहार पॅकेज केला जातो, त्यावर स्वाक्षरी केली जाते आणि नंतर नेटवर्कवर पाठवला जातो. कोणीही त्यात छेडछाड करू शकत नाही, आणि दुसऱ्या बाजूला कोणीतरी तो रिकव्हर करू शकतो आणि शोधू शकतो की खरोखर आपणच त्यावर स्वाक्षरी केली होती. "from" पत्ता यातून मिळवला जातो.
गॅसची किंमत रणनीती (4:20)
गॅसची किंमत डीफॉल्टनुसार सुमारे 4.1 Gwei वर सेट केली आहे — म्हणजेच 4.1 अब्ज Wei. पण आपल्याला याबद्दल अधिक रणनीतिक राहायचे आहे आणि सध्या ऑनचेन काय चालले आहे ते पाहायचे आहे. आपण पाहू शकतो की मागील ब्लॉकमध्ये 78 व्यवहार होते, आणि गॅसची किंमत सुमारे 5 पासून काही किमान मूल्यापर्यंत होती. मुळात, त्या ब्लॉकमध्ये माइन होण्यासाठी आपल्याला 5 च्या वर असणे आवश्यक आहे. त्यामुळे गॅसची किंमत 5.001 वर सेट करूया — फक्त थोडी जास्त.
Wei मध्ये रूपांतरित करणे (5:20)
आपल्याला Wei मध्ये रूपांतरण करणे आवश्यक आहे. इथेरियमवर, आपण प्रामुख्याने दोन मूल्यांशी व्यवहार करता: ETH, ज्याबद्दल लोक सहसा बोलतात, आणि नंतर Wei, जे ETH चा एक अतिशय लहान अंश आहे. Gwei — जे आपण गॅसच्या किमतींसाठी वापरतो — ते या दोन्हींच्या मध्ये आहे. याचे कारण आपण पैशांच्या अपूर्णांकात का बोलत नाही यासारखेच आहे.
ॲलिसकडे 0.18 ETH आहेत, आणि आपण बॉबला 0.05 ETH पाठवणार आहोत. आपण 5 Gwei ची गॅसची किंमत टाकतो.
स्वाक्षरी करणे आणि ब्रॉडकास्टिंग (7:02)
जेव्हा ॲलिस व्यवहारावर स्वाक्षरी करणे निवडते, तेव्हा तो एक स्वाक्षरी केलेला व्यवहार म्हणून बाहेर पडतो जो नेटवर्कवर जाऊ शकतो. कोणीही त्यात छेडछाड करू शकत नाही — दुसऱ्या बाजूला, कोणीतरी हे शोधू शकतो की ॲलिसनेच त्यावर स्वाक्षरी केली होती, आणि त्यात आपण कोणाला पाठवू इच्छितो आणि मायनरला जाणारा गॅस याबद्दलची सर्व माहिती असते.
आपण तो स्वाक्षरी केलेला व्यवहार घेतो आणि ब्लॉकचेन मॉड्यूलच्या सेंड (send) फंक्शनमध्ये जोडतो. जेव्हा मी सेंडवर क्लिक करतो, तेव्हा ते आपल्याला एक हॅश देते — व्यवहार हॅश. मुळात, मी तो वितरित नेटवर्कवर पाठवला आणि त्यांनी मला व्यवहार हॅश परत दिला. तो नेटवर्कवर जातो, आणि नंतर व्यवहारांचा हा पूल असतो — जिथे लोक त्यांचा व्यवहार पूर्ण करण्यासाठी बोली लावत असतात.
ब्लॉक तपासणे (8:41)
आपण आपल्या व्यवहारासाठी ब्लॉकचेनला क्वेरी करू शकतो. नक्कीच, तो आधीच माइन झाला आहे. आपण ब्लॉक पाहू शकतो, गॅसच्या किमतीनुसार क्रमवारी लावू शकतो आणि स्वतःला शोधू शकतो. तिथे 5.001 गॅसच्या किमतीवर आपला व्यवहार आहे — ॲलिस बॉबला पाठवत आहे, कोणत्याही अतिरिक्त डेटाशिवाय. आपण तिथे आहोत, तळापासून सुमारे 4 किंवा 5 स्थानांवर.
व्यवहारासोबत डेटा पाठवणे (9:54)
आपण मूल्य पाठवू शकतो आणि आपला व्यवहार ऑनचेन ओळखला जावा यासाठी बोली लावू शकतो. पण आणखी एक गोष्ट पाहूया — डेटा फील्ड. आपण आपल्या व्यवहारासोबत गोष्टी पाठवू शकतो. ते हेक्साडेसिमल (hexadecimal) मध्ये असेल. ॲलिस बॉबला आणखी 6 डॉलर्स पाठवणार आहे, आणि आपण एक संदेश जोडू: "hey Bob." आपण "hey Bob" हेक्समध्ये रूपांतरित झालेले पाहू शकतो.
आपण त्या व्यवहारावर स्वाक्षरी करतो, तो मायनरला पाठवतो, तो नेटवर्कवर जातो आणि आपल्याला एक हॅश परत मिळतो. आपण तो माइन होण्याची वाट पाहतो, आणि तो होतो. जेव्हा आपण तो ब्लॉक तपासतो, तेव्हा आपण जोडलेल्या डेटासह आपला व्यवहार पाहू शकतो.
व्यवहार पूल आणि गॅस वाढवणे (12:43)
एका शेवटच्या प्रात्यक्षिकासाठी, मी अतिशय कमी गॅसच्या किमतीसह — सुमारे 1.001 Gwei — एक व्यवहार पूलमध्ये टाकला. तो तिथे माइन न होता पडून आहे कारण आपण मायनर्सना पुरेसे प्रोत्साहन देत नाही आहोत. आपण पाहू शकतो की व्यवहार व्यवहार पूलमध्ये प्रलंबित आहे. पूलमध्ये 1 ते 300 च्या दरम्यान व्यवहार आहेत, परंतु माइन होत असलेले नवीनतम ब्लॉक्स दर्शवतात की सर्वात कमी गॅसची किंमत सुमारे 5 आहे.
त्यामुळे आपल्याला हा व्यवहार पुन्हा सबमिट करणे आवश्यक आहे — चला तो 10 पर्यंत वाढवूया. हे आवश्यकतेपेक्षा खूप जास्त आहे, परंतु आपण तोच व्यवहार त्याच नॉन्ससह परंतु जास्त गॅसच्या किमतीसह पुन्हा सबमिट करू. नेटवर्क म्हणते "तीच व्यक्ती, तोच व्यवहार, जास्त पैसे देण्यास तयार आहे." तो उचलला जातो आणि पुढील ब्लॉकमध्ये माइन केला जातो.
सारांश (14:52)
आपण एक व्यवहार पाठवला, मायनरला तो ब्लॉक्सच्या चेनमध्ये टाकण्यासाठी प्रोत्साहित करण्यासाठी आपण काही गॅस दिला. आपण व्यवहारासोबत डेटा देखील पाठवला — आता आपल्याकडे हा कॉल डेटा येत असल्याने आपण सर्व प्रकारच्या खरोखर छान गोष्टी करू शकतो, आणि आपण नंतर स्मार्ट कॉन्ट्रॅक्ट्स आणि बऱ्याच मजेदार गोष्टींमध्ये जाऊ.