EVM क्या है
नोट: यह दस्तावेज़ मूल अंग्रेजी संस्करण का स्वचालित अनुवाद है।
EVM क्या है
EVM (Ethereum Virtual Machine) वह कम्प्यूटेशन इंजन है जो Ethereum और बड़ी संख्या में अन्य ब्लॉकचेनों को शक्ति देता है। यह वह सॉफ़्टवेयर वातावरण है जो स्मार्ट कॉन्ट्रैक्ट — ब्लॉकचेन पर संग्रहीत स्व-प्रवर्तित प्रोग्राम — निष्पादित करता है। जब कोई डेवलपर Solidity (या किसी अन्य EVM-संगत भाषा) में स्मार्ट कॉन्ट्रैक्ट लिखता है, उसे संकलित करता है और किसी चेन पर डिप्लॉय करता है, तो EVM ही वह है जो वास्तव में उस कोड को चलाती है।
EVM-संगत नेटवर्क का हर नोड समान नियमों वाली एक ही वर्चुअल मशीन चलाता है। यही स्मार्ट कॉन्ट्रैक्ट को नियतात्मक (deterministic) बनाता है: समान इनपुट और स्थिति दिए जाने पर हर नोड समान आउटपुट देता है। कोई अस्पष्टता नहीं, कोई "मेरी मशीन पर तो चलता है" समस्या नहीं। EVM गारंटी देती है कि नेटवर्क का हर प्रतिभागी हर गणना के परिणाम पर सहमत हो।
संक्षेप में: EVM Ethereum और EVM-संगत चेनों पर स्मार्ट कॉन्ट्रैक्ट का मानकीकृत निष्पादन इंजन है। यह परिभाषित करती है कि कोड कैसे चलता है, स्थिति कैसे संग्रहीत होती है और गैस कैसे खपत होती है — जिससे एक साझा रनटाइम बनता है जो सभी नोड्स पर समान रूप से काम करता है।
EVM कैसे काम करती है
बाइटकोड निष्पादन
स्मार्ट कॉन्ट्रैक्ट मानव-पठनीय सोर्स कोड के रूप में ऑन-चेन संग्रहीत नहीं होते। डिप्लॉयमेंट से पहले सोर्स कोड (आमतौर पर Solidity में लिखा) बाइटकोड में संकलित होता है — निम्न-स्तरीय निर्देशों का सेट जिसे EVM समझती है। हर निर्देश एक opcode है: कोई बुनियादी ऑपरेशन जैसे "दो संख्याएँ जोड़ो," "मेमोरी में मान संग्रहीत करो," "स्टोरेज से डेटा लोड करो," या "टोकन स्थानांतरित करो।"
जब कोई लेनदेन स्मार्ट कॉन्ट्रैक्ट को ट्रिगर करता है, तो नेटवर्क का हर सत्यापनकर्ता नोड:
- ब्लॉकचेन स्थिति से कॉन्ट्रैक्ट का बाइटकोड लोड करता है।
- EVM विनिर्देश का पालन करते हुए opcodes को क्रमिक रूप से निष्पादित करता है।
- निष्पादन परिणाम के आधार पर ब्लॉकचेन स्थिति अपडेट करता है।
- निष्पादित हर opcode के लिए गैस लेता है।
चूँकि हर नोड समान नियमों के साथ समान बाइटकोड चलाता है, सभी एक ही परिणाम पर पहुँचते हैं। यह नियतात्मक निष्पादन ऑन-चेन विश्वास-रहित गणना की नींव है।
गैस
हर opcode की एक गैस लागत है — उस निर्देश को निष्पादित करने के लिए आवश्यक कम्प्यूटेशनल प्रयास का माप। गैस दो उद्देश्य पूरे करती है:
- संसाधन मीटरिंग — गैस अनंत लूप को रोकती है और सुनिश्चित करती है कि हर गणना नेटवर्क संसाधनों की सीमित मात्रा ही खपत करे। जो कॉन्ट्रैक्ट हमेशा चलने की कोशिश करेगा, वह अपनी गैस सीमा खत्म कर देगा और revert हो जाएगा।
- शुल्क तंत्र — उपयोगकर्ता अपने लेनदेन निष्पादित करने के लिए वैलिडेटरों को क्षतिपूर्ति के रूप में गैस शुल्क (चेन के native टोकन में) देते हैं। अधिक जटिल ऑपरेशनों में अधिक गैस लगती है।
गैस लागतें EVM विनिर्देश से परिभाषित हैं और सभी EVM-संगत चेनों पर समान हैं (हालाँकि native टोकन में गैस की कीमत नेटवर्क के अनुसार भिन्न होती है)।
स्थिति और भंडारण
EVM एक वैश्विक स्थिति बनाए रखती है — पतों (उपयोगकर्ता खातों और कॉन्ट्रैक्ट खातों दोनों) से उनके वर्तमान बैलेंस, कोड और स्टोरेज की मैपिंग। स्मार्ट कॉन्ट्रैक्ट स्टोरेज key-value स्टोर के रूप में व्यवस्थित है: हर कॉन्ट्रैक्ट का अपना 256-बिट पता स्थान है जहाँ वह स्थायी डेटा पढ़-लिख सकता है।
स्टोरेज ऑपरेशन (स्थायी स्थिति में लिखना और उससे पढ़ना) गैस के लिहाज से सबसे महँगे EVM ऑपरेशनों में से हैं, क्योंकि वे उस डेटा को प्रभावित करते हैं जिसे हर नोड को स्थायी रूप से संग्रहीत करना होता है।
स्टैक-आधारित आर्किटेक्चर
EVM एक स्टैक मशीन है: वह गणना के दौरान मध्यवर्ती मानों को रखने के लिए नामित रजिस्टरों के बजाय last-in-first-out स्टैक का उपयोग करती है। Opcodes स्टैक पर मान डालते हैं, शीर्ष तत्वों पर काम करते हैं और परिणाम वापस डालते हैं। यह डिज़ाइन सरल और अच्छी तरह विनिर्दिष्ट है, लेकिन अधिकांश पारंपरिक CPU और कुछ नई ब्लॉकचेन वर्चुअल मशीनों (जैसे Solana की SBF/eBPF) द्वारा उपयोग की जाने वाली रजिस्टर-आधारित आर्किटेक्चर से भिन्न है।
EVM क्यों मायने रखती है
वह मानक जो इकोसिस्टम बन गया
EVM का महत्व स्वयं Ethereum से कहीं आगे जाता है। चूँकि EVM विनिर्देश खुला और अच्छी तरह प्रलेखित है, कई अन्य ब्लॉकचेनों ने इसे अपनाया है — या तो EVM को मूल रूप से चलाकर या EVM-संगत निष्पादन परत लागू करके। इससे एक साझा इकोसिस्टम बना है:
| क्या साझा है | व्यवहार में इसका अर्थ |
|---|---|
| स्मार्ट कॉन्ट्रैक्ट भाषा | डेवलपर Solidity एक बार लिखते हैं और किसी भी EVM चेन पर डिप्लॉय करते हैं |
| विकास टूल | Hardhat, Foundry, Remix और अन्य टूल सभी EVM चेनों पर काम करते हैं |
| वॉलेट संगतता | MetaMask और अन्य EVM वॉलेट बस नया नेटवर्क जोड़ने से काम करते हैं |
| टोकन मानक | ERC-20 (फंजिबल टोकन), ERC-721 (NFT) और अन्य मानक चेनों में पोर्टेबल हैं |
| ऑडिट और सुरक्षा | सुरक्षा ऑडिटर, formal verification टूल और सर्वोत्तम प्रथाएँ EVM चेनों में स्थानांतरित होती हैं |
| डेवलपर ज्ञान | Solidity और EVM जानने वाला डेवलपर Ethereum, Polygon, Avalanche, BNB Chain, Arbitrum, Base और दर्जनों अन्य नेटवर्कों पर काम कर सकता है |
यही पोर्टेबिलिटी कारण है कि डेवलपरों और एप्लिकेशनों को जल्दी आकर्षित करना चाहने वाले नए ब्लॉकचेनों के लिए EVM संगतता डिफ़ॉल्ट विकल्प बन गई। मौजूदा इकोसिस्टम में शामिल होना शून्य से इकोसिस्टम बनाने से सस्ता और तेज़ है।
मल्टी-चेन डिप्लॉयमेंट
प्रोजेक्ट्स — AI-संबंधी क्रिप्टो प्रोजेक्ट्स सहित — के लिए EVM संगतता का अर्थ है कि Ethereum पर डिप्लॉय किया गया स्मार्ट कॉन्ट्रैक्ट न्यूनतम संशोधन से Polygon, Avalanche की C-Chain, Arbitrum, Base या BNB Smart Chain पर डिप्लॉय किया जा सकता है। इससे संभव होता है:
- मल्टी-चेन उपस्थिति — प्रोजेक्ट अलग-अलग उपयोगकर्ता आधारों तक पहुँचने के लिए वही टोकन कॉन्ट्रैक्ट और मुख्य लॉजिक कई चेनों पर डिप्लॉय कर सकता है।
- चेन माइग्रेशन — यदि प्रोजेक्ट को कम शुल्क या अधिक थ्रूपुट वाली चेन पर जाना है, तो EVM संगतता माइग्रेशन लागत घटा देती है।
- संयोजनीयता — किसी भी EVM चेन पर कॉन्ट्रैक्ट समान इंटरफ़ेस और मानकों से एक-दूसरे के साथ इंटरैक्ट कर सकते हैं, जिससे DeFi संयोजनीयता, टोकन एकीकरण और साझा इन्फ्रास्ट्रक्चर संभव होते हैं।
सीमाएँ
EVM सामान्य-प्रयोजन स्मार्ट कॉन्ट्रैक्ट निष्पादन के लिए डिज़ाइन की गई थी, कंप्यूट-गहन वर्कलोड के लिए नहीं। मुख्य सीमाएँ हैं:
- कोई native floating point नहीं — EVM केवल 256-बिट पूर्णांक उपयोग करती है। Floating-point अंकगणित (अधिकांश AI/ML गणनाओं के लिए आवश्यक) का अनुकरण करना पड़ता है, जो गैस में बेहद महँगा है।
- गैस बाध्यताएँ — ब्लॉक गैस सीमा प्रति ब्लॉक कुल गणना पर सीमा लगाती है। जटिल ऑपरेशन (जैसे AI इन्फरेंस के लिए मैट्रिक्स गुणन) EVM निष्पादन के भीतर निषेधात्मक रूप से महँगे हैं।
- क्रमिक निष्पादन — EVM ब्लॉक के भीतर लेनदेन क्रमिक रूप से संसाधित करती है। समानांतर निष्पादन, जिसका उपयोग आधुनिक CPU प्रदर्शन के लिए करते हैं, मूल रूप से समर्थित नहीं है (हालाँकि कुछ नई EVM-संगत चेन समानांतर EVM निष्पादन के प्रयोग कर रही हैं)।
- स्टोरेज लागत — बड़ी मात्रा में डेटा ऑन-चेन संग्रहीत करना महँगा है। AI मॉडल, डेटासेट और मध्यवर्ती गणनाएँ ऑन-चेन भंडारण के लिए बहुत बड़ी हैं।
ये सीमाएँ समझाती हैं कि AI-संबंधी क्रिप्टो प्रोजेक्ट आमतौर पर AI वर्कलोड ऑफ-चेन क्यों चलाते हैं और ऑन-चेन EVM कॉन्ट्रैक्ट का उपयोग केवल समन्वय, भुगतान, गवर्नेंस और परिणाम दर्ज करने के लिए क्यों करते हैं।
DecAIHub प्रोजेक्ट कार्ड में यह कहाँ दिखता है
DecAIHub प्रोजेक्ट कार्ड में EVM इनमें दिखती है:
- Type —
EVMदर्शाता है कि प्रोजेक्ट EVM-संगत चेन पर काम करता है। यह पाठक को बताता है कि प्रोजेक्ट Solidity-आधारित स्मार्ट कॉन्ट्रैक्ट और मानक Ethereum टूल का उपयोग करता है। - Main chain — विशिष्ट EVM-संगत चेन सूचीबद्ध होती है (Ethereum, Polygon, Avalanche, Arbitrum, Base, BNB Smart Chain आदि)। ये सभी EVM निष्पादन साझा करती हैं।
- Token standard — EVM-संगत चेन Ethereum के टोकन मानकों का उपयोग करती हैं। ERC-20 (फंजिबल टोकन), ERC-721 (NFT) और ERC-1155 (मल्टी-टोकन) सबसे आम हैं। ये मानक EVM इकोसिस्टम के लिए विशिष्ट हैं।
- Smart contracts — यदि प्रोजेक्ट के स्मार्ट कॉन्ट्रैक्ट ब्लॉक एक्सप्लोरर पर सत्यापित हैं, तो पाठक उनकी जाँच कर सकता है। EVM कॉन्ट्रैक्ट Solidity (या Vyper) में लिखे और EVM बाइटकोड में संकलित होते हैं।
Type: EVM वर्गीकरण प्रोजेक्ट के टूल और इकोसिस्टम के बारे में उपयोगी संदर्भ देता है, लेकिन अपने आप में यह प्रोजेक्ट के AI की गुणवत्ता या उसके टोकन की आवश्यकता के बारे में कुछ नहीं कहता।
केवल EVM संगतता क्या साबित नहीं करती
- EVM संगतता AI क्षमता साबित नहीं करती। EVM स्मार्ट कॉन्ट्रैक्ट चलाती है; AI मॉडल GPU पर चलते हैं। प्रोजेक्ट का EVM चेन पर होना इस बारे में कुछ नहीं कहता कि उसके पास वास्तविक AI घटक है या नहीं।
- EVM चेन पर डिप्लॉय होने से प्रोजेक्ट अद्वितीय नहीं बनता। वही कॉन्ट्रैक्ट दर्जनों EVM-संगत चेनों पर डिप्लॉय किया जा सकता है। डिप्लॉयमेंट का चयन इन्फ्रास्ट्रक्चर निर्णय है, विभेदक नहीं।
- सत्यापित स्मार्ट कॉन्ट्रैक्ट यह साबित नहीं करते कि ऑफ-चेन घटक काम करता है। प्रोजेक्ट के पास साफ़, ऑडिट किया गया ऑन-चेन कोड हो सकता है और फिर भी उसके पीछे कोई काम करने वाली AI पाइपलाइन न हो। ऑन-चेन और ऑफ-चेन घटकों का मूल्यांकन अलग-अलग करना होगा।
- EVM इकोसिस्टम के टूल साक्ष्य की आवश्यकता कम नहीं करते। MetaMask समर्थन, ब्लॉक एक्सप्लोरर लिस्टिंग और ERC-20 टोकन होना मानक इन्फ्रास्ट्रक्चर है — यह तकनीक, नवाचार या गुणवत्ता का साक्ष्य नहीं है।
- EVM निष्पादन AI निष्पादन नहीं है। EVM के अंदर न्यूरल नेटवर्क चलाना किसी भी गैर-तुच्छ मॉडल के लिए निषेधात्मक रूप से महँगा है। जब कोई प्रोजेक्ट EVM चेन पर "on-chain AI" कहता है, तो जाँचें कि वास्तव में ऑन-चेन क्या चलता है और ऑफ-चेन क्या।
भ्रमित न हों
- Ethereum — Ethereum एक विशिष्ट ब्लॉकचेन नेटवर्क है। EVM वह वर्चुअल मशीन है जिसे Ethereum (और कई अन्य चेन) उपयोग करते हैं। "EVM" निष्पादन इंजन को संदर्भित करता है; "Ethereum" नेटवर्क, उसके वैलिडेटरों और उसकी स्थिति को।
- Non-EVM ब्लॉकचेन — Solana, Cosmos चेन और Bittensor जैसे ब्लॉकचेन अलग वर्चुअल मशीनों (SVM, CosmWasm, कस्टम रनटाइम) का उपयोग करते हैं। वे EVM-संगत नहीं हैं, यानी Solidity कॉन्ट्रैक्ट और EVM टूल उन पर मूल रूप से काम नहीं करते।
- स्मार्ट कॉन्ट्रैक्ट — स्मार्ट कॉन्ट्रैक्ट EVM पर चलने वाला प्रोग्राम है। EVM इंजन है; स्मार्ट कॉन्ट्रैक्ट वह कोड जिसे वह निष्पादित करती है। स्मार्ट कॉन्ट्रैक्ट non-EVM चेनों पर भी मौजूद हैं, अलग भाषाओं और रनटाइम के साथ।
- Solidity — Solidity EVM स्मार्ट कॉन्ट्रैक्ट की सबसे लोकप्रिय प्रोग्रामिंग भाषा है, लेकिन वह स्वयं EVM नहीं है। Vyper एक और EVM-संगत भाषा है। EVM संकलित बाइटकोड निष्पादित करती है, चाहे वह किसी भी सोर्स भाषा से बना हो।
अक्सर पूछे जाने वाले प्रश्न
"EVM-compatible" का क्या अर्थ है?
कोई ब्लॉकचेन EVM-compatible है यदि वह Ethereum के समान opcode सेट और निष्पादन नियमों से EVM बाइटकोड — Solidity स्मार्ट कॉन्ट्रैक्ट का संकलित रूप — निष्पादित कर सकता है। व्यवहार में इसका अर्थ है कि डेवलपर वही कॉन्ट्रैक्ट कई EVM-संगत चेनों पर डिप्लॉय कर सकते हैं, वही टूल (Hardhat, Foundry, MetaMask) उपयोग कर सकते हैं और वही टोकन मानकों (ERC-20, ERC-721) पर भरोसा कर सकते हैं। EVM-संगत चेनों के उदाहरणों में Polygon, Avalanche C-Chain, BNB Smart Chain, Arbitrum और Base शामिल हैं।
क्या AI मॉडल EVM के अंदर चल सकते हैं?
सिद्धांत में कोई भी गणना EVM opcodes के रूप में व्यक्त की जा सकती है। व्यवहार में गैर-तुच्छ AI मॉडलों को EVM के अंदर चलाना निषेधात्मक रूप से महँगा है। EVM में native floating-point समर्थन नहीं है, प्रति ब्लॉक सख्त गैस सीमाएँ हैं और जटिल ऑपरेशनों के लिए उच्च गैस लागत है। छोटे से न्यूरल नेटवर्क का भी एक फ़ॉरवर्ड पास गैस में इतना खर्च करेगा कि कोई भी व्यावहारिक एप्लिकेशन उसे उचित नहीं ठहरा सकती। इसीलिए AI-संबंधी क्रिप्टो प्रोजेक्ट मॉडल ऑफ-चेन चलाते हैं और EVM का उपयोग केवल समन्वय, भुगतान और सत्यापन लॉजिक के लिए करते हैं।
इतने सारे ब्लॉकचेन EVM क्यों अपनाते हैं?
नेटवर्क प्रभाव। Ethereum पहला प्रमुख स्मार्ट कॉन्ट्रैक्ट प्लेटफ़ॉर्म था, और उसका डेवलपर इकोसिस्टम — Solidity ज्ञान, टूल, ऑडिट विशेषज्ञता, वॉलेट समर्थन और टोकन मानक — वर्षों में बढ़ा। EVM अपनाने वाला नया ब्लॉकचेन तुरंत इस पूरे इकोसिस्टम तक पहुँच पा जाता है। डेवलपरों को नई भाषा सीखने की जरूरत नहीं, प्रोजेक्ट मौजूदा कॉन्ट्रैक्ट डिप्लॉय कर सकते हैं, और उपयोगकर्ता परिचित वॉलेट से जुड़ सकते हैं। प्रतिस्पर्धी इकोसिस्टम शून्य से बनाना कहीं अधिक महँगा और अनिश्चित है। EVM संगतता अपनाव का व्यावहारिक शॉर्टकट है।
EVM-compatible और EVM-equivalent में क्या अंतर है?
EVM-compatible का अर्थ है कि चेन EVM बाइटकोड चला सकती है और उन्हीं opcodes का समर्थन करती है, लेकिन व्यवहार में छोटे अंतर हो सकते हैं (उदा., गैस लागत, precompiles या edge-case opcode व्यवहार)। EVM-equivalent का अर्थ है कि चेन Ethereum के EVM व्यवहार को opcode स्तर पर दोहराती है — हर ऑपरेशन वही परिणाम देता है जो Ethereum पर देता। EVM equivalence अधिक मजबूत दावा है: इसका अर्थ है कि सटीक EVM व्यवहार पर निर्भर जटिल कॉन्ट्रैक्ट और टूल भी बिना संशोधन के काम करने चाहिए। उदाहरण के लिए Polygon zkEVM का लक्ष्य EVM equivalence है।
बाहरी संदर्भ
- Ethereum.org — Ethereum Virtual Machine — EVM आर्किटेक्चर, opcodes और निष्पादन मॉडल की व्याख्या करने वाला आधिकारिक Ethereum Foundation दस्तावेज़ीकरण।
- Ethereum Yellow Paper — Ethereum प्रोटोकॉल का औपचारिक विनिर्देश, जिसमें पूर्ण EVM opcode सेट और निष्पादन सीमैंटिक्स शामिल हैं।
- EVM Codes — गैस लागतों, विवरणों और बाइटकोड निष्पादन परीक्षण के playground के साथ EVM opcodes का इंटरैक्टिव संदर्भ।
No comments to display
No comments to display