
Zcash Foundation đã phát hành Zebra 4.5.3 và Zebra 5.0.0 sau khi các kỹ sư phát hiện và khắc phục một lỗi nghiêm trọng liên quan đến tính đúng đắn (soundness bug) trong mạch Orchard Action.
Quỹ cho biết Zebra 4.5.3 đã kích hoạt một soft fork khẩn cấp tại độ cao khối mạng chính 3.363.426. Bản phát hành này đã tạm thời từ chối các giao dịch và khối chứa hành động Orchard trong khi các kỹ sư chuẩn bị một mạch đã được sửa lỗi.
Soft fork đã được kích hoạt vào khoảng 02:00 UTC ngày 2 tháng 6 sau khi một nỗ lực phối hợp trước đó gặp sự cố triển khai bản vá. Quỹ cho biết việc phối hợp riêng tư với các thợ đào và sàn giao dịch đã bắt đầu vào ngày 31 tháng 5 để giảm khả năng bị khai thác trước khi công bố rộng rãi.
Zebra 5.0.0 đã kích hoạt hard fork NU6.2 tại độ cao khối mạng chính 3.364.600. Bản nâng cấp này đã kích hoạt lại các hành động Orchard với một mạch đã được sửa lỗi và định tuyến các bằng chứng Orchard đến một khóa xác minh mới cho mỗi mạch. Bản phát hành này cũng đánh dấu lần nâng cấp giao thức theo định hướng bảo mật thứ hai trong lịch sử Zcash kể từ năm 2016.
Một hard fork là cần thiết vì việc sửa lỗi mạch bằng chứng không tiết lộ thông tin (zero-knowledge proof) đòi hỏi một khóa xác minh được ghim mới.
“Chúng tôi kêu gọi tất cả các nhà điều hành node nâng cấp lên Zebra 5.0.0 càng sớm càng tốt,” Zcash Foundation cho biết.
Lỗi này được phát hiện vào ngày 29 tháng 5 bởi nhà nghiên cứu bảo mật độc lập Taylor Hornby trong quá trình kiểm toán giao thức cho Shielded Labs. Các kỹ sư ZODL Daira-Emma Hopwood, Kris Nuttycombe và Jack Grigg đã xác nhận vấn đề trong vòng vài giờ và bắt đầu làm việc để khắc phục.
Quỹ cho biết lỗ hổng có thể cho phép thay đổi trạng thái không hợp lệ bên trong Orchard và khả năng chi tiêu kép (double spending) trong nhóm đó. Quỹ cũng cho biết cơ chế turnstile của Zcash đã bảo vệ tổng nguồn cung ZEC, và “Không có bằng chứng về việc tạo ra giá trị trái phép.” Mã bị ảnh hưởng bao gồm các bản phát hành cũ hơn của halo2_gadgets, orchard và zcash_primitives, cùng với các phiên bản zcashd từ 5.0.0 đến 6.12.3.
Orchard là nhóm được che chắn (shielded pool) mới nhất của Zcash và là một phần cốt lõi của hệ thống quyền riêng tư của nó. Nó ra mắt cùng với NU5 vào năm 2022 và sử dụng Halo 2, loại bỏ sự cần thiết của việc thiết lập đáng tin cậy (trusted setup). Thiết kế đó đã biến Orchard thành một phần quan trọng trong lộ trình quyền riêng tư hiện tại của Zcash.
Các báo cáo thị trường liên quan gần đây đã tập trung vào việc gia tăng sử dụng các giao dịch được che chắn của Zcash. Một báo cáo gần đây cho biết khoảng 30% nguồn cung ZEC đã chuyển vào các nhóm được che chắn, với Orchard nắm giữ 4,2 triệu ZEC và phần lớn sự tăng trưởng gần đây.
Quỹ cho biết quyền riêng tư của người dùng không bị ảnh hưởng trong suốt sự cố. Các giao dịch Sapling và giao dịch minh bạch cũng tiếp tục hoạt động bình thường trong khi các hành động Orchard vẫn bị tạm dừng.
Các nhà điều hành node hiện đang đối mặt với nhiệm vụ chính là nâng cấp lên Zebra 5.0.0, thay vì dựa vào các bản phát hành cũ hơn. Các nhà điều hành vẫn ở trên một fork không chính xác sau NU6.2 có thể cần phải đồng bộ lại từ đầu hoặc khôi phục từ bản sao lưu được tạo trước khi kích hoạt.