Blacklist function
สรุปสั้น ๆ Blacklist function คือโค้ดใน token contract ที่ให้เจ้าของบล็อกกระเป๋าบางใบไม่ให้โอนหรือขายโทเคนของตัวเองได้
Blacklist function คือโค้ดส่วนหนึ่งใน smart contract ของโทเคนที่ให้ address ที่มีสิทธิ์พิเศษ ซึ่งโดยมากคือ owner ติดธงห้ามกระเป๋าที่ระบุได้ เมื่อกระเป๋าอยู่ในลิสต์แล้ว คอนแทรกต์จะปฏิเสธการโอนของกระเป๋านั้น ในทางปฏิบัติหมายถึงขาย ย้าย หรือบางครั้งแม้แต่รับโทเคนไม่ได้
โดยกลไก คอนแทรกต์จะเก็บ mapping ระหว่าง address กับธงจริงหรือเท็จ และตรรกะการโอนจะตรวจธงนั้นก่อนปล่อยให้โทเคนเคลื่อนที่ owner เรียกฟังก์ชันอย่าง addToBlacklist หรือ setBots เพื่อเปิดธง บนเชน EVM นี่คือ Solidity ธรรมดาที่ใครก็อ่านได้บนคอนแทรกต์ที่ verify แล้ว แม้ชื่อฟังก์ชันมักถูกพรางไว้ สินทรัพย์ที่ถูกต้องบางตัวก็มีการควบคุมคล้ายกัน เช่น stablecoin ที่มีเงินตราหนุนหลังรายใหญ่สามารถ freeze address ที่เกี่ยวกับการแฮ็กหรือการคว่ำบาตร และโทเคนบน Solana อาจมี freeze authority ที่ทำหน้าที่เดียวกันในระดับบัญชี
สำหรับผู้ถือโทเคนเล็ก ปัญหาอยู่ที่ว่าใครถือสวิตช์นี้ blacklist ในมือผู้ deploy ที่ไม่เปิดเผยตัวตนสามารถเปลี่ยนโทเคนให้เป็น honeypot สำหรับกระเป๋าที่ถูกเลือก ซึ่งมักเป็นคนที่เข้าซื้อเร็วพอจะได้กำไร บางโปรเจกต์อ้างว่าใช้ป้องกัน sniper bot ตอนเปิดตัว ซึ่งอาจเป็นจริง แต่อำนาจเดียวกันก็ใช้กับผู้ซื้อทั่วไปได้ทุกเมื่อ
ตรวจซอร์สโค้ดที่ verify แล้วว่ามี mapping ใดที่บล็อกการโอนหรือไม่ และดูว่า ownership ถูก renounce แล้วหรืออยู่ใน multisig ที่มี timelock บน Solana ให้ดูว่า freeze authority ถูก revoke แล้วหรือยัง เครื่องมือสแกนโทเคนจะแจ้งเตือน blacklist function ให้อัตโนมัติ แต่อาจพลาดเวอร์ชันที่เปลี่ยนชื่อหรือซ่อนโค้ด และ proxy contract ยังเพิ่มฟังก์ชันนี้ภายหลังผ่านการอัปเกรดได้




