Diễn giải kỹ thuật về chữ khắc ETHS của Ethereum: Đó có phải là sự thổi phồng tài chính hay không phải là sáng tạo sản phẩm?

Trung cấp1/1/2024, 9:19:15 AM
Bài viết này thảo luận sâu về phương pháp triển khai của ETHS, các khía cạnh, và tác động cũng như mối quan hệ giữa các khía cạnh và hợp đồng thông minh, và cũng thảo luận về chúng so với Rollup.

GIỚI THIỆU

Chữ khắc Ethereum hiện tại về cơ bản là một loại rượu cũ trong lọ mới từ Ordinals, một mô hình mới không mang ý nghĩa thực sự. ETHS vẫn có rủi ro về bảo mật, và mặc dù nó phân cấp hơn Rollup, quy trình rút tiền vẫn phụ thuộc vào một bên thứ ba làm chứng/notary, và có nguy cơ bị đánh cắp. Rõ ràng, hiện tại ETHS vẫn chủ yếu là sự bão hòa tài chính, không phải là nó có thể mang lại sự đổi mới mà Ethereum Layer 2 không thể mang lại.

Sự phổ biến gần đây của các chữ khắc sinh thái BTC đã khuyến khích các nhà phát triển của các chuỗi khác xây dựng các hệ thống tương tự. Cách thức triển khai các hệ thống chữ khắc trên các chuỗi khác nhau và các chức năng mà chúng có thể đạt được có chút khác biệt, nhưng họ có một số điểm chung:

1. Tất cả các chữ khắc đều sử dụng thông tin văn bản đính kèm vào việc chuyển tiền để diễn đạt thao tác bạn muốn thực hiện, chẳng hạn như viết “chuyển 1 đồng tiền cho XXX” trong tin nhắn. Lưu ý rằng thông tin này là văn bản thuần túy và không liên quan đến các thao tác như thực thi hợp đồng thông minh trên chuỗi.

2. Nhà phát triển sẽ thiết kế một loạt các thông số kỹ thuật và tiêu chuẩn để chuẩn hóa tất cả thông tin văn bản.

3. Nhà phát triển cung cấp một tập hợp các Indexer indexers để tính toán trạng thái nội bộ của hệ thống chữ khắc sau khi thu thập thông tin văn bản của tất cả các chữ khắc trên chuỗi. Indexer là một thành phần mã nguồn mở ngoại chuỗi mà bất kỳ ai cũng có thể chạy.

Bảng định BTC đã thiết lập một cơ chế để phát hành NFT và token trên BTC, và cũng đã dẫn đến sự suy nghĩ quy mô lớn về BTC L2. Theo cách này, chúng ta có thể nghĩ rằng Ordinals có phần cắt cạnh và thám hiểm. Tuy nhiên, Ordinals bị hạn chế bởi kiến trúc của BTC về công nghệ và trải nghiệm sản phẩm, và cũng bị cộng đồng BTC OG chỉ trích vì lý do như ô nhiễm bụi và tiêu thụ dữ liệu.

Vậy, việc in lại chữ khắc trên Ethereum có ý nghĩa không? Sau tất cả, chính Ethereum có hợp đồng thông minh phức tạp, và ERC20 và NFT cũng là một phần của Ethereum; các dự án chữ khắc này sẽ ảnh hưởng như thế nào đối với hệ sinh thái Ethereum, và liệu chúng có gây ra tranh cãi và hỗn loạn trên BTC không?

Triển khai kỹ thuật của Ethical

Hãy trước hết xem cách thức thực hiện của Ethereum. Đó là một dự án chữ khắc nổi tiếng trên Ethereum chủ yếu sử dụng Calldata để hoạt động.

Calldata là dữ liệu đầu vào gốc được truyền trong một giao dịch Ethereum. Thông thường nó được sử dụng để truyền các tham số cần thiết cho tương tác hợp đồng thông minh, nhưng cũng có thể được sử dụng để gửi tin nhắn văn bản (bình luận, chữ khắc, ghi chú chuyển khoản, v.v.) đến một địa chỉ EOA. Trong hình vẽ, dữ liệu đầu vào là calldata.

Nếu bạn muốn sử dụng Dân tộc học để khắc chữ “Hello world” trong một giao dịch, bạn cần xây dựng một giao dịch với calldata sau:

Sau khi Bộ chỉ mục ngoại tuyến theo dõi giao dịch này, nó sẽ cập nhật cơ sở dữ liệu và thông báo cho người dùng rằng một chữ khắc mới đã được tạo ra, và nội dung của chữ khắc là Hello World. Nội dung phức tạp hơn, như thông tin hình ảnh đại diện base64, cũng có thể được đặt trong chữ khắc.

Chủng tộc hiện đã thông qua 6 ESIPs (các đề xuất giống như EIP) để xác định việc sử dụng chữ khắc trong các tình huống khác nhau. Tuy nhiên, đây chỉ là các thông số cơ bản về chữ khắc, như định dạng của các giao dịch chữ khắc được khởi xướng từ EOA, sự kiện phát ra từ hợp đồng, v.v.

Vì Ethnicity là một dự án trên Ethereum, cũng có thể thực hiện một mức độ logic cụ thể bằng cách sử dụng hợp đồng thông minh Ethereum. Quan trọng là lưu ý rằng tương tác trực tiếp với hợp đồng thông minh không phải là cách tiếp cận được khuyến nghị bởi Ethical.

Mặc dù các thị trường NFT chính thức và tương tự cũng được triển khai trực tiếp bằng cách sử dụng hợp đồng thông minh. Theo tài liệu chính thức, Ethical muốn cung cấp cho người dùng một “dịch vụ máy tính phi tập trung và giá cả phải chăng”: việc tách biệt tính toán khỏi chuỗi sẽ giảm đáng kể chi phí sử dụng Ethereum.

Hãy khám phá chi tiết về chi phí gọi một hợp đồng thông minh, có thể chia thành ba phần:

·Chi phí giao dịch cơ bản: Mọi giao dịch Ethereum đều cần thanh toán, hiện tại là 21000 gas.

·Chi phí truyền dữ liệu (calldata): Calldata thường được sử dụng để gửi dữ liệu và tham số cho tương tác với hợp đồng thông minh. Sau điều chỉnh EIP-2028, calldata thường tiêu tốn 16 gas mỗi byte (4 gas nếu dữ liệu là 0 byte).

·Chi phí thực thi hợp đồng: Nếu một giao dịch gọi một chức năng trong một hợp đồng thông minh, tùy thuộc vào độ phức tạp của việc thực thi chức năng, cũng phải trả chi phí tính toán. Ví dụ, nếu liên quan đến cập nhật trạng thái (như cập nhật thông tin số dư trong một hợp đồng ERC-20), việc gọi SSTORE có thể tiêu tốn đến 5000-20.000 gas.

Hãy xem một giao dịch chuyển USDT rất đơn giản. Giao dịch này tốn tổng cộng 63.197 khí gas, và calldata là:


Hãy phân tích dữ liệu cuộc gọi này và xem nó sẽ tốn bao nhiêu khí.

·Dữ liệu calldata của Ethereum ở định dạng thập lục phân, nghĩa là mỗi hai chữ số là một byte (16^2 = 2^8). Cái 0x ở đầu chỉ ra rằng dữ liệu ở dạng thập lục phân.

·Sau đoạn 0x là a9059cbb là bộ chọn chức năng và chiếm 4 byte không bằng không.

·32 byte tiếp theo là địa chỉ, với 12 byte của số không ở phía trước (vì địa chỉ Ethereum là 20 byte, 0 đến 32 byte được thêm vào bên trái), và 20 byte dữ liệu địa chỉ khác không.

·32 byte cuối cùng đại diện cho số lượng, với một lượng lớn số không bên trái, 3b9aca00 dữ liệu khác không bằng không ở cuối, và 4 byte khác không bằng không.

·Vì vậy, 28 byte khác không và 40 byte không

Do đó, callDataGas = 28 * 16 + 40 * 4 = 608 gas.

Tổng gas là 63197. Sau khi trừ chi phí calldata và chi phí cố định, chi phí tính toán hợp đồng thông minh để thực hiện giao dịch này là 41.589 gas. Chi phí tính toán hợp đồng chiếm đa số trong giao dịch này, và đây chỉ là một giao dịch đơn giản. Trong các giao dịch phức tạp, chi phí tính toán hợp đồng sẽ tăng lên thêm.

Việc đặt quá trình tính toán ngoài chuỗi thực sự sẽ giảm chi phí sử dụng đáng kể: nếu bạn không muốn gọi các hợp đồng thông minh trực tiếp trên chuỗi, bạn có thể chuyển đến một địa chỉ EOA đã thỏa thuận

0x0000000000000000000000000000000face7 Gửi dữ liệu giao dịch

Trong dữ liệu cuộc gọi giao dịch, hãy xác định hợp đồng ban đầu mà bạn muốn gọi, và các tham số đầu vào tương ứng. Vì địa chỉ ở trên là tài khoản EOA và không có mã hợp đồng, thao tác mô tả ở trên sẽ không kích hoạt các nhiệm vụ tính toán trên chuỗi; nó chỉ đăng một tin nhắn.

Off-chain, sau khi Indexer nghe tin nhắn này, nó sẽ phân tích để tìm ra hợp đồng nào trên chuỗi ETH mà người gửi tin nhắn này ban đầu muốn gọi, sau đó Indexer sẽ tính toán kết quả gọi hợp đồng ngoại chuỗi.

