Khách hàng đồng thuận Ethereum là Prysm cho biết các validator đã bị “bỏ lỡ” 382 ETH, tương đương hơn 1 triệu USD, sau khi một lỗi phần mềm gây ra sự cố mạng chỉ sau bản nâng cấp Fusaka gần đây.
Sự việc này được trình bày chi tiết trong báo cáo hậu kiểm mang tên “Sự cố Prysm trên mainnet Fusaka”, bắt nguồn từ việc cạn kiệt tài nguyên dẫn đến gần như toàn bộ node Prysm bị ảnh hưởng, khiến mất block và attestation.
Theo Offchain Labs, nhà phát triển đứng sau Prysm, vấn đề này xuất hiện vào ngày 04/12/2023 khi một bug từng được thêm vào trước đó đã gây ra hiện tượng chậm trễ trong việc gửi yêu cầu từ validator.
Những sự chậm trễ này khiến hàng loạt block cùng các attestation trên toàn mạng bị bỏ lỡ.
“Các node beacon của Prysm đã nhận những attestation từ các node có thể không đồng bộ với mạng. Những attestation này đề cập đến block root của epoch trước,” dự án giải thích.
Sự cố khiến mạng Ethereum bị mất 41 epoch, với tổng cộng 248 block bị bỏ lỡ trên tổng số 1,344 slot. Điều này tương đương tỷ lệ slot bị bỏ lỡ là 18.5% và khiến mức độ tham gia của mạng giảm xuống còn 75% trong quá trình diễn ra lỗi.
Offchain Labs cho biết lỗi gây ra sự cố này đã được đưa lên testnet khoảng 1 tháng trước, rồi mới bị kích hoạt trên mainnet sau bản nâng cấp Fusaka.
Dù đã có các giải pháp tạm thời để giảm thiểu tác động ban đầu, Prysm cho biết đã bổ sung các thay đổi vĩnh viễn vào logic xác thực attestation, đảm bảo lỗi này sẽ không tái diễn.
Trong khi đó, sự cố này một lần nữa khiến cộng đồng chú ý đến vấn đề tập trung hóa các client trên Ethereum và những rủi ro khi chỉ dựa vào một phần mềm duy nhất.
Offchain Labs nhận định, sự cố có thể sẽ còn nghiêm trọng hơn nếu Prysm chiếm tỷ lệ validator lớn hơn trong hệ sinh thái validator của Ethereum. Họ cũng nhấn mạnh rằng sự đa dạng của các client trên Ethereum là yếu tố quan trọng giúp ngăn chặn sự cố lan rộng hơn trong toàn mạng.
“Nếu một client chiếm hơn 1/3 mạng lưới, có thể sẽ khiến xảy ra mất finality tạm thời và nhiều block bị bỏ lỡ. Nếu bug xuất hiện trên một client chiếm hơn 2/3, toàn bộ chain có thể bị finalize sai,” tuyên bố trong báo cáo.
Dù có giải pháp giảm nhẹ, sự việc này vẫn khiến nhiều ý kiến kêu gọi cần đảm bảo sự đa dạng hóa các client.
Thông tin từ Miga Labs cho thấy Lighthouse hiện là client đồng thuận Ethereum chiếm ưu thế với 51.39% số validator. Prysm góp mặt với 19.06%, tiếp theo là Teku với 13.71% và Nimbus là 9.25%.
Tỷ lệ của Lighthouse hiện chỉ cách ngưỡng nguy cơ hệ thống mà một số nhà nghiên cứu lo ngại khoảng 15%.
Chính vì vậy, các nhà phát triển và thành viên hệ sinh thái đang thúc giục các validator cân nhắc chuyển sang sử dụng các client khác nhằm giảm nguy cơ một lỗi phần mềm sẽ gây ảnh hưởng tới toàn bộ hoạt động cốt lõi của blockchain.