อ่านบทความนี้เพื่อทำความเข้าใจหลักการดำเนินการและมาตรการป้องกันของ ปี่เซียะล่าช้า
ต้นฉบับ - โอเดลี่
ผู้เขียน - หนาน จื้อ

Token Pixiu มักจะหมายถึงสถานการณ์ที่โทเค็นบางตัวสามารถซื้อได้แต่ไม่สามารถขายได้ นักพัฒนาจะถอด LP ออกหลังจากช่วงระยะเวลาหนึ่งเพื่อทำกำไรและดึงผู้ซื้อออกไป Pixiu ที่ล่าช้าสามารถซื้อขายได้ภายในระยะเวลาสั้น ๆ เมื่อโทเค็นถูกเปิดเพื่อการซื้อขายครั้งแรก จากนั้นจะกลายเป็นสถานะ Pixiu สำหรับเทคนิค Rug Pull แบบนี้เครื่องมือตรวจจับสัญญาจำนวนมากยังไม่ได้เพิ่มฟังก์ชันการตรวจจับที่เกี่ยวข้องกำลังกลายเป็นหนึ่งในวิธีการทำกำไรหลักสำหรับนักพัฒนาที่เป็นอันตราย
ด้านล่างนี้ Odaily จะอธิบายว่า Pixiu ถูกนำไปใช้อย่างไรผ่านภาพรวมโดยย่อของหลักการของ ERC 20 และ Uniswap
หมายเหตุ: การเปรียบเทียบบางส่วนในบทความไม่ได้เข้มงวดทั้งหมดเพื่อความสะดวกในการทำความเข้าใจ
ข้อมูลพื้นฐานเกี่ยวกับ ERC 20
โทเค็นส่วนใหญ่ในตลาดเป็นไปตามมาตรฐาน ERC-20 ERC-20 คืออะไร คำตอบของ ChatGPT มีดังต่อไปนี้:
ERC-20 เป็นโทเค็นมาตรฐานบนบล็อกเชน Ethereum ที่กำหนดสัญญาโทเค็นชุดกฎที่ต้องปฏิบัติตามและอินเทอร์เฟซ มาตรฐานนี้สร้างมาตรฐานให้กับฟังก์ชันพื้นฐานของโทเค็น รวมถึงการโอน การสอบถามยอดคงเหลือ การอนุญาตให้ใช้โทเค็นในนามของผู้อื่น เป็นต้น
ต่อไปนี้เป็นกฎและคุณสมบัติมาตรฐานโทเค็น ERC-20 หลักบางส่วน:
การโอน: โทเค็น ERC-20 สามารถโอนผ่านสัญญาอัจฉริยะได้ ทำให้ผู้ใช้สามารถส่งโทเค็นไปยังที่อยู่ Ethereum อื่น ๆ ได้
แบบสอบถามยอดคงเหลือ (BalanceOf): ผู้ใช้สามารถสืบค้นยอดโทเค็น ERC-20 ของตนเพื่อดูว่าตนเป็นเจ้าของโทเค็นจำนวนเท่าใด
การสอบถามยอดคงเหลือ (BalanceOf):
ในความเป็นจริง ฟังก์ชันนี้ไม่เพียงแต่มีฟังก์ชัน แบบสอบถาม เท่านั้น แต่ฟังก์ชันนี้ยังกำหนดโทเค็นที่ผู้ใช้ เป็นเจ้าของ อีกด้วย แต่ละโทเค็นสามารถเข้าใจได้ว่าเป็น ธนาคาร และที่อยู่กระเป๋าเงินแต่ละแห่งจะได้รับ บัตรฝากเงิน จาก ธนาคาร หลังจากโทเค็นการซื้อขายซึ่งบันทึกยอดคงเหลือของแต่ละที่อยู่ (ยอดคงเหลือ) นั่นคือคุณสามารถนำไปใช้กับธนาคารได้ เพื่อตรวจสอบยอดเงินคงเหลือของคุณหรือคุณสามารถขอเปลี่ยนแปลงสินทรัพย์ไปยังธนาคารเพื่อทำธุรกรรมได้
หมายเหตุ: Ethereum ใช้โมเดลตามบัญชี
ดังนั้น ผู้ใช้จึงไม่จำเป็นต้อง เป็นเจ้าของ ทรัพย์สินของตน แต่จำนวนโทเค็นที่คุณสามารถ ใช้จ่าย จะถูก กำหนด โดยฟังก์ชัน
นั่นคือ: X tokens ยอดคงเหลือของ [บัญชี A]=จำนวน X token ที่บัญชี A สามารถใช้ภายนอกได้
หมายเหตุ: เงินฝากธนาคารในความเป็นจริงถือเป็นหนี้ของธนาคารต่อลูกค้า และธนาคารเป็นเจ้าของสินทรัพย์
โอนย้าย
โทเค็น ERC-20 ทั้งหมดจะต้องทำหน้าที่ถ่ายโอนให้เสร็จสมบูรณ์ ตามโมเดลบัญชีแยกประเภทก่อนหน้า เมื่อมีการโอนเกิดขึ้น ไม่ใช่บัญชี A ที่ ส่ง โทเค็นไปยังบัญชี B แต่จะถูกหักออกจากบัญชี A จำนวนโทเค็นคือ X และจำนวนโทเค็น X จะถูกเพิ่มในบัญชี B
นั่นคือ: ยอดคงเหลือของ [บัญชี A]-X และยอดคงเหลือของ [บัญชี B]+X ในเวลาเดียวกัน
นักพัฒนาสามารถแก้ไขฟังก์ชันการถ่ายโอนเพื่อจำกัดจำนวนการโอน ผู้รับโอน ฯลฯ
ฟังก์ชันการถ่ายโอนเป็นแหล่งที่มาพื้นฐานของกลไกปี่เซียะส่วนใหญ่
Uniswap
ส่วนก่อนหน้านี้ได้เปรียบเทียบแต่ละโทเค็นกับ ธนาคาร และ Uniswap สามารถเข้าใจได้ว่าเป็นคนกลางในการยอมรับที่นี่ โดยการแลกเปลี่ยนโทเค็นสองรายการผ่านหลักการ AMM ของ xy=k
กระบวนการแลกเปลี่ยนมีดังนี้:
ผู้ใช้โอนโทเค็น A ไปยังสัญญา Uniswap
Uniswap จะได้รับโทเค็นแล้วคำนวณโทเค็นที่ควรส่งคืนผ่าน y=k/x และหักค่าธรรมเนียมการจัดการ
Uniswap ถ่ายโอนโทเค็น A ไปยังกลุ่ม LP และถอนโทเค็น B
Uniswap ถ่ายโอนโทเค็น B ให้กับผู้ใช้
แน่นอนว่า Uniswap เกี่ยวข้องกับฟังก์ชันและกระบวนการหลายอย่าง ประเด็นสำคัญที่ต้องทำความเข้าใจคือUniswap ซื้อขายตาม โทเค็นที่ได้รับ เท่านั้นและเมื่อผู้ใช้ดำเนินการ โอน จำนวนเงินอาจมีการเปลี่ยนแปลง
กลไกปี่เซียะ
ในส่วนนี้ กลไกปี่เซียะแบ่งออกเป็นสองประเภท:
1. ภาษีการทำธุรกรรมสูง ส่งผลให้ผู้ใช้ไม่ได้รับส่วนลดจากการขายโทเค็น
2) ไม่สามารถโอนได้ ส่งผลให้ผู้ใช้ไม่สามารถซื้อขายกับ Uniswap ได้
ภาษีการทำธุรกรรมสูง
ส่วนนี้จะแสดงขั้นตอนการคำนวณเหรียญ Meme พร้อมภาษีการทำธุรกรรมดังที่แสดงด้านล่าง (เน้นเฉพาะส่วนสีแดง)
คำนวณภาษีการทำธุรกรรม
หักเงินเต็มจำนวนจากกระเป๋าสตางค์ของผู้ใช้ (BalancerOf[user] ลดโทเค็น A)
โอนเงินไปยังที่อยู่เช่นกระเป๋าเงินของนักพัฒนาหรือ LP (BalancerOf[Dev] เพิ่มโทเค็น A ×ภาษี S)
โอนโทเค็นบางส่วนไปที่ Uniswap เพื่อแลกเปลี่ยนเป็นโทเค็น B (โทเค็น A × (1-S))
ผู้ใช้ได้รับโทเค็น B ไม่เพียงพอ

