[A4] - Caduceus Metaverse Protocol và sự phát triển của Máy ảo

Các ‘thành phần’ không thể thiếu cho VM

Trong thế giới của blockchain, các máy ảo chịu trách nhiệm chính trong việc chạy các hợp đồng thông minh và cung cấp môi trường hoạt động cho chúng. Mã thực thi của các hợp đồng thông minh được phân phối và lưu trữ trên máy tính của mỗi nút, giúp giải quyết vấn đề về các hướng dẫn tương tác (thực thi phi tập trung). Máy ảo blockchain có tám đặc điểm chính:

  1. Mã bảo mật chạy một hộp cát, nếu xảy ra lỗi, tất cả các thay đổi có thể được khôi phục
  2. Kết quả được xác nhận và không có khả năng mơ hồ. Khi logic này được thực thi trên tất cả các nút của chuỗi khối, kết quả do đó nhất quán
  3. Hiệu quả cao – sử dụng trình biên dịch và trình thông dịch để cải thiện hiệu quả thực thi
  4. Khả năng mở rộng mạnh mẽ – giảm đáng kể ngưỡng ứng dụng kỹ thuật
  5. Các tính năng kỹ thuật cụ thể – máy ảo có thể xử lý các hoạt động mã hóa, chẳng hạn như hỗ trợ các thuật toán đường cong elliptic, truy cập trạng thái giao dịch và chuỗi, lấy blockhash, nội dung liên quan đến tx, v.v.
  6. Tính đơn giản – mã triển khai và cấu trúc đơn giản
  7. Khung – thiết kế một mô hình chuyển quyền và mô hình ngữ pháp chính xác
  8. Tiết kiệm không gian – các thành phần máy ảo nhỏ gọn và dễ dàng tích hợp vào các dịch vụ blockchain

Ethereum là nền tảng nhà phát triển trưởng thành nhất và ứng dụng phi tập trung trong không gian blockchain. EVM tương ứng với hệ sinh thái Ethereum có bộ tính năng và bộ công cụ hoàn thiện nhất. Do đó, từ quan điểm phát triển DApp, chúng tôi đã lựa chọn áp dụng chiến lược EVM.

Máy ảo Ethereum

EVM là một máy ảo nhẹ được thiết kế để chạy các hợp đồng thông minh trên mạng Ethereum. Là một máy ảo, chức năng của EVM hơi khác so với các hệ điều hành truyền thống (chẳng hạn như Windows).

Nói một cách tổng quát, VM là một trừu tượng cấp cao mô phỏng một máy vật lý dựa trên hệ điều hành gốc. Chúng cho phép cùng một nền tảng chạy trên nhiều kiến ​​trúc phần cứng và hệ điều hành khác nhau, điều này làm cho VM rất phù hợp với các mạng phân tán như Ethereum.

Ngoài vai trò là một máy ảo, EVM còn là một ‘máy xếp chồng’ và ‘máy trạng thái’. ‘Máy trạng thái’ là một máy có thể đọc các đầu vào và biến chúng thành một trạng thái mới dựa trên các đầu vào đó. Máy ảo dựa trên ngăn xếp là một máy ảo tổ chức cấu trúc bộ nhớ thành một ngăn xếp và truy cập nó như một ngăn xếp.

Ở cấp độ vĩ mô, EVM bao gồm trạng thái thế giới, trạng thái máy và ROM ảo. Trạng thái thế giới là nơi lưu trữ tất cả các tài khoản trên mạng. Trạng thái máy bao gồm bộ đếm chương trình, khí có sẵn, ngăn xếp và bộ nhớ. Bộ nhớ ảo chỉ đọc (ROM) là một ‘mã byte EVM’ bất biến, chỉ EVM mới có thể hiểu được. Trong toàn bộ hệ sinh thái blockchain, EVM ở cấp độ hợp đồng, với các lợi thế về khả năng mở rộng, tính sẵn sàng và hiệu suất cao, cho phép các hợp đồng thông minh chạy trơn tru trong đó.

(Sơ đồ hệ sinh thái chuỗi khối)

(Biểu đồ luồng kinh doanh EVM)

Điều quan trọng cần hiểu là mã chạy bên trong EVM không thể có bất kỳ kết nối nào với bên ngoài. Điều này đã được thiết kế vì lý do an toàn, với các hạn chế sau:

  • Mỗi bước tính toán trong quá trình thực hiện chương trình phải được trả trước để ngăn chặn các cuộc tấn công Từ chối Dịch vụ (DoS, Denial-of-Service)
  • Các chương trình chỉ có thể tương tác bằng cách truyền một mảng byte có độ dài tùy ý; họ không thể truy cập trạng thái của nhau
  • Việc thực thi chương trình là hộp cát; chương trình EVM có thể truy cập và sửa đổi trạng thái bên trong của chính nó và có thể kích hoạt việc thực thi các chương trình EVM khác, nhưng không thể làm bất kỳ điều gì khác
  • Việc thực thi chương trình là hoàn toàn xác định và đối với bất kỳ hiện thực nhất quán nào, việc bắt đầu từ cùng một trạng thái chắc chắn sẽ dẫn đến chuyển đổi trạng thái giống nhau

