比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > 火必APP > Info

如何使用 Aave 進行閃電貸_TPS

Author:

Time:1900/1/1 0:00:00

譯文出自:登鏈翻譯計劃

譯者:翻譯小組

校對:Tiny熊

概述

Aave,以前稱為ETHLender,現在是DeFi領域的前沿應用。Aave是該領域中第一個提出閃電貸概念的人。在閃電貸之前,你必須用一個超額抵押的資產來借貸另一個資產。例如,如果我想借一個DAI),我將不得不存入另一個超過該價值的加密貨幣。換句話說,你必須有錢才能借到錢。閃電貸打破了這種想法。他們為一個新的貸款系統打開了大門,并且做到了這一點,允許用戶在不提供任何東西作為抵押的情況下借款。

在本教程中,你將了解到閃電貸是如何實現的,以及如何自己實現執行一筆閃電貸。

關于Aave

摘自Aave官網:Aave是一個去中心化的非托管流動性市場協議,用戶可以作為存款人或借款人參與。儲戶向市場提供流動性,以賺取被動收入,而借款人能夠以過度抵押或不足抵押的方式借款。

這個定義完全正確的,但如果你不熟悉DeFi行業的行話,你可能并不理解它的含義。你可以把Aave看成是一個去中心化的偽銀行。Aave沒有一個驗證所有交易的中央銀行,而是利用智能合約,以自動化的方式完成所有這些工作。存款人將他們的代幣放入Aave,并開始為他們的存款賺取利息。另一方面,借款人會做相反的事情。他們從Aave中取出錢,并開始對所借的金額計息。不過他們必須超額抵押才能借到錢。

對于那些不想把錢存入Aave,而只想借錢的人來說,還有一種方法。這就是我們前面提到的閃電貸。

關于閃電貸

之前提到的閃電貸是一種在區塊鏈上借入資產的新方式。最初由Aave實現,其他趨勢性的DeFi協議,如dYdX迅速跟進,增加了這個新功能。所有以太坊交易的一個特性,使閃電貸成為可能。而這個關鍵特性就是原子性#:~:text=一個原子交易就是,直接拒絕整個系列。)。

現場丨Cdot創始人劉毅:公鏈發展面臨的核心問題是如何突破性能瓶頸:金色財經現場報道,10月11日,由金色財經、Candaq和哼哈互動聯合發起的金色沙龍第55期“Polkadot-波卡萬物生長與跨界破圈對話”在北京正式舉行。在本次沙龍上,Cdot創始人劉毅指出,公鏈發展面臨的核心問題,是如何突破性能瓶頸,同時保持可組合性,不過度犧牲去中心化。目前解決方案有跨鏈、Layer2、超級Layer1和分片。Polkadot也是分片,但它是處在多鏈和分片之間的。分片最難的是跨片智能合約調度問題,Polkadot也面臨這個問題。此外,他表示,Polkadot的成功非常依賴于共享安全,共享安全成不成立確定了Polkadot整個設計成不成立。[2020/10/11]

一個交易的操作系列是不可分割和不可消減的,它就是原子的。簡單來說就是:要么_所有執行_,要么_什么都沒有_發生。沒有中間狀態!閃電貸利用原子性,允許用戶在不提交抵押品的情況下先進行借款。首先,每當你在閃電貸中借入一項資產時,你必須支付貸款金額的0

/**Thisfunctioniscalledafteryourcontracthasreceivedtheflashloanedamount*/functionexecuteOperation(address_reserve,uint256_amount,uint256_fee,bytescalldata_params)externaloverride{require(_amount<=getBalanceInternal(address(this),_reserve),"Invalidbalance,wastheflashLoansuccessful?");////Yourlogicgoeshere.//!!Ensurethat*thiscontract*hasenoughof`_reserve`fundstopaybackthe`_fee`!!//uinttotalDebt=_amount

直播|Claire Wu&馬靜 > 穩定幣和DeFi如何出圈:金色財經 · 直播主辦的《 幣圈 “后浪” 仙女直播周》第6期直播中,本期“后浪”仙女魔笛手技術開發社區創始人Claire Wu & MYKEY市場負責人 馬靜將在直播間聊聊“穩定幣和DeFi如何出圈”,感興趣的朋友掃碼移步收聽![2020/6/24]

}

