Mặc dù được mệnh danh là “huyết mạch của mạng Ethereum” nhưng gas là thuật ngữ khó hiểu đối với nhiều người không quen thuộc cộng đồng Ethereum. Mặc dù thường được sử dụng để mô tả phí giao dịch trên mạng, nhưng muốn thực sự hiểu về gas thì đòi hỏi phải đi sâu hơn một chút vào cơ chế của Ethereum.
Gas và hợp đồng thông minh
ConsenSys định nghĩa gas là “đơn vị đo lường để sử dụng Thế giới Máy tính”, nhưng có thể giải thích đơn giản hơn là phí sử dụng thế giới máy tính.
Như vậy, nó có một số khác biệt đáng kể. Gas không chỉ giới hạn ở chi phí xử lý các giao dịch trên mạng Ethereum. Ethereum có khả năng chạy tất cả các loại ứng dụng, cho phép nó tạo thành nền tảng web phi tập trung. Như vậy, về mặt kỹ thuật, gas có thể được mô tả là “phí giao dịch” nhưng nên thận trọng khi sử dụng.
Ethereum Yellow Paper do một trong những cha đẻ của mạng là Gavin Wood biên soạn, liệt kê chính xác hướng dẫn cụ thể mạng đáng giá bao nhiêu gas:
Chi phí gas theo hướng dẫn trên mạng Ethereum | Nguồn: Ethereum Yellow Paper
Mỗi loại hướng dẫn được thực hiện trên mạng có giá cố định riêng. Để tìm ra chi phí của một giao dịch hoặc hợp đồng thông minh, chỉ cần cộng giá trị của mỗi hướng dẫn mà nó thực hiện.
Tuy nhiên, các vấn đề phát sinh khi gas thực sự được thanh toán.
Thuật ngữ mô tả tốt nhất về gas là ‘nhiên liệu cho mạng Ethereum’. Nhưng nhiên liệu không phải là một loại tiền tệ, nó cần được mua và định giá bằng đô la Mỹ hoặc Euro.
Gas cũng vậy. Để được thanh toán, nó phải có giá trị được biểu thị bằng ETH, là tiền điện tử cơ bản của mạng Ethereum. Giống như dầu, không có giá cố định để chuyển đổi gas sang ETH. Người mua và người bán (miner) đưa ra mức giá phù hợp với cả hai bên. Giá này đạt được thông qua một cuộc đấu giá ảo.
Cách thức gas hoạt động trên mạng Ethereum
Để thực thi hướng dẫn trên mạng Ethereum, người gửi giao dịch cần chỉ định “giới hạn gas” trước khi gửi nó vào mạng. Giới hạn gas là số tiền tối đa mà ai đó sẵn sàng trả cho các hướng dẫn để vào mạng và được xử lý.
Bộ xử lý các giao dịch này, các nhà khai thác máy chủ được gọi là miner có một vài lựa chọn khi họ nhận được giao dịch đang chờ xử lý. Đầu tiên, họ có thể chấp nhận giao dịch bằng cách xử lý các hướng dẫn với máy tính của họ, sử dụng điện trong quy trình và giữ mức phí đính kèm do người gửi đặt ra. Họ cũng có thể hoàn trả một số gas cho người gửi nếu người gửi đặt giới hạn gas cao hơn mức cần thiết cho giao dịch. Ngoài ra, họ có quyền từ chối giao dịch nếu người gửi đặt giới hạn gas thấp hơn mức mà thị trường đang trả vào thời điểm đó.
Nếu hướng dẫn của giao dịch đang thực hiện giữa chừng mà hết gas trong quá trình miner đang xử lý thì được hoàn nguyên về trạng thái ban đầu. Nói cách khác, giao dịch được trả lại cho người gửi. Tuy nhiên, người gửi vẫn phải trả một khoản phí cho các miner để bù đắp sức mạnh tính toán mà họ đã bỏ ra để xử lý giao dịch, ngay cả khi chỉ hoàn thành một phần. Miner cũng phải thêm giao dịch vào blockchain, thậm chí khi không được thực hiện đầy đủ. Nếu người gửi chỉ định giới hạn gas cao hơn mức cần thiết thì miner sẽ hoàn lại tiền chênh lệch cho người gửi.
Mặc dù cơ chế này được ca ngợi rộng rãi về cách xử lý các giao dịch, nhưng nó phức tạp trong thực tế.
Vấn đề đặc biệt nghiêm trọng đối với giao dịch có giới hạn gas cao. Với Bitcoin và các blockchain tập trung vào thanh toán khác, thanh toán có nghĩa là các giao dịch được gửi nhanh hơn. Ethereum không phải như vậy. Tại mỗi khối trên mạng Ethereum, các miner bị ràng buộc bởi “giới hạn gas khối” tối đa, xác định lượng gas tối đa có thể sử dụng cho mỗi khối.
Với giới hạn gas khối hiện tại được đặt ở mức khoảng 10,000,000 gas, các miner ít có xu hướng chấp nhận giao dịch có giới hạn gas cao vì sẽ lãng phí một phần giới hạn gas khối. Đối với các giao dịch gas cao này, phần lớn thường được miner hoàn lại. Thay vào đó, miner lựa chọn thực hiện nhiều giao dịch nhỏ hơn.
Ví dụ, sẽ có ý nghĩa kinh tế hơn cho miner để xử lý 2 giao dịch riêng biệt với giới hạn miner được đặt ở mức 21,000 gas so với một giao dịch có giới hạn gas là 42,000 gas.
Vấn đề với phí
Để Ethereum hoạt động như một thế giới máy tính, phí trên mạng cần phải rất nhỏ. Như vậy, bằng cách thanh toán cho các giao dịch này, ETH cũng cần được quy đổi theo số lượng rất nhỏ.
Để theo dõi các khoản phí, ETH được quy thành một số gia số nhỏ hơn và một trong những loại được sử dụng rộng rãi nhất là gwei. Còn được gọi là nanoether, 1 gwei = 0.000000001 ETH (10^-9).
Cũng có các mệnh giá khác cho ETH, tất cả được đặt tên theo nhân vật có ảnh hưởng trong thế giới tiền điện tử. Tuy nhiên, không loại nào trong số chúng được sử dụng hoặc công nhận rộng rãi như gwei.
Các mệnh giá khác nhau của ETH
Cách tính phí giao dịch Ethereum
Có một số cách để tính phí cần thiết thực hiện giao dịch trên mạng Ethereum. Mạng được thiết lập theo kiểu có thể thiết đặt bất kỳ khoản phí tùy ý nào. Vì vậy, về mặt lý thuyết, một người gửi có thể chọn bất kỳ mức phí giao dịch mà họ sẵn sàng trả, bất kể rất nhỏ (hoặc chỉ bằng 1 gwei).
Cách thức này không thực tế vì các miner xem phí là động lực hoạt động.
Có hàng tá máy tính gas có sẵn trực tuyến cho phép người dùng Ethereum tham vọng biết được giao dịch của họ sẽ cần bao nhiêu gas. Chúng tôi khuyên dùng ETH Gas Station vì giao diện trực quan và độ chính xác cao.
Tại thời điểm viết bài, cần chi 23 gwei (tương đương 0.091 đô la) để gửi một giao dịch trong vòng dưới 5 phút. Để gửi giao dịch trong vòng dưới 2 phút, sẽ tốn 34 gwei, khoảng 0.135 đô la.
Tuy nhiên, những giá khuyến nghị này chỉ là ước tính. Dù giá gas là bao nhiêu thì vẫn có yếu tố không chắc chắn. Một giao dịch 21,000 gas với giá gas được đặt ở mức 35 gwei đã được chấp nhận bởi 97% trong số 200 khối cuối cùng (30 phút hoặc lâu hơn). Thời gian trung bình để giao dịch với các đặc điểm này được xác nhận trên mạng là 21 giây theo máy tính.
Dự đoán phí giao dịch cho giá gas là 35 gwei | Nguồn: ETHGasStation
Mặc dù vậy, có thể xác định phí giao dịch trên mạng Ethereum mà không cần máy tính trực tuyến. Một người gửi có nhiều kinh nghiệm chỉ cần biết mỗi hoạt động trên Ethereum cần bao nhiêu gas và sau đó hiểu cơ bản về tỷ lệ thị trường trung bình của giá gas.
Ví dụ: chuyển 1 token đơn giản trên mạng Ethereum cần 21,000 gas để hoàn thành. Tuần thứ ba của tháng 4 đã chứng kiến giá gas trung bình khoảng 20 gwei. Do đó, tính phí giao dịch đòi hỏi phải nhân các đơn vị gas cần thiết với giá gas.
21,000 gas x 6 gwei = 126,000 gwei = 0.000126 ETH
Ở mức giá hiện tại, người dùng gửi 21,000 token sẽ trả phí gas là 0.021 đô la cho mạng để xử lý và xác thực nó.
Các vấn đề phát sinh từ cơ chế đấu giá của Ethereum
Ethereum sử dụng hệ thống “đấu giá đầu tiên” để định giá gas. Hệ thống hoạt động bằng cách yêu cầu mọi người gửi giá thầu, được gọi là giới hạn gas, là số tiền họ sẵn sàng trả. Miner sau đó nhận các giao dịch mong muốn và đưa chúng vào khối tiếp theo. Về lý thuyết, điều này cho phép người gửi ưu tiên giao dịch của họ bằng cách trả phí cao hơn trong khi tiết kiệm ETH thông qua các khoản hoàn trả. Trong thực tế, cơ chế này có sai sót nghiêm trọng.
Điều thường xảy ra là miner chọn giao dịch có giá thầu cao nhất, khiến người gửi đặt giá thầu cao hơn cho các giao dịch khác. Ngoài ra còn có một vấn đề về tính minh bạch. Không có cách nào để biết giá thầu nào đi kèm với các giao dịch đang chờ xử lý nào, điều này cũng dẫn đến việc trả quá nhiều.
Nhà sáng lập trung tâm giáo dục nguồn mở Ethhub cho Ethereum Eric Conner lưu ý rằng thường có phân kỳ đáng kể về phí giao dịch do những người gửi khác nhau trong một khối trả. Theo dữ liệu của anh, Conner gợi ý người dùng thường trả nhiều hơn 5 lần những gì cần thiết.
Dữ liệu cho thấy gas được trả quá cao cho chuỗi khối được chọn ngẫu nhiên | Nguồn: Medium
Đề xuất cải thiện Ethereum (EIP) số 1559 giải quyết vấn đề này bằng cách ấn định một khoản phí cơ bản trên mạng. EIP (được gọi là BASEFEE) sau đó sẽ điều chỉnh con số này tùy thuộc vào mức độ tắc nghẽn của mạng.
Cơ chế đấu giá đang được sử dụng không xem xét nhu cầu trên mạng, dẫn đến tắc nghẽn nghiêm trọng. Trong một số trường hợp, điều này thậm chí còn khiến mạng Ethereum ngưng trệ các ứng dụng.
Để hệ thống như BASEFEE hoạt động, công suất gas tối đa của một khối sẽ cần tăng gấp đôi từ 10 triệu đến 20 triệu. Bằng cách đó, giới hạn gas khối có thể điều chỉnh linh hoạt. Ví dụ: nếu mạng sử dụng 50% tải trung bình, hệ thống mới sẽ đặt giới hạn gas khối là 10 triệu.
Conner gợi ý rằng khi nhiều hơn 50% mạng được sử dụng, phí cơ bản sẽ tăng và ngược lại. Anh giải thích, điều này cho phép ví tự động đặt phí gas thay người dùng một cách đáng tin cậy, loại bỏ hiệu quả sự cần thiết phải điều chỉnh phí thủ công.
Khía cạnh đáng chú ý nhất của đề xuất là các miner sẽ không tiếp tục thu lợi từ phí. BASEFEE đề xuất phá hủy các khoản phí thay vì trao cho miner, buộc miner phải kiếm doanh thu thông qua phần thưởng khối (khoảng 3.5 triệu đô la mỗi ngày được chia cho tất cả các miner). Phá hủy phí sẽ ngăn miner thao túng giao dịch để có thêm tiền từ người gửi. Nó cũng đảm bảo chỉ ETH được sử dụng để thanh toán cho các giao dịch, củng cố giá trị.
Thay vào đó, miner sẽ kiếm lợi nhuận từ những khoản tiền nhỏ cố định do ví đặt ra để bù đắp cho họ. Cách thức này tuy đảm bảo thời gian giải quyết nhanh hơn, nhưng không dẫn đến miễn cưỡng thanh toán vượt mức như thường thấy trong hệ thống hiện tại.
Nhiều người kỳ vọng bản cập nhật sẽ làm nên chuyện trong Ethereum 2.0, mang lại staking và thúc đẩy giá trị kinh tế của ETH tăng mạnh trong mạng.
Dislaimer: Đây là thông tin cung cấp dưới dạng blog cá nhân, không phải thông tin tổng hợp hay lời khuyên đầu tư. Chúng tôi không chịu trách nhiệm về các quyết định đầu tư của bạn.
- Beacon Chain của ETH 2.0 được thiết kế lại với tên gọi mới Gasper
- Mức sử dụng gas Ethereum đạt mức cao nhất mọi thời đại khi giá ETH đang trên đà tăng