Nếu một người lập chỉ mục ngoại tuyến muốn tính toán các chữ khắc và hợp đồng thông minh, nó phải có một tập hợp các quy tắc và thời gian chạy của hàm chuyển trạng thái STF. Phần phức tạp có thể được gọi là máy ảo VM. Ethnic đã ra mắt máy ảo riêng của mình—Ethnic VM—trong ESIP-4, sau đó đã đổi tên thành Facet VM.

Facet — một chút giống như một bộ xử lý phụ

Facet định nghĩa chính mình là một nền tảng tính toán rẻ, dễ sử dụng, an toàn và phi tập trung. Nghe dữ liệu cuộc gọi đạo đức trên Ethereum, kéo nó vào máy ảo để tính toán, và cuối cùng trả kết quả cho người dùng. Facet có một số thành phần chính:

·Facet VM, một bộ VM được viết bằng Ruby, chịu trách nhiệm theo dõi các giao dịch ETHS, phân tích calldata và thực hiện các hoạt động.

·Rubidity, ngôn ngữ lập trình hợp đồng thông minh trong Facet, tương tự như Ruby, và cũng giữ lại nhiều ứng dụng và khái niệm solidity, để nhà phát triển có thể bắt đầu nhanh chóng.

Hợp đồng ngu ngốc, một loại hợp đồng chạy trên Facet. Tên gọi đầy hài hước. Một số người cũng đúng khi gọi nó là hợp đồng ngu ngốc. Từ 'ngu ngốc' ở đây còn là một trò chơi chữ; 'ngu ngốc' có thể miêu tả quy trình im lặng của loại hợp đồng này. Nhưng ngược lại, theo câu ngạn ngữ chính thức 'Dốt, chính họ thông minh', nó có nghĩa là ngu ngốc, với một sự cứng đầu mạnh mẽ trong việc tranh luận với các hợp đồng thông minh, nên không vấn đề gì gọi chúng là hợp đồng ngu ngốc.

Chính bản hợp đồng ngu ngốc này thực sự sẽ không được triển khai trên Ethereum; mã của nó sẽ được đăng trên chuỗi ETH dưới dạng calldata. Dưới đây là một ví dụ về Facet gọi một bản hợp đồng ngu ngốc:

Một giao dịch đúc token đến địa chỉ lỗ đen EOA

0x000000000000000000000000000face7 gửi calldata trong hình dưới đây, chỉ định rằng bạn chỉ muốn token và số lượng mint. Thực tế đây chính là giống như Ordinals hoặc BRC-20:

Hãy xem xét một lần nữa sự so sánh hình ảnh giữa Rubidity và Solidity, như được hiển thị dưới đây.


Mặc dù tuyên bố chính thức là Rubidity có một khái niệm và cấu trúc giống như Solidity, vì vậy các nhà phát triển có thể bắt đầu nhanh chóng. Nhưng chúng ta biết rằng điều này thực sự ảnh hưởng tiêu cực đến việc phát triển từ phía nhà phát triển. Ngoài ra, hiện tại Facet VM chỉ hỗ trợ các hợp đồng ngu ngốc trên danh sách trắng chính thức, điều này cho thấy rằng chính phủ không tin tưởng nhiều vào ngôn ngữ và VM này. Việc tái sử dụng EVM có khó khăn hơn chính thức trong kỹ thuật so với việc phát triển một VM mới và một ngôn ngữ mới, tôi không biết. Nhưng có một điều chắc chắn: ngôn ngữ mới, hợp đồng mới, hệ sinh thái mới và cách sử dụng Ethereum mới thật sự đủ làm nổi bật.

Cuộc tấn công của Facet vào hợp đồng thông minh

Tài liệu Facet đã đưa ra nhận xét mạnh mẽ về Ethereum và hợp đồng thông minh: "Hợp đồng thông minh được coi là tính năng vượt trội hơn tất cả những tính năng khác khiến Ethereum trở nên đặc biệt, nhưng luận điểm của Facet là Hợp đồng thông minh là lỗi thiết kế lớn nhất của Ethereum."

Họ tin rằng hợp đồng thông minh của Ethereum là lỗ hổng thiết kế lớn nhất, bởi vì bản thân hợp đồng chỉ yêu cầu một đầu vào nhất định (calldata) và đầu ra của nó được xác định, vì vậy nó không nên được tính toán trên chuỗi, lãng phí tiền mà không có lý do. Kết hợp với "dịch vụ điện toán phi tập trung và giá cả phải chăng" của Ethical, rõ ràng Ethnic and Facet thực sự muốn tạo ấn tượng thị trường, "Chúng tôi đang tạo ra một mô hình mở rộng Ethereum và phương pháp sử dụng mới", nhưng trên thực tế, một số giải pháp kỹ thuật riêng của ETHS không đáng tin cậy lắm.

Từ quan điểm của sản phẩm, Facet có thể kích hoạt các hợp đồng thông minh một cách gián tiếp dưới chuỗi, và nó cũng có hệ thống hợp đồng ngu xuẩn riêng dưới chuỗi. Thực sự, chính phủ đang thực hiện khẩu hiệu của mình.

Tuy nhiên, từ quan điểm kinh tế, trên thế giới không có bữa trưa miễn phí; tất nhiên, lưu trữ và tính toán đều yêu cầu tiền bạc. Vậy Indexer làm thế nào để giải quyết phần chi phí này? Không có giải thích chính thức cho điều này, vì vậy hãy tưởng tượng:

Người dùng bị tính phí. Ví dụ, phí xử lý được tính bởi thị trường NFT từ người mua, nhưng chúng ta không thể coi mô hình tính phí dựa trên dự án đơn giản như một phương pháp tính phí dài hạn giống như mạng L2.

·Trở nên giàu có thông qua việc tạo ra sự bùng nổ sinh thái của riêng bạn. Điều này tất nhiên là có thể, nhưng đó chỉ là một giải pháp ngắn hạn để giữ cho dự án hấp dẫn trong một thời gian ngắn. Nếu Ethnicity muốn trở thành một mô hình Ethereum mới, Indexer phải có cơ chế kinh tế dựa trên mạng lưới dài hạn để đảm bảo hoạt động.

·Nếu hàng hóa công cộng không sinh lời, tổ chức nào sẽ quyên góp? Tôi nghĩ ít nhất Quỹ Ethereum sẽ không hoạt động đặc biệt vì Ethereum chính nó đã có một giải pháp rất tốt - Rollup.

Nguyên nhân gốc rễ của Facet và hợp đồng ngu ngốc

Nếu chúng ta chỉ cần dạng đơn giản của chữ khắc Ethereum, thì chỉ cần một dự án của Ethnic là đủ. Vậy tại sao đề xuất ESIP-4 của nó lại tạo ra Facet một lần nữa?

Vì hệ thống chữ khắc không thể sử dụng cho logic giao dịch phức tạp. Chúng ta có thể xem xét logic hoạt động của hợp đồng thị trường NFT chính thức của Ethical, sử dụng cơ chế đặt lệnh chờ.

Nếu bạn muốn gửi chữ khắc NFT vào hợp đồng, bạn chỉ cần viết calldata như là ethscriptionID của chữ khắc và gọi hợp đồng thị trường. Vì thao tác này cố ý chọn một hình thức gọi hàm không hợp lệ, nó kích hoạt fallback() mặc định.

Cuối cùng, một sự kiện có tên là PotentialEthScriptionOfferings sẽ được kích hoạt trên chuỗi Ethereum. Sau khi nút Indexer theo dõi sự kiện này ngoại mạng, nó sẽ chuyển quyền sở hữu của NFT thành hợp đồng thị trường cục bộ.

Để tiết kiệm gas, thị trường giao dịch ETHS không lưu trữ một số tham số của các lệnh chờ mua của người bán, như giá, hạn chót, v.v. trong hợp đồng ETH, mà thay vào đó đặt chúng ngoại tuyến dưới dạng tin nhắn. Một cách trực quan, chúng nên đã được lưu trữ trên máy chủ dApp. Khi người mua đã theo dõi tin nhắn này, họ có thể gửi yêu cầu mua bằng cách sử dụng lệnh BuyWithSignature().

Sử dụng cơ chế đặt lệnh chờ là điều bình thường đối với NFT vì chính NFT không đồng nhất. Vì vậy nếu đó là chữ khắc mã thông tin chuẩn hoá, liệu cơ chế AMM của hợp đồng có thể được sử dụng không? Câu trả lời là không. Tình trạng của NFT hoặc token đã được chạm khắc không nằm trên L1, điều này cũng tương tự như Ordinals và BRC-20. Điều này hoàn toàn ngược lại với một số chiến dịch tuyên truyền của cộng đồng. Mọi người cần phải cẩn thận. Chữ khắc không phải là tài sản trên chuỗi ETH theo nghĩa đúng đắn của từ ngữ. Chúng ta không thể nói rằng calldata tạo ra tài sản nằm trên L1, và chúng ta có thể tuyên bố hướng dẫn hoạt động trên L1, gọi là tài sản bản địa trên L1. Nếu không, tài sản bản địa trên L2 trên Rollup cũng có thể được gọi là tài sản L1, vì calldata của Rollup đều nằm trên L1. Rõ ràng, việc gọi tài sản loại này là tài sản bản địa trên L1 là vô lý.