總而言之,我們首先要導入執行閃電貸所需的依賴。其中一些依賴關系被稱為抽象合約)。一個抽象合約至少有個函數沒有實現。你可以把它想象成一個房子的圖紙。一個建筑商使用這個圖紙來建造房子。然而,在我們的比喻中,圖紙是一個抽象合約,你是建造者,而房子是派生合約。

在我們的案例中,閃電貸合約使用的是一個名為FlashLoanReceiverBaseV1的抽象合約,它提供了必要的實現細節,如閃電貸的償還。

現在來逐行解讀代碼:

1首先,我們必須定義solidity編譯器的版本。在這個例子中,它是0.6.6。

2-4為智能合約導入依賴項#6FlashLoanV1合約是繼承自FlashLoanReceiverBaseV1合約。

8傳遞了Aave的一個借貸池提供者的地址。在這個例子中,我們提供的是DAI借貸池的地址。

13定義了一個叫做flashLoan的函數。參數是想要閃電貸的資產地址。在這種情況下,該資產是DAI。

14由于這里不需要任何閃電貸的數據,所以我們傳遞一個空字符串。

15.定義我們想要借出的DAI的數量。

16.通過Aave提供的ILendingPoolV1初始化LendingPool接口,這樣我們就可以調用flashLoan函數。#17.最后,調用flashLoan函數。該函數需要4個主要參數。首先,傳遞將接收貸款的地址。在我們的例子中,它是當前合約。其次,我們傳遞資產的地址。在我們的例子中,它是Kovan網絡中DAI的地址。第三,傳遞資產的數量,在我們的案例中,它是1個ether單位的數量。第四,傳遞額外的空數據。

趙錫軍:央行數字貨幣重點在于如何與傳統貨幣進行融合:對于“數字貨幣研發重點和難點”的看法,中國人民大學財政金融學院副院長趙錫軍指出,其中涉及兩個問題。一是技術是否成熟。比特幣實際上就是數字貨幣最初的雛形,從技術層面來講,比特幣是有一些缺陷的,一旦支付量變大,就會出現支付困難或者效率下降。另外,比特幣出現過被盜等安全問題。而據央行貨幣研究所所長穆長春的一個內部研討會指出,央行數字貨幣,效率是非常高的,支付能力很強,說明已經克服技術方面的問題。二是數字貨幣被引入后,如何與傳統的貨幣和貨幣管理運行體系進行融合。數字貨幣的發行,是基于區塊鏈的基礎,它是有上限的,從目前來講它的發行規模取決于互聯網的算力。盡管穆長春所長也提到,央行數字貨幣現在可以突破區塊鏈的上限限制,但是破獲以后,它的發行究竟是怎么樣的,是否能夠跟我們目前的人民幣發行順利融合,這需要在制度層面有所安排。(澎湃新聞)[2020/4/22]

24-31.接下來第二個函數executeOperation。這就是我們利用閃電貸的地方。它在flashLoan函數成功執行后被內部調用。它需要4個主要參數,分別是:

1).必須償還貸款的儲備資產地址。2).資產的數額3).協議書所收取的費用4).額外的參數,由函數內部使用。

33.檢查我們是否收到了適當的貸款金額,否則它將拋出一個錯誤信息。

34.在這里,可以根據你自己的使用場景,定制自己的實現邏輯。

40.我們通過使用SafeMaths庫提供的add函數,將費用和貸款金額加在一起。

41.最后,把總的債務或貸款金額還給貸款人。

部署合約

首先,打開你的MetaMask,將你的網絡設置為Kovan測試網絡。Kovan測試網絡

使用這個gist代碼來定義flashloan智能合約的依賴關系。點擊每個鏈接并將代碼粘貼到你之前創建的相應的Solidity文件中:a.ILendingPoolb.IFlashLoanReceiverc.ILendingPoolAddressesProviderd.FlashLoanReceiverBasee.WithdrawableSolidity文件

美國商品期貨交易委員會公布關于如何定義加密貨幣已經交易完成的解釋: 美國商品期貨交易委員會(CFTC)已經公布了解釋說明,關于如何定義加密貨幣已經從買方“交付”給了賣方。確認交付已經完成的的兩個因素是:1. 客戶有能力 (i)擁有和控制全部數量的商品,無論是以保證金,還是使用杠桿或其他融資購買,以及(ii)在交易之日起28內,自由地商業使用商品(在任何特定平臺內外);以及2. 報價人及賣方(包括各自的關聯方或與報價人或賣家合作的其他人士)不保留任何利益或控制任何以保證金,杠桿或其他融資方式購買的商品,在超過自交易日期起計28日后。據CFTC稱,提議的解釋不是最終的,需要經過90天的公眾評議期。[2017/12/16]

