Back to top
  • 공유 Share
  • 인쇄 Print
  • 글자크기 Font size
URL copied.

Glamsterdam: Quỹ Ethereum đề nghị rà soát 8 giả định về gas

Tay một nhà phát triển đang kiểm tra mã hợp đồng thông minh trên máy tính xách tay / TokenPost.ai (macro)

Quỹ Ethereum (Ethereum Foundation) đề nghị các nhà phát triển và kiểm toán viên hợp đồng thông minh rà soát 8 giả định về cách xử lý gas trước nâng cấp Glamsterdam. EIP-8037 và EIP-8038 thay đổi cách tính gas, nên kết quả thực thi của một số hợp đồng hiện có có thể khác trước.

Trong thông báo công bố ngày 6/11, Quỹ Ethereum cho biết hai đề xuất sẽ thay đổi chi phí gas của một số phép tính và cách tính chi phí cho dữ liệu trạng thái. ChainSecurity phát hiện một số dự án có thể gặp vấn đề nếu phụ thuộc vào cách tính cũ. Quỹ đã hoãn kích hoạt Glamsterdam trên testnet Hoodi và chưa ấn định lịch mới.

Gas biểu thị lượng công việc cần thiết để thực hiện giao dịch hoặc hợp đồng thông minh. EIP-8037 tính riêng chi phí tạo trạng thái mới, chẳng hạn như tài khoản và không gian lưu trữ; EIP-8038 điều chỉnh chi phí của các thao tác truy cập hoặc thay đổi trạng thái đã lưu. Dù mã nguồn không đổi, lượng gas cần cho một số thao tác hoặc lượng gas còn lại sau khi giao dịch thất bại có thể thay đổi.

Tài liệu kiểm tra do Quỹ Ethereum công bố nêu 8 giả định cần rà soát, kèm giải thích, ví dụ mã và câu lệnh gợi ý để tự kiểm tra. Trong đó có giả định rằng thao tác sẽ hoàn thành trong một lượng gas cố định; nếu lời gọi bên ngoài thất bại do thiếu gas thì thao tác lưu trữ tiếp theo cũng sẽ thất bại; và lượng gas còn lại trong quá trình thực thi chỉ giảm. Mã ngoài chuỗi dùng để tạo giao dịch hoặc theo dõi kết quả cũng cần được kiểm tra.

Quỹ Ethereum cho biết khi chạy lại các giao dịch trước đây trên mainnet theo quy tắc gas mới, phần lớn vấn đề được nêu có thể khắc phục bằng cách tăng giới hạn gas. Kết quả có thể thay đổi nếu mã cố định giới hạn gas hoặc tính lượng gas cần cho thao tác lưu trữ sau lời gọi bên ngoài theo cách cũ. Tài liệu đề xuất điều chỉnh giới hạn gas, ước tính lại theo quy tắc mới và kiểm thử.

Trong bài phân tích, ChainSecurity nêu trường hợp hợp đồng ghi lại việc lời gọi bên ngoài thất bại. Theo mô tả của đơn vị này, trước đây hợp đồng không đủ gas còn lại để ghi nhận thất bại nên thao tác ghi cũng bị hoàn tác, nhưng theo quy tắc mới hợp đồng có thể hoàn tất việc ghi nhận. Vì vậy, quy trình xử lý lỗi được thiết kế để nhà phát triển thử lại có thể dẫn đến kết quả khác và cũng cần được rà soát.

Quỹ Ethereum cho biết đang phối hợp với nhiều đơn vị kiểm toán và tiến hành kiểm toán nội bộ, nhưng không thể trực tiếp kiểm tra mọi dự án Ethereum cùng toàn bộ mã trên chuỗi và ngoài chuỗi. Trong hướng dẫn trước đó, quỹ cho biết người dùng phổ thông không cần thực hiện hành động riêng. TokenPost từng đề cập khả năng ví, trình lập chỉ mục và công cụ ước tính gas hoạt động sai, cũng như nhu cầu rà soát điều chỉnh gas ở một số hợp đồng.

Quỹ Ethereum đề nghị các dự án phát hiện ảnh hưởng gửi ví dụ và cách tái hiện vấn đề qua email. Ý kiến của nhà phát triển sẽ được dùng làm tài liệu tham khảo tại cuộc họp các nhà phát triển cốt lõi tiếp theo, nơi họ sẽ thảo luận liệu có thay đổi EIP-8037 và EIP-8038 hay không.

<Copyright ⓒ TokenPost, unauthorized reproduction and redistribution prohibited>

Most Popular

Other related articles

Comment 0

Comment tips

Great article. Requesting a follow-up. Excellent analysis.

0/1000

Comment tips

Great article. Requesting a follow-up. Excellent analysis.
1