Hacker News new | ask | show | jobs
by Findeton 1699 days ago
An Oracle is a way to tell the blockchain about external data like the price of something in the general markets. As I understand, a flash loan is a loan that is both created and paid in the same blockchain transaction (thus if it can't be paid it won't be included in the transaction), and that the exploit here was to both modify the price given by the oracle twice (up and down) and have a flash loan in the middle, all in the same transaction.

I hope I'm not adding to the confusion because I am not an expert.

1 comments

that clears a lot up, thank you.

does the oracle in this specific case use external data? and combine that with internal / blockchain inputs? how does one sanitize all those inputs?

are oracles transactional, ie if you manage to alter the state of an oracle within a contract’s transaction, other transactions don’t get any “dirty reads” from the oracle, etc?