Certified Crypto Market

วิธียกเลิกการอนุมัติโทเคนบน Ethereum และเชน EVM อื่นๆ

เรียนรู้ทีละขั้นตอนว่าจะยกเลิกการอนุมัติบน Ethereum และเชน EVM อื่นๆ อย่างไร การอนุมัติแบบใดมีความเสี่ยง การยกเลิกมีค่าใช้จ่ายเท่าใด และสิ่งที่การยกเลิกย้อนกลับไม่ได้

CCM ResearchCertified Crypto Market3 ต.ค. 2569อ่าน 4 นาที
แชร์บน XLinkedIn

หากต้องการยกเลิกการอนุมัติโทเคนบน Ethereum หรือเชน EVM อื่น ให้เชื่อมต่อกระเป๋าเงินกับเครื่องมือตรวจสอบการอนุมัติที่เชื่อถือได้ (เช่น Revoke.cash หรือเครื่องมือตรวจสอบการอนุมัติโทเคนของ block explorer) เลือกเครือข่าย ตรวจดูว่าสัญญาใดใช้จ่ายโทเคนของคุณได้บ้าง แล้วส่งธุรกรรมยกเลิกสำหรับรายการที่คุณไม่ได้ใช้แล้วหรือไม่รู้จัก การยกเลิกแต่ละครั้งเป็นธุรกรรมบนเชนที่ตั้งวงเงินเป็นศูนย์และมีค่าแก๊สเล็กน้อย

การอนุมัติเป็นหนึ่งในความเสี่ยงที่ถูกมองข้ามมากที่สุดในการเก็บรักษาสินทรัพย์ด้วยตนเอง ทุกครั้งที่คุณเทรดบนกระดานเทรดแบบกระจายศูนย์หรือใช้แอป DeFi คุณมักจะให้สิทธิ์สัญญาในการย้ายโทเคนของคุณ สิทธิ์เหล่านั้นจะมีผลไปเรื่อยๆ โดยไม่มีกำหนด หากภายหลังสัญญานั้นถูกโจมตี หรือหากคุณอนุมัติสัญญาที่เป็นอันตราย โทเคนของคุณอาจถูกนำไปได้โดยที่คุณไม่ต้องลงนามอะไรอีก

การอนุมัติโทเคนทำงานอย่างไร

โทเคน ERC-20 ซึ่งเป็นมาตรฐานของโทเคนส่วนใหญ่บน Ethereum มีฟังก์ชัน approve เมื่อคุณอนุมัติสัญญาใด คุณกำลังตั้งวงเงิน (allowance) ซึ่งก็คือจำนวนสูงสุดของโทเคนนั้นที่สัญญาโอนออกจากที่อยู่ของคุณได้

หลายแอปขอวงเงินแบบไม่จำกัด เพื่อที่คุณจะไม่ต้องอนุมัติใหม่ทุกครั้งที่เทรด ซึ่งสะดวก แต่หมายความว่าสัญญาสามารถย้ายยอดคงเหลือทั้งหมดของโทเคนนั้นได้ทุกเมื่อ ทั้งตอนนี้และในอนาคต

NFT ก็ทำงานคล้ายกัน ฟังก์ชัน setApprovalForAll ให้สิทธิ์ผู้ดำเนินการ (operator) ย้าย NFT ทุกชิ้นในคอลเลกชันที่คุณเป็นเจ้าของ นี่คือเหตุผลที่ NFT drainer มุ่งเป้าไปที่ฟังก์ชันนี้

ยังมีรูปแบบที่ใหม่กว่า นั่นคือลายเซ็น permit โทเคนและระบบบางตัว (รวมถึง Permit2 ของ Uniswap) ให้คุณมอบวงเงินด้วยการลงนามข้อความนอกเชนแทนการส่งธุรกรรม ลายเซ็นเหล่านี้ดูไม่มีพิษภัยแต่สามารถอนุญาตการโอนได้ บทความของเราเรื่อง ice phishing และลายเซ็น permit อธิบายความเสี่ยงนี้

