Lição 4

Hợp đồng thông minh

Module này cung cấp một cái nhìn kỹ thuật sâu rộng về zkSync, tập trung vào việc viết và triển khai hợp đồng thông minh, sử dụng zkSync CLI và SDK, và tích hợp zkSync với môi trường phát triển hiện tại.

Hợp đồng thông minh trong zkSync hoạt động tương tự như trên Ethereum nhưng với khả năng mở rộng và hiệu quả cao hơn nhờ công nghệ zkRollup cơ bản. zkSync sử dụng chứng minh không biết để duy trì tính bảo mật và không cần tin cậy trong khi xử lý giao dịch ngoại chuỗi.

Zero-knowledge succinct non-interactive arguments of knowledge (zk-SNARKs) được sử dụng để xác minh tính chính xác của các phép tính ngoại chuỗi. Trong zkSync, zk-SNARKs đảm bảo rằng tất cả các giao dịch và thực thi hợp đồng thông minh đều hợp lệ mà không cần thực hiện các phép tính trên Ethereum mainnet. Điều này giảm tải tính toán và các phí gas đi kèm, tăng khả năng xử lý cao hơn.

zkSync Era, phiên bản mới nhất, hoàn toàn tương thích với Máy Ảo Ethereum (EVM). Điều này có nghĩa là hầu hết các hợp đồng thông minh được viết cho Ethereum có thể triển khai trên zkSync mà không cần thay đổi nhiều hoặc không cần thay đổi. Tính tương thích với EVM đảm bảo rằng các nhà phát triển có thể sử dụng các công cụ và ngôn ngữ quen thuộc (như Solidity) để viết và triển khai hợp đồng của họ.

ZkSync Era cũng tích hợp zkPorter, một giải pháp sẵn dữ liệu tăng cường khả năng mở rộng. zkPorter cho phép một số dữ liệu được giữ ngoại chuỗi, tăng đáng kể số giao dịch có thể xử lý mà không làm tắc nghẽn mạng chính Ethereum.

Viết và Triển khai Hợp đồng thông minh

Hợp đồng thông minh cho zkSync được viết bằng Solidity, cùng ngôn ngữ được sử dụng cho hợp đồng thông minh trên Ethereum. Nhà phát triển có thể sử dụng cú pháp và cấu trúc logic giống như những gì họ đã quen thuộc, giúp việc chuyển đổi sang zkSync trở nên rất đơn giản.

Triển khai Hợp đồng thông minh

1.Thiết lập môi trường phát triển:

  • Cài đặt Node.js và npm (Node Package Manager).
  • Cài đặt zkSynchardhatgói thông qua npm.
  • Khởi tạo một dự án Hardhat mới và cấu hình để làm việc với zkSync.

2.Cấu hình:

Chỉnh sửa hardhat.config.jstệp để bao gồm các cài đặt cụ thể của zkSync, chẳng hạn như URL mạng zkSync và các tùy chọn biên dịch cụ thể của zkSync.

Cấu hình ví dụ có thể giống như:

3.Biên dịch các Hợp đồng Thông minh:

Sử dụng khung công cụ Hardhat, bạn có thể biên dịch các hợp đồng Solidity. Plugin Hardhat zkSync đảm bảo rằng việc biên dịch tương thích với mạng zkSync.

4.Triển khai Hợp đồng thông minh:

Quá trình triển khai liên quan đến việc kết nối với nhà cung cấp zkSync, tạo một ví, và sử dụng nó để triển khai hợp đồng. Ví dụ về kịch bản triển khai:

Các công cụ phát triển có sẵn

Hardhat

Hardhat là một môi trường phát triển và trình chạy tác vụ cho Ethereum đã được mở rộng để hỗ trợ zkSync. Nó cho phép các nhà phát triển biên dịch, triển khai, kiểm tra và gỡ lỗi các hợp đồng thông minh Solidity.

SDK zkSync

SDK zkSync cung cấp các công cụ và thư viện để tương tác với zkSync từ môi trường JavaScript. Nó bao gồm tiện ích để thiết lập ví, gửi giao dịch và tương tác với các hợp đồng thông minh triển khai trên zkSync.

