Nilinaw ng Aave Labs na ang kanilang propong security upgrade na V3.8 ay magpapanatili sa flash-loan liquidations. Ang tugon noong Oktubre 23 ay tumatalakay kung paano magiging interaktibo ang reentrancy guard sa mga umiiral na integrasyon.
TL;DR: Inilalayong tanggalin ng proposed V3.8 ng Aave ang mga entry point ng flash-loan. Ang pagpapatibay ng governance at ang mga security audit ay nasa pending pa.
Ang propuesta, na isinulat noong Oktubre 21, ay nagdaragdag ng isang guard sa mga operasyon ng Pool. Ang mga guard na ito ay naglalayong limitahan ang kakayahan ng isang external callback na muling mabuksan ang mga protected contract function bago matapos ang mas nakaraang pagtawag. Sabi ni Aave Labs, ang flashLoan() at flashLoanSimple() ay eksklusibo, na nagpapahintulot sa kanilang mga callback na patuloy na magtawag ng mga aksyon ng Pool, kabilang ang liquidations.
Bakit Mahalaga ang Callback
Kailangan ng isang smart contract na tumatanggap ng flash loan ng oras sa loob ng transaksyon upang gawin ang kahit ano sa mga aking binorong yaman. Ipinapaliwanag ng developer guide ng Aave ang isang sequence kung saan ang Pool ay nag-i-transfer ng mga yaman, tinatawag ang receiver contract, at pagkatapos ay sinusuri ang mga kondisyon ng pagkakasundo.
Para sa isang simpleng flash loan, ang tagatanggap ay dapat maghanda ng amount na pinahiram kasama ang kinakailangang bayad para sa pagbabayad. Kung hindi makakamit ng transaksyon ang mga kondisyon nito, ito ay babalik sa orihinal na estado. Ang mas malawak na flash-loan interface ay maaaring sakop ang maraming asset at, sa ilalim ng pinahihintulutang kondisyon, magbukas ng collateral-backed debt position.
Nagpapaliwanag ang mga mekanikong ito kung bakit mahalaga ang sakop ng guard. Maaaring kailanganin ng liquidation integration na mag-borrow ng isang asset, i-repay ang isang hindi malusog na position, at tapusin ang natitirang bahagi ng transaksyon bago ang settlement. Ang pag-block sa lahat ng susunod na interaksyon sa Pool nang walang pagpili ay magdudulot ng pagkakaantala sa sequence na ito.
Ang mahalagang tanong sa disenyo ay kung aling mga daan pabalik sa protokolo ay may kamalayang gawin. Dapat isama ng isang kapaki-pakinabang na hangganan sa seguridad ang mga pattern ng transaksyon na nakasalalay ang mga integrasyon, kabilang ang mga tawag na nangyayari pagkatapos umalis ang mga asset mula sa Pool ngunit bago isama ang pagbabayad.
Isang Transaction-Length Lock
Ang propong implementasyon ay gumagamit ng transient storage na ipinakilala sa pamamagitan ng Ethereum’s EIP-1153. Ang storage na ito ay patuloy na available habang nagtatrabaho ang transaksyon at nalilipas kapag natapos na ang transaksyon. Kaya naman, maaari itong magdala ng pansamantalang lock state upang masubaybayan kung ang isang protektadong operasyon ay nasa pagpapatakbo na.
Ang spesipikasyon ay nagtataya ng reentrancy locks bilang isang use case at nagpapaliwanag kung bakit mas mura ang transient storage kaysa sa pag-sulat ng temporary state sa permanent storage. Para sa isang malawakang ginagamit na DeFi protocol, ang tanong sa disenyo ay kasama ang gastos na idinudulot sa karaniwang transaksyon kasama ang proteksyon na idinodot ng guard.
Ang inirerekomenda ng Aave ay naglalaman ng feedback, Snapshot vote, pagsusuri sa kaligtasan at isang on-chain improvement proposal. Inaasahan na susuriin ng Certora at iba pang mga reviewer ang mga pagbabago bago ang huling hakbang.
Para sa mga integrador sa Ethereum at iba pang mga apektadong network, ang paglilinaw ay nagbibigay ng isang konkretong puntos ng kompatibilidad na maaaring i-check laban sa huling code. Ang nasuri na implementasyon ay dapat panatilihin ang inaasahang sequence ng transaksyon habang ipinapapatupad ang bagong hangganan. Ang isang pahayag ng layunin sa disenyo ay kapaki-pakinabang sa panahong iyon; ang nagde-deploy na pag-uugali ay magiging batay sa gobyerno ng implementasyon na tatanggapin ng huli.
Isinulat ng News Desk at in-edit ni Samuel Rae.


