---
title: "Solana EVM 簡介"
description: "Solana EVM 的優勢、取捨與入門方式"
---

# Solana EVM 簡介

虛擬機器是虛擬化運算資源的建構區塊，具備與電腦幾乎相同的所有功能，包括執行應用程式與作業系統。虛擬機器這個概念並不新穎，這項技術廣泛應用於各種技術生態系統中。

最大的智能合約開發平台 Ethereum 使用 [Ethereum Virtual Machine（EVM）](https://www.alchemy.com/overviews/what-is-the-ethereum-virtual-machine-evm)在全球分散式節點網路上執行智能合約。由於有大量開發者在建構 Ethereum 應用程式與 EVM 相容區塊鏈，也有許多人在使用 Ethereum，因此建立 Solana EVM 讓 Ethereum 智能合約與 Solana 這條以 rust 為基礎的區塊鏈相容，是有其優勢的。

本文將說明 Solana EVM、其優點與限制，以及目前的使用情況。

## **什麼是 Solana EVM？**

Solana EVM 是一個軟體平台，讓 Ethereum 區塊鏈網路上的[去中心化應用程式](https://www.alchemy.com/dapps/top/defi-dapps)與交易也能由 Solana 區塊鏈處理。

EVM 是一個抽象層，將實體機器（節點）與智能合約程式碼分開。由於所有 Ethereum 節點都運行某個 EVM 實例，它們共同形成一個通用網路，也就是一台全球分散式電腦。

Ethereum 擁有最成熟的 Web3 社群之一，涵蓋最受歡迎的區塊鏈錢包、DeFi 平台、開發者工具與 NFT 專案，但也存在明顯的瓶頸。Ethereum 快速的成長，使得龐大的使用者與開發者群體面臨交易成本高、吞吐量低的問題。

相較之下，[Solana](https://www.alchemy.com/solana?a=acbb6b517f) 為終端使用者提供快速的交易速度與低廉的交易費用。在 Solana EVM 出現之前，由於 [Solidity 與 Rust 程式語言](https://www.alchemy.com/overviews/web3-programming-languages)以及其他[開發者工具](https://www.alchemy.com/overviews/solana-developer-tools)的差異，將 Ethereum 專案移植到 Solana 網路並不實際。

Solana EVM 讓 Ethereum 開發者能夠運用他們對 [Solidity](https://www.alchemy.com/overviews/solidity)、開發者工具與現有程式碼庫的熟悉度與經驗，在 Solana 上擴展他們的應用程式。

## **Solana EVM 相容嗎？**

**是的，Solana 區塊鏈網路透過像 Neon Labs 打造的 EVM 這類 Solana EVM，做到與 EVM 相容。**

EVM 相容性讓以 Ethereum 為基礎的智能合約與專案能夠部署到相容的區塊鏈上。整體而言，區塊鏈之間的互通性是目前產業正努力解決的最大問題之一，而 EVM 相容性是朝正確方向邁出的一步。

隨著使用者基數快速成長、應用程式數量增加，在 Ethereum 網路上維持低成本與高交易速度變得難以為繼。其他無需許可的區塊鏈注意到這些日益嚴重的問題，因此提供能支援更快交易速度與更低 gas 費用的基礎設施作為回應。

開發者並未設計出全新的智能合約實作方式，而是直接模擬 Ethereum 網路的部分功能。這樣做節省了時間、降低了知識轉移成本，也減少了開發需求。許多新的區塊鏈平台現在都支援 EVM，以吸引 [Ethereum 生態系](https://www.alchemy.com/dapps/ecosystem/ethereum)中的使用者、人才與創新能量。

### **Solana EVM 有哪些優點？**

雖然目前仍處於早期階段，使用 Solana EVM 的優點包括高效的擴展性、更容易接觸[Solana 生態系](https://www.alchemy.com/dapps/ecosystem/solana)、能夠跨鏈使用互補工具、輕鬆移植智能合約，以及觸及更多使用者。

#### **1. 高效的擴展性**

由於 Solana 網路具備平行處理能力（Sealevel）以及像 Proof-of-History 這樣能達成 400 毫秒區塊時間的創新技術，web3 開發者能享有低 gas 費用與高吞吐量。

#### **2. 接觸 Solana 生態系**

Ethereum 開發者與創作者可透過 Solana EVM 遷移或擴展他們的應用程式，藉此接觸 Solana 的開發者、DeFi 與 NFT 生態系。

#### **3. 使用互補的工具組**

EVM 開發者無需學習新工具，就能無縫繼續使用他們已熟悉的工具，例如 [MetaMask](https://www.alchemy.com/dapps/metamask)、Truffle 與 Waffle。

#### 4. 輕鬆調整智能合約

現有的 Ethereum 應用程式可以移植到 Solana Programs（即 Solana 智能合約），而底層智能合約無需任何重新配置。

#### **5. 讓存取更普及**

使用 Solana EVM 意味著 Ethereum 生態系的使用者、人才與創新能量能夠隨之延伸，讓專案更容易同時適應兩條區塊鏈。

## **哪些公司正在建構 Solana EVM？**

**Solana 上第一個 EVM 由 Neon Labs 打造，它結合了 Ethereum 基礎設施的優點與 Solana 的可擴展性及流動性。**

### **Neon labs**

Neon EVM 是一個跨鏈解決方案，讓 dApp 開發者能運用 Solana 的優勢來擴展服務，提供如套利或高頻交易等新產品，擴大使用者群，並在可能的情況下降低成本，包括 gas 費用。

**Neon EVM** 讓 Ethereum 交易能在 Solana 上處理，充分運用 Solana 原生的功能，包括平行執行交易的能力。為了讓智能合約能夠平行執行，Neon EVM 確保每個合約將其資料保存在自己的 Solana 儲存空間中，並讓用於支付 Neon 交易的帳戶餘額保持更新。

Neon EVM 是以 Solana 區塊鏈上的智能合約形式運作。這意味著該合約可以與 Solana 上的其他智能合約互動並呼叫它們，例如 SPL tokens。Neon EVM 能夠存取儲存在 Solana 帳戶中的資料，Neon EVM 中每個類似 Ethereum 的帳戶都會儲存在對應的 Solana 帳戶中。

Neon Labs 也開發了互補工具，供開發者與創作者最大化其 Solana EVM 的使用體驗。

#### **什麼是 neon lab 的 ERC-20/SPL wrapper？**

**ERC-20/SPL wrapper 是為 SPL tokens 實作的 ERC-20 介面，確保 Solana 應用程式能與 Neon EVM 合約互動。**

原始的 ERC-20 tokens 會被包裝成 SPL tokens，以便能與 [Solana 錢包](https://www.alchemy.com/overviews/solana-wallets)及程式互通運作。使用該 wrapper，也能透過像 MetaMask 這樣的 Ethereum 錢包轉移 SOL/SPL tokens。

#### **如何開始使用 neon EVM**

**開始使用 Neon EVM 最快的方式，是先安裝 MetaMask，接著使用 Chainlist 或手動方式，將你的 MetaMask 錢包連接到 NeonEVM devnet**。

以下是如何在 MetaMask 中連接新鏈的方法：

- **Neon EVM testnet RPC server address:**（已不再提供）
- **ChainID**: 245022926.
- **Faucet**: https://neonfaucet.org/

有興趣的開發者可以透過[NeonEVM 文件](https://docs.neon-labs.org/docs/developing/getting_started)了解更多關於 Neon EVM 的資訊，一旦進入 [Solana devnet](https://www.alchemy.com/overviews/solana-devnet)後，開發者可以使用 [NeonFaucet](https://neonfaucet.org/) 網站或 NeonFaucet API 申請測試用的 NEON tokens。

當你準備將 Solana 應用程式上線到正式環境時，可升級為像 Alchemy 這樣[可靠的 Solana RPC 供應商](https://www.alchemy.com/overviews/solana-rpc)，以獲得順暢的開發者體驗。

## **結論**

Solana EVM 結合了 Ethereum 的優點與 Solana 區塊鏈網路的速度及效率。

這種對 EVM 相容性的重視，將有助於推動下一代應用程式走向多鏈發展，帶來網路效應，並隨著使用者投入轉向可擴展的技術，進一步提升整體使用者體驗。

若要開始在 Alchemy 上使用 Solana，請前往 Solana API 文件，了解 [Alchemy 支援哪些 Solana methods](https://www.alchemy.com/docs/reference/solana-api-quickstart)。