Bạn có thể tự hỏi, liệu rằng đó chỉ là một hợp đồng thông minh được sử dụng để giao dịch? Tại sao lại nói rằng các chữ khắc trên hợp đồng không thể đọc và thao tác? Trên thực tế, hợp đồng này chỉ chịu trách nhiệm thu tiền, chuyển tiền và tổ chức sự kiện cho các nút chỉ mục dưới chuỗi để lắng nghe và kích hoạt các hoạt động tương ứng. Trong mắt của Ethereum EVM, trạng thái của một cái gì đó giống như một chữ khắc không thể khôi phục trong cơ sở dữ liệu “World State” lưu trữ cụ thể trạng thái của Ethereum, cũng không thể hợp đồng tham chiếu đến nó.

Dù tài sản có ở dạng token, NFT hay bất cứ thứ gì lạ lẫm, tôi có thể đưa ra một tiêu chuẩn rất đơn giản để xác định tài sản L1 và tài sản L2: liệu trạng thái của chúng có thể khôi phục về 'trạng thái của thế giới' của Ethereum, liệu EVM của L1 có thể tham chiếu, gọi, truy vấn và thay đổi trạng thái của tài sản hay không; nếu không, thì đó không phải là tài sản L1.

Vì vậy, bạn cũng có thể thấy rằng tên của sự kiện nạp tiền là PotentialEthscriptionDeposit, tức là “nạp tiền chữ khắc có thể”, chứ không phải là một sự nạp tiền xác định, vì hợp đồng không thể xác định xem chữ khắc này có tồn tại hay không, và không thể xác minh tính xác thực của nó. Nếu bạn đặt một chữ khắc mà không tồn tại, hoặc của người khác, hợp đồng sẽ không từ chối bạn; chỉ là Indexer sẽ không bao gồm hành động của bạn.

Do đó, hệ thống chữ khắc chỉ có thể thực hiện logic pseudo-hợp đồng đơn giản này; đơn đặt hàng đang chờ là một trong số đó. Bản chất của một đơn đặt hàng đang chờ là cả hai bên trong giao dịch đồng ý với thông tin của nhau dưới một quy tắc. Trong thực tế, nó có thể được diễn đạt bằng văn bản thông thường mà không cần một hợp đồng thông minh. Điều này tương tự như nguyên lý của một hệ thống chữ khắc.

Chúng ta có thể tưởng tượng cách mà quá trình này có thể được hoàn thành mà không cần sử dụng một hợp đồng thông minh: người bán khắc một tin nhắn trong một giao dịch thông thường, chuyển cho tôi 1ETH, và ai đó ghi chú 123 có thể nhận được một NFT với số chữ khắc của tôi là 123. Điều này chỉ đòi hỏi Indexer hỗ trợ logic này. Nó lắng nghe rằng ai đó đã chuyển 1ETH cho người bán và thêm một ABC, sau đó nó có thể được chuyển trực tiếp vào cơ sở dữ liệu Indexer ngoại tuyến.

Tất nhiên, ví dụ này sẽ gây ra một số vấn đề như giao dịch lặp lại có thể phát sinh từ việc nhiều người mua NFT cùng một lúc. Người bán đã nhận được nhiều chuyển khoản, nhưng cuối cùng, NFT chỉ có thể được chuyển cho một người bởi Indexer. Điều này cũng là một trong những lý do mà chính phủ rõ ràng chỉ trích hợp đồng thông minh nhưng sử dụng hợp đồng để thực hiện thị trường NFT, vì vậy bạn cũng nên hiểu rõ tuyên bố chính thức rằng việc gọi hợp đồng thông minh mà không tính toán qua Facet là không đáng tin cậy.

Tất nhiên, các đơn đặt hàng đang chờ có thể lý thuyết sử dụng văn bản thường thay vì yêu cầu một hợp đồng, nhưng logic tương đối phức tạp của AMM yêu cầu các hợp đồng thông minh, vì nó không yêu cầu một thỏa thuận ngang hàng giữa hai bên mà yêu cầu sự chấp thuận hợp đồng. Một hợp đồng hoạt động như một người xem đáng tin cậy yêu cầu kiểm tra thông tin cơ bản như số dư và tính thanh khoản, và thực hiện các phép tính. Hợp đồng phải có khả năng lấy bất kỳ dữ liệu tài sản nào mà nó cần.

AMM, bằng cách khác, chỉ là một hình thức tương đối đơn giản của DeFi, và bất kỳ logic phức tạp nào khác cũng không thể được triển khai trên Ethnic một mình. Đó là lý do tại sao Facet được ra mắt - Ưu tiên hàng đầu của Facet là liên miền! Thực tế đó là một L2, nhưng nó không có cấu trúc khối, vì vậy chúng tôi không gọi nó là cross-chain mà là cross-domain. Khi tất cả tài sản L1 được liên miền đến Facet, không có vấn đề nào mà chúng không thể được gọi qua các miền. Tất cả tài sản ngoại xích có thể được vận hành với các hợp đồng ngu ngốc dưới chuỗi, từ đó hỗ trợ logic hợp đồng phức tạp.

So sánh với Rollup

Qua cuộc thảo luận dài ở trên, bạn nên thấy rằng giải pháp của Ethical hơi giống với Rollup. Nhưng đó chỉ là “giống”; nói một cách nghiêm ngặt, nó chỉ thực hiện một phần nhỏ các chức năng cốt lõi của Rollup. Trong khi các chức năng bị thiếu, đã gây ra thiệt hại nghiêm trọng cho câu chuyện của nó hoặc đặt người dùng vào nguy cơ nghiêm trọng.

Rollup là một hệ thống phức tạp, và chúng tôi sẽ không mở rộng ở đây. Nó có một điểm chung với Ethanol:

  • Họ đều gửi dữ liệu calldata cho giao dịch L2 trên Ethereum.

  • Tất cả các phép tính được xử lý ngoại chuỗi.

Những điểm chung rất rõ ràng, và chúng ta cần phải thể hiện những sự khác biệt một cách chi tiết.

Nộp dữ liệu cuộc gọi hàng loạt Rollup

Trong hầu hết các trường hợp, người dùng trong Rollup không gửi giao dịch trực tiếp đến L1, mà thay vào đó gửi chúng đến một trình tự ngoại tuyến. Trình tự sắp xếp tất cả các giao dịch, đóng gói và nén chúng, và gửi calldata đến L1 theo lô. Bằng cách gửi calldata từ nhiều người dùng trong một giao dịch, chi phí cơ bản của 21.000 gas có thể được phân tán.

Không có cơ chế đó trong Sắc tộc; tất cả người dùng đều gửi dữ liệu gọi trực tiếp đến L1.

Sử dụng ví dụ USDT ở trên (608 gas cho calldata), hãy giả sử rằng 100 người dùng đã khởi tạo 100 giao dịch và tính toán sơ bộ sự khác biệt về chi phí giữa hai trường hợp một cách khá chưa chính xác:

· Mỗi người dùng chữ khắc sẽ phải trả 21608 gas (608 + 21000). Phần còn lại của việc tính toán không được thanh toán vì việc tính toán được thực hiện ngoại chuỗi.

Người dùng Rollup trả 818 khí gas ((608*100+21000) /100) mỗi người. Phần toán học là giống như ở trên.

Tất nhiên, mỗi người dùng Rollup cũng cần thanh toán phí tính toán L2 và lưu trữ cho người sắp xếp, nhưng nó rẻ hơn nhiều so với L1, vì vậy nó không đáng kể trong trường hợp này. Ngoài ra, rollup yêu cầu một số trường đặc biệt bổ sung để tăng dung lượng, nhưng đồng thời, nó cũng có khả năng nén dữ liệu tốt hơn, vì vậy chúng tôi sẽ không mở rộng ở đây.

Qua ước lượng sơ bộ này, có thể thấy rằng Ethanol không có lợi thế về chi phí so với Layer 2. Ngoài ra, trong công cuộc tuyên truyền cộng đồng của dự án, tôi đã thấy những điều như “4000 chữ khắc có thể được chuyển theo lô, khoảng 0.11 ETH, và trung bình, chỉ 0.05U cho mỗi lần chuyển” để chứng minh rằng việc sử dụng Ethanol là rẻ. Trên thực tế, nó không làm rõ nguyên tắc và chi tiết tương tác của ETHS.

Off-chain pre-confirmation

Nhờ có một bộ xử lý ngoại chuỗi, các yêu cầu của người dùng Rollup có thể được xác nhận trước trong vòng 1s. Điều này tạo ra trải nghiệm người dùng tốt hơn nhiều so với hệ thống chữ khắc trong 12 giây trở lên trên L1. Tất nhiên, người ủng hộ chữ khắc cũng có thể phản bác rằng cho đến khi calldata được gửi đến chuỗi ETH, kết quả cuối cùng của các giao dịch như vậy là không đáng tin cậy.

Không thể kiểm duyệt và phi tập trung

Người dùng trên Rollup có khả năng bị kiểm duyệt bởi các trình tự ngoại chuỗi, trong khi Ethereum không thể kiểm duyệt người dùng. Tuy nhiên, một Rollup được thiết kế tốt sẽ có một chức năng tổng hợp bắt buộc để đối phó với việc xem xét của trình tự, và cuối cùng trình tự không có quyền xem xét người dùng hoàn toàn.