ทีละขั้นตอน: วิธียกเลิกการอนุมัติ

  1. 1เปิดเครื่องมือที่เชื่อถือได้โดยตรง พิมพ์ที่อยู่เว็บเองหรือใช้บุ๊กมาร์ก ตัวเลือกที่เป็นที่รู้จัก ได้แก่ Revoke.cash และเครื่องมือตรวจสอบการอนุมัติโทเคนบน Etherscan และ explorer อื่นๆ เว็บ “revoke” ปลอมมีอยู่จริง ดังนั้นอย่าคลิกลิงก์จาก DM หรือโฆษณาเด็ดขาด
  2. 2เชื่อมต่อกระเป๋าเงินหรือวางที่อยู่ของคุณ การวางที่อยู่ช่วยให้คุณดูการอนุมัติได้โดยไม่ต้องเชื่อมต่อ คุณต้องเชื่อมต่อเฉพาะตอนส่งธุรกรรมยกเลิกเท่านั้น
  3. 3เลือกเครือข่าย การอนุมัติแยกตามเชน ตรวจสอบ Ethereum แล้วตามด้วยทุกเครือข่ายที่คุณใช้ เช่น Arbitrum, Optimism, Base, Polygon หรือ BNB Smart Chain
  4. 4ตรวจดูรายการ สำหรับการอนุมัติแต่ละรายการ คุณจะเห็นโทเคน สัญญาที่มีสิทธิ์ใช้จ่าย จำนวนวงเงิน และบ่อยครั้งจะเห็นว่าได้รับอนุมัติเมื่อใด
  5. 5ระบุสิ่งที่ควรยกเลิก ให้ความสำคัญกับวงเงินไม่จำกัด ผู้ใช้จ่ายที่คุณไม่รู้จัก แอปที่คุณไม่ได้ใช้แล้ว และสัญญาใดๆ ที่เกี่ยวข้องกับการโจมตีที่เป็นที่รู้จัก
  6. 6คลิกยกเลิกและยืนยันในกระเป๋าเงิน อ่านข้อความในกระเป๋าเงิน ควรเป็นการเรียก approve ที่ตั้งวงเงินเป็นศูนย์ (หรือการเรียก setApprovalForAll ที่ตั้งเป็น false สำหรับ NFT)
  7. 7ทำซ้ำในแต่ละเครือข่าย จากนั้นรีเฟรชเพื่อยืนยันว่าการอนุมัติหายไปแล้ว

การอนุมัติแบบใดที่ควรยกเลิกก่อน

ประเภทการอนุมัติระดับความเสี่ยงสิ่งที่ควรทำ
วงเงินไม่จำกัดให้สัญญาที่ไม่รู้จักสูงยกเลิกทันที
setApprovalForAll บนคอลเลกชัน NFT ที่มีมูลค่าสูงยกเลิก เว้นแต่กำลังลงขายอยู่
วงเงินไม่จำกัดให้แอปที่คุณไม่ได้ใช้แล้วปานกลางยกเลิก
วงเงินจำกัดให้แอปที่น่าเชื่อถือซึ่งคุณใช้บ่อยต่ำคงไว้หรือลดวงเงิน
การอนุมัติให้สัญญาที่เกี่ยวข้องกับการโจมตีสูงยกเลิกทันที

สิ่งที่การยกเลิกทำไม่ได้

การยกเลิกเป็นการป้องกัน ไม่ใช่การรักษา มันจะไม่:

  • คืนโทเคนที่ถูกโอนไปแล้ว
  • ปกป้องคุณหาก seed phrase หรือไพรเวตคีย์ของคุณถูกขโมย ในกรณีนั้นผู้โจมตีลงนามอะไรก็ได้ ให้ย้ายสินทรัพย์ที่เหลือไปยังกระเป๋าเงินใหม่ตามที่อธิบายไว้ใน สิ่งที่ต้องทำทันทีหากกระเป๋าเงินของคุณถูกเจาะ
  • ยกเลิกลายเซ็น permit นอกเชนที่คุณให้ไปแล้วได้อย่างแน่นอน ลายเซ็นเหล่านี้มีกฎการหมดอายุและ nonce ของตัวเอง ดังนั้นหากคุณลงนาม permit ที่น่าสงสัย วิธีที่ปลอดภัยที่สุดคือย้ายโทเคนที่ได้รับผลกระทบไปยังกระเป๋าเงินใหม่

ลดความเสี่ยงจากการอนุมัติในอนาคต

  • ตั้งวงเงินเอง กระเป๋าเงินหลายตัวให้คุณแก้ไขจำนวนในหน้าขออนุมัติได้ อนุมัติเฉพาะจำนวนที่คุณตั้งใจจะใช้
  • ใช้กระเป๋าเงินแยกสำหรับการทดลอง เก็บ burner wallet ไว้สำหรับแอปใหม่ การมินต์ และแอร์ดรอป และเก็บเงินระยะยาวไว้ในกระเป๋าเงินที่ไม่เคยเชื่อมต่อกับเว็บที่ไม่คุ้นเคย
  • อ่านคำขอลงนามทุกครั้ง หากเว็บไซต์ขอให้คุณลงนามข้อความที่คุณไม่เข้าใจ ให้หยุด
  • ตรวจสอบการอนุมัติอย่างสม่ำเสมอ ทุกๆ สองสามเดือน และหลังจากลองใช้แอปใหม่ใดๆ
  • ตรวจสอบเว็บที่เชื่อมต่อด้วย การเชื่อมต่อกับการอนุมัติเป็นคนละเรื่องกัน ดู สิทธิ์ของกระเป๋าเงินและเว็บที่เชื่อมต่อ

ข้อผิดพลาดที่พบบ่อย

  • ใช้เครื่องมือยกเลิกปลอมที่เจอผ่านโฆษณาบนเครื่องมือค้นหาหรือการตอบกลับบนโซเชียลมีเดีย
  • ยกเลิกบน Ethereum แต่ลืมกระเป๋าเงินเดียวกันบนเครือข่ายเลเยอร์ 2
  • คิดว่าการตัดการเชื่อมต่อเว็บไซต์ในกระเป๋าเงินจะลบการอนุมัติของเว็บนั้นด้วย ซึ่งไม่ใช่
  • มองข้ามโทเคนมูลค่าต่ำ ผู้โจมตีมักกวาดทุกอย่างที่เอาไปได้