切換到SolidityCompiler標簽。將編譯器設置為0.6.6并點擊compileFlashLoan.sol。

你應該看到一些警告,但沒有錯誤信息。

現在,我們已經準備好將合約部署到Kovan網絡。切換到Deploy&RunTransctions標簽。把部署環境,從JavaScriptVM改為InjectedWeb3。這應該會打開MetaMask詢問你的權限。

部署環境

確保合約選擇的是FlashLoan.sol。在部署按鈕旁邊的文本字段中提供LendingPool的地址。在我們的例子中,它將是0x506B0B2CF20FAA8f38a4E2B524EE43e1f4458Cc5。然后點擊Deploy(部署),它應該會打開MetaMask。注意。所有已部署的合約地址列表可在這里找到。在那里,你可以找到Aave支持的各種借貸池的地址。雖然每個代幣的地址都不同,但程序是相同的。

點擊確認(Confirm)。這樣做后,你應該看到MetaMask發出的成功通知。之后側邊欄應該有一個“已部署的合約”。為閃電貸準備資金

如何讓比特幣的尸體飄過:財新專欄作家王立仁今日發文,盡快讓比特幣的尸體飄過來的方法核心點就在于影響其交易過程和記賬過程,從而破壞對比特幣系統的信任。他還論述了7大攻擊比特幣的方法:花錢硬碰硬的算力攻擊(Brute Attack)、巧取通訊環節(SmartAttack)、攻擊記賬系統、攻擊代碼、攻擊法幣與數字貨幣的通道、路由分割(RoutingSplitting)攻擊和直接硬分叉。[2017/12/4]

在新的已部署合約標簽下,可以復制已部署合約的地址。我們稍后會回到這一步;與此同時,我們需要給閃電貸合約添加一些DAI。這是因為閃電貸需要合約中的資金才能成功執行。為此,你可以跳轉到水龍頭鏈接,獲得一些DAI代幣。點擊Faucet,粘貼你的MetaMask錢包地址,然后等待確認。

獲得確認后,我們將把DAI代幣添加到MetaMask中。為此,打開你的MetaMask。點擊底部的AddToken。在代幣合約地址欄輸入0xF795577d9AC8bD7D90Ee22b6C1703490b6512FD。這是Kovan的DAI的合約地址。點擊下一步后,它應該顯示你先前從水龍頭得到的DAI。

img

接下來,點擊DAI代幣。點擊發送,它應該打開一個類似于下圖的窗口:

輸入我們的閃電貸的合約地址,之前已經復制了該地址。輸入我們要發送的金額。在我們的案例中,發送10DAI。然后點擊下一步。點擊確認!你現在已經成功地給你的閃電貸合約發送了10DAI。

執行閃電貸

回到Remix,在部署的閃電貸合約下,還有一個flashloan函數。這個函數需要一個我們想使用的資產的合約地址。在我們的例子中,它是Kovan測試網的DAI合約,是0xF795577d9AC8bD7D90Ee22b6C1703490b6512FD。正確填寫該字段后,你現在可以點擊交易按鈕,如下圖所示:

點擊按鈕后,MetaMask會彈出交易確認。確認交易后,你應該收到一條成功信息。在Remix的終端,你應該看到一個URL。點擊后會跳轉到Etherscan。

remix

在代幣轉移下,你應該看到三個不同的轉賬:

紅色的箭頭強調了從LendingPool轉移1個DAI到我們的合約。橙色的箭頭表示將1個DAI連同費用一起返還給Landingpool。藍色的箭頭表示產生利息的DAI。

小結

我們成功地編寫了閃電貸的智能合約,它能夠從資金池中借入DAI,支付閃電貸費用,然后在一次交易中償還所借金額。不需要沒有任何抵押物就借到了錢!

本翻譯由CellETF贊助支持。

來源:HowtoMakeaFlashLoanusingAave

參考資料

登鏈翻譯計劃:https://github.com/lbc-team/Pioneer

翻譯小組:https://learnblockchain.cn/people/412

Tiny熊:https://learnblockchain.cn/people/15