Do đó, khi người dùng sử dụng Rollup, họ cũng có thể tránh qua trình lập trình viên trên L1 trực tiếp. Rollup mang lại cho người dùng các lựa chọn khác nhau. Bạn có thể sử dụng trình lập trình viên nhanh hơn hoặc sử dụng L1 trực tiếp. Tuy nhiên, Ethereum chỉ có thể sử dụng L1, và không có không gian cho người dùng lựa chọn tự do.

Ngoài ra, Ethnic đã chỉ trích sequencer của Rollup vì quá trung tâm hóa. Nhưng Chính Indexer cũng là một thành phần rất trung tâm hóa. Ethnic giải thích rằng vì bất kỳ ai cũng có thể chạy và xác minh Indexer, nó không trung tâm hóa, nhưng thực tế, đa số người không chạy nút của họ. Do đó, ETHS chỉ thể hiện mặt phân quyền của mình so với Rollup trong các trường hợp cực đoan. Cuối cùng, sequencer của Rollup có thể bị ngừng hoạt động hoặc thất bại, nhưng ETHS vẫn có thể tiếp tục hoạt động miễn là các thành viên cộng đồng chạy nhiều Indexers.

Mô hình lợi nhuận

Không dự án nào có thể sử dụng tình yêu để tạo ra điện. Các dự án phát triển dài hạn phải cân nhắc kỹ vấn đề mô hình lợi nhuận. Cho dù đó là một tổ chức tập trung hay sự kết hợp của các thực thể phi tập trung, chúng phải có lợi nhuận để bảo vệ sự an toàn của mạng lưới trong thời gian dài.

Bộ sắp xếp của Rollup có mô hình lợi nhuận rõ ràng: tính phí gas cao hơn, khai thác MEV, vv. Bộ sắp xếp có quyền lực để đảm bảo hoạt động bình thường của mạng. Khi người dùng nộp calldata trực tiếp vào L1, Indexer không thu nhiều.

Tính thân thiện với nhà phát triển

Hầu hết ngôn ngữ lập trình hợp đồng Rollup, chuỗi công cụ, vv. có thể trực tiếp sử dụng Ethereum, và các nhà phát triển có thể di chuyển một cách liền mạch sang Rollup. Không có gì trong Ethnic; bạn cần nắm vững Rubidity mới, xây dựng quét mới, làm quen với các VM mới, vv. Tất nhiên, khi nhìn từ phía ngược lại, sự kháng cự này cũng là một cơ hội cho việc khám phá có thể được đem lại bởi sự phát triển của một hệ sinh thái mới.

Rút tiền và thanh toán trạng thái

Đây là vấn đề chết người của Facet. Chúng ta biết rằng Rollup không chỉ gửi calldata (đầu vào) đến L1 theo lô, mà còn định kỳ gửi giải quyết trạng thái (đầu ra) sau N hoạt động đến L1. ZKR và OPR có các phương pháp chứng minh khác nhau để xác định xem mối quan hệ giữa đầu vào và đầu ra có đúng không. Bất kể phương pháp chứng minh, quyết định cuối cùng là một hợp đồng L1. Đầu ra và đầu vào trên Rollup có thể được theo dõi và không thể làm giả.

Vậy việc sử dụng giải quyết trạng thái là gì? Được sử dụng cho việc rút tiền, tức là rút tiền quỹ từ L2 đến L1. Khi trạng thái trên L1 được công bố, chúng ta có thể sử dụng Merkle Proof và các phương tiện khác để chứng minh rằng yêu cầu rút tiền của tôi trên L2 được bao gồm trong gốc trạng thái đó dựa trên gốc trạng thái. Khi hợp đồng đã được xác minh đúng, tài sản có thể được phát hành trên L1.

Facet không có cơ chế giải quyết trạng thái, vì vậy không thể thực hiện việc rút tiền phi cấp phép, phi tập trung từ L2 sang L1. Như đã đề cập ở trên, anh ấy cũng cần một lớp L2 để thực thi logic hợp đồng phức tạp hơn. Giống như nền tảng trao đổi AMM của mình FacetSwap.

Chúng ta có thể thấy rằng FacetSwap (một sàn giao dịch xây dựng trên Facet với các hợp đồng ngu ngốc) rõ ràng có hai hành động: gửi tiền và rút tiền. Thông thường, không có giao dịch gửi hoặc rút tiền cho Swap, bởi vì Facet yêu cầu bạn phải vượt qua các lĩnh vực trước khi bạn có thể sử dụng nó.

Trong Facet, việc nạp tiền yêu cầu khóa quỹ L1 trên hợp đồng cầu nối L1, và phát ra sự kiện tương ứng ethscriptions_protocol_createEthscription để indexer được lập chỉ mục. Điều này nhất quán với các phương pháp nạp tiền L2 khác.

Mặt khác, rút tiền có vấn đề bảo mật nghiêm trọng. Vì không có cơ chế giải quyết trạng thái trên Facet, hợp đồng không thể được sử dụng để tự động xác định xem việc rút tiền có hợp lệ từ L2 đến L1 hay không. Vậy Facet đã sử dụng phương pháp nào? Quản trị viên đã phát hành, hoặc cơ chế nhân chứng, tương tự như Cầu Axie bị đánh cắp trước đó.

Hãy nhìn trực tiếp vào cầu của Facet. Địa chỉ là:

0xd729345aa12c5af2121d96f87b673987f354496b.


HashedMessage là một thông điệp được ký bởi người ký và chứa một số nội dung của việc rút tiền. người ký là địa chỉ quản trị mặc định. Bởi vì không có sự thanh toán trạng thái, không thể thực hiện xác minh, chẳng hạn như xem tài khoản có bao nhiêu đồng coin trên L2. Do đó, tất cả các quỹ trong hợp đồng có thể được lấy đi với chữ ký của người ký, dù đó là sự cố từ bên dự án hoặc một cuộc tấn công của hacker để lấy được khóa riêng tư.

Trong Rollup, không cần nhân chứng để giải phóng tài sản; trong các sidechain, nếu nhân chứng muốn thực hiện một số thứ phi tập trung, họ có thể chọn một phần của hệ thống đồng thuận của mình làm đại lý và sử dụng tài sản đảm bảo để ngăn chặn mức độ xấu.

Trong Ethnic và Facet, không có gì cả. Đơn giản là một địa chỉ quản trị viên không che giấu. Điều này có lẽ quá thô sơ cho một dự án L2 thường xuyên la hét 'các hợp đồng thông minh là lỗi thiết kế,' 'Rollup là trung tâm hóa,' và 'chúng tôi là một nền tảng tính toán thế hệ tiếp theo.' Rõ ràng, nó vẫn còn nhiều lỗi, nhưng chúng ta vẫn có thể tiếp tục quan sát, mặc dù những lỗi này không dễ sửa chữa và chúng có thể tồn tại trong Bitcoin Layer 2 cũng.

tổng cộng

Hiện tại, có một số "tuyên truyền sai lệch" trong Ethnicity. Dưới đây là một số điểm chính:

·Tài sản trên Ethnic và Facet không phải là tài sản được phát hành trên L1.

·Để có khả năng hợp đồng phức tạp, Facet đã phát triển thành một thực thể L2, nhưng nó mang theo rủi ro bảo mật tài chính lớn.

·Yêu cầu chính thức là loại bỏ tính toán hợp đồng trên L1, nhưng thậm chí còn không sử dụng ứng dụng hàng đầu của chính nó.

·Ethanol tương tự như một Rollup với chức năng cơ bản rất kém. Không phải Rollup nào cũng rẻ và nhanh, cũng không an toàn. Những gì anh ấy có thể đạt được, Rollup có thể làm và nó không thể cung cấp những chức năng rất quan trọng mà Rollup có thể đạt được.

· Nếu anh ta muốn giải quyết các vấn đề trên, anh ta cần phát triển một cơ chế giải quyết trạng thái, cộng với một trình tự và một khối L2, sau đó cuối cùng nó sẽ trở thành một Rollup.

Ethnicity đã tận dụng dòng chữ BTC và dựa vào khái niệm này để thổi phồng rượu cũ trong chai mới, nhưng nó đã không phát hiện ra một mô hình mới. Hiện tại, ETHS vẫn chủ yếu dựa trên đầu cơ tài chính, không phải bản thân sản phẩm này có thể mang lại điều gì đó mà Ethereum Layer 2 không có. Giá trị lâu dài của loại điều này rõ ràng vẫn chưa được khám phá, nhưng ở dạng hiện tại, ETHS đã mang "gánh nặng không thể chịu đựng được của cuộc sống" và khẩu hiệu của ông khác xa với hiệu quả thực tế của nó.

Tuyên bố:

  1. Bài viết này được sao chép từ [ theblockbeats]. Tất cả bản quyền thuộc về tác giả gốc [ Tháng sương mù, Web3 chuyên nghiệp]. Nếu có bất kỳ ý kiến phản đối về việc tái in này, vui lòng liên hệ với Gate Họcđội ngũ và họ sẽ xử lý nhanh chóng.
  2. Miễn trừ trách nhiệm: Các quan điểm và ý kiến được thể hiện trong bài viết này chỉ thuộc về tác giả và không cấu thành bất kỳ lời khuyên đầu tư nào.
  3. Các bản dịch của bài viết sang các ngôn ngữ khác được thực hiện bởi đội ngũ Gate Learn. Trừ khi được đề cập, việc sao chép, phân phối hoặc đạo văn các bài viết dịch là không được phép.