zkSync CLI

Giao diện dòng lệnh (CLI) của zkSync cung cấp các chức năng để quản lý các dự án zkSync, bao gồm triển khai hợp đồng và quản lý tài khoản.

Remix IDE

Remix là một ứng dụng mã nguồn mở trên web và máy tính để bàn giúp viết các hợp đồng Solidity trực tiếp từ trình duyệt. Nó hỗ trợ zkSync thông qua các plugin và cấu hình kết nối với mạng zkSync.

Tích hợp

Công cụ phát triển tích hợp cung cấp môi trường liên kết cho việc phát triển, kiểm thử và triển khai hợp đồng thông minh trên zkSync.

Hardhat và SDK zkSync

Hardhat tích hợp với SDK zkSync để cung cấp quy trình làm việc mượt mà cho các nhà phát triển. Các plugin Hardhat cho zkSync xử lý quá trình biên dịch và triển khai, trong khi SDK zkSync cung cấp chức năng cơ bản để tương tác với mạng zkSync. Sự kết hợp này cho phép các nhà phát triển viết kịch bản triển khai và kiểm thử bằng cách sử dụng cấu trúc quen thuộc của Hardhat trong khi tận dụng các tính năng cụ thể của zkSync.

Hardhat và Remix

Nhà phát triển có thể viết và kiểm tra hợp đồng thông minh bằng Remix và sau đó sử dụng Hardhat cho các kịch bản triển khai phức tạp hơn. Các tác phẩm đã biên soạn từ Remix có thể dễ dàng nhập vào dự án Hardhat, cho phép quy trình phát triển linh hoạt.

zkSync CLI

zkSync CLI có thể được sử dụng cùng với Hardhat và zkSync SDK để quản lý việc triển khai và tương tác với các hợp đồng đã triển khai. Nó cung cấp giao diện dòng lệnh cho các tác vụ phổ biến, chẳng hạn như triển khai hợp đồng hoặc quản lý khóa tài khoản, có thể được tích hợp vào các đường ống triển khai tự động.

Kiểm tra và gỡ lỗi

Khung kiểm thử của Hardhat có thể được sử dụng để viết các bài kiểm tra đơn vị và tích hợp cho các hợp đồng thông minh. Các thử nghiệm này có thể chạy trên nút zkSync cục bộ hoặc mạng thử nghiệm để đảm bảo rằng các hợp đồng hoạt động như mong đợi. SDK zkSync tạo điều kiện tương tác với các hợp đồng trong quá trình thử nghiệm, cho phép kiểm tra toàn diện.

Bằng cách tích hợp những công cụ này, nhà phát triển có thể viết, kiểm thử, triển khai và quản lý hợp đồng thông minh trên zkSync một cách hiệu quả, sử dụng tính mở rộng và tính hiệu quả về chi phí của zkRollups trong khi vẫn duy trì một trải nghiệm phát triển quen thuộc. Sự tích hợp này hỗ trợ một chu kỳ phát triển mạnh mẽ, từ việc tạo hợp đồng ban đầu đến triển khai và bảo trì liên tục.

Nổi bật

  • Việc viết và triển khai hợp đồng thông minh trên zkSync bao gồm việc sử dụng Solidity và Vyper, với việc biên dịch thông qua các trình biên dịch tùy chỉnh của zkSync.
  • ZKSync CLI và SDK cung cấp các công cụ toàn diện để thiết lập dự án, biên soạn hợp đồng, triển khai và tương tác.
  • Tích hợp với các công cụ phát triển như Hardhat, Foundry, Remix và Atlas giúp nâng cao trải nghiệm của nhà phát triển.
  • Tuân thủ các quy trình tốt đảm bảo phát triển hợp đồng thông minh an toàn và hiệu quả trên zkSync.
Exclusão de responsabilidade
* O investimento em criptomoedas envolve riscos significativos. Prossiga com cuidado. O curso não pretende ser um conselho de investimento.
* O curso é criado pelo autor que se juntou ao Gate Learn. Qualquer opinião partilhada pelo autor não representa o Gate Learn.
Catálogo
Lição 4

