> ## Documentation Index
> Fetch the complete documentation index at: https://www.helius.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# MEV Protect: Định tuyến tránh các tác nhân tấn công sandwich

> Chọn sử dụng MEV Protect để định tuyến các giao dịch Solana của bạn tránh xa những trình xác thực có liên hệ về mặt thống kê với các cuộc tấn công sandwich. Hoạt động với phương thức gửi cơ bản, bundle và Helius Sender.

<Note>
  **Đây là tính năng tùy chọn.** MEV Protect mặc định bị tắt. Bạn chọn sử dụng cho từng
  yêu cầu bằng cách thêm tham số truy vấn `mev-protect=true` vào URL endpoint.
</Note>

## MEV Protect là gì?

Tấn công sandwich là một dạng MEV có hại, trong đó bot thực hiện giao dịch trước và sau giao dịch của bạn, đẩy giá theo hướng bất lợi cho bạn rồi bỏ túi phần chênh lệch. Giao dịch trước và sau không nhất thiết phải nằm trong cùng một block — với **wide sandwiching**, chúng có thể trải dài trên nhiều block trong một khoảng thời gian dài hơn. Yếu tố thực sự quyết định cuộc tấn công là **khả năng truy cập luồng lệnh của bạn** thông qua một nguồn không có biện pháp bảo vệ khỏi sandwiching. Khi bot có thể thấy giao dịch đang chờ xử lý của bạn, nó có thể đưa sandwich vào block của bất kỳ trình xác thực nào.

Trên thực tế, bên cung cấp luồng lệnh đó thường là một trình xác thực và các trình xác thực này thường đưa sandwich vào block của chính họ để tăng phần thưởng. Điều đó khiến các block của họ trở thành nguồn phát sinh sandwiching với tỷ lệ cao bất thường.

MEV Protect giảm rủi ro đó ở lớp định tuyến. Khi bạn chọn sử dụng, Helius sẽ tránh gửi giao dịch của bạn đến các trình xác thực có liên hệ về mặt thống kê với hoạt động sandwich, nhờ đó khả năng giao dịch bị tấn công sandwich giảm đáng kể.

<CardGroup cols={2}>
  <Card title="Opt-In Per Request" icon="toggle-on">
    Mặc định bị tắt. Thêm `mev-protect=true` vào URL endpoint — không cần thay đổi
    giao dịch hoặc logic ký của bạn.
  </Card>

  <Card title="Works Everywhere" icon="arrows-split-up-and-left">
    Được hỗ trợ trên `sendTransaction` cơ bản, `sendBundle` cơ bản, Sender Max và
    Sender chỉ dùng SWQOS.
  </Card>

  <Card title="Data-Driven Routing" icon="chart-line">
    Loại trừ các trình xác thực đưa sandwich vào block của chính họ hoặc vào
    các block liền kề — chỉ khi mẫu hành vi có ý nghĩa thống kê.
  </Card>

  <Card title="Minimal Landing Impact" icon="gauge-high">
    Chỉ một phần nhỏ tổng stake bị loại trừ, vì vậy tác động đến tỷ lệ giao dịch được ghi nhận
    và độ trễ là không đáng kể.
  </Card>
</CardGroup>

## Cách hoạt động

Helius chủ động giám sát các bot sandwich đã biết và phân tích nơi sandwich của chúng được đưa vào block. Một trình xác thực bị gắn cờ khi một trong hai mẫu hành vi sau xuất hiện nhất quán:

* **Trong block của chính trình xác thực** — trình xác thực trực tiếp đưa các giao dịch sandwich vào block.
* **Trong các block liền kề** — sandwich liên tục được đưa vào các block ngay trước hoặc sau block của trình xác thực.

Để tránh gây bất lợi cho các trình xác thực chỉ vô tình nằm gần sandwich, Helius chỉ loại trừ những trình xác thực có mối liên hệ **có ý nghĩa thống kê** với hoạt động sandwich. Cách này giúp tập hợp bị loại trừ luôn nhỏ và có mục tiêu thay vì chặn stake trên diện rộng.

<Steps titleSize="h3">
  <Step title="Opt in">
    Thêm `mev-protect=true` vào URL endpoint. Tham số này chỉ áp dụng cho yêu cầu
    đó.
  </Step>

  <Step title="Protected routing">
    Helius gửi giao dịch của bạn nhưng tránh các leader bị gắn cờ do có liên hệ với
    sandwich, bằng cách sử dụng tập hợp loại trừ hiện tại có ý nghĩa thống kê.
  </Step>

  <Step title="Normal execution">
    Giao dịch của bạn được xử lý như bình thường — nhưng khả năng bị
    tấn công sandwich thấp hơn nhiều.
  </Step>
</Steps>

## Các phương thức gửi được hỗ trợ

MEV Protect là một tham số truy vấn, vì vậy có thể được thêm vào mọi phương thức gửi mà không làm thay đổi phần thân yêu cầu.

| Phương thức                                                             | Endpoint                             | Bật bằng                                 |
| ----------------------------------------------------------------------- | ------------------------------------ | ---------------------------------------- |
| [`sendTransaction` cơ bản](/docs/vi/sending-transactions/send-manually)      | `https://mainnet.helius-rpc.com`     | `?api-key=YOUR_API_KEY&mev-protect=true` |
| [`sendBundle` cơ bản](/docs/vi/sending-transactions/send-bundle)             | `https://mainnet.helius-rpc.com`     | `?api-key=YOUR_API_KEY&mev-protect=true` |
| [Sender Max](/docs/vi/sending-transactions/sender-max) (giao dịch và bundle) | `https://sender.helius-rpc.com/fast` | `?mev-protect=true`                      |
| [Sender chỉ dùng SWQOS](/docs/vi/sending-transactions/sender-swqos-only)     | `https://sender.helius-rpc.com/fast` | `?swqos_only=true&mev-protect=true`      |

