什么是闪电贷?闪电贷攻击是什么?一文详解闪电贷!闪电贷可以让我们在无需抵押品的情况下从指定的智能合约池中借入任何可用的资产金额。闪电贷是DeFi中有用的一个构件(buildingblock),因为它可以用于套利、交换抵押品和自我清算等。闪电贷款虽然最初是由Marble协议引入的,但由Aave和dYdX普及。
今天非常好学习小编给大家详细介绍闪电贷,需要的朋友一起看看吧!
闪电贷是去中心化金融世界中一种相对较新的无担保贷款。最初由Aave于2020年初率先推出,此后它越来越受欢迎,并在许多借贷协议中可用。
许多加密行业专家已成为闪电贷的真诚拥护者,因为它们提供了创新的套利方式、执行快速交易,并提供了许多以前在传统金融中无法实现的其他新颖功能。
我们大多数人都熟悉传统贷款,贷方将钱贷给借款人,然后在固定的时间段内以固定的溢价或除本金之外的利息偿还。闪贷具有相同的基本原理,但包括几个独特的特征:
这是一种无抵押贷款,这意味着借款人不需要用任何资产或存款来获得贷款。此外,与传统的无抵押贷款不同,没有信用检查流程。
所有闪贷都是通过区块链上的智能合约完成的,并且规定如果借款人没有在单个区块链交易中归还资金,则贷款过程将被逆转,就好像它从未发生过一样。这个关键的区别就是为什么借款人能够在没有任何抵押品或信用检查的情况下获得快速贷款,因为它消除了贷方的任何风险。
贷款过程是即时的,因此一旦贷款延期,借款人必须调用其他智能合约来利用闪贷尝试执行几乎即时的交易,然后在单块交易结束前将资金返还,通常在几秒钟内。
鉴于贷方的资本风险为零,借款人没有抵押或信用检查义务,因此自去年以来,闪电贷在整个DeFi中增长如此迅速也就不足为奇了。
让我们看几个闪贷用例。在第一种情况下,假设用户借用了DAI,使用ETH持有量作为抵押。如果ETH的价格开始下跌,抵押品的价值就会下降,用户将面临贷款在某个时候被清算的威胁。
为了解决这种情况,用户可以利用闪贷。通过此闪贷功能,借款人可以将波动的ETH换成稳定币。抵押品的价值立即变得稳定,从而消除了任何清算范围。
虽然此用例属于抵押品交换类别,但您也可以使用闪电贷来换出您的债务。考虑前面的示例,您在DAI中借入了资金。
如果对DAI贷款的需求突然增加,DAI的利率将比你之前必须支付的利率增加更多。为了避免支付更多的利息,您可以将DAI换成任何其他借入较少的货币,从而保护您的投资资本。
闪贷必须在同一区块链交易中进行借贷和快速偿还。
Ethereum等区块链上交易的概念与计算机科学中对交易的传统定义一致。
交易一个交易代表了一组必须以原子方式执行的操作,原子方式指的是要么所有的步骤都被执行,要么交易被回滚,一个步骤都不会被执行。
让我们以一个简单的数据库交易为例。熟悉这一概念的读者可以跳过这个部分。
想象有一个代表用户账户余额的数据库表
爱丽丝账户的余额是1000美元,鲍勃的余额是500美元。爱丽丝给鲍勃发了500美元。在这种情况下,我们要从Alice的余额中减去500美元,并在Bob的余额中增加500美元。数据库更新报表应这样写:
如果第一个更新执行了,但第二个更新因为某些原因失败了,会怎么样?(也许id=2在系统中并不存在,但我们犯了一个错误,以为这是Bob的id)
如果发生这种情况,我们就会发现出现错误的结果:Alice的余额为500美元,Bob的余额也等于500美元。
为了避免这样的情况,我们必须使用transactions。
在上面的情况下,在SQL中,我们只需要用BEGIN;和COMMIT;关键字来打包这两条语句。一旦这样做,要么这两条语句都正确执行了,要么都没有执行,保证Alice和Bob的余额不受影响,我们就可以放心了。这就是我们常说的原子化交易,如果不同的步骤是同一个交易的一部分,它们是不可分割的,要么全有,要么全无。
说到Ethereum,每一个常见的操作,如发送ETH、发送ERC20代币、与智能合约交互等都是在交易范围内执行的。
交易被分组并包含在Ethereum区块中。我们可以很方便地在任意的区块链浏览器(例如Etherscan)上看到包含在特定区块中的所有交易。
一个Ethereum交易可以包含多个步骤,例如,在Compound上提供ETH并借出DAI,在Curve上将借出的DAI的一半换成USDC,在Uniswap上为DAI/USDC池提供流动性,所有这些都在一个Ethereum交易中完成。当然,如果其中任何一个步骤导致错误,整个交易将被回滚,所有步骤都不会发生。需要注意的是,即使合约执行失败,我们还是要付gas费的。
单笔交易的步骤数只受gas费的限制,所以虽然理论上,你可以创建一个有成千上万步骤的有效交,但现实中可能会由于最大gas成本的限制,交易会被拒绝。
闪电贷现在,我们来深入了解一下闪电贷。
首先,执行闪电贷最重要的是找到一个闪电贷提供商。Aave或dYdX等项目开发了智能合约,允许DeFi用户从指定的池子中借到不同的币,前提条件是在同一个以太坊交易内偿还。使用闪贷通常有固定的成本。例如,Aave合约要求借款人归还初始金额+0.09%的借款金额。0.09%这笔费用将会分给存款人和集成商,前者给出了可供借贷的资金,后者为使用Aave的闪电贷API提供便利。这笔费用的一部分也会被换成AAVE代币。
一旦从借贷池中借到金额,它就可以用于其他套利操作,只要在不同步骤所处的区块链末端快速偿还贷款。
由于贷款必须在一次交易内偿还,所以不存在借款人不偿还借款的风险。唯一的风险就是一直存在的智能合约和平台风险。
闪电贷越来越受欢迎,有的用户在Aave上的借款金额高达14MDAI。
让我们想象一下,Uniswap和Curve之间的DAI/USDC池存在价格差异。你可以在Curve上用1个DAI换取1个USDC,但在Uniswap上您只需要0.99个DAI就可以买到1个USDC。现在你可以尝试执行以下套利:
1.通过闪电贷向Aave借100,000DAI。2.在Uniswap上将100,000DAI换成USDC,收到101,010USDC。3.在Curve上将101,010USDC换成101,010DAI4.偿还初始100,000DAI+0.09%的费用=100,090美元5.利润920DAI
是不是看起来很好的样子?但我们必须考虑到以下几个因素:
网络费用--多步骤的套利交易可能成本不菲,在计算利润时,一定要将交易费用考虑在内。价格滑点--一定要计算你在执行订单时将会遇到多少价格滑点(提示:这取决于交易额的大小和流动性池的流动性)。Frontrunning--很有可能别人会发现同样的机会,并且会设法抢先你一步行动。最重要的是,监控mempool的机器人可以发现你的盈利套利机会,并以更高的gas费发送相同的交易把你的盈利机会偷走。
假设你用ETH作为抵押品从Compound借了DAI。你可以通过以下方式将抵押品从ETH换成例如BAT:
1.发起一笔闪电贷借出DAI2.用借来的DAI偿还Compound中的贷款3.提取你的ETH4.在Uniswap上将你的ETH换成BAT5.提供BAT作为Compound的抵押品6.以你的BAT抵押品借出DAI7.用借来的DAI+费用偿还步骤1的闪电贷
通过这样一轮操作,额外付出借款金额的0.09%就能成功把你的抵押品从ETH换成了BAT
想象一下下面的场景:你在Compound上有一笔以ETH作为抵押借出DAI的贷款。ETH价格不断下跌,已经接近清算水平。你也没有或不想存入更多的ETH来降低你的清算水平,你也没有偿还贷款所需的DAI。现在,与其让MakerDAO合约清算你的抵押品并向你收取清算费,不如采取以下步骤:
1.发起闪电贷,借出一笔DAI,金额是你在Compound上的欠债2.偿还Compound上的DAI贷款,提取ETH3.将足够的ETH换成DAI,以偿还步骤1的闪电贷+费用4.拿住你剩下的ETH
这就是闪电贷最常见的3个用例,闪电贷的概念还比较新,未来还有很多应用例子有待发掘。
闪存贷和DeFi黑客闪电贷,与加密技术类似,既可以用于好的方面,也可以用于坏的方面。闪电贷被大量应用在defi攻击中,黑客的获利得到放大,因为它们不需要任何前期资金。
以上就是什么是闪电贷?闪电贷攻击是什么?一文详解闪电贷的全部内容,望能这篇什么是闪电贷?闪电贷攻击是什么?一文详解闪电贷可以帮助您解决问题,能够解决大家的实际问题是非常好学习网一直努力的方向和目标。