什麼是閃電貸

2022-10-27 16:37:17

Web3常被人們稱為是下一個互聯網的新世代,加密貨幣錢包被認為是通過Web3世界的大門。為了幫助您全面瞭解並走進Web3世界,CoinEx Wallet推出了Web3科普系列內容,詳細介紹Web3行業的現狀及未來發展。

 

近期,區塊鏈安全團隊Supremacy發佈Twitter稱,DeFi投資管理工具Earning.Farm的合約遭到閃電貸攻擊,使得MEV機器人從中獲利480個ETH,黑客獲利268個ETH。

 

閃電貸對DeFi老用戶並不是一個陌生的詞彙,但對於一些剛剛接觸到加密世界的新從業者,這個詞可能會讓他們一頭霧水。在本文中,我們將介紹閃電貸的來龍去脈,幫助新用戶來理解這個加密行業中特有的詞彙。

 

貸款的類別

貸款是一個大家日常生活中並不陌生的東西。我們常見的貸款可以分為兩種:一種是抵押貸款。例如我最近想要去創業,但手頭有些緊張,我可以將手中的房產作為抵押向銀行申請貸款,等到你把這筆錢還上,房產也還是你的。但如果到了還款時間,你還沒有結清欠款,銀行就可以收走你的房產。

 

另一種是無抵押貸款,也可以說是信用貸款,我們平常消費使用的信用卡就屬於這種。所以在你申請信用卡之前,銀行會調查你的信用記錄以及流水信息等,從而確保你具備相應的償還能力。

 

而在DeFi的世界中,貸款也是使用頻率最高的場景之一。在之前的《CoinEx Wallet|什麼是去中心化借貸》一文中,就詳細介紹目前去中心化借貸中最常見的超額抵押貸款的模式。而除了抵押貸款之外,去中心化貸款中也有著無抵押貸款的模式,也是本文的主角——閃電貸。

 

閃電貸的原理

閃電貸用一句話說明就是,在同一個區塊中完成貸款和償還的行為。以以太坊舉例,我們首先需要知道,在一個區塊中它是可以包含很多筆交易的,並且一個交易可以包含很多步驟。如下圖所示,我們可以看到在這筆交易中包含了24筆轉賬記錄。

 

 

這意味著我們可以在一筆交易中包含下列步驟:拿到貸款,用貸款資金去乾別的事,償還貸款(這與我們常見的交互不同,需要將這些步驟通過編程按照順序放到一筆交易中)。只要最後一步的償還資金完成,這些步驟就會被一起打包到交易中並上鏈。而如果這些步驟中發生了一個錯誤,例如你並未償還資金,那麼整個交易將會被回滾,最後得到的結果是「交易失敗」。

 

因此在這種情況下,閃電貸提供商並不擔心用戶有沒有能力還款,它只需要在合約中設置貸款人必須在同一個交易內償還。一旦還款行為沒有發生,貸款步驟將會被強制無效,相當於一切都沒有發生過,也就沒有違約的風險。

 

閃電貸的用途

瞭解閃電貸的原理後,你可能產生了新的疑問,這不相當於秒借秒還嗎,那能幹嘛呢?其實,閃電貸的用途非常多,其中最常見的就是套利。

 

經常交易的用戶可能會聽過搬磚套利這個詞,指的是兩家交易所的價格存在價差時,用戶在低價交易所買入,高價交易所賣出的行為。你的資金量越大,賺取價差的機會越多,利潤也自然可以更大。閃電貸正是提供了一個大額資金的機會。

 

假如UniSwap上的1個USDC可以換1.01個USDT,而Curve上的1個USDT可以換回1個USDC,那麼我可以通過閃電貸借出100,000個USDC,然後在UniSwap上賣出,得到101,000個USDT,隨後在Curve上兌換,換回101,000個USDC,最後將100,000個USDC還回去,相當於空手套了1,000個USDC。

 

當然這只是舉例,實際操作並不會這麼簡單。首先閃電貸會收取一定比例的費用,另外大額交易會出現較大的價格滑點,這使得你無法以當前的價格進行兌換。所以實際的閃電貸套利會更巧妙,對時機的把握也會更精准。除了套利,閃電貸還會被用在清算上,例如通過自我清算來降低清算成本。

 

而在常規的閃電貸之外,還有來自黑客的閃電貸攻擊。這種一般是黑客利用巨額資金操縱價格並賺取收益,而該行為往往會讓其他用戶遭受損失,因此被判定為惡意的閃電貸攻擊。

 

例如,黑客通過閃電貸借取了10,000個ETH,然後某DeFi協議此時1個ETH可以兌換1500個USDT。黑客將借來的ETH全部換為USDC,由於大額買單,價格出現了劇烈下滑,黑客的買單完成後,1ETH只能兌換750USDC,黑客大概獲得了11,250,000個USDT(因AMM算法及具體K值無法確定,此數據僅用於舉例參考,不代表市場真實價格變化),隨後黑客在該平台進行借款,按照75%的抵押率以及1ETH價值750USDC,他手中的USDC可以借出11,250個ETH,黑客償還完閃電貸後還能獲得1,250個ETH,但這對於市場價格造成了極大的衝擊。

 

目前,閃電貸雖然面臨著一些爭議,但大部分人認為即便沒有閃電貸,黑客只需要有大量資金同樣可以完成這些攻擊,這是協議本身的預言機機制不完善所造成的。閃電貸作為DeFi領域特有的貸款方式,它的創新是毋庸置疑的。作為代碼執行的典型案例,也許閃電貸的邏輯未來能給人們帶來了新的金融產品設計理念。