閃電貸:https://aave.com/flash-loans/

閃電貸:https://learnblockchain.cn/tags/閃電貸

Aave官網:https://aave.com/

超額抵押:https://www.oxfordreference.com/view/10.1093/oi/authority.20110803100257900

dYdX:https://dydx.exchange/

資產間套利:https://en.wikipedia.org/wiki/Arbitrage

RemixIDE:https://remix.ethereum.org/

以太坊智能合約:https://ethereum.org/en/developers/docs/smart-contracts/

跟我學Solidity:開發環境:https://learnblockchain.cn/article/1755

MetaMask:https://metamask.io/

Solidity:https://learnblockchain.cn/docs/solidity/

全面掌握Solidity智能合約開發:https://learnblockchain.cn/column/1

抽象合約:https://learnblockchain.cn/docs/solidity/contracts.html#abstract-contract

ILendingPool:https://gist.github.com/akp111/e254b2b5b98aa5a79f3f8dc501dfaedb#file-ilendingpool-sol

IFlashLoanReceiver:https://gist.github.com/akp111/e254b2b5b98aa5a79f3f8dc501dfaedb#file-iflashloanreceiver-sol

ILendingPoolAddressesProvider:https://gist.github.com/akp111/e254b2b5b98aa5a79f3f8dc501dfaedb#file-ilendingpooladdressesprovider-sol

FlashLoanReceiverBase:https://gist.github.com/akp111/e254b2b5b98aa5a79f3f8dc501dfaedb#file-flashloanreceiverbase-sol

Withdrawable:https://gist.github.com/akp111/e254b2b5b98aa5a79f3f8dc501dfaedb#file-withdrawable-sol

這里:https://docs.aave.com/developers/v/1.0/deployed-contracts/deployed-contract-instances

水龍頭:https://testnet.aave.com/faucet/DAI

CellETF:https://celletf.io/?utm_souce=learnblockchain

HowtoMakeaFlashLoanusingAave:https://www.quicknode.com/guides/defi/how-to-make-a-flash-loan-using-aave

免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。

本文來源于非小號媒體平臺:

登鏈社區

現已在非小號資訊平臺發布105篇作品,

非小號開放平臺歡迎幣圈作者入駐

入駐指南:

/apply_guide/

本文網址:

/news/10232365.html

免責聲明:

1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險

2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場

上一篇:

比爾·蓋茨再談ChatGPT:將改變我們的世界!

Tags:HTTTPSFLASHLAShtt幣被騙https://etherscan.ioFlashcoinLASSO價格

火必APP
經濟日報:香港可在新發展格局中助推人民幣國際化_數字人

經濟日報今日發文稱,作為人民幣最大離岸市場,香港可在新發展格局中助推數字人民幣國際化,數字人民幣的跨境支付可應用于境外旅游、生活、消費等多個場景.

1900/1/1 0:00:00
IPFS分布式存儲市場持續爆發, FIL已經開始回暖_ECOIN

Filecoin從開始到現在所帶來的變化是有目共睹的,它還解決了IPFS的許多問題:第一,解決IPFS網絡存儲成本低,性能高的問題,同時提高數據的安全性第二.

1900/1/1 0:00:00
Hoo運營周報(2021.08.02~08.08)_TPS

上周,HooSwap自主上線項目數量達到8個,HooSwap是虎符團隊基于AMM打造的創新產品。目前HooSwap“免上線審核免上幣費”正在持續進行中,歡迎您的項目加入HooSwap.

1900/1/1 0:00:00
XT關于恢復 PLAY充提的公告_TPS

尊敬的XT用戶: 因PLAY錢包升級已完成,XT現已恢復PLAY充值與提幣業務,暫停期間給您帶來的不便,敬請諒解.

1900/1/1 0:00:00
ZBG平臺關于開放KERRI交易的公告_USD

公告編號2021080603各位關心ZBG.kim的投資者們和項目方:ZBG將于HKT2021年8月9日上線KERRI項目,并開放KERRI/USDT交易對,具體時間如下.

1900/1/1 0:00:00
張晶霖:8.9以太坊三倍減半牛市來臨?比特幣行情走勢分析!_COIN

  2021年8月9日作者:張晶霖我們沒日沒夜的掙扎在這個市場上是為了什么?無非就是抓住機會分一分市場這塊蛋糕.

1900/1/1 0:00:00
ads