Khi xây dựng nền tảng hợp đồng thông minh mới, khả năng tương thích với EVM có thể đóng một vai trò trong việc mở rộng hệ sinh thái DApp và tương tác với các dự án Ethereum khác. Ví dụ: nó có thể đáp ứng các yêu cầu nhất quán của nhiều máy ảo nhanh hơn và thực hiện các cuộc gọi giữa các máy ảo. Điều này dẫn đến câu hỏi tiếp theo của chúng tôi.

Những lợi thế cụ thể của EVM là gì?

Đầu tiên là Turing Completeness. Tính đầy đủ của Turing là một khái niệm chỉ một tập hợp các quy tắc thao tác dữ liệu. Các quy tắc thao tác dữ liệu có thể là một ngôn ngữ lập trình hoặc một tập hợp các hướng dẫn được thực hiện trong máy tính. Khi bộ quy tắc này có thể thực hiện tất cả các chức năng trong mô hình máy Turing, nó được cho là có tính hoàn chỉnh của Turing.

Điều đáng chú ý là hợp đồng thông minh trong Blockchain 2.0 – bao gồm cả máy ảo mà nó chạy và ngôn ngữ viết – là Turing hoàn chỉnh. Trong khi ở trong blockchain 1.0, các giao dịch sổ cái của Bitcoin – được thực hiện trong các tập lệnh và ngôn ngữ viết lệnh của nó, không phải là Turing hoàn chỉnh.

Từ quan điểm chức năng, EVM tương đối có thể mở rộng và nó có thể giải quyết tất cả các vấn đề mà bạn đưa ra. Và vì tính chất không thể giả mạo của blockchain, nó cũng đáng tin cậy về mặt kết quả hoạt động. Mọi người đều phải hành động theo cùng một logic hoặc nguyên tắc và kết quả của hoạt động cũng sẽ được gửi đến blockchain để lưu trữ vĩnh viễn.

Ngưỡng học của ngôn ngữ hợp đồng là một yếu tố khác. Là một ngôn ngữ cấp cao cho các hợp đồng thông minh, Solidity chạy trên Máy ảo Ethereum (EVM). Cấu trúc chính của nó là một hợp đồng, giống như một lớp trong ngôn ngữ hướng đối tượng.

Mục đích thiết kế của Solidity là cung cấp một logic thống nhất cho blockchain, để cùng một mã có thể chạy trên mỗi nút của blockchain và với sự trợ giúp của các thuật toán đồng thuận, dữ liệu của blockchain có thể được thay đổi theo một cách thống nhất để đạt được kết quả nhất quán trên toàn cầu.

Có thể cho rằng, Solidity hiện là lựa chọn tốt nhất để phát triển các dự án hợp đồng thông minh mới. Nó cung cấp một hệ sinh thái mạnh mẽ gồm các công cụ, tài liệu và ví dụ. Ngày nay, nhiều hợp đồng thông minh và ứng dụng phi tập trung sử dụng Solidity để xây dựng và triển khai chuỗi khối Ethereum. Khi Solidity tạo ra một tiêu chuẩn mới cho các hợp đồng thông minh trong Ethereum, ngôn ngữ này sẽ trở nên an toàn hơn.

Hơn nữa, nó dựa trên các công cụ phát triển Truffle và Remix được cung cấp bởi hệ sinh thái EVM. Nó có các chức năng biên dịch và viết mã hợp đồng thông minh được tích hợp sẵn:

  • Các công cụ triển khai theo kịch bản và trực quan cũng như khung phát hành,
  • Bytecode hợp đồng nhị phân quản lý bytecode
  • Hợp đồng các chức năng gỡ lỗi và kiểm tra tự động, có thể được triển khai cho bất kỳ số lượng mạng công cộng hoặc riêng tư nào.

Đồng thời, họ có một bảng điều khiển tương tác có thể giao tiếp trực tiếp với hợp đồng, hợp tác với quá trình xây dựng, hỗ trợ tích hợp chặt chẽ và tạo điều kiện thuận lợi cho việc phát triển, thử nghiệm và triển khai nhanh chóng của các nhà phát triển.