สรุป

การอนุมัติโทเคนคือสิทธิ์ถาวรที่ยังคงอยู่ต่อไปนานหลังจากที่คุณให้ไป การตรวจสอบทำได้ฟรี การยกเลิกมีต้นทุนต่ำ และการทำเป็นประจำจะปิดช่องทางที่ drainer ใช้บ่อยที่สุดช่องทางหนึ่ง ทำให้เป็นกิจวัตร อนุมัติเฉพาะสิ่งที่จำเป็น และเก็บสินทรัพย์หลักไว้ในกระเป๋าเงินที่แทบไม่ได้ลงนามอะไรเลย

คำถามที่พบบ่อย

การอนุมัติโทเคนคืออะไร

การอนุมัติโทเคนคือสิทธิ์ที่คุณให้สมาร์ทคอนแทรกต์ในการย้ายโทเคนชนิดหนึ่งออกจากกระเป๋าเงินของคุณได้ไม่เกินจำนวนที่กำหนด กระดานเทรดแบบกระจายศูนย์และแอป DeFi อื่นๆ ต้องใช้การอนุมัติจึงจะทำงานได้ สิทธิ์นี้จะยังมีผลจนกว่าคุณจะยกเลิกหรือวงเงินถูกใช้หมด แม้คุณจะไม่กลับไปใช้แอปนั้นอีกเลยก็ตาม

การยกเลิกการอนุมัติต้องเสียค่าแก๊สหรือไม่

ต้องเสีย การยกเลิกเป็นธุรกรรมบนเชนที่ตั้งวงเงินเป็นศูนย์ คุณจึงต้องจ่ายค่าธรรมเนียมเครือข่ายตามปกติ บน Ethereum mainnet ค่าธรรมเนียมอาจสูงพอสมควร ส่วนบนเครือข่ายเลเยอร์ 2 มักถูก การดูรายการอนุมัติของคุณไม่มีค่าใช้จ่าย

การยกเลิกการอนุมัติจะทำให้ได้โทเคนที่ถูกขโมยคืนหรือไม่

ไม่ได้ การยกเลิกเพียงป้องกันไม่ให้สัญญานั้นโอนโทเคนในอนาคต โทเคนที่ถูกนำไปแล้วไม่สามารถกู้คืนได้ด้วยการยกเลิก หาก seed phrase หรือไพรเวตคีย์ของคุณรั่วไหล การยกเลิกอย่างเดียวไม่พอ ให้ย้ายเงินที่เหลือไปยังกระเป๋าเงินใหม่

ควรตรวจสอบการอนุมัติโทเคนบ่อยแค่ไหน

นิสัยที่ดีคือตรวจทานทุกๆ สองสามเดือน และหลังทุกครั้งที่คุณใช้งานแอปใหม่หรือแอปที่ไม่คุ้นเคย และควรตรวจสอบทันทีหากสงสัยว่าคุณได้ลงนามในสิ่งที่เป็นอันตราย

บทความนี้มีไว้เพื่อการศึกษาเท่านั้น ไม่ใช่คำแนะนำด้านการเงิน กฎหมาย หรือภาษี คริปโตมีความผันผวนสูงและคุณอาจขาดทุนได้ ตรวจสอบราคาสดและรายละเอียดโปรเจกต์ที่หน้าของแต่ละเหรียญก่อนตัดสินใจ

Wallet Drainers: How Malicious Approvals Steal Your Crypto

A wallet drainer tricks you into signing approvals that let attackers empty your wallet. Learn how drainers work, the warning signs and how to protect yourself.

3 ต.ค. 2569 · อ่าน 5 นาที

How to Set Up a Hardware Wallet Step by Step

A step-by-step hardware wallet setup guide: buy safely, verify the device, record your seed phrase offline and send a test transaction before moving funds.

3 ต.ค. 2569 · อ่าน 5 นาที

How to Calculate Crypto Profit and Loss

A crypto profit calculator method you can do by hand: realized and unrealized gains, fees, FIFO or average cost for multiple buys, and common mistakes.

12 ต.ค. 2569 · อ่าน 5 นาที

How Dollar-Cost Averaging Works in Crypto

Dollar cost averaging in crypto means buying a fixed amount on a regular schedule. Learn how DCA works, a worked example, its limits and how to set it up.

11 ต.ค. 2569 · อ่าน 5 นาที

How to Build and Track a Crypto Portfolio

Use a crypto portfolio tracker the right way: set goals, size positions, record trades and track performance across wallets and exchanges without exposing keys.

10 ต.ค. 2569 · อ่าน 4 นาที

Why Your Wallet Shows Different Addresses on Different Chains

Why your wallet address differs on different chains, why EVM chains share one address, and how to avoid sending funds to the wrong network by mistake.

9 ต.ค. 2569 · อ่าน 5 นาที