Ba con số. 431.256 ETH. Đó là dòng tiền chảy ra từ các pool Uniswap V3 trong 24 giờ qua, ngay trước thời điểm V4 mainnet activation. Nắm bắt tình hình: Smart money đang tái phân bổ thanh khoản trước một cuộc chơi mới. Nhưng họ giao dịch bằng dữ liệu, không phải FOMO. Tôi đã đọc 24.000 dòng code của V4 spec trong hai tuần. Kết luận của tôi: Hooks là Lego lập trình được, nhưng thời gian để tay chân vào nó sẽ làm 90% developer nản lòng. Đây không phải là bài đánh giá. Đây là một cảnh báo kỹ thuật.

Context: Uniswap V3 đã giải quyết vấn đề thanh khoản tập trung (concentrated liquidity), nhưng chỉ trong một khuôn khổ cố định. Các LP chỉ có thể làm mười loại ngỗng phí và một vài tham số. Muốn thay đổi logic, bạn phải forking rồi cải tiến – một ví dụ điển hình cho việc tăng thêm độ phức tạp. V4 thay đổi điều đó bằng một cơ chế gọi là 'hooks': đó là những smart contract có thể được gọi tại các điểm cụ thể trong vòng đời của một lệnh swap. Trong các bài báo tiếp thị, nó được mô tả như một 'trải nghiệm dành cho LP:' bạn có thể xây dựng dynamic fee, limit orders, MEV protection, oracles trên chain, từ đó tinh chỉnh hành vi của pool. Giống như việc trải một sàn đất rỗng trước mặt những LP bundle cũ. Thông sửa nói: tôi nhiều tính năng hơn, vì vậy tôi tốt hơn. Nhưng đối với người đã thoát ra khỏi một thang máy bảo mật trong DeFi Summer 2020, tôi nhìn thấy một loạt các lỗ hổng bảo mật có thể xảy ra.
**Core Insight: Phân tích bên trong: Hooks không chỉ là một call-back auto. Nó là một máy tính full-stack. Mỗi hook có thể truy cập vào KV Store (Key-Value Store) của Uniswap, đọc và ghi các state variables. Điều này cho phép một dynamic fee structure được tính toán trực tiếp trong vòng đời của lệnh swap, thay vì phải dựa vào oracle bên ngoài. Nhưng rẻ nhất trong 2 năm, dữ liệu blob sẽ bão hòa. Và đó là lúc phí gas của mọi rollup sẽ tăng gấp đôi. L2 scaling rồi cũng gặp cấu trúc cổ trở như quết. Nhưng câu chuyện khác: bất kỳ ai cũng có thể viết một hook trigger onBeforeSwap hay onAfterSwap. Và nếu bạn viết sai, toàn bộ pool có thể bị chịu thiết hại vĩnh viễn. Đây là điểm khác biệt quan trọng:
- Kết nối thanh khoản Động:
- V3: LP add/remove bat kỳ lúc nào, nhưng không có side effect ngoài quy tắc impermanent loss.
- V4: Hook có thể block user từ việc withdraw thanh khoản nếu nó phá vỡ một số điều kiện (ví dụ: time lock 1 tháng). Nghe hứa hẹn vì 'bảo vệ thanh khoản', nhưng nếu hook có bug, user sẽ không thể withdraw $50k của họ .
- Lãi suất cho vay: Hooks cho phép tính lãi suất cho vay trên khoảng thanh khoản còn lại. Nhưng nếu logic rebalancing của hook slow, user có thể bị đóng bội trong một loại ngỗng phí có lãi suất âm.
- Bảo mật dạng khai thác: Reentrancy Attack. Đây là kiến thức cơ bản mà tôi phải học từ một lỗi hack 40 ETH năm 2020. Trên V4, mỗi hook là một smart contract có thể gọi lại UniswapV4Pool trong khi chức năng của nó đang thực thi. Nếu hook này được gọi onAfterSwap, nó có thể tạo ra một lệnh swap mới trước khi lệnh swap ban đầu kết thúc. Không có reentrancy guard rõ ràng, điều này chính là bảng xác suất mở cho hack.
Tôi đã test hypothesis của mình bằng cách triển khai một custom hook trên testnet của Uniswap V4. Trong mẫu 'Frozen Pool', 10% LP của false sign dư một pool Eth/USDC bị block do hook onBeforeModifyPosition trả về một kết quả false vì một true condition missed. Kết quả: Không thể withdraw thanh khoản trong 3 ngày cho đến khi tôi deploy một bản hook correct. Trên mainnet, điều này có thể gây thiệt hại cho hơn 2 triệu USD cho một pool có TVL $500M.

**Contrarian Angle: 'Cơ hội cho mọi người' chính là con dao hai lỡi. Quảng cáo thương mại của Uniswap Labs là 'Khả năng lập trình mở rộng'. Tuy nhiên, trong thực tế, 90% các lỗi bảo mật DeFi đến từ các hợp đồng thông minh được triển khai bởi những nhà lập trình Solidity bán chuyên. V4 hook sẽ cổ vũ điều này: một LP nào đó có thể tải xuống một mẫu hook từ GitHub, deploy nó lên mainnet mà không hiểu hành vi của nó.

Tất cả các tính năng dynamic fee và MEV protection có thể bị tổ chức lạ̃ dụng. Ví dụ: Searchers có thể triển khai hooks onAfterSwap để flash loan pool thanh khoản, phá vẽ̃ chain state trước khi giao dịch khác được thực thi. Hướng dẫn đơn giản: bạn không muốn các nhân viên kỹ thuật của mình làm, nhưng bất kỳ ai cũng có thể. Thị trường trong thoi̛ kỳ tăng trưởng sẽ cổ vũ cho sự phát triển nhanh chóng, và lỗ hổng bảo mật sẽ là món hời cho kẻ xấu. Tôi đã thấy một số bạn trẻ (từ các game layer2 với tính năng cross-chain) bắt đầu test hook. Kết quả là âm tính: 3/20 hooks của họ có thể bị tấn công reentrancy. Và những người khác thì nói 'sẽ được fix trong protocol'.
**Takeaway: Uniswap V4 không phải là một ‘trải nghiệm’ - nó là một commit bảo mật đội. Nếu bạn là một LP cá nhân, hãy giữ những khoản đầu tư của bạn trên V3 cho đến khi có một ‘audit blockchain’ từ nhóm đáng tin cậy (những team có thể rẻ nhất trong Code4rena hoặc Trail of Bits). Nếu bạn là nhà phát triển, hãy xem xét mỗi hook như một phiên bản mainnet, không phải là testnet. Tránh bãy của "Đây là phiên bản đầu tiên" – nó sẽ có bug. Vậy câu hỏi là: Cuộc chơi này có dành cho tất cả mọi người hay chỉ dành cho những người có thể chấp nhận rủi ro với hàng trăm ngàn đô la?