header-langage
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
掃碼下載APP
Partnered With:

探究「延時貔貅」實現原理與防範措施

閱讀本文需 10 分鐘
Crypto黑暗森林中,惡意開發者手法不斷升級。
原文標題:《一文讀懂「延時貔貅」的實現原理與防範措施》
原文來源:Odaily 星球日報


< p>代幣貔貅,通常指某個代幣只能購買而不能出售的情況,而開發者會在一段時間後撤除 LP 獲利,對購買者 Rug Pull。而延時貔貅則是在代幣剛開放交易的短時間內可以交易,而後變成了貔貅狀態。對於此類  Rug Pull 手法,許多合約偵測工具暫未加入對應的偵測功能,正成為惡意開發者的主要獲利手段之一。


下面,Odaily 星球日報將透過簡易概述 ERC 20 和  Uniswap  的原理,講解延時貔貅是如何實現的。


註:文章中的部分類比,為便於理解,並不完全嚴謹。


ERC 20 基礎


市場上絕大部分代幣遵守 ERC- 20 標準,而 ERC-20 是什麼,ChatGPT 答案如下:


ERC-20 是一種以太坊( Ethereum  )區塊鏈上的代幣標準,它定義了代幣合約必須遵循的一組規則和介面。這個標準規範了代幣的基本功能,包括轉帳、餘額查詢、授權代表他人花費代幣等。


以下是一些主要的 ERC-20 代幣標準規則和功能:


< p>轉帳(Transfer):ERC-20 代幣可以透過智慧合約的方法進行轉賬,使用戶能夠向其他以太坊地址發送代幣。


餘額查詢(BalanceOf):使用者可以查詢他們的 ERC-20 代幣餘額,以查看他們擁有的代幣數量。


餘額查詢(BalanceOf):


實際上,該函數不僅具有“查詢”功能,用戶「擁有」多少代幣也由該函數定義。每個代幣可以理解為一個“銀行”,而每個錢包地址在交易代幣後,從“銀行”獲得了一張“儲蓄卡”,記錄了每個地址的餘額(Balance),用戶即可以向銀行申請查詢自己的餘額狀況,也可以向銀行提出資產變更請求進行交易。


註:以太坊採用了帳簿(Account- Based )模型。


因此,用戶本質上並不「擁有」其資產,而是由一個函數「定義」了你可以去」花費「的代幣數量。


即:X 代幣 Balance Of [A 帳號]=A 帳號可以對外花費的 X 代幣數


註:現實世界中的銀行存款是銀行對客戶的債務,銀行具備資產所有權。


轉帳(Transfer)


所有的 ERC-20 代幣都要完善 transfer 函數,而基於前面的帳本模型,在發生一筆轉帳的時候,也並非 A 帳戶向 B 帳戶「交付」了一筆代幣,而是從 A 帳戶扣款代幣數量 X,在 B 帳戶增加代幣數量 X。


即:Balance Of [A 帳號]-X 同時Balance Of [B 帳號]+X


而開發者可以修改 transfer 函數,對轉帳數量、轉帳人等進行限制。


轉帳函數,是絕大多數貔貅機制的根本源頭。


Uniswap


前一節將每個代幣類比成一個「銀行」,則 Uniswap 在此可以理解為一個承兌的中間人,透過 xy=k 的 AMM 原則兌換兩種代幣。


而兌換的流程如下:


用戶向 Uniswap 合約轉帳代幣 A


- Uniswap 將收到的代幣,透過 y=k/x 計算應返還的代幣,並扣除手續費


- Uniswap 向 LP 池子轉入代幣 A,並取出代幣 B


- Uniswap 向用戶轉帳代幣 B


當然,Uniswap 實際上涉及多個函數和流程,本處需要了解的重點是,Uniswap 僅基於「收到的代幣」進行交易,而在用戶進行「轉帳」操作的時候,數量或已發生了變化。


貔貅機制


本節,將貔貅機制分為兩類:


①高交易稅,導致用戶收不到銷售代幣回款;


②無法轉賬,導致用戶無法與 Uniswap 交易。


高交易稅


本小節展示一個具備交易稅的 Meme 幣計算流程如下圖(僅關注紅色部分)。


1、計算交易稅(S)


2、從用戶錢包足額扣錢(BalancerOf[用戶] 減少代幣 A)


3、向開發者錢包或 LP 等地址轉帳(BalancerOf[Dev]增加代幣 A×稅 S)


4、向 Uniswap 轉帳部分代幣兌換代幣 B(代幣  ;A×( 1-S))


5、用戶收到不足額的代幣 B

原文鏈接


歡迎加入律動 BlockBeats 官方社群:

Telegram 訂閱群:https://t.me/theblockbeats

Telegram 交流群:https://t.me/BlockBeats_App

Twitter 官方帳號:https://twitter.com/BlockBeatsAsia

選擇文庫
新增文庫
取消
完成
新增文庫
僅自己可見
公開
保存
糾錯/舉報
提交