Hợp đồng thông minh

Module này cung cấp một cái nhìn kỹ thuật sâu rộng về zkSync, tập trung vào việc viết và triển khai hợp đồng thông minh, sử dụng zkSync CLI và SDK, và tích hợp zkSync với môi trường phát triển hiện tại.

Hợp đồng thông minh trong zkSync hoạt động tương tự như trên Ethereum nhưng với khả năng mở rộng và hiệu quả cao hơn nhờ công nghệ zkRollup cơ bản. zkSync sử dụng chứng minh không biết để duy trì tính bảo mật và không cần tin cậy trong khi xử lý giao dịch ngoại chuỗi.

Zero-knowledge succinct non-interactive arguments of knowledge (zk-SNARKs) được sử dụng để xác minh tính chính xác của các phép tính ngoại chuỗi. Trong zkSync, zk-SNARKs đảm bảo rằng tất cả các giao dịch và thực thi hợp đồng thông minh đều hợp lệ mà không cần thực hiện các phép tính trên Ethereum mainnet. Điều này giảm tải tính toán và các phí gas đi kèm, tăng khả năng xử lý cao hơn.

zkSync Era, phiên bản mới nhất, hoàn toàn tương thích với Máy Ảo Ethereum (EVM). Điều này có nghĩa là hầu hết các hợp đồng thông minh được viết cho Ethereum có thể triển khai trên zkSync mà không cần thay đổi nhiều hoặc không cần thay đổi. Tính tương thích với EVM đảm bảo rằng các nhà phát triển có thể sử dụng các công cụ và ngôn ngữ quen thuộc (như Solidity) để viết và triển khai hợp đồng của họ.

ZkSync Era cũng tích hợp zkPorter, một giải pháp sẵn dữ liệu tăng cường khả năng mở rộng. zkPorter cho phép một số dữ liệu được giữ ngoại chuỗi, tăng đáng kể số giao dịch có thể xử lý mà không làm tắc nghẽn mạng chính Ethereum.

Viết và Triển khai Hợp đồng thông minh

Hợp đồng thông minh cho zkSync được viết bằng Solidity, cùng ngôn ngữ được sử dụng cho hợp đồng thông minh trên Ethereum. Nhà phát triển có thể sử dụng cú pháp và cấu trúc logic giống như những gì họ đã quen thuộc, giúp việc chuyển đổi sang zkSync trở nên rất đơn giản.

Triển khai Hợp đồng thông minh

1.Thiết lập môi trường phát triển:

  • Cài đặt Node.js và npm (Node Package Manager).
  • Cài đặt zkSynchardhatgói thông qua npm.
  • Khởi tạo một dự án Hardhat mới và cấu hình để làm việc với zkSync.

2.Cấu hình:

Chỉnh sửa hardhat.config.jstệp để bao gồm các cài đặt cụ thể của zkSync, chẳng hạn như URL mạng zkSync và các tùy chọn biên dịch cụ thể của zkSync.

Cấu hình ví dụ có thể giống như:

3.Biên dịch các Hợp đồng Thông minh:

Sử dụng khung công cụ Hardhat, bạn có thể biên dịch các hợp đồng Solidity. Plugin Hardhat zkSync đảm bảo rằng việc biên dịch tương thích với mạng zkSync.

4.Triển khai Hợp đồng thông minh:

Quá trình triển khai liên quan đến việc kết nối với nhà cung cấp zkSync, tạo một ví, và sử dụng nó để triển khai hợp đồng. Ví dụ về kịch bản triển khai:

Các công cụ phát triển có sẵn

Hardhat

Hardhat là một môi trường phát triển và trình chạy tác vụ cho Ethereum đã được mở rộng để hỗ trợ zkSync. Nó cho phép các nhà phát triển biên dịch, triển khai, kiểm tra và gỡ lỗi các hợp đồng thông minh Solidity.

SDK zkSync

SDK zkSync cung cấp các công cụ và thư viện để tương tác với zkSync từ môi trường JavaScript. Nó bao gồm tiện ích để thiết lập ví, gửi giao dịch và tương tác với các hợp đồng thông minh triển khai trên zkSync.