Diễn giải kỹ thuật về chữ khắc ETHS của Ethereum: Đó có phải là sự thổi phồng tài chính hay không phải là sáng tạo sản phẩm?

Trung cấp1/1/2024, 9:19:15 AM
Bài viết này thảo luận sâu về phương pháp triển khai của ETHS, các khía cạnh, và tác động cũng như mối quan hệ giữa các khía cạnh và hợp đồng thông minh, và cũng thảo luận về chúng so với Rollup.

GIỚI THIỆU

Chữ khắc Ethereum hiện tại về cơ bản là một loại rượu cũ trong lọ mới từ Ordinals, một mô hình mới không mang ý nghĩa thực sự. ETHS vẫn có rủi ro về bảo mật, và mặc dù nó phân cấp hơn Rollup, quy trình rút tiền vẫn phụ thuộc vào một bên thứ ba làm chứng/notary, và có nguy cơ bị đánh cắp. Rõ ràng, hiện tại ETHS vẫn chủ yếu là sự bão hòa tài chính, không phải là nó có thể mang lại sự đổi mới mà Ethereum Layer 2 không thể mang lại.

Sự phổ biến gần đây của các chữ khắc sinh thái BTC đã khuyến khích các nhà phát triển của các chuỗi khác xây dựng các hệ thống tương tự. Cách thức triển khai các hệ thống chữ khắc trên các chuỗi khác nhau và các chức năng mà chúng có thể đạt được có chút khác biệt, nhưng họ có một số điểm chung:

1. Tất cả các chữ khắc đều sử dụng thông tin văn bản đính kèm vào việc chuyển tiền để diễn đạt thao tác bạn muốn thực hiện, chẳng hạn như viết “chuyển 1 đồng tiền cho XXX” trong tin nhắn. Lưu ý rằng thông tin này là văn bản thuần túy và không liên quan đến các thao tác như thực thi hợp đồng thông minh trên chuỗi.

2. Nhà phát triển sẽ thiết kế một loạt các thông số kỹ thuật và tiêu chuẩn để chuẩn hóa tất cả thông tin văn bản.

3. Nhà phát triển cung cấp một tập hợp các Indexer indexers để tính toán trạng thái nội bộ của hệ thống chữ khắc sau khi thu thập thông tin văn bản của tất cả các chữ khắc trên chuỗi. Indexer là một thành phần mã nguồn mở ngoại chuỗi mà bất kỳ ai cũng có thể chạy.

Bảng định BTC đã thiết lập một cơ chế để phát hành NFT và token trên BTC, và cũng đã dẫn đến sự suy nghĩ quy mô lớn về BTC L2. Theo cách này, chúng ta có thể nghĩ rằng Ordinals có phần cắt cạnh và thám hiểm. Tuy nhiên, Ordinals bị hạn chế bởi kiến trúc của BTC về công nghệ và trải nghiệm sản phẩm, và cũng bị cộng đồng BTC OG chỉ trích vì lý do như ô nhiễm bụi và tiêu thụ dữ liệu.

Vậy, việc in lại chữ khắc trên Ethereum có ý nghĩa không? Sau tất cả, chính Ethereum có hợp đồng thông minh phức tạp, và ERC20 và NFT cũng là một phần của Ethereum; các dự án chữ khắc này sẽ ảnh hưởng như thế nào đối với hệ sinh thái Ethereum, và liệu chúng có gây ra tranh cãi và hỗn loạn trên BTC không?

Triển khai kỹ thuật của Ethical

Hãy trước hết xem cách thức thực hiện của Ethereum. Đó là một dự án chữ khắc nổi tiếng trên Ethereum chủ yếu sử dụng Calldata để hoạt động.

Calldata là dữ liệu đầu vào gốc được truyền trong một giao dịch Ethereum. Thông thường nó được sử dụng để truyền các tham số cần thiết cho tương tác hợp đồng thông minh, nhưng cũng có thể được sử dụng để gửi tin nhắn văn bản (bình luận, chữ khắc, ghi chú chuyển khoản, v.v.) đến một địa chỉ EOA. Trong hình vẽ, dữ liệu đầu vào là calldata.

Nếu bạn muốn sử dụng Dân tộc học để khắc chữ “Hello world” trong một giao dịch, bạn cần xây dựng một giao dịch với calldata sau:

Sau khi Bộ chỉ mục ngoại tuyến theo dõi giao dịch này, nó sẽ cập nhật cơ sở dữ liệu và thông báo cho người dùng rằng một chữ khắc mới đã được tạo ra, và nội dung của chữ khắc là Hello World. Nội dung phức tạp hơn, như thông tin hình ảnh đại diện base64, cũng có thể được đặt trong chữ khắc.

Chủng tộc hiện đã thông qua 6 ESIPs (các đề xuất giống như EIP) để xác định việc sử dụng chữ khắc trong các tình huống khác nhau. Tuy nhiên, đây chỉ là các thông số cơ bản về chữ khắc, như định dạng của các giao dịch chữ khắc được khởi xướng từ EOA, sự kiện phát ra từ hợp đồng, v.v.

Vì Ethnicity là một dự án trên Ethereum, cũng có thể thực hiện một mức độ logic cụ thể bằng cách sử dụng hợp đồng thông minh Ethereum. Quan trọng là lưu ý rằng tương tác trực tiếp với hợp đồng thông minh không phải là cách tiếp cận được khuyến nghị bởi Ethical.

Mặc dù các thị trường NFT chính thức và tương tự cũng được triển khai trực tiếp bằng cách sử dụng hợp đồng thông minh. Theo tài liệu chính thức, Ethical muốn cung cấp cho người dùng một “dịch vụ máy tính phi tập trung và giá cả phải chăng”: việc tách biệt tính toán khỏi chuỗi sẽ giảm đáng kể chi phí sử dụng Ethereum.

Hãy khám phá chi tiết về chi phí gọi một hợp đồng thông minh, có thể chia thành ba phần:

·Chi phí giao dịch cơ bản: Mọi giao dịch Ethereum đều cần thanh toán, hiện tại là 21000 gas.

·Chi phí truyền dữ liệu (calldata): Calldata thường được sử dụng để gửi dữ liệu và tham số cho tương tác với hợp đồng thông minh. Sau điều chỉnh EIP-2028, calldata thường tiêu tốn 16 gas mỗi byte (4 gas nếu dữ liệu là 0 byte).

·Chi phí thực thi hợp đồng: Nếu một giao dịch gọi một chức năng trong một hợp đồng thông minh, tùy thuộc vào độ phức tạp của việc thực thi chức năng, cũng phải trả chi phí tính toán. Ví dụ, nếu liên quan đến cập nhật trạng thái (như cập nhật thông tin số dư trong một hợp đồng ERC-20), việc gọi SSTORE có thể tiêu tốn đến 5000-20.000 gas.

Hãy xem một giao dịch chuyển USDT rất đơn giản. Giao dịch này tốn tổng cộng 63.197 khí gas, và calldata là:


Hãy phân tích dữ liệu cuộc gọi này và xem nó sẽ tốn bao nhiêu khí.

·Dữ liệu calldata của Ethereum ở định dạng thập lục phân, nghĩa là mỗi hai chữ số là một byte (16^2 = 2^8). Cái 0x ở đầu chỉ ra rằng dữ liệu ở dạng thập lục phân.

·Sau đoạn 0x là a9059cbb là bộ chọn chức năng và chiếm 4 byte không bằng không.

·32 byte tiếp theo là địa chỉ, với 12 byte của số không ở phía trước (vì địa chỉ Ethereum là 20 byte, 0 đến 32 byte được thêm vào bên trái), và 20 byte dữ liệu địa chỉ khác không.

·32 byte cuối cùng đại diện cho số lượng, với một lượng lớn số không bên trái, 3b9aca00 dữ liệu khác không bằng không ở cuối, và 4 byte khác không bằng không.

·Vì vậy, 28 byte khác không và 40 byte không

Do đó, callDataGas = 28 * 16 + 40 * 4 = 608 gas.

Tổng gas là 63197. Sau khi trừ chi phí calldata và chi phí cố định, chi phí tính toán hợp đồng thông minh để thực hiện giao dịch này là 41.589 gas. Chi phí tính toán hợp đồng chiếm đa số trong giao dịch này, và đây chỉ là một giao dịch đơn giản. Trong các giao dịch phức tạp, chi phí tính toán hợp đồng sẽ tăng lên thêm.

Việc đặt quá trình tính toán ngoài chuỗi thực sự sẽ giảm chi phí sử dụng đáng kể: nếu bạn không muốn gọi các hợp đồng thông minh trực tiếp trên chuỗi, bạn có thể chuyển đến một địa chỉ EOA đã thỏa thuận

0x0000000000000000000000000000000face7 Gửi dữ liệu giao dịch

Trong dữ liệu cuộc gọi giao dịch, hãy xác định hợp đồng ban đầu mà bạn muốn gọi, và các tham số đầu vào tương ứng. Vì địa chỉ ở trên là tài khoản EOA và không có mã hợp đồng, thao tác mô tả ở trên sẽ không kích hoạt các nhiệm vụ tính toán trên chuỗi; nó chỉ đăng một tin nhắn.

Off-chain, sau khi Indexer nghe tin nhắn này, nó sẽ phân tích để tìm ra hợp đồng nào trên chuỗi ETH mà người gửi tin nhắn này ban đầu muốn gọi, sau đó Indexer sẽ tính toán kết quả gọi hợp đồng ngoại chuỗi.

