Sự phát triển của các Virtual Machine (VM) trên Rollup
![Avatar](/_next/image?url=https%3A%2F%2Ffiles.amberblocks.com%2Fthumbnail%2Fchnbzaa92ook5tnj%2Fchannel%2Fchnbzaa92ook5tnj%2Ff8xggzaan1h8ak0kz9cjhlnzcffpbk77%2Flogocoin98.png&w=3840&q=20)
![vm trên rollup](https://files.amberblocks.com/thumbnail/chnbzaa92ook5tnj/posts/pzmixi8oflw9u8qn/f0arqa6g4j5bqrhfgtovjzat4e0e9ctn/evolution-of-vm.jpg)
Virtual Machine (VM) là gì?
Virtual Machine (VM) trong blockchain là môi trường biệt lập, mô phỏng máy tính vật lý cho phép thực thi các chương trình và chuyển đổi trạng thái một cách nhất quán, an toàn trên tất cả các node trong mạng.
Hiện tại, Ethereum VM (EVM) là VM nổi bật nhất trong thị trường Crypto. Thiết kế EVM gồm 3 thành phần chính:
- World State: Nơi lưu trữ trạng thái của tất cả các tài khoản và smart contract trên Ethereum.
- Virtual ROM: Bộ nhớ chỉ đọc, nó lưu trữ EVM Bytecode, cung cấp Logic thực thi cho EVM.
- Machine State: Nơi thực hiện tính toán và chuyển đổi trạng thái, nó bao gồm các thành khác khác được liên kết chặt chẽ với World State và Virtual ROM đảm bảo quá trình chuyển đổi trạng thái được thực hiện chính xác.
![evm](https://files.amberblocks.com/media/chnbzaa92ook5tnj/posts/pzmixi8oflw9u8qn/fk7gmw09w73otglu7ijoyn919z8d8cpl/evm.png)
Quá trình thực thi và chuyển đổi trạng thái của EVM có thể được miêu tả như sau: Trạng thái hiện tại sẽ được kết hợp với các dữ liệu đầu vào dưới dạng các giao dịch và tạo ra một đầu ra xác định (trạng thái mới).
Trong quá trình thực hiện giao dịch, Machine State đọc bytecode từ Virtual ROM và diễn giải nó để thực hiện các hoạt động được chỉ định.
![thực thi](https://files.amberblocks.com/media/chnbzaa92ook5tnj/posts/pzmixi8oflw9u8qn/fzjzmxqgxm0wx4emg678y6ngppoa4y6h/state-transition.png)
Ngoài EVM, thị trường còn nhiều VM khác nhau, mỗi VM được thiết kế để tối ưu hóa cho các khía cạnh nhau. Ví dụ, Solana VM được thiết kế để thực thi tốt hơn, Starknet VM được thiết kế để tạo ra các bằng chứng Stark dễ dàng và hiệu quả hơn.
Tình trạng phát triển của các VM trên Rollup
Cơ bản, Rollup là đặt một Blockchain lên một Blockchain khác, trọng tâm của Rollup là thực thi (Execution), trong khi kế thừa sự đồng thuận (Consensus) và tính sẵn có của dữ liệu (Data Availability) từ một blockchain khác. Hiện tại, chúng ta có thể chia thị trường Rollup thành nhóm chính;
- Các Rollup sử dụng VM tương thích EVM, trong phần còn lại của bài viết sẽ gọi ngắn gọn là EVM Rollup.
- Các Rollup sử dụng VM tuỳ chỉnh không tương thích EVM, trong phần còn lại của bài viết sẽ gọi ngắn gọn là non-EVM Rollup.
Xem thêm: Rollup là gì? Cách hoạt động của Rollup.
Sự thống trị của các EVM Rollup
Hiện tại, các EVM Rollup thể hiện sự thống trị gần như tuyệt đối, cả về số lượng và TVL. Top 10 Rollup hàng đầu trên thị trường (sắp xếp theo TVL, không bao gồm vốn hoá từ native token) là EVM Rollup, chiếm hơn 96% tổng TVL của Rollup.
![top rollup](https://files.amberblocks.com/media/chnbzaa92ook5tnj/posts/pzmixi8oflw9u8qn/fefl11xc1fhiaby0vzml8m66bwiap052/top-rollup.png)
Theo đó, hai cách tiếp cận phổ biến để xây dựng các EVM Rollup bao gồm:
- Fraud Proof + EVM: Cách tiếp cận này cung cấp mức độ tương thích cao hơn với EVM (có thể gọi là tương đương EVM). Ví dụ: so với Ethereum VM (EVM), Arbitrum VM chỉ sửa đổi 6 Opcodes, không hỗ trợ 1 Opcodes, hỗ trợ tất cả Precompiled Contracts.
- Validity Proof + EVM (zkEVM): Hiện tại có hai cách xây dựng zkEVM, cách đầu tiên là xây dựng logic thực thi EVM bằng cách viết các circuit tùy chỉnh, cách thứ hai là xây dựng logic thực thi EVM trên một zkVM. Dù là cách tiếp cận nào, zkEVM đang cung cấp mức độ tương thích EVM thấp hơn khi so với cách tiếp cận đề cập ở trên. Ví dụ: so với Ethereum VM (EVM), Scroll VM sửa đổi 5 Opcode, không hỗ trợ 7 Opcode, sửa đổi 2 Precompiled Contracts, không hỗ trợ 3 Precompiled Contracts.
Lý do chính mà hầu hết các Rollup mục đích chung quyết định xây dựng VM của mình tương thích EVM vì nó cho phép họ “đứng trên vai người khổng lồ” Ethereum, một số lợi ích tiêu biểu bao gồm:
- Môi trường thân thiện với nhà phát triển Solidity: Cho phép các nhà phát triển Solidity sử dụng lại các kỹ năng, kiến thức, bộ công cụ hiện có.
- Dễ dàng chuyển đổi và tương thích: Các ứng dụng và smart contract được xây dựng trên Ethereum có thể di chuyển dễ dàng sang Rollup mà không cần sửa đổi nhiều.
- Khả năng tương tác và hiệu ứng mạng: Khả năng tương thích cho phép tương tác dễ dàng giữa một mạng lưới các EVM Rollup và Ethereum. Sự kết nối này thúc đẩy một hệ sinh thái liên kết liền mạch, tạo ra hiệu ứng mạng tích cực cho cả hệ sinh thái.
- Tận dụng Hệ sinh thái Ethereum: Hưởng lợi từ cộng đồng nhà phát triển, thư viện và công cụ của Ethereum. Sự tích hợp này đẩy nhanh chu kỳ phát triển hệ sinh thái Rollup.
Ngày nay, việc phát triển các Rollup tương thích với EVM ngày càng trở nên dễ dàng hơn nhờ sự xuất hiện của các Rollup SDK do các dự án Rollup lớn cung cấp. Các SDK này cung cấp các công cụ và khung toàn diện, đơn giản hóa việc tạo ra các EVM Rollup tùy chỉnh.
Hơn nữa, sự gia tăng của các giải pháp RaaS (Rollup as a Service) no-code tiếp tục khuếch đại xu hướng trên vì nó tiếp tục hạ thấp rào cản kỹ thuật, cho phép bất kỳ ai xây dựng và triển khai EVM Rollup của riêng họ mà không cần chuyên môn kỹ thuật quá cao.
Tuy nhiên, sự ra mắt của một số EVM Rollup có mục đích chung gầy đây như zkSync, Taiko và Blast đã phản ảnh thị trường đang không đánh giá quá cao hướng tiếp cận này.
Điều này thể hiện qua vốn hoá thị trường và FDV (Fully Diluted Valuation) của các dự án trên đang ở mức tương đối thấp khi so sánh tương quan với các đợt ra mắt của các Rollup trước đó.
Sự xuất hiện của các non-EVM Rollup
Bên cạnh các EVM Rollup, thị trường còn một nhóm các non-EVM Rollup với thị phần tương đối nhỏ, phần lớn các dự án trong phân khúc này chưa hoạt động trên mainnet, nổi bật nhất có thể kể đến Starknet, hoạt động với TVL gần 300 triệu USD.
![starknet](https://files.amberblocks.com/media/chnbzaa92ook5tnj/posts/pzmixi8oflw9u8qn/fj5redtm6nvjn9wuvf94y6ypwdvikghw/starknet.png)
Các dự án Rollup quyết định xây dựng các VM tùy chỉnh không tương thích EVM được thúc đẩy bởi hai yếu tố chính:
- Xây dựng các lợi thế cạnh độc đáo của riêng mình.
- Thị trường ít cạnh tranh hơn.
Một yếu tố mà EVM Rollup thường bị khai thác là những hạn chế về mặt hiệu suất. Các non-EVM Rollup thường tận dụng điểm này để xây dựng lợi thế cạnh tranh cho dự án của mình, “bằng cách tùy chỉnh hoặc xây dựng mới hoàn toàn, chúng tôi tạo một VM tốt hơn EVM”.
Nhìn chung, các non-EVM Rollup đang nhận được nhiều sự quan tâm và đánh giá cao hơn từ cộng đồng. Xu hướng này thể hiện rõ ở thị trường sơ cấp, nơi một số dự án non-EVM đã huy động thành công số vốn khá lớn, ví dụ;
- MegaETH huy động được $20M ở vòng Seed.
- Eclipse huy động được $50M ở vòng Series A.
Mặc dù thị trường Rollup đã có nhiều nhóm đã và đang bắt đầu xây dựng các non-EVM Rollup. Tuy nhiên, số lượng các dự án hoạt động trên mainnet rất ít, phần lớn trong giai đoạn đang phát triển.
Xu hướng phát triển của các non-EVM Rollup
Trong 18 tháng tới, các non-EVM Rollup nổi bật sẽ lần lượt ra mắt trên mainnet.
![non evm rollup](https://files.amberblocks.com/media/chnbzaa92ook5tnj/posts/pzmixi8oflw9u8qn/fmpgsvtozjdqi7kt5jvrcaphz18q5wp7/top-non-evm-rollup.png)
Mặc dù khác nhau về công nghệ cơ bản, hầu hết các non-EVM Rollup đều thuộc một trong các cách tiếp cận được trình bài phía dưới.
alt-VM
Các dự án triển khai theo hướng này sẽ xây dựng một VM hoàn toàn mới hoặc tùy chỉnh VM của các dự án Blockchain Layer 1 nổi bật trên thị trường và triển khai lại chúng dưới dạng các Rollup, ba dự án nổi bật theo phát triển này là Fuel, Movement và Eclipse:
- Fuel: Xây dựng một VM và một ngôn ngữ lập trình hoàn toàn mới gọi là FuelVM và Sway, Fuel sử dụng mô hình UTXO và cung cấp tính năng native AA (account abstraction).
- Movement: Tùy chỉnh thiết kế Move VM và ngôn ngữ lập trình Move để xây dựng một ZK ROllup gọi mà M2.
- Eclipse: Eclipse tùy chỉnh thiết kế của SVM và kết hợp công nghệ từ RISC Zero để xây dựng một ZK Rollup.
Multi-VM
Cách tiếp cận này được sử dụng bởi Arbitrum, họ bổ sung thêm một VM thứ hai, hoạt động song song với EVM, nó được Arbitrum gọi là EVM+.
Cách tiếp cận này sẽ phù hợp với các EVM Rollup đang hoạt động như Arbitrum. Multi-VM cho phép các EVM Rollup giữ lại lợi thế cạnh tranh từ EVM, đồng thời, khám phá những khả năng mới của non-EVM.
![arbitrum stylus](https://files.amberblocks.com/media/chnbzaa92ook5tnj/posts/pzmixi8oflw9u8qn/f44wktpatnbf4022xs95lublxx5ue1ik/arbitrum-stylus.png)
zkVM
Thách thức chỉnh đối với Rollup chủ yếu xoay quanh vấn đề khả năng chứng minh kết quả thực thi là đáng tin cậy. Điều này đặc biệt khó trong trường hợp của các Validity Rollup, khi nó yêu cầu viết các chương trình có thể chứng minh được (Provable Program), cách dễ dàng là phát triển một VM tùy chỉnh với ngôn ngữ lập trình chuyên dụng. Dự án nổi bật bao gồm;
- Starknet với Cairo VM và ngôn ngữ lập trình Cairo.
- Aztec với Aztec VM và ngôn ngữ lập trình Noir.
Blended-VM
Blended-VM kết hợp nhiều VM đơn lẻ thành một môi trường thực thi thống nhất. Điểm nổi bật của cách tiếp cận này là nó cho phép trạng thái thống nhất, thay vì các trạng thái riêng biệt như Multi-VM.
Nhà phát triển ứng dụng trên Blended-VM có thể kết hợp các mô hình khác nhau để nâng cao khả năng tùy chỉnh trong thiết kế ứng dụng. Dự án nổi bật tiếp cận theo hướng này là Fluent, nó kết hợp WASM, EVM và SVM thành một VM thống nhất.
![blended execution](https://files.amberblocks.com/media/chnbzaa92ook5tnj/posts/pzmixi8oflw9u8qn/ffkcqyq9z1it0r4pgswztfm0ne4iy9n4/blended-vm.jpeg)
EVM Optimized
Thay vì xây dựng một VM hoàn toàn mới, các dự án tiếp cận theo hướng này sẽ tối ưu hoá lại thiết EVM cho phép truy cập, quản lý trạng thái, tính toán hiệu quả hơn từ đó nâng cao hiệu suất tổng thể của VM. Dự án tiêu biểu tiếp cận theo hướng này là MegaETH, RISE Chain.
Tổng kết
Khía cạnh thực thi được coi là một trong những thành phần quan trọng nhất của Rollup. Trong vòng 2 năm tới, chúng ta sẽ thấy sự xuất hiện của các mô hình VM mới ngoài EVM hoạt động trên mainnet. Những tiến bộ này sẽ cải thiện đáng kể hiệu suất VM so với hiện tại.