ตามที่กล่าวไว้ในส่วนก่อนหน้า Uniswap รองรับเฉพาะ “ได้รับโทเค็นแล้ว” ได้รับการประมวลผล และนักพัฒนาสามารถแก้ไขจำนวนเงินที่โอนไปยัง Uniswap และผู้ใช้ได้ตามต้องการ
ที่นี่ หากอัตราภาษีธุรกรรมถูกแก้ไขเป็น 100% ขั้นตอนที่สาม 3โอนไปยังกระเป๋าสตางค์ของนักพัฒนาหรือ LP และที่อยู่อื่น ๆ จะถูกนำไปใช้ และผู้ใช้จะไม่ได้รับโทเค็นอีกต่อไป
ไม่สามารถโอนได้
ใน Solidity นักพัฒนาสามารถจำกัดการทำธุรกรรมผ่านคำสั่ง:
หากผู้พัฒนาจำกัดการแลกเปลี่ยนโทเค็นไปยังที่อยู่ไวท์ลิสต์บางแห่งจากนั้นผู้ใช้จะไม่สามารถส่งโทเค็นในมือไปที่ Uniswap ได้ จากนั้นในขั้นตอนที่สอง ② หักเงินจากกระเป๋าเงินของผู้ใช้ Pixiu จะถูกนำไปใช้ และนักพัฒนาสามารถตั้งค่าเราเตอร์ของ Uniswap เพื่อให้สามารถส่งโทเค็นได้ และผลลัพธ์ที่ได้ เป็น:
ผู้ใช้สามารถซื้อได้เท่านั้น (Uniswap โอนโทเค็นไปยังผู้ใช้) แต่ไม่สามารถขายได้ (เนื่องจากโทเค็นไม่สามารถโอนไปยัง Uniswap สำหรับ ETH ได้ ฯลฯ )
หรือนักพัฒนาสามารถตั้งค่าขีดจำกัดการโอนเป็น 0 ปิดสวิตช์ธุรกรรม และการดำเนินการอื่นๆ ผ่านเส้นทางต่างๆ แต่ท้ายที่สุดแล้ว พวกเขาทั้งหมดจะควบคุมพฤติกรรมของ การโอน
ปี่เซียะล่าช้า
การหน่วงเวลาเพิ่มเติมสามารถทำได้โดยการจำกัดเวลา (ความสูงของบล็อก)
ตัวอย่างเช่น ในโทเค็นบางตัว ข้อจำกัดจะเป็นดังนี้:
require(block.number < _allowance)
เมื่อความสูงของบล็อกเพิ่มขึ้น ผู้ใช้จะไม่สามารถถ่ายโอนได้เมื่อถึงเกณฑ์ที่กำหนด ทำให้ Pixiu ตระหนักได้
นอกจากนี้ ยังมี Pixiu ที่รับรู้เมื่อจำนวนธุรกรรมถึงเกณฑ์ที่กำหนด Pixiu ที่ล่าช้าประเภทนี้สามารถซื้อขายได้ตามปกติในสถานการณ์เริ่มต้นหากไม่มีการตั้งค่าเป้าหมายเมื่อมีการตรวจสอบเครื่องมือตรวจจับความปลอดภัยของสัญญาบางอย่างเพื่อชักจูงผู้ใช้ ที่จะตกหลุมพราง
วิธีป้องกัน
เนื่องจากวิธีการเก็บเกี่ยวประเภทนี้เป็นเรื่องปกติใน สุนัขลากจูง ผู้ซื้อจึงมักติดตามประสิทธิภาพและเพิกเฉยต่อความปลอดภัย และเรายังไม่เคยเห็นบริษัทรักษาความปลอดภัยที่เป็นผู้ใหญ่รายใดเปิดตัวเครื่องมือตรวจจับพิเศษสำหรับวิธีนี้ ดังนั้น Odaily จึงขอเตือนไว้ ณ ที่นี้ คุณว่ามี เพื่อประโยชน์ของทรัพย์สินของตนเอง ผู้ซื้อที่มีความสามารถในการเขียนโค้ดบางอย่างควรผ่านรหัสสัญญาด้วย (หรือใช้เครื่องมือเช่น ChatGPT เพื่อดูอย่างรวดเร็ว) ให้ความสนใจเป็นพิเศษกับสัญญาการขาย และอยู่ห่างจาก โครงการที่มีพื้นที่รหัสที่ผิดปกติ