Nếu một người lập chỉ mục ngoại tuyến muốn tính toán các chữ khắc và hợp đồng thông minh, nó phải có một tập hợp các quy tắc và thời gian chạy của hàm chuyển trạng thái STF. Phần phức tạp có thể được gọi là máy ảo VM. Ethnic đã ra mắt máy ảo riêng của mình—Ethnic VM—trong ESIP-4, sau đó đã đổi tên thành Facet VM.

Facet — một chút giống như một bộ xử lý phụ

Facet định nghĩa chính mình là một nền tảng tính toán rẻ, dễ sử dụng, an toàn và phi tập trung. Nghe dữ liệu cuộc gọi đạo đức trên Ethereum, kéo nó vào máy ảo để tính toán, và cuối cùng trả kết quả cho người dùng. Facet có một số thành phần chính:

·Facet VM, một bộ VM được viết bằng Ruby, chịu trách nhiệm theo dõi các giao dịch ETHS, phân tích calldata và thực hiện các hoạt động.

·Rubidity, ngôn ngữ lập trình hợp đồng thông minh trong Facet, tương tự như Ruby, và cũng giữ lại nhiều ứng dụng và khái niệm solidity, để nhà phát triển có thể bắt đầu nhanh chóng.

Hợp đồng ngu ngốc, một loại hợp đồng chạy trên Facet. Tên gọi đầy hài hước. Một số người cũng đúng khi gọi nó là hợp đồng ngu ngốc. Từ 'ngu ngốc' ở đây còn là một trò chơi chữ; 'ngu ngốc' có thể miêu tả quy trình im lặng của loại hợp đồng này. Nhưng ngược lại, theo câu ngạn ngữ chính thức 'Dốt, chính họ thông minh', nó có nghĩa là ngu ngốc, với một sự cứng đầu mạnh mẽ trong việc tranh luận với các hợp đồng thông minh, nên không vấn đề gì gọi chúng là hợp đồng ngu ngốc.

Chính bản hợp đồng ngu ngốc này thực sự sẽ không được triển khai trên Ethereum; mã của nó sẽ được đăng trên chuỗi ETH dưới dạng calldata. Dưới đây là một ví dụ về Facet gọi một bản hợp đồng ngu ngốc:

Một giao dịch đúc token đến địa chỉ lỗ đen EOA

0x000000000000000000000000000face7 gửi calldata trong hình dưới đây, chỉ định rằng bạn chỉ muốn token và số lượng mint. Thực tế đây chính là giống như Ordinals hoặc BRC-20:

Hãy xem xét một lần nữa sự so sánh hình ảnh giữa Rubidity và Solidity, như được hiển thị dưới đây.


Mặc dù tuyên bố chính thức là Rubidity có một khái niệm và cấu trúc giống như Solidity, vì vậy các nhà phát triển có thể bắt đầu nhanh chóng. Nhưng chúng ta biết rằng điều này thực sự ảnh hưởng tiêu cực đến việc phát triển từ phía nhà phát triển. Ngoài ra, hiện tại Facet VM chỉ hỗ trợ các hợp đồng ngu ngốc trên danh sách trắng chính thức, điều này cho thấy rằng chính phủ không tin tưởng nhiều vào ngôn ngữ và VM này. Việc tái sử dụng EVM có khó khăn hơn chính thức trong kỹ thuật so với việc phát triển một VM mới và một ngôn ngữ mới, tôi không biết. Nhưng có một điều chắc chắn: ngôn ngữ mới, hợp đồng mới, hệ sinh thái mới và cách sử dụng Ethereum mới thật sự đủ làm nổi bật.

Cuộc tấn công của Facet vào hợp đồng thông minh

Tài liệu Facet đã đưa ra nhận xét mạnh mẽ về Ethereum và hợp đồng thông minh: "Hợp đồng thông minh được coi là tính năng vượt trội hơn tất cả những tính năng khác khiến Ethereum trở nên đặc biệt, nhưng luận điểm của Facet là Hợp đồng thông minh là lỗi thiết kế lớn nhất của Ethereum."

Họ tin rằng hợp đồng thông minh của Ethereum là lỗ hổng thiết kế lớn nhất, bởi vì bản thân hợp đồng chỉ yêu cầu một đầu vào nhất định (calldata) và đầu ra của nó được xác định, vì vậy nó không nên được tính toán trên chuỗi, lãng phí tiền mà không có lý do. Kết hợp với "dịch vụ điện toán phi tập trung và giá cả phải chăng" của Ethical, rõ ràng Ethnic and Facet thực sự muốn tạo ấn tượng thị trường, "Chúng tôi đang tạo ra một mô hình mở rộng Ethereum và phương pháp sử dụng mới", nhưng trên thực tế, một số giải pháp kỹ thuật riêng của ETHS không đáng tin cậy lắm.

Từ quan điểm của sản phẩm, Facet có thể kích hoạt các hợp đồng thông minh một cách gián tiếp dưới chuỗi, và nó cũng có hệ thống hợp đồng ngu xuẩn riêng dưới chuỗi. Thực sự, chính phủ đang thực hiện khẩu hiệu của mình.

Tuy nhiên, từ quan điểm kinh tế, trên thế giới không có bữa trưa miễn phí; tất nhiên, lưu trữ và tính toán đều yêu cầu tiền bạc. Vậy Indexer làm thế nào để giải quyết phần chi phí này? Không có giải thích chính thức cho điều này, vì vậy hãy tưởng tượng:

Người dùng bị tính phí. Ví dụ, phí xử lý được tính bởi thị trường NFT từ người mua, nhưng chúng ta không thể coi mô hình tính phí dựa trên dự án đơn giản như một phương pháp tính phí dài hạn giống như mạng L2.

·Trở nên giàu có thông qua việc tạo ra sự bùng nổ sinh thái của riêng bạn. Điều này tất nhiên là có thể, nhưng đó chỉ là một giải pháp ngắn hạn để giữ cho dự án hấp dẫn trong một thời gian ngắn. Nếu Ethnicity muốn trở thành một mô hình Ethereum mới, Indexer phải có cơ chế kinh tế dựa trên mạng lưới dài hạn để đảm bảo hoạt động.

·Nếu hàng hóa công cộng không sinh lời, tổ chức nào sẽ quyên góp? Tôi nghĩ ít nhất Quỹ Ethereum sẽ không hoạt động đặc biệt vì Ethereum chính nó đã có một giải pháp rất tốt - Rollup.

Nguyên nhân gốc rễ của Facet và hợp đồng ngu ngốc

Nếu chúng ta chỉ cần dạng đơn giản của chữ khắc Ethereum, thì chỉ cần một dự án của Ethnic là đủ. Vậy tại sao đề xuất ESIP-4 của nó lại tạo ra Facet một lần nữa?

Vì hệ thống chữ khắc không thể sử dụng cho logic giao dịch phức tạp. Chúng ta có thể xem xét logic hoạt động của hợp đồng thị trường NFT chính thức của Ethical, sử dụng cơ chế đặt lệnh chờ.

Nếu bạn muốn gửi chữ khắc NFT vào hợp đồng, bạn chỉ cần viết calldata như là ethscriptionID của chữ khắc và gọi hợp đồng thị trường. Vì thao tác này cố ý chọn một hình thức gọi hàm không hợp lệ, nó kích hoạt fallback() mặc định.

Cuối cùng, một sự kiện có tên là PotentialEthScriptionOfferings sẽ được kích hoạt trên chuỗi Ethereum. Sau khi nút Indexer theo dõi sự kiện này ngoại mạng, nó sẽ chuyển quyền sở hữu của NFT thành hợp đồng thị trường cục bộ.

Để tiết kiệm gas, thị trường giao dịch ETHS không lưu trữ một số tham số của các lệnh chờ mua của người bán, như giá, hạn chót, v.v. trong hợp đồng ETH, mà thay vào đó đặt chúng ngoại tuyến dưới dạng tin nhắn. Một cách trực quan, chúng nên đã được lưu trữ trên máy chủ dApp. Khi người mua đã theo dõi tin nhắn này, họ có thể gửi yêu cầu mua bằng cách sử dụng lệnh BuyWithSignature().

Sử dụng cơ chế đặt lệnh chờ là điều bình thường đối với NFT vì chính NFT không đồng nhất. Vì vậy nếu đó là chữ khắc mã thông tin chuẩn hoá, liệu cơ chế AMM của hợp đồng có thể được sử dụng không? Câu trả lời là không. Tình trạng của NFT hoặc token đã được chạm khắc không nằm trên L1, điều này cũng tương tự như Ordinals và BRC-20. Điều này hoàn toàn ngược lại với một số chiến dịch tuyên truyền của cộng đồng. Mọi người cần phải cẩn thận. Chữ khắc không phải là tài sản trên chuỗi ETH theo nghĩa đúng đắn của từ ngữ. Chúng ta không thể nói rằng calldata tạo ra tài sản nằm trên L1, và chúng ta có thể tuyên bố hướng dẫn hoạt động trên L1, gọi là tài sản bản địa trên L1. Nếu không, tài sản bản địa trên L2 trên Rollup cũng có thể được gọi là tài sản L1, vì calldata của Rollup đều nằm trên L1. Rõ ràng, việc gọi tài sản loại này là tài sản bản địa trên L1 là vô lý.

