ટેકનોલૉજીનાતીરેથી
સંજય ચૌધરી
બ્લોકચેઇન આધારિત એપ્લિકેશનનાવધતા જતા પ્રભાવને જોતાં કેટલાક પ્રશ્નો સહજ રીતે જ થાય. આવી એપ્લિકેશન તૈયાર કેવી રીતે કરી શકાય ? તે માટે કયા કયાતબક્કાઓમાં પસાર થવું પડે? કયા કયા મૂળભૂત ખ્યાલોને ધ્યાનમાં રાખવા જોઈએ ?બ્લોકચેઇન જે તે એપ્લિકેશન માટે થયેલી લેવડદેવડનેટ્રાન્ઝેકશનનારેકોર્ડસ્વરૂપે સંગ્રહી શકે છે. ટિકિટ બુકીંગ, ઑનલાઈનબૅન્કિંગ, વાહનોનુંટ્રેકીંગ વગેરે એપ્લિકેશન વિશાળ માત્રામાં ડેટા કે સંદેશાઓનું નિર્માણ કરે છે, જેનો સંગ્રહ કરવા માટે બ્લોકચેઇન સહજ રીતે કાર્યક્ષમ નથી. તે માટે નીચે જણાવેલા વિશેષ ઘટકોની જરૂર પડે છે :
૧. વિકેન્દ્રીતકૉમ્પ્યુટેશનલપ્લેટફૉર્મ
૨. વિકેન્દ્રીત સંગ્રહ માટેનું પ્લેટફૉર્મ
3. વિકેન્દ્રીતસંદેશાવાહકપ્લેટફૉર્મ
ઇથેરીયમનાવધતા જતા પ્રભાવને કારણેતે અત્યંત મહત્ત્વનાબ્લોકચેઇન પ્લેટફોર્મ તરીકે સ્થાપિત થઈ ચૂક્યું છે. ઇથેરીયમવિકેન્દ્રીતકૉમ્પ્યુટેશનલપ્લેટફૉર્મનાં મુખ્ય ઘટકો નીચે મુજબ છે
ઇથેરીયમવર્ચ્યુલ મશીન (EVM):સ્માર્ટકૉન્ટ્રાક્ટને અમલમાં મૂકવા માટેનું વાતાવરણપૂરું પાડે છે. ઇથેરીયમનેટવર્કના તમામ નૉડEVMચલાવતા હોય છે.
ખાતાં:ઇથેરીયમમાં બે પ્રકારનાં ખાતાં હોય છે - એક તો પ્રત્યેક યુઝરનું પોતાનું Externally Owned Accounts (EOA) તથા બીજું કૉન્ટ્રાક્ટ એકાઉન્ટ (Contract Account). દરેક EOAની માલિકી કોઈ એક યુઝરની હોય છે અને તે જ તેનું નિયંત્રણ કરે છે. બંને ખાતાંને તેમનું ઇન્ટરનેટ પરનું આગવું સરનામું તેમ જ ખાતાનીક્રિપ્ટોકરન્સી સ્વરૂપે જમા રકમ હોય છે. આ જમા રકમ ઇથેરીયમમાંઇથર તરીકે ઓળખાય છે. દરેક EOA અન્ય કોઈ પણ EOA કે કૉન્ટ્રાક્ટએકાઉન્ટનેટ્રાન્ઝેકશન મોકલી લેવડદેવડનું કામ કરી શકે છે. દરેક EOA પાસે પબ્લિક-પ્રાઈવેટ કી હોય છે. ખાતાનુંઇન્ટેરનેટ પરનું સરનામું પબ્લિક કીના આધારે બનેલું હોય છે. જ્યારે જ્યારે નવું EOA ખોલવામાં આવે કે તરત જ તેની સાથે પબ્લિક-પ્રાઈવેટ કી જોડવામાં આવે છે. પ્રાયવેટકીને પાસવર્ડની મદદથી વાંચી ન શકાય તે રીતે એનક્રીપ્ટ કરવામાં આવે છે. જ્યારે યુઝર અન્ય કોઈ પણ યુઝર સાથે લેવડદેવડનું ટ્રાન્ઝેકશન કરે છે ત્યારે તે યુઝરનીપ્રાયવેટ કી તથા પાસવર્ડ મોકલવામાં આવે છે.
દરેક કૉન્ટ્રાક્ટએકાઉન્ટનેકૉન્ટ્રાક્ટકૉડ હોય છે, જેનો દરેક ખાતામાં સંગ્રહ કરવામાં આવે છે. જ્યારે એક યુઝર બીજા યુઝર સાથે લેવડદેવડ કરે ત્યારે અથવા તો જ્યારે એક કૉન્ટ્રાક્ટ બીજા કૉન્ટ્રાક્ટને સંદેશો મોકલે ત્યારે સ્માર્ટકૉન્ટ્રાક્ટનો અમલ થાય છે. આ આખી પ્રક્રિયા માટે પ્રૉગ્રામીંગ થયેલું હોય છે.
બ્લોક:એકથી વધુ ટ્રાન્ઝેકશનનો સમૂહ બનાવી તેને બ્લોક સ્વરૂપે સંગ્રહવામાં આવે છે.બ્લોકચેઇનના અનેક નૉડ પર બ્લોક બનતા હોય છે. કોઈ પણ એક રાઉન્ડ દરમ્યાન તૈયાર થયેલા અનેક બ્લોક પૈકી એક જ બ્લોકનેબ્લોકચેઇનમાંજોડવામાં આવે છે, જેને માટે તમામ નૉડનીસંમતિ હોવી અનિવાર્ય છે. કયા બ્લોકનેબ્લોકચેઇનમાંજોડવામાં આવશે તે નક્કી કરવાનું કાર્ય માયનર્સનું છે અને તમામ નૉડ વચ્ચે સંમતિ સાધવાનું કાર્ય કનસેન્સસઆલ્ગોરિધમની મદદથી થાય છે.
ટ્રાન્ઝેકશન તથા સંદેશાઓ: લેવડદેવડનાટ્રાન્ઝેકશન કરતી વખતે એક યુઝરતેના પોતાના EOAની મદદથી અન્ય કોઈ પણ યુઝરને અથવા કૉન્ટ્રાક્ટ એકાઉન્ટને સંદેશાઓ મોકલે છે.ટ્રાન્ઝેકશનમાંસ્વીકારનાર કે લેનારનું નામ, લેવડદેવડની વિગતો તેમ જ તેની કુલ કિંમત જેવાં ક્ષેત્રો નોંધાયેલા હોય છે. જેવું ટ્રાન્ઝેકશનયુઝરનાEOA પર મોકલવામાં આવે કે ટ્રાન્ઝેકશનની કુલ કિંમત લેનારનાખાતામાં જમા થઈ જાય છે. પણ જ્યારે ટ્રાન્ઝેકશનકૉન્ટ્રાક્ટએકાઉન્ટને મોકલવામાં આવે છે ત્યારે ટ્રાન્ઝેકશનનીલેવડદેવડનીવિગતોના આધારે સ્માર્ટકૉન્ટ્રાક્ટ અમલમાં મૂકાય છે. ટ્રાન્ઝેકશનમાંમોકલનારનીપ્રાયવેટ કી દ્વારા સહી કરેલી હોય છે. બ્લોકચેઇન નેટવર્કમાં સતત થતા રહેતા ટ્રાન્ઝેકશનનેનેટવર્કનાભાગરૂપ સહુ કોઈ વાંચી શકે છે.
માયનીંગની ગહન પ્રક્રિયા દરમ્યાન ટ્રાન્ઝેકશનને નક્કી કરેલા માપદંડના આધારે પસંદ કરવામાં આવે છે અને તેને બ્લોકમાં લખવામાં આવે છે. જેમ બૅન્કના કોઈ ખાતામાં જમા કે ઉપાડની સતત થતી રહેતી ક્રિયાના આધારે ખાતાની સ્થિતિ બદલાતી રહેતી હોય છે તેમ આ રીતે પસંદ કરીને બ્લોકમાં લખવામાં આવેલા ટ્રાન્ઝેકશનના આધારે જ બ્લોકચેઇન નેટવર્કની સ્થિતિમાં ફેરફાર થતા હોય છે.
કરાર મુજબ નક્કી કરવામાં આવેલા ધંધાકીય વ્યવહારોને અમલમાં મૂકવા માટે સ્માર્ટકૉન્ટ્રાક્ટનુંપ્રૉગ્રામીંગ કરવામાં આવે છે. બ્લોકચેઇનમાં અમલમાં મૂકવામાં આવેલા કૉન્ટ્રાક્ટ એકબીજાને સંદેશાઓ મોકલીને જરૂરી વ્યવહારોને અમલમાં મૂકે છે. ટ્રાન્ઝેકશન તથા સંદેશાવચ્ચેનો મુખ્ય તફાવત એ છે કે ટ્રાન્ઝેકશનનું નિર્માણ EOA દ્વારા કરવામાં આવે છે જ્યારે સંદેશાનું નિર્માણ કૉન્ટ્રાક્ટ દ્વારા કરવામાં આવે છે.
માયનીંગ : સતત થતા રહેતા ધંધાકીય વ્યવહારો એટલે કે ટ્રાન્ઝેકશનનીચકાસણીનું કાર્ય માયનીંગ નામની પ્રક્રિયા દ્વારા કરવામાં આવે છે. ફુલ નૉડ કે માયનીંગનૉડ તરીકે સક્રિય નૉડચકાસણીનું કાર્ય કરે છે જેના માટે નૉડ પાસે સક્ષમ કૉમ્પ્યુટેશનલ સાધનો હોવા અનિવાર્ય છે. તદુપરાંત માયનીંગ પ્રક્રિયા દરમ્યાન વીજળીનો વપરાશ થતો રહે છે. આમ, માયનીંગનૉડના માલિકો પોતાનું મૂડીરોકાણ કરતા હોય છે. બ્લોકચેઇન નેટવર્કમાં થતા રહેતા ટ્રાન્ઝેકશનનીચકાસણીના કાર્ય માટે જો તેમને વળતર ના મળે તો તેઓ શા માટે પોતાનું મૂડીરોકાણ કરે ?
ઇથેરીયમનુંનાણાંકીય ચલણ ઇથર છે. એક રાઉન્ડ દરમ્યાન તૈયાર અનેક બ્લોક પૈકી માત્ર એક જ બ્લોકનેબ્લોકચેઇનનીકડીમાં નવા બ્લોક તરીકે જોડવામાં આવે છે. આ માટે તમામ અન્ય માયનીંગનૉડની સંમતિ પણ હોય છે. નવા જોડાયેલાબ્લોકને આધારે તમામ અન્ય નૉડ પોતાની પાસે રહેલી બ્લોકચેઇનનીનકલનેસુધારે છે.
એકથી વધુ કાર્યરત માયનીંગનૉડ દ્વારા થતી માયનીંગ પ્રક્રિયા દરમ્યાન જે નૉડ દ્વારા પસંદ કરવામાં આવેલા બ્લોકનેબ્લોકચેઇનનીકડીમાં નવા બ્લોક તરીકે જોડવામાં આવે છે, તે નૉડનેપ્રોત્સાહનરૂપેઇથર નામના નાણાંકીય ચલણસ્વરૂપેવળતર આપવામાં આવે છે. માયનીંગનું કાર્ય સહેજ પણ સરળ નથી. તે અત્યંત જટિલ ગાણિતિક પ્રક્રિયા આધારિત છે. જે તે ધંધાકીય ક્ષેત્રના આર્થિક વ્યવહારો માટે જરૂરી પ્રક્રિયા તેમ જ તેને અનુરૂપ કરારોની તમામ શરતો તથા તર્કબદ્ધચકાસણીનો તેમાં સમાવેશ થતો હોય છે. તે માટે માયનર્સઆલ્ગોરિધમની મદદથી પ્રૉગ્રામીંગ કરતા હોય છે. અત્યારે પ્રૂફ ઑફ વર્ક, પ્લગેબલફ્રેમવર્ક, બીઝાઇનટાઇનફૉલ્ટટોલરન્સ, પ્રૂફ ઑફસ્ટેકઇત્યાદિઆલ્ગોરિધમ પ્રચલિત છે અને આ ક્ષેત્રે વિશેષ સંશોધન પણ થઈ રહ્યું છે.
ઇથર: ઇથેરીયમ પ્લેટફોર્મનું નાણાંકીય ચલણ ઇથરછે. માયનરનૉડને તેમના સફળ માયનીંગ પ્રયાસ માટે પ્રોત્સાહનરૂપેઇથરનીચૂકવણી થાય છે.
ગૅસ : કોઈ પણ ટ્રાન્ઝેકશનને અમલમાં મૂકવા માટે માયનર્સ દ્વારા વીજળી તેમ જ કૉમ્પ્યુટરનાં સાધનોનો ઉપયોગ થાય છે જેના વપરાશના આધારે માયનર્સનેચૂકવણી પણ કરવી પડે છે.બ્લોકચેઇનમાં થતી રહેતી પ્રક્રિયાઓને આધારે સાધનોનો વપરાશ થતો રહે છે. ઉપયોગમાં લેવાયેલાંસાધનોનાખર્ચનો અંદાજ મેળવવા માટે ક્રિપ્ટો-ફ્યુઅલએટલે કે બળતણના માપ માટે ગૅસનો એકમ તરીકે ઉપયોગ થાય છે. દા. ત. ગાણિતીક ગણતરીઓ માટે CPUનો ઉપયોગ કરવો પડે છે અને વપરાશમાં લેવાયેલીસેકંડના આધારે ચૂકવણી કરવી પડે છે. લેવડદેવડના સતત થતા રહેતા ટ્રાન્ઝેકશનનાસમૂહના આધારે અનેક બ્લોકતૈયાર થતા રહે છે, જે પૈકી યોગ્ય બ્લોકનેબ્લોકચેઇનમાંજોડવાનું કાર્ય માયનર્સ કરે છે.ટ્રાન્ઝેકશનને મોકલનાર તેની સાથે ગૅસની કિંમત નક્કી કરે છે. એનો અર્થ એ થાય કે ટ્રાન્ઝેકશન મોકલનાર
ટ્રાન્ઝેકશનનોબ્લોકચેઇન પરના અમલ માટે કેટલી રકમ ચૂકવવા માંગે છે તે અંગેની સ્પષ્ટતા કરે છે. આ કિંમત પૈકી ચૂકવવા પાત્ર રકમ માયનર્સનેચૂકવ્યા પછી વધેલી રકમ ટ્રાન્ઝેકશનમોકલનારને પરત કરવામાં આવે છે.
વિકેન્દ્રીત સંગ્રહ માટેનું પ્લેટફૉર્મ:
ઇથેરીયમ દ્વારા રચાતા જતા બ્લોકનોતેમ જ તૈયાર કરવામાં આવેલ વિકેન્દ્રીતએપ્લિકેશન (Dapps)ના પ્રૉગ્રામીંગકૉડનોસંગ્રહ કરવા માટે સ્વાર્મ(Swarm)નામના વિકેન્દ્રીતસંગ્રહભંડારનો ઉપયોગ કરવામાં આવે છે. અલગ અલગનૉડસ્વેચ્છાએ તેમ જ તેની ક્ષમતા મુજબ પોતાની પાસે રહેલા સંગ્રહભંડારમાંથી જગ્યા આપે છે. અલગ અલગનૉડ પાસેથી મળેલ નાના મોટા સંગ્રહ ભંડારને સંકલિત કરીને એક વિશાળ વિકેન્દ્રીતભંડારની રચના થાય છે. જે પણ નૉડ પોતાના સંગ્રહ ભંડારમાંથી જગ્યા અથવા પોતાની પાસે રહેલી કુલ ઇન્ટરનેટ બેન્ડવીથમાંથી જેટલી બેન્ડવીથબ્લોકચેઇનના સંચાલન માટે આપે છે તેને પ્રોત્સાહન સ્વરૂપે વળતર પણ આપવામાં આવે છે.
વિકેન્દ્રીતસંદેશાવાહકપ્લેટફૉર્મ:
વિકેન્દ્રીતએપ્લિકેશન (Dapps) એકબીજા સાથે જેના આધારે સંદેશાઓ મોકલે છે તે પ્રોટોકૉલનેવિસ્પર(Whisper) કહેવામાં આવે છે. Dapps દ્વારા એકમેકને મોકલવામાં આવતા સંદેશાઓક્ષણિક હોય છે અને તે કેટલો સમય સક્રિય કે સજીવ રહી શકશે તે માટે સમયમર્યાદા નક્કી કરેલી હોય છે. જે નોડ પરDappsનો અમલ થતો હોય તેનૉડ પોતે કેવા પ્રકારના સંદેશા મેળવવા માગે છે તે અંગેનોંધણી કરાવે છે. દા.ત. નૉડને માત્ર મિલકતના ખરીદ વેચાણમાં જ રસ છે તો તે નૉડને માત્ર મિલકતના ખરીદ વેચાણ અંગે થતા સોદાઓના જ સંદેશાઓ મળતા રહેશે.
વિકેન્દ્રીતએપ્લિકેશન(Dapps)
બ્લોકચેઇનનુંપ્રૉગ્રામીંગ તેમ જ વિવિધ એપ્લિકેશન તૈયાર કરવા માટે સ્માર્ટકૉન્ટ્રાક્ટનો ઉપયોગ થાય છે.Dappsએ એક એપ્લિકેશન છે જે વિવિધ સ્માર્ટકૉન્ટ્રાક્ટનોઉપયોગ કરે છે અને તેની સાથે યુઝર કાર્યવાહી કરી શકે તે માટે જરૂરી ગ્રાફિકલઇન્ટરફેસ પૂરો પાડે છે.ફાયનાન્સ, સિક્યોરીટી, સંગ્રહ, ગેમ્સ વગેરે ક્ષેત્રો માટે Dappsઉપલબ્ધ છે.MakerDAO, CryptantCrab, Idex, Kyber, Cryptokittiesવગેરે Dappsના ઉદાહરણો છે.