zkSync CLI

Giao diện dòng lệnh (CLI) của zkSync cung cấp các chức năng để quản lý các dự án zkSync, bao gồm triển khai hợp đồng và quản lý tài khoản.

Remix IDE

Remix là một ứng dụng mã nguồn mở trên web và máy tính để bàn giúp viết các hợp đồng Solidity trực tiếp từ trình duyệt. Nó hỗ trợ zkSync thông qua các plugin và cấu hình kết nối với mạng zkSync.

Tích hợp

Công cụ phát triển tích hợp cung cấp môi trường liên kết cho việc phát triển, kiểm thử và triển khai hợp đồng thông minh trên zkSync.

Hardhat và SDK zkSync

Hardhat tích hợp với SDK zkSync để cung cấp quy trình làm việc mượt mà cho các nhà phát triển. Các plugin Hardhat cho zkSync xử lý quá trình biên dịch và triển khai, trong khi SDK zkSync cung cấp chức năng cơ bản để tương tác với mạng zkSync. Sự kết hợp này cho phép các nhà phát triển viết kịch bản triển khai và kiểm thử bằng cách sử dụng cấu trúc quen thuộc của Hardhat trong khi tận dụng các tính năng cụ thể của zkSync.

Hardhat và Remix

Nhà phát triển có thể viết và kiểm tra hợp đồng thông minh bằng Remix và sau đó sử dụng Hardhat cho các kịch bản triển khai phức tạp hơn. Các tác phẩm đã biên soạn từ Remix có thể dễ dàng nhập vào dự án Hardhat, cho phép quy trình phát triển linh hoạt.

zkSync CLI

zkSync CLI có thể được sử dụng cùng với Hardhat và zkSync SDK để quản lý việc triển khai và tương tác với các hợp đồng đã triển khai. Nó cung cấp giao diện dòng lệnh cho các tác vụ phổ biến, chẳng hạn như triển khai hợp đồng hoặc quản lý khóa tài khoản, có thể được tích hợp vào các đường ống triển khai tự động.

Kiểm tra và gỡ lỗi

Khung kiểm thử của Hardhat có thể được sử dụng để viết các bài kiểm tra đơn vị và tích hợp cho các hợp đồng thông minh. Các thử nghiệm này có thể chạy trên nút zkSync cục bộ hoặc mạng thử nghiệm để đảm bảo rằng các hợp đồng hoạt động như mong đợi. SDK zkSync tạo điều kiện tương tác với các hợp đồng trong quá trình thử nghiệm, cho phép kiểm tra toàn diện.

Bằng cách tích hợp những công cụ này, nhà phát triển có thể viết, kiểm thử, triển khai và quản lý hợp đồng thông minh trên zkSync một cách hiệu quả, sử dụng tính mở rộng và tính hiệu quả về chi phí của zkRollups trong khi vẫn duy trì một trải nghiệm phát triển quen thuộc. Sự tích hợp này hỗ trợ một chu kỳ phát triển mạnh mẽ, từ việc tạo hợp đồng ban đầu đến triển khai và bảo trì liên tục.

Nổi bật

  • Việc viết và triển khai hợp đồng thông minh trên zkSync bao gồm việc sử dụng Solidity và Vyper, với việc biên dịch thông qua các trình biên dịch tùy chỉnh của zkSync.
  • ZKSync CLI và SDK cung cấp các công cụ toàn diện để thiết lập dự án, biên soạn hợp đồng, triển khai và tương tác.
  • Tích hợp với các công cụ phát triển như Hardhat, Foundry, Remix và Atlas giúp nâng cao trải nghiệm của nhà phát triển.
  • Tuân thủ các quy trình tốt đảm bảo phát triển hợp đồng thông minh an toàn và hiệu quả trên zkSync.
Exclusão de responsabilidade
* O investimento em criptomoedas envolve riscos significativos. Prossiga com cuidado. O curso não pretende ser um conselho de investimento.
* O curso é criado pelo autor que se juntou ao Gate Learn. Qualquer opinião partilhada pelo autor não representa o Gate Learn.