Bạn có thể tự hỏi, liệu rằng đó chỉ là một hợp đồng thông minh được sử dụng để giao dịch? Tại sao lại nói rằng các chữ khắc trên hợp đồng không thể đọc và thao tác? Trên thực tế, hợp đồng này chỉ chịu trách nhiệm thu tiền, chuyển tiền và tổ chức sự kiện cho các nút chỉ mục dưới chuỗi để lắng nghe và kích hoạt các hoạt động tương ứng. Trong mắt của Ethereum EVM, trạng thái của một cái gì đó giống như một chữ khắc không thể khôi phục trong cơ sở dữ liệu “World State” lưu trữ cụ thể trạng thái của Ethereum, cũng không thể hợp đồng tham chiếu đến nó.

Dù tài sản có ở dạng token, NFT hay bất cứ thứ gì lạ lẫm, tôi có thể đưa ra một tiêu chuẩn rất đơn giản để xác định tài sản L1 và tài sản L2: liệu trạng thái của chúng có thể khôi phục về 'trạng thái của thế giới' của Ethereum, liệu EVM của L1 có thể tham chiếu, gọi, truy vấn và thay đổi trạng thái của tài sản hay không; nếu không, thì đó không phải là tài sản L1.

Vì vậy, bạn cũng có thể thấy rằng tên của sự kiện nạp tiền là PotentialEthscriptionDeposit, tức là “nạp tiền chữ khắc có thể”, chứ không phải là một sự nạp tiền xác định, vì hợp đồng không thể xác định xem chữ khắc này có tồn tại hay không, và không thể xác minh tính xác thực của nó. Nếu bạn đặt một chữ khắc mà không tồn tại, hoặc của người khác, hợp đồng sẽ không từ chối bạn; chỉ là Indexer sẽ không bao gồm hành động của bạn.

Do đó, hệ thống chữ khắc chỉ có thể thực hiện logic pseudo-hợp đồng đơn giản này; đơn đặt hàng đang chờ là một trong số đó. Bản chất của một đơn đặt hàng đang chờ là cả hai bên trong giao dịch đồng ý với thông tin của nhau dưới một quy tắc. Trong thực tế, nó có thể được diễn đạt bằng văn bản thông thường mà không cần một hợp đồng thông minh. Điều này tương tự như nguyên lý của một hệ thống chữ khắc.

Chúng ta có thể tưởng tượng cách mà quá trình này có thể được hoàn thành mà không cần sử dụng một hợp đồng thông minh: người bán khắc một tin nhắn trong một giao dịch thông thường, chuyển cho tôi 1ETH, và ai đó ghi chú 123 có thể nhận được một NFT với số chữ khắc của tôi là 123. Điều này chỉ đòi hỏi Indexer hỗ trợ logic này. Nó lắng nghe rằng ai đó đã chuyển 1ETH cho người bán và thêm một ABC, sau đó nó có thể được chuyển trực tiếp vào cơ sở dữ liệu Indexer ngoại tuyến.

Tất nhiên, ví dụ này sẽ gây ra một số vấn đề như giao dịch lặp lại có thể phát sinh từ việc nhiều người mua NFT cùng một lúc. Người bán đã nhận được nhiều chuyển khoản, nhưng cuối cùng, NFT chỉ có thể được chuyển cho một người bởi Indexer. Điều này cũng là một trong những lý do mà chính phủ rõ ràng chỉ trích hợp đồng thông minh nhưng sử dụng hợp đồng để thực hiện thị trường NFT, vì vậy bạn cũng nên hiểu rõ tuyên bố chính thức rằng việc gọi hợp đồng thông minh mà không tính toán qua Facet là không đáng tin cậy.

Tất nhiên, các đơn đặt hàng đang chờ có thể lý thuyết sử dụng văn bản thường thay vì yêu cầu một hợp đồng, nhưng logic tương đối phức tạp của AMM yêu cầu các hợp đồng thông minh, vì nó không yêu cầu một thỏa thuận ngang hàng giữa hai bên mà yêu cầu sự chấp thuận hợp đồng. Một hợp đồng hoạt động như một người xem đáng tin cậy yêu cầu kiểm tra thông tin cơ bản như số dư và tính thanh khoản, và thực hiện các phép tính. Hợp đồng phải có khả năng lấy bất kỳ dữ liệu tài sản nào mà nó cần.

AMM, bằng cách khác, chỉ là một hình thức tương đối đơn giản của DeFi, và bất kỳ logic phức tạp nào khác cũng không thể được triển khai trên Ethnic một mình. Đó là lý do tại sao Facet được ra mắt - Ưu tiên hàng đầu của Facet là liên miền! Thực tế đó là một L2, nhưng nó không có cấu trúc khối, vì vậy chúng tôi không gọi nó là cross-chain mà là cross-domain. Khi tất cả tài sản L1 được liên miền đến Facet, không có vấn đề nào mà chúng không thể được gọi qua các miền. Tất cả tài sản ngoại xích có thể được vận hành với các hợp đồng ngu ngốc dưới chuỗi, từ đó hỗ trợ logic hợp đồng phức tạp.

So sánh với Rollup

Qua cuộc thảo luận dài ở trên, bạn nên thấy rằng giải pháp của Ethical hơi giống với Rollup. Nhưng đó chỉ là “giống”; nói một cách nghiêm ngặt, nó chỉ thực hiện một phần nhỏ các chức năng cốt lõi của Rollup. Trong khi các chức năng bị thiếu, đã gây ra thiệt hại nghiêm trọng cho câu chuyện của nó hoặc đặt người dùng vào nguy cơ nghiêm trọng.

Rollup là một hệ thống phức tạp, và chúng tôi sẽ không mở rộng ở đây. Nó có một điểm chung với Ethanol:

  • Họ đều gửi dữ liệu calldata cho giao dịch L2 trên Ethereum.

  • Tất cả các phép tính được xử lý ngoại chuỗi.

Những điểm chung rất rõ ràng, và chúng ta cần phải thể hiện những sự khác biệt một cách chi tiết.

Nộp dữ liệu cuộc gọi hàng loạt Rollup

Trong hầu hết các trường hợp, người dùng trong Rollup không gửi giao dịch trực tiếp đến L1, mà thay vào đó gửi chúng đến một trình tự ngoại tuyến. Trình tự sắp xếp tất cả các giao dịch, đóng gói và nén chúng, và gửi calldata đến L1 theo lô. Bằng cách gửi calldata từ nhiều người dùng trong một giao dịch, chi phí cơ bản của 21.000 gas có thể được phân tán.

Không có cơ chế đó trong Sắc tộc; tất cả người dùng đều gửi dữ liệu gọi trực tiếp đến L1.

Sử dụng ví dụ USDT ở trên (608 gas cho calldata), hãy giả sử rằng 100 người dùng đã khởi tạo 100 giao dịch và tính toán sơ bộ sự khác biệt về chi phí giữa hai trường hợp một cách khá chưa chính xác:

· Mỗi người dùng chữ khắc sẽ phải trả 21608 gas (608 + 21000). Phần còn lại của việc tính toán không được thanh toán vì việc tính toán được thực hiện ngoại chuỗi.

Người dùng Rollup trả 818 khí gas ((608*100+21000) /100) mỗi người. Phần toán học là giống như ở trên.

Tất nhiên, mỗi người dùng Rollup cũng cần thanh toán phí tính toán L2 và lưu trữ cho người sắp xếp, nhưng nó rẻ hơn nhiều so với L1, vì vậy nó không đáng kể trong trường hợp này. Ngoài ra, rollup yêu cầu một số trường đặc biệt bổ sung để tăng dung lượng, nhưng đồng thời, nó cũng có khả năng nén dữ liệu tốt hơn, vì vậy chúng tôi sẽ không mở rộng ở đây.

Qua ước lượng sơ bộ này, có thể thấy rằng Ethanol không có lợi thế về chi phí so với Layer 2. Ngoài ra, trong công cuộc tuyên truyền cộng đồng của dự án, tôi đã thấy những điều như “4000 chữ khắc có thể được chuyển theo lô, khoảng 0.11 ETH, và trung bình, chỉ 0.05U cho mỗi lần chuyển” để chứng minh rằng việc sử dụng Ethanol là rẻ. Trên thực tế, nó không làm rõ nguyên tắc và chi tiết tương tác của ETHS.

Off-chain pre-confirmation

Nhờ có một bộ xử lý ngoại chuỗi, các yêu cầu của người dùng Rollup có thể được xác nhận trước trong vòng 1s. Điều này tạo ra trải nghiệm người dùng tốt hơn nhiều so với hệ thống chữ khắc trong 12 giây trở lên trên L1. Tất nhiên, người ủng hộ chữ khắc cũng có thể phản bác rằng cho đến khi calldata được gửi đến chuỗi ETH, kết quả cuối cùng của các giao dịch như vậy là không đáng tin cậy.

Không thể kiểm duyệt và phi tập trung

Người dùng trên Rollup có khả năng bị kiểm duyệt bởi các trình tự ngoại chuỗi, trong khi Ethereum không thể kiểm duyệt người dùng. Tuy nhiên, một Rollup được thiết kế tốt sẽ có một chức năng tổng hợp bắt buộc để đối phó với việc xem xét của trình tự, và cuối cùng trình tự không có quyền xem xét người dùng hoàn toàn.