Cuối cùng, hợp đồng gọi ngưỡng SDK. Từ quan điểm của các nhà phát triển DApp, sau khi trang front-end được phát triển, hợp đồng cần được gọi để triển khai các chức năng DApp tương ứng. Ở đây, sự thuận tiện và tốc độ rất quan trọng, vì vậy Caduceus đã lựa chọn để tương thích với giao diện Ethereum RPC. Ethereum hỗ trợ tương tác với các nút blockchain như sau:

Hầu hết người dùng tương tác với blockchain thông qua giao thức gọi thủ tục từ xa JSON RPC để truyền dữ liệu và triển khai các chức năng. Các nhà phát triển trực tiếp sử dụng JSON RPC để gọi các hợp đồng thông minh yêu cầu mã hóa phức tạp. Bằng cách tích hợp thư viện phát triển web3j và các thành phần front-end khác, quá trình này có thể được đơn giản hóa. Các nhà phát triển DApp chỉ cần giới thiệu giao diện ABI của hợp đồng để nhanh chóng thực hiện nó.

EVM tương thích cho nhà phát triển

Hiện tại, mạng Ethereum đã tập hợp hệ sinh thái DApp tốt nhất và cơ sở người dùng tích cực nhất trong lĩnh vực mã hóa. Trong trường hợp này, hệ thống thoát nước sẽ là vấn đề quan trọng nhất mà nhiều nhà phát triển cần giải quyết và EVM tương thích là lựa chọn tốt nhất. Những ưu điểm chính như sau:

  • Người dùng có kinh nghiệm hiện tại có thể được di chuyển
  • Kế thừa DApp hiện có; sự trưởng thành công nghệ cao hơn
  • Dễ dàng đạt được khả năng tương tác hơn với hệ sinh thái Ethereum, được gọi là ‘hiệu ứng mạng’
  • Ngưỡng thấp và chỉ có thể được sử dụng bằng cách sửa đổi các thông số mạng

Những nhược điểm của việc không tương thích với EVM là rõ ràng. Ví dụ, quá trình phát triển có thể gặp phải các vấn đề sau:

  • Cần sử dụng một ngôn ngữ / khuôn khổ / môi trường phát triển mới
  • Rào cản gia nhập đối với người dùng: ví / giao diện / ứng dụng mới cần được sử dụng
  • Xây dựng cơ sở người dùng từ đầu
  • Do trạng thái đảo, hiệu ứng mạng bị giảm – khả năng kết hợp DeFi chuỗi chéo

Điều quan trọng cần lưu ý là các nền tảng không tương thích với EVM cần cung cấp một mô hình khác biệt đáng kể với mô hình Ethereum và cần phải tăng cơ sở người dùng và nhà phát triển của họ ngay từ đầu. Các dự án này sẽ phải chứng minh lý do tại sao hợp đồng thông minh hoặc môi trường thực thi của họ bình đẳng hoặc tốt hơn, đồng thời sử dụng các kế hoạch khuyến khích và tài trợ để thúc đẩy việc áp dụng.

Ngoài ra, nếu một tập hợp các DApp được triển khai trên tất cả các chuỗi EVM, nhưng trong một không gian không phải EVM (mỗi chuỗi), thì DApp của mỗi nền tảng cần được duy trì độc lập, điều này sẽ làm tăng thêm chi phí kỹ thuật và ảnh hưởng đến hiệu quả phát triển .

Sự kết luận

Từ VM đến EVM, toàn bộ hệ sinh thái blockchain đang phát triển. EVM là máy ảo blockchain cụ thể đầu tiên trên thế giới và hầu hết các DApp đều chọn hỗ trợ nó. Để cho phép các ứng dụng này được di chuyển liền mạch vào chuỗi của chúng tôi và xem xét nhu cầu về Máy ảo thống nhất cho chuỗi chéo DApp trong tương lai, Caduceus đã chọn tương thích với các giao diện EVM và JSON RPC.

Điều này sẽ giảm đáng kể ngưỡng học tập cho các nhà phát triển và tận dụng đầy đủ các công cụ và môi trường phát triển hiện có mà các nhà phát triển đã quen thuộc. Bản thân EVM có một số hạn chế. Trong tương lai, Caduceus có kế hoạch hỗ trợ các máy ảo khác như WASM để bù đắp những thiếu sót của EVM ở một mức độ nhất định, đồng thời cung cấp cho các nhà phát triển nhiều lựa chọn hơn và cuối cùng là mang đến các giải pháp tốt nhất trong không gian blockchain cho Caduceus.

Để biết thêm thông tin: caduceus.foundation/

Discord: Caduceus
Twitter: twitter.com/Caduceus_CMP
Telegram: Telegram: Contact @CaduceusMetaverseProtocol
Facebook: Caduceus Metaverse Protocol
Phương tiện: caduceusmetaverseprotocol.medium.com