Ethereum đã tạm dừng các thay đổi Glamsterdam dự kiến trên mạng thử nghiệm Hoodi sau khi một cuộc rà soát bảo mật phát hiện tám giả định trong hợp đồng thông minh có thể bị phá vỡ theo các quy tắc tính gas mới. Chuyện gì đã xảy ra - Đơn vị kiểm toán ChainSecurity đã công bố một phân tích cho thấy hai EIP được đề xuất (EIP-8037 và EIP-8038), vốn điều chỉnh lại mức phí gas cho việc tạo và truy cập trạng thái, có thể làm thay đổi lượng gas còn khả dụng sau một số thao tác nhất định—có khả năng khiến các giả định được dùng trong những hợp đồng hiện có không còn đúng. - Do những phát hiện này, nhóm Ethereum All Core Developers (ACD) đã hoãn kích hoạt hard fork Hoodi, vốn được lên lịch ban đầu vào ngày 26 tháng 10. Hiện chưa có ngày kích hoạt mới. Vì sao điều này quan trọng - Một số hợp đồng dựa vào chi phí gas cố định hoặc giả định rằng một lệnh gọi bên ngoài thất bại sẽ luôn để lại quá ít gas để đoạn mã tiếp theo chạy. Cách tính gas được điều chỉnh trong Glamsterdam có thể khiến gas còn khả dụng trong những trường hợp mà các nhà phát triển cho rằng quá trình thực thi sẽ dừng lại, từ đó mở ra các luồng mã trước đây bị chặn hoặc ghi nhận vĩnh viễn những lỗi vốn được dự kiến chỉ là tạm thời. - Báo cáo của ChainSecurity nêu bật các ví dụ như những hợp đồng đánh dấu thao tác là thất bại khi một lệnh gọi bên ngoài hết gas. Theo quy tắc mới, lượng gas đó có thể lại trở nên khả dụng, khiến hợp đồng ghi nhận lỗi vĩnh viễn hoặc thay đổi cách xử lý việc thử lại. Ethereum Foundation đang làm gì - Foundation đã công bố một kho lưu trữ GitHub ghi lại tám bất biến bị ảnh hưởng, kèm ví dụ, giải thích và hướng dẫn để nhà phát triển kiểm thử mã của mình. - Các nhà phát triển được đề nghị kiểm tra cả hợp đồng trên chuỗi lẫn cơ sở hạ tầng ngoài chuỗi (ví, relayer, hệ thống giám sát, v.v.) có thể dựa vào giới hạn gas được mã hóa cố định hoặc các hành vi gas cụ thể. Có thể gửi báo cáo riêng tư đến glamsterdam@ethereum.org. - Ethereum đang phối hợp với ChainSecurity và Dedaub, đồng thời tiến hành các cuộc kiểm toán nội bộ để đánh giá phạm vi ảnh hưởng. Tùy theo phản hồi của cộng đồng, nhóm có thể yêu cầu các dự án vá hợp đồng hoặc sửa đổi EIP-8037/EIP-8038 trước khi tiếp tục. Các thành phần kỹ thuật chính của Glamsterdam - EIP-8037: điều chỉnh lại phí gas cho việc tạo trạng thái mới - EIP-8038: điều chỉnh lại phí gas cho việc truy cập trạng thái hiện có - EIP-7732: phân tách proposer-builder được tích hợp vào giao thức (bổ sung trách nhiệm xây dựng khối vào cơ chế đồng thuận) - EIP-7928: danh sách truy cập cấp khối nhằm cải thiện xử lý giao dịch và hỗ trợ thực thi song song Bối cảnh và các bước tiếp theo - Glamsterdam đã được kích hoạt trên Sepolia (ngày 6 tháng 10), nơi bản nâng cấp được kiểm thử với giới hạn gas tăng lên 200M. Việc hoãn trên Hoodi đã loại bỏ cả các đợt kích hoạt lớp thực thi Amsterdam và lớp đồng thuận Gloas khỏi lịch trình của mạng thử nghiệm. - Công việc nâng cấp Hegotá tiếp theo sẽ tiếp tục song song và không bị ảnh hưởng bởi sự trì hoãn Glamsterdam. - Riêng biệt, các nhà phát triển đã hợp nhất bản sửa lỗi khoản tiền gửi của validator (ngày 26 tháng 10), khắc phục một lỗi có thể khiến khoản tiền gửi staking được ghi có cho các đơn vị xây dựng khối dùng chung khóa công khai; các bài kiểm thử hồi quy đã được bổ sung trước khi cập nhật các bản triển khai của client. Tóm lại Việc trì hoãn cho thấy hệ sinh thái đang thận trọng với một thay đổi tác động đến giả định kinh tế cốt lõi của nhiều hợp đồng. Các nhà phát triển nên xem lại kho lưu trữ của Foundation, kiểm thử hợp đồng (và các hệ thống ngoài chuỗi liên quan) theo mô hình gas mới, đồng thời báo cáo mọi ảnh hưởng để ACD quyết định có tiếp tục như kế hoạch hay điều chỉnh thông số kỹ thuật của bản nâng cấp. Đọc thêm tin tức do AI tạo tại: https://app.chaingpt.org/news