Do đó, khi người dùng sử dụng Rollup, họ cũng có thể tránh qua trình lập trình viên trên L1 trực tiếp. Rollup mang lại cho người dùng các lựa chọn khác nhau. Bạn có thể sử dụng trình lập trình viên nhanh hơn hoặc sử dụng L1 trực tiếp. Tuy nhiên, Ethereum chỉ có thể sử dụng L1, và không có không gian cho người dùng lựa chọn tự do.

Ngoài ra, Ethnic đã chỉ trích sequencer của Rollup vì quá trung tâm hóa. Nhưng Chính Indexer cũng là một thành phần rất trung tâm hóa. Ethnic giải thích rằng vì bất kỳ ai cũng có thể chạy và xác minh Indexer, nó không trung tâm hóa, nhưng thực tế, đa số người không chạy nút của họ. Do đó, ETHS chỉ thể hiện mặt phân quyền của mình so với Rollup trong các trường hợp cực đoan. Cuối cùng, sequencer của Rollup có thể bị ngừng hoạt động hoặc thất bại, nhưng ETHS vẫn có thể tiếp tục hoạt động miễn là các thành viên cộng đồng chạy nhiều Indexers.

Mô hình lợi nhuận

Không dự án nào có thể sử dụng tình yêu để tạo ra điện. Các dự án phát triển dài hạn phải cân nhắc kỹ vấn đề mô hình lợi nhuận. Cho dù đó là một tổ chức tập trung hay sự kết hợp của các thực thể phi tập trung, chúng phải có lợi nhuận để bảo vệ sự an toàn của mạng lưới trong thời gian dài.

Bộ sắp xếp của Rollup có mô hình lợi nhuận rõ ràng: tính phí gas cao hơn, khai thác MEV, vv. Bộ sắp xếp có quyền lực để đảm bảo hoạt động bình thường của mạng. Khi người dùng nộp calldata trực tiếp vào L1, Indexer không thu nhiều.

Tính thân thiện với nhà phát triển

Hầu hết ngôn ngữ lập trình hợp đồng Rollup, chuỗi công cụ, vv. có thể trực tiếp sử dụng Ethereum, và các nhà phát triển có thể di chuyển một cách liền mạch sang Rollup. Không có gì trong Ethnic; bạn cần nắm vững Rubidity mới, xây dựng quét mới, làm quen với các VM mới, vv. Tất nhiên, khi nhìn từ phía ngược lại, sự kháng cự này cũng là một cơ hội cho việc khám phá có thể được đem lại bởi sự phát triển của một hệ sinh thái mới.

Rút tiền và thanh toán trạng thái

Đây là vấn đề chết người của Facet. Chúng ta biết rằng Rollup không chỉ gửi calldata (đầu vào) đến L1 theo lô, mà còn định kỳ gửi giải quyết trạng thái (đầu ra) sau N hoạt động đến L1. ZKR và OPR có các phương pháp chứng minh khác nhau để xác định xem mối quan hệ giữa đầu vào và đầu ra có đúng không. Bất kể phương pháp chứng minh, quyết định cuối cùng là một hợp đồng L1. Đầu ra và đầu vào trên Rollup có thể được theo dõi và không thể làm giả.

Vậy việc sử dụng giải quyết trạng thái là gì? Được sử dụng cho việc rút tiền, tức là rút tiền quỹ từ L2 đến L1. Khi trạng thái trên L1 được công bố, chúng ta có thể sử dụng Merkle Proof và các phương tiện khác để chứng minh rằng yêu cầu rút tiền của tôi trên L2 được bao gồm trong gốc trạng thái đó dựa trên gốc trạng thái. Khi hợp đồng đã được xác minh đúng, tài sản có thể được phát hành trên L1.

Facet không có cơ chế giải quyết trạng thái, vì vậy không thể thực hiện việc rút tiền phi cấp phép, phi tập trung từ L2 sang L1. Như đã đề cập ở trên, anh ấy cũng cần một lớp L2 để thực thi logic hợp đồng phức tạp hơn. Giống như nền tảng trao đổi AMM của mình FacetSwap.

Chúng ta có thể thấy rằng FacetSwap (một sàn giao dịch xây dựng trên Facet với các hợp đồng ngu ngốc) rõ ràng có hai hành động: gửi tiền và rút tiền. Thông thường, không có giao dịch gửi hoặc rút tiền cho Swap, bởi vì Facet yêu cầu bạn phải vượt qua các lĩnh vực trước khi bạn có thể sử dụng nó.

Trong Facet, việc nạp tiền yêu cầu khóa quỹ L1 trên hợp đồng cầu nối L1, và phát ra sự kiện tương ứng ethscriptions_protocol_createEthscription để indexer được lập chỉ mục. Điều này nhất quán với các phương pháp nạp tiền L2 khác.

Mặt khác, rút tiền có vấn đề bảo mật nghiêm trọng. Vì không có cơ chế giải quyết trạng thái trên Facet, hợp đồng không thể được sử dụng để tự động xác định xem việc rút tiền có hợp lệ từ L2 đến L1 hay không. Vậy Facet đã sử dụng phương pháp nào? Quản trị viên đã phát hành, hoặc cơ chế nhân chứng, tương tự như Cầu Axie bị đánh cắp trước đó.

Hãy nhìn trực tiếp vào cầu của Facet. Địa chỉ là:

0xd729345aa12c5af2121d96f87b673987f354496b.


HashedMessage là một thông điệp được ký bởi người ký và chứa một số nội dung của việc rút tiền. người ký là địa chỉ quản trị mặc định. Bởi vì không có sự thanh toán trạng thái, không thể thực hiện xác minh, chẳng hạn như xem tài khoản có bao nhiêu đồng coin trên L2. Do đó, tất cả các quỹ trong hợp đồng có thể được lấy đi với chữ ký của người ký, dù đó là sự cố từ bên dự án hoặc một cuộc tấn công của hacker để lấy được khóa riêng tư.

Trong Rollup, không cần nhân chứng để giải phóng tài sản; trong các sidechain, nếu nhân chứng muốn thực hiện một số thứ phi tập trung, họ có thể chọn một phần của hệ thống đồng thuận của mình làm đại lý và sử dụng tài sản đảm bảo để ngăn chặn mức độ xấu.

Trong Ethnic và Facet, không có gì cả. Đơn giản là một địa chỉ quản trị viên không che giấu. Điều này có lẽ quá thô sơ cho một dự án L2 thường xuyên la hét 'các hợp đồng thông minh là lỗi thiết kế,' 'Rollup là trung tâm hóa,' và 'chúng tôi là một nền tảng tính toán thế hệ tiếp theo.' Rõ ràng, nó vẫn còn nhiều lỗi, nhưng chúng ta vẫn có thể tiếp tục quan sát, mặc dù những lỗi này không dễ sửa chữa và chúng có thể tồn tại trong Bitcoin Layer 2 cũng.

tổng cộng

Hiện tại, có một số "tuyên truyền sai lệch" trong Ethnicity. Dưới đây là một số điểm chính:

·Tài sản trên Ethnic và Facet không phải là tài sản được phát hành trên L1.

·Để có khả năng hợp đồng phức tạp, Facet đã phát triển thành một thực thể L2, nhưng nó mang theo rủi ro bảo mật tài chính lớn.

·Yêu cầu chính thức là loại bỏ tính toán hợp đồng trên L1, nhưng thậm chí còn không sử dụng ứng dụng hàng đầu của chính nó.

·Ethanol tương tự như một Rollup với chức năng cơ bản rất kém. Không phải Rollup nào cũng rẻ và nhanh, cũng không an toàn. Những gì anh ấy có thể đạt được, Rollup có thể làm và nó không thể cung cấp những chức năng rất quan trọng mà Rollup có thể đạt được.

· Nếu anh ta muốn giải quyết các vấn đề trên, anh ta cần phát triển một cơ chế giải quyết trạng thái, cộng với một trình tự và một khối L2, sau đó cuối cùng nó sẽ trở thành một Rollup.

Ethnicity đã tận dụng dòng chữ BTC và dựa vào khái niệm này để thổi phồng rượu cũ trong chai mới, nhưng nó đã không phát hiện ra một mô hình mới. Hiện tại, ETHS vẫn chủ yếu dựa trên đầu cơ tài chính, không phải bản thân sản phẩm này có thể mang lại điều gì đó mà Ethereum Layer 2 không có. Giá trị lâu dài của loại điều này rõ ràng vẫn chưa được khám phá, nhưng ở dạng hiện tại, ETHS đã mang "gánh nặng không thể chịu đựng được của cuộc sống" và khẩu hiệu của ông khác xa với hiệu quả thực tế của nó.

Tuyên bố:

  1. Bài viết này được sao chép từ [ theblockbeats]. Tất cả bản quyền thuộc về tác giả gốc [ Tháng sương mù, Web3 chuyên nghiệp]. Nếu có bất kỳ ý kiến phản đối về việc tái in này, vui lòng liên hệ với Gate Họcđội ngũ và họ sẽ xử lý nhanh chóng.
  2. Miễn trừ trách nhiệm: Các quan điểm và ý kiến được thể hiện trong bài viết này chỉ thuộc về tác giả và không cấu thành bất kỳ lời khuyên đầu tư nào.
  3. Các bản dịch của bài viết sang các ngôn ngữ khác được thực hiện bởi đội ngũ Gate Learn. Trừ khi được đề cập, việc sao chép, phân phối hoặc đạo văn các bài viết dịch là không được phép.
即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!