Hôm nay mình xem một đoạn code hợp đồng và nó kéo lại cho mình một cơn PTSD rất nặng từ lần thị trường đổ sập trước... 📉
Năm ngoái, mình đã bị quét sạch trong một vụ khai thác lỗ hổng của một giao thức.
Tại sao? Vì code tĩnh của dự án không thể phản ứng đủ nhanh với một cuộc tấn công thao túng oracle.
Khóa admin hoàn toàn an toàn.
Các role AccessControl thì hoàn hảo luôn. Nhưng chính các quy tắc lại quá cứng nhắc, đến mức không thể tạm dừng pool trước khi nó bị rút cạn.
Ban ngày ban mặt. Biến mất 💸
Đó là điểm mắc bẫy.
OpenZeppelin’s AccessControl tuyệt vời cho các quyền hạn cơ bản dựa trên vai trò—thiết lập admin, minter và pauser
.
Đơn giản. Sạch sẽ. Đáng tin cậy. Mình dùng nó mọi lúc.
Nhưng thật lòng? 👇
Cơ chế policy của Newton trên Mainnet Beta cảm giác như đúng là bản nâng cấp mà chúng ta cần để có thể sống sót ngoài kia.
Thay vì các vai trò tĩnh được nhúng sẵn trong code bất biến, bạn viết các policy động trong Rego.
Chúng ta đang nói đến:
• Giới hạn chi tiêu tự động hằng ngày 🛑
• Quản lý rủi ro tập trung 📊
• Kiểm tra độ lệch oracle theo thời gian thực 🔍
Việc đánh giá diễn ra ngoài chuỗi trước khi giao dịch được xác nhận, giúp bạn có một attestation đã ký được ghi trên chuỗi.
Không phải AccessControl là xấu. Nó hoàn hảo cho đúng thứ mà nó được tạo ra.
Nhưng khi bạn cần các quy tắc thay đổi dựa trên dữ liệu thị trường thời gian thực, giá tài sản, hoặc biến động đột ngột? Cách tiếp cận của Newton là một bước ngoặt.
Bạn không cần phải chờ một quản trị viên ký tay thủ công một giao dịch multisig để tạm dừng hợp đồng trong lúc khủng hoảng.
(Đến lúc đó thì thường là đã quá muộn rồi anyway lol). 💀
Họ chỉ đang giải quyết những vấn đề khác nhau:
🔑 AccessControl = Quản lý quyền đơn giản, thẳng thắn.
🛡️ Newton = Thực thi policy phong phú hơn, có thể kiểm toán, ngay tại thời điểm giao dịch.
Thật lòng mà nói, nếu nhiều đội bắt đầu xếp chồng cả hai thứ này, thì chắc hẳn sẽ có ít headline về khai thác lỗ hổng hơn rất nhiều trên các feed của chúng ta. 🤝@NewtonProtocol
#Newt $NEWT
Năm ngoái, mình đã bị quét sạch trong một vụ khai thác lỗ hổng của một giao thức.
Tại sao? Vì code tĩnh của dự án không thể phản ứng đủ nhanh với một cuộc tấn công thao túng oracle.
Khóa admin hoàn toàn an toàn.
Các role AccessControl thì hoàn hảo luôn. Nhưng chính các quy tắc lại quá cứng nhắc, đến mức không thể tạm dừng pool trước khi nó bị rút cạn.
Ban ngày ban mặt. Biến mất 💸
Đó là điểm mắc bẫy.
OpenZeppelin’s AccessControl tuyệt vời cho các quyền hạn cơ bản dựa trên vai trò—thiết lập admin, minter và pauser
.
Đơn giản. Sạch sẽ. Đáng tin cậy. Mình dùng nó mọi lúc.
Nhưng thật lòng? 👇
Cơ chế policy của Newton trên Mainnet Beta cảm giác như đúng là bản nâng cấp mà chúng ta cần để có thể sống sót ngoài kia.
Thay vì các vai trò tĩnh được nhúng sẵn trong code bất biến, bạn viết các policy động trong Rego.
Chúng ta đang nói đến:
• Giới hạn chi tiêu tự động hằng ngày 🛑
• Quản lý rủi ro tập trung 📊
• Kiểm tra độ lệch oracle theo thời gian thực 🔍
Việc đánh giá diễn ra ngoài chuỗi trước khi giao dịch được xác nhận, giúp bạn có một attestation đã ký được ghi trên chuỗi.
Không phải AccessControl là xấu. Nó hoàn hảo cho đúng thứ mà nó được tạo ra.
Nhưng khi bạn cần các quy tắc thay đổi dựa trên dữ liệu thị trường thời gian thực, giá tài sản, hoặc biến động đột ngột? Cách tiếp cận của Newton là một bước ngoặt.
Bạn không cần phải chờ một quản trị viên ký tay thủ công một giao dịch multisig để tạm dừng hợp đồng trong lúc khủng hoảng.
(Đến lúc đó thì thường là đã quá muộn rồi anyway lol). 💀
Họ chỉ đang giải quyết những vấn đề khác nhau:
🔑 AccessControl = Quản lý quyền đơn giản, thẳng thắn.
🛡️ Newton = Thực thi policy phong phú hơn, có thể kiểm toán, ngay tại thời điểm giao dịch.
Thật lòng mà nói, nếu nhiều đội bắt đầu xếp chồng cả hai thứ này, thì chắc hẳn sẽ có ít headline về khai thác lỗ hổng hơn rất nhiều trên các feed của chúng ta. 🤝@NewtonProtocol
#Newt $NEWT