Inherited archive entry · retained from the earlier edition. Its factual, legal and policy claims have not all been reverified for 19 September 2026. Research scope.
An uncollateralised loan bounded by one transaction
EIP-3156, created 15 November 2020 to give flash loans a shared interface across contracts, defines the mechanism precisely: a lender "lends assets to a borrower smart contract with the condition that the assets are returned, plus an optional fee, before the end of the transaction." A blockchain transaction is atomic; either every instruction inside it succeeds, or none of its effects are kept, so a loan that is not repaid by the final instruction simply never happened as far as the ledger is concerned. The standard itself came after the practice: Aave's own account, published 7 February 2020 when the protocol was, in its own words, "a bit less than a month" old, describes flash loans already live and working on that basis.
What atomicity actually makes possible
The Aave post's own examples show what a single, unbreakable transaction can contain: borrowing to repay a debt on someone's behalf, collecting their deposit, and returning the loan with a fee, all before the transaction closes; or borrowing an asset, using it to arbitrage a price difference, and repaying, keeping only what remains. Aave's current documentation still frames the feature the same way: the pool transfers the requested amount, calls the borrower's contract, and pulls back principal plus fee automatically, with the whole sequence occurring, as the documentation puts it, "in 1 transaction (hence in a single ethereum block)."
Why this changed the cost of testing a protocol's weak points
Before this mechanism existed, testing whether a lending market or a pricing mechanism could be pushed to its limit at scale required actually holding a large sum of capital, which limited who could realistically attempt it. Atomicity removes that requirement almost entirely: anyone able to write a contract that repays what it borrows can transact with an amount limited only by what a lender's pool holds, for the length of one transaction, without ever owning that capital before or after. That capability is symmetrical. It can fund arbitrage and self-liquidation exactly as it can fund an attempt to move a price or drain a mispriced pool, and the contract code cannot tell the difference between the two intentions.
Questions to carry forward
- If a protocol's safety depends on an attacker needing significant capital, does a flash loan remove that assumption entirely?
- What does a lending fee actually compensate the lender for, if the loan is never at risk of non-repayment by design?
- Which parts of a protocol's logic assume a price or balance cannot move by a large amount within a single transaction?
A flash loan is neither a loophole nor an exploit by itself; it is a direct consequence of what a transaction already was on a blockchain that allows contracts to call other contracts. What changed in 2020 was that developers began building on that property deliberately, and standardising it, rather than treating it as an incidental fact about how transactions work.
Sources & reading trail
Specifies the standard flash-loan interface and the atomicity requirement that assets be returned before the transaction ends.
Source published: 15 November 2020 · Retrieved: 16 September 2026
Official Aave account, published while the protocol was about a month old, describes flash loans already live and their intended use cases.
Source published: 7 February 2020 · Retrieved: 16 September 2026
Current documentation describes the callback mechanism and confirms the single-transaction requirement.
Source published: Not established · Retrieved: 16 September 2026
Historical sources establish the record; the questions and interpretation are Block Due Diligence’s editorial analysis. This retrospective draft does not imply the site published on the event date.