MEV là giá trị tối đa có thể trích xuất từ việc sắp xếp, chèn hoặc loại bỏ giao dịch trong một khối; nó hoạt động như “phí ẩn” đánh vào người dùng, nhất là khi thị trường biến động.
Shutter dùng kỹ thuật mã hóa ngưỡng để che nội dung giao dịch trước khi xếp thứ tự, ngăn kẻ xấu frontrun/sandwich. Bản triển khai thực tế trên Gnosis Chain cho thấy hướng tiếp cận khả thi, dù vẫn còn đánh đổi về độ trễ và giả định tin cậy.
- MEV phổ biến trên nhiều blockchain; trên Ethereum, tương đương 11% phần thưởng khối và gây thất thoát qua sandwich.
- Shutter triển khai mã hóa ngưỡng theo từng giao dịch trên Gnosis Chain để ẩn giao dịch đến khi sắp xếp xong.
- Thiết kế per-transaction an toàn hơn per-epoch nhưng kém hiệu quả; BTE và mô-đun OP Stack là bước tiếp theo.
MEV là gì và vì sao tác động mạnh đến người dùng?
MEV (maximal extractable value) là giá trị thu được bằng cách kiểm soát thứ tự và việc đưa giao dịch vào khối. Nó xuất phát từ mempool công khai, tạo cơ hội frontrun, sandwich và các chiến thuật khác.
Trên hầu hết blockchain, mọi giao dịch chờ xử lý đều hiển thị trong mempool. Tác nhân có đặc quyền sắp xếp khối có thể chèn giao dịch trước/sau để hưởng chênh lệch. Trên Ethereum, MEV vẫn đang bị trích xuất tương đương 11% phần thưởng khối (nguồn: mevboost.pics). Riêng tháng 9, khoảng 300.000 USD bị mất qua tấn công sandwich theo dữ liệu của EigenPhi.
Hệ quả kinh tế là MEV trở thành “phí ẩn” lặp đi lặp lại, đặc biệt đánh mạnh vào giao dịch lớn trong giai đoạn biến động. Tính công khai của mempool giúp minh bạch, nhưng đồng thời mở cửa cho hành vi trục lợi từ sắp xếp giao dịch.
Vì sao mempool công khai lại dẫn tới frontrun/sandwich?
Do nội dung giao dịch được công khai trước khi vào khối, tác nhân có lợi thế có thể chèn giao dịch để hưởng lợi.
Với sandwich, kẻ tấn công mua trước, đẩy giá lên rồi bán ngay sau giao dịch nạn nhân. Cơ chế đấu giá phí càng làm cuộc chơi “ưu tiên thứ tự” gay gắt. Khi khối lượng lệnh lớn, tác động giá và giảm giá tăng, khiến tổn thất của người dùng phình to.
Khắc phục tận gốc đòi hỏi ẩn thông tin giao dịch trước khi sắp xếp, hoặc thiết kế lại thị trường builder/proposer. Đây là bối cảnh thúc đẩy các giải pháp mã hóa mempool.
Shutter dùng mã hóa ngưỡng để giảm MEV như thế nào?
Shutter là giao thức mã hóa ngưỡng được thiết kế nhằm che nội dung giao dịch cho đến khi hoàn tất sắp xếp, qua đó ngăn trích xuất MEV bằng thao túng thứ tự.
Ý tưởng cốt lõi: chia khóa giải mã cho một ủy ban ngưỡng, không ai đơn lẻ giải mã được. Người dùng mã hóa giao dịch bằng khóa công khai do ủy ban tạo, trình lên mạng dưới dạng ciphertext. Khi giao dịch đã vào khối và thỏa điều kiện “mở khóa”, các thành viên công bố phần giải mã, ghép lại để khôi phục giao dịch rõ, rồi máy ảo thực thi.
Thiết kế này độc lập cơ chế đồng thuận, có thể tích hợp đa chuỗi mà không cần thay đổi quy tắc đồng thuận. Dù vậy, ủy ban thường là cấu trúc được cấp quyền, cần giả định tin cậy.
Quy trình kỹ thuật của mã hóa ngưỡng trong Shutter diễn ra ra sao?
Ủy ban chạy Distributed Key Generation để tạo khóa công khai và chia sẻ khóa riêng cho mỗi thành viên. Người dùng mã hóa giao dịch bằng khóa công khai đó.
Trình đề xuất khối sắp xếp ciphertext vào khối. Khi khối được xác thực hoặc đáp ứng điều kiện công bố, từng thành viên xuất bản phần giải mã. Đủ ngưỡng chữ ký thì ghép lại thành giao dịch rõ. Cách thức tương tự multisig: chỉ cần đa số đủ điều kiện.
Nhiệm vụ ủy ban diễn ra offchain, vận hành song song blockchain. Điều này giúp Shutter không phụ thuộc loại đồng thuận, song phát sinh chi phí vận hành và nhu cầu điều phối thành viên.
Keypers là ai và vì sao cần giả định tin cậy?
Keypers là thành viên ủy ban nắm chia sẻ khóa, được chọn qua quản trị của giao thức Shutter.
Do là tập hợp permissioned, người dùng phải tin rằng đa số Keypers hoạt động đúng, công bố phần giải mã kịp thời, không thông đồng. Đây là đánh đổi thực tiễn để có thể triển khai sớm trước khi có giải pháp hoàn toàn trustless.
Việc mở rộng số lượng và đa dạng Keypers, cùng minh bạch vận hành, là bước quan trọng nhằm giảm rủi ro tập trung.
Vì sao thiết kế per-epoch ban đầu có vấn đề và đã được khắc phục?
Per-epoch giúp hiệu quả, nhưng khi khóa epoch tái tạo, mọi giao dịch trong epoch trở nên công khai, kể cả giao dịch chưa vào khối, tạo rủi ro MEV.
Để sửa, bản triển khai thực tế trên Gnosis Chain chuyển sang mã hóa theo từng giao dịch. Như vậy, chỉ giao dịch đã được đưa vào khối và xác thực mới được giải mã. Cách này ngăn việc “lộ” đồng loạt giao dịch chưa nhập khối khi khóa epoch bị tái tạo.
Shutterized Beacon Chain hiện là một RPC endpoint thay thế trên Gnosis Chain: mã hóa giao dịch và phát ciphertext tới hợp đồng sequencing, sau đó giải mã và thực thi sau khi vào khối. Nguồn: Gnosis, Gnosis.
Đánh đổi hiệu năng của per-transaction và hướng đi BTE
Per-transaction ưu tiên an toàn và đơn giản, nhưng tải công việc của ủy ban tăng tuyến tính theo thông lượng giao dịch.
Ngược lại, per-epoch hiệu quả hơn nhưng từng bộc lộ rủi ro riêng tư. Để dung hòa, Shutter kỳ vọng batched threshold encryption (BTE) có thể giữ tải gần như hằng số trong khi vẫn bảo vệ các giao dịch không được đưa vào khối. Tham khảo báo cáo tại USENIX Security 2024: Choudhuri et al., 2024.
Hướng này hứa hẹn cải thiện hiệu năng ủy ban mà không hi sinh quyền riêng tư, mở đường cho triển khai ở quy mô cao hơn.
Tích hợp thực tế: Gnosis Chain và mô-đun mempool mã hóa cho OP Stack
Shutter hiện là tiếp cận dựa trên mã hóa ngưỡng đã triển khai thực tế, đang chạy trên mainnet Gnosis Chain.
Bên cạnh đó, đội ngũ phát triển mô-đun mempool mã hóa cho OP Stack, đã hoạt động trên testnet Optimism (Sepolia). Mô-đun này dùng per-epoch nhưng khắc phục nhược điểm trước đây: mỗi giao dịch gắn với một khối mục tiêu, hợp đồng kiểm tra khối hiện tại khi thực thi; nếu giảm khối, giao dịch revert và có thể nộp lại. Nguồn: Shutter.
Cách ràng buộc giao dịch với khối mục tiêu giúp bảo toàn riêng tư cho giao dịch không được đưa vào khối, đồng thời tối ưu luồng thực thi.
Độ trễ hiện tại, ràng buộc tin cậy và lộ trình giảm thiểu
Triển khai trên Gnosis hiện có độ trễ cao: khối Gnosis ra mỗi 5 giây, nhưng giao dịch qua Shutter trung bình mất khoảng 3 phút để được đưa vào khối, do số validator và Keypers Shutterized còn hạn chế. Nguồn: Shutter Explorer.
Điều này cho thấy tiềm năng của Shutter trong trạng thái hiện tại còn hạn chế khi yêu cầu độ trễ thấp. Đội ngũ lên kế hoạch lộ trình thực dụng nhằm hướng tới mempool mã hóa, giảm giả định tin cậy trên Ethereum: lần lượt qua ví, RPC, relay, builder, khuyến khích validator, rồi đến hỗ trợ trong giao thức.
Khi hoàn thiện, cùng các mô-đun tương tự, giải pháp có thể mở rộng sang các chuỗi EVM khác, cải thiện trải nghiệm giao dịch trước MEV.
Bảng so sánh ngắn: per-epoch, per-transaction và BTE
Bảng dưới đây so sánh định tính các cách tiếp cận theo đặc tính chính dựa trên tài liệu Shutter và USENIX 2024.
Tiêu chí | Per-epoch | Per-transaction | Batched Threshold Encryption (BTE) |
---|---|---|---|
Riêng tư giao dịch chưa vào khối | Có rủi ro nếu khóa epoch tái tạo | Được bảo vệ | Được bảo vệ |
Tải công việc ủy ban | Gần như hằng số | Tăng tuyến tính theo thông lượng | Tiệm cận hằng số |
Độ phức tạp triển khai | Trung bình | Thấp đến trung bình | Cao hơn |
Trạng thái triển khai | Nghiên cứu/POC; OP Stack testnet (theo Shutter) | Đang chạy trên Gnosis Chain | Nghiên cứu (USENIX 2024) |
Những câu hỏi thường gặp
MEV có thể bị loại bỏ hoàn toàn không?
Khó loại bỏ hoàn toàn vì bắt nguồn từ khả năng sắp xếp giao dịch. Giải pháp như mã hóa mempool, PBS và cơ chế thị trường builder/proposer giúp giảm thiểu đáng kể. Tham khảo số liệu trên mevboost.pics để theo dõi xu hướng.
Shutter đã hoàn toàn trustless chưa?
Chưa. Shutter hiện dựa vào tập Keypers được cấp quyền và được chọn qua quản trị. Đội ngũ đặt mục tiêu giảm giả định tin cậy theo lộ trình nhiều pha trên Ethereum trước khi tiêu chuẩn hóa trong giao thức.
Khác nhau giữa mã hóa ngưỡng và mã hóa đồng hình là gì?
Mã hóa ngưỡng chia khóa giải mã cho ủy ban, chỉ đủ ngưỡng mới giải mã được. Mã hóa đồng hình cho phép tính toán trực tiếp trên ciphertext. Cả hai đều ẩn nội dung giao dịch trước khi sắp xếp, nhưng mã hóa ngưỡng thực dụng hơn để triển khai sớm.
Tôi có thể sử dụng Shutter trên Gnosis Chain như thế nào?
Người dùng có thể gửi giao dịch qua RPC Shutterized trên Gnosis Chain để được mã hóa trước khi phát tán, rồi giải mã và thực thi sau khi vào khối. Tham khảo hướng dẫn từ Gnosis.
Tại sao giao dịch Shutter có thể chậm hơn giao dịch thường?
Do quy trình ủy ban và số lượng validator/Keypers còn hạn chế, độ trễ trung bình hiện khoảng 3 phút dù block time Gnosis là 5 giây. Nguồn: Shutter Explorer.