## Cách bật

Nối `mev-protect=true` vào URL endpoint bạn đang sử dụng. Kết hợp tham số này với bất kỳ tham số truy vấn nào khác (`api-key`, `swqos_only`, `rebate-address`) bằng `&`.

<Tabs>
  <Tab title="Basic sendTransaction">
    ```bash theme={"system"}
    curl "https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY&mev-protect=true" \
      -X POST \
      -H "Content-Type: application/json" \
      -d '{
        "jsonrpc": "2.0",
        "id": 1,
        "method": "sendTransaction",
        "params": [
          "BASE64_ENCODED_TRANSACTION",
          { "encoding": "base64", "skipPreflight": true, "maxRetries": 0 }
        ]
      }'
    ```
  </Tab>

  <Tab title="Basic sendBundle">
    ```bash theme={"system"}
    curl "https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY&mev-protect=true" \
      -X POST \
      -H "Content-Type: application/json" \
      -d '{
        "jsonrpc": "2.0",
        "id": 1,
        "method": "sendBundle",
        "params": [
          ["BASE64_SIGNED_TX_1", "BASE64_SIGNED_TX_2"],
          { "encoding": "base64" }
        ]
      }'
    ```
  </Tab>

  <Tab title="Sender Max">
    ```bash theme={"system"}
    curl "https://sender.helius-rpc.com/fast?mev-protect=true" \
      -X POST \
      -H "Content-Type: application/json" \
      -d '{
        "jsonrpc": "2.0",
        "id": 1,
        "method": "sendTransaction",
        "params": [
          "BASE64_ENCODED_TRANSACTION",
          { "encoding": "base64", "skipPreflight": true, "maxRetries": 0 }
        ]
      }'
    ```
  </Tab>

  <Tab title="Sender SWQOS-only">
    ```bash theme={"system"}
    curl "https://sender.helius-rpc.com/fast?swqos_only=true&mev-protect=true" \
      -X POST \
      -H "Content-Type: application/json" \
      -d '{
        "jsonrpc": "2.0",
        "id": 1,
        "method": "sendTransaction",
        "params": [
          "BASE64_ENCODED_TRANSACTION",
          { "encoding": "base64", "skipPreflight": true, "maxRetries": 0 }
        ]
      }'
    ```
  </Tab>
</Tabs>

<Tip>
  MEV Protect chỉ thay đổi nơi giao dịch của bạn được định tuyến. Hãy giữ nguyên
  các yêu cầu hiện có về tip và phí ưu tiên — đối với Sender, cả tip lẫn phí ưu tiên
  vẫn là bắt buộc.
</Tip>

## Những điểm cần cân nhắc

Việc loại trừ các trình xác thực đồng nghĩa với việc giao dịch của bạn có ít leader để được ghi nhận hơn một chút. Trên thực tế, tác động rất nhỏ: tại bất kỳ thời điểm nào, chỉ một lượng stake giới hạn (khoảng 3–4 triệu SOL) bị loại trừ, chiếm một phần nhỏ trong tổng stake của mạng. Đối với hầu hết luồng giao dịch, mức giảm tỷ lệ được ghi nhận và độ trễ tăng thêm là không đáng kể.

<Warning>
  Đối với các chiến lược nhạy cảm nhất với độ trễ, nơi mọi leader đều quan trọng, hãy đo
  tỷ lệ được ghi nhận khi có và không có `mev-protect=true` cho luồng cụ thể của bạn trước khi
  bật tính năng này trong môi trường production.
</Warning>

## MEV Protect so với Hoàn phí giao dịch

Đây là các tính năng bổ trợ cho nhau, xử lý những khía cạnh khác nhau của MEV:

* **MEV Protect** là cơ chế định tuyến phòng vệ — ngay từ đầu, tính năng này làm giảm khả năng kẻ tấn công sandwich trích xuất giá trị từ giao dịch của bạn.
* **[Hoàn phí giao dịch](/docs/vi/sending-transactions/backrun-rebates)** mang tính chủ động — tính năng này trả cho bạn một phần MEV backrun có lợi mà giao dịch của bạn tạo ra sau khi giao dịch hoàn tất.

Bạn có thể chọn sử dụng cả hai trong cùng một yêu cầu bằng cách thêm cả hai tham số truy vấn.

## Nội dung liên quan

<CardGroup cols={2}>
  <Card title="Helius Sender" icon="rocket" href="/docs/vi/sending-transactions/sender">
    Gửi giao dịch đa đường dẫn với độ trễ cực thấp và mức giá dựa trên tip.
  </Card>

  <Card title="Transaction Rebates" icon="coins" href="/docs/vi/sending-transactions/backrun-rebates">
    Nhận một phần MEV do giao dịch của bạn tạo ra, được thanh toán bằng SOL.
  </Card>

  <Card title="Send Transactions (Basic)" icon="paper-plane" href="/docs/vi/sending-transactions/send-manually">
    Tạo, tối ưu hóa và xác nhận một `sendTransaction` bằng vòng lặp thử lại đáng tin cậy.
  </Card>

  <Card title="Send Bundles (Basic)" icon="layer-group" href="/docs/vi/sending-transactions/send-bundle">
    Thực thi nguyên tử theo cơ chế tất cả hoặc không có gì cho tối đa 5 giao dịch qua `sendBundle`.
  </Card>
</CardGroup>
