Live data from Hacker News

The collapse of the IRON stable coin

irony-97882.medium.com

421–430 of 502 posts

Re: The collapse of the IRON stable coin

#421

Earlier quoted context omitted.

Well, to be fair, people write legal contracts without fully understanding what they are writing all the time too. I do disagree that people understand them on most cases. Things are better on consumer law because it assumes from the start that people are stupid and have no idea what they are doing. But other kinds of contracts have quite large security risks.

Yes, and when normal contracts don't ( because they can't ) anticipate every possible scenario, there is a meta layer on top of that to resolve edge cases. In the case of a smart contract, it can even happen that both parties agree in how things should take place when there's a problem! But bad code doesn't work that way, and you can find yourself in a null state of indeterminacy without a built in layer to resolve t…

Regular contracts don't have a built in layer to resolve issues either. As you say, it's a meta later above this.

Laws still apply to things handled with smart contracts. You can't say "well sure the escrow contact did the wrong thing but it's code so you can't come after me for your money back".

Re: The collapse of the IRON stable coin

#422
post #5

This has always been the problem with smart contracts. They are infact dumb contacts. To program one you need to think about all the edge cases. The programmers here likely did want >0 here. The possibility that the thing feeding price data return zero incorrectly was higher than the price legitimately being zero in their minds. There is no court or lawyer who can interpret the spirit of the contract.

Smart contracts are neither smart nor contracts.

It's code which does stuff and if you want to be on the safer side of it, you allow time and liquidity to test them out.

If you want to assume risks and possibly higher rewards you get in early (ape, in crypto speech).

It's pretty simple.

What makes it complicated is that they are called smart contracts.

Re: The collapse of the IRON stable coin

#423
post #298

Earlier quoted context omitted.

This is how ALL of Crypto works. A decentralized ledger means that you cannot call the CEO or CFO of the ledger and have a clearly fraudulent transfer revoked. That is the tradeoff.

Yes. Trading off hundreds of years of experience and judicial tradition and precedent for a brand new shiny (just trust us programmers) system. If the former system were to be irretrievably corrupt, teetering on the edge of collapse, and the proposed replacement were capable of replacing it then it would be worthwhile. The existing international financial system is corrupt, the judiciary in most of our world is compl…

If the current financial system really can fix itself and become better than cryptocurrency through democracy, then I don't really get what it has to fear from cryptocurrency. Under that hypothetical, cryptocurrency would be inferior, nobody would use it and it would die out. Problem solves itself.

And as a member of the middle class, I personally think it's a feature that cryptocurrency can't be inflated to bail out the rich. If banks knew that they weren't going to get bailed out, they wouldn't have taken as many risks and we would have avoided the whole crisis in the first place.

Re: The collapse of the IRON stable coin

#424

I got burned by this crash. The biggest issue for me wasn’t TITAN itself, that was a risk I considered and had a plan to manage. What really got me was the Polygon network crashing and breaking all of the safeguards I had put in place. There is evidence that a DDOS attack was carried out against Polygon while this was happening, blocks were packed with self transfers for 0 MATIC. This took down rpcs and shot gas fees…

A truly decentralized free market worked as advertised, though not as hoped.

Re: The collapse of the IRON stable coin

#425
post #298

Earlier quoted context omitted.

Yes. Trading off hundreds of years of experience and judicial tradition and precedent for a brand new shiny (just trust us programmers) system. If the former system were to be irretrievably corrupt, teetering on the edge of collapse, and the proposed replacement were capable of replacing it then it would be worthwhile. The existing international financial system is corrupt, the judiciary in most of our world is compl…

If the current financial system really can fix itself and become better than cryptocurrency through democracy, then I don't really get what it has to fear from cryptocurrency. Under that hypothetical, cryptocurrency would be inferior, nobody would use it and it would die out. Problem solves itself. And as a member of the middle class, I personally think it's a feature that cryptocurrency can't be inflated to bail out…

Not sure big banks, brokers, etc. fear cryptocurrencies. They are already starting to happily make money of those and sell products around them. Banks worked happily in the past with decentralized/local currencies, for example.

The concern might be more on the policy and regulatory side of the world.

Re: The collapse of the IRON stable coin

#426

I got burned by this crash. The biggest issue for me wasn’t TITAN itself, that was a risk I considered and had a plan to manage. What really got me was the Polygon network crashing and breaking all of the safeguards I had put in place. There is evidence that a DDOS attack was carried out against Polygon while this was happening, blocks were packed with self transfers for 0 MATIC. This took down rpcs and shot gas fees…

A truly decentralized free market worked as advertised, though not as hoped.

Its not my first time getting burned by a defi project, but it was the first time where the network itself was a major contributor to my losses.

If it weren't for the Polygon network going down my stop loss protection would have exited my pools and limited my losses to around 10% instead of 100%.

Reminds of my retail trading days and waking up to see a stock gap below my stop loss during after-hours.

This is one of the fundamental flaws with many L2 networks. The lower fees are enabled by a centralization of the versifiers which makes them more susceptible to high loads and DDOS attacks like this.

BTC and ETH have both been the victims of DDOS attacks in the past, but it takes orders of magnitude more money to do it because of the high gas fees on those networks.

Re: The collapse of the IRON stable coin

#427

Earlier quoted context omitted.

Yes, and when normal contracts don't ( because they can't ) anticipate every possible scenario, there is a meta layer on top of that to resolve edge cases. In the case of a smart contract, it can even happen that both parties agree in how things should take place when there's a problem! But bad code doesn't work that way, and you can find yourself in a null state of indeterminacy without a built in layer to resolve t…

> Trusting any smart contract of sufficient complexity is like trusting that a code base has absolutely zero bugs and zero unanticipated edge cases. I just don't see that as realistic. You can do this to some extent using formal verification. Most code doesn't get formally verified because it's kind of a pain to do, and you can usually fix bugs later, but smart contracts are the perfect candidate for it since they ar…

>You can write perfect code if you have the right tools and do it carefully.

Obviously you are not a programmer.

Re: The collapse of the IRON stable coin

#428
post #364

Earlier quoted context omitted.

An oracle is a source of truth for information about the outside world to a smart contract. The smart contract doesn't actually call the oracle. This is because smart contracts don't self-execute and can't make external http calls. So a smart contract pauses, and waits for an oracle to trigger an update function. Because oracles have a lot of power over a smart contract (not all smart contracts need them, by the way)…

At that point can they really be considered purely code contracts anymore? If their execution requires a trusted third party some of the rhetoric goes out the window.

They're sort of hybrid networks at that point, but Chainlink oracles are decentralized: each function is run by several nodes (31 for the BTC/USD or ETH/USD price feed, for example). The nodes have to come to consensus and individual nodes are slashed if they produce bad or late data. You can see an example of a LINK feed here: https://data.chain.link/ethereum/mainnet/crypto-usd/eth-usd

Decentralization is a spectrum. But I would argue this approach is far more secure than naive oracle implementations.

Not all applications need oracles. It depends on whether your smart contract needs information about the world outside of the blockchain.

Re: The collapse of the IRON stable coin

#429
post #373
post #311

> _share_price here refers to the price of TITAN, as provided by an oracle, which is correctly reporting it as… 0 (somewhere in the distance, you can hear a room full software engineers burst into laughter ). Aside from the amusing programming error, the main problem with much of the "smart contract" activity today is that doing anything remotely interesting requires an oracle. An oracle is basically a server that re…

For prices you can use Uniswap's oracle which is time weighted average price and can't be manipulated unless you buy a ton of the token over the entire time period. In this case it was using a Sushi swap oracle (uniswap clone that's on matic) with very liquid pools so it was accurate, just lagged a bit when titan was dropping rapidly.

This actually surprising and doesn't make a lot of sense to me. If the oracle is just an AMM, then presumably one could get the oracle to register a nonzero value by just putting a small amount of money in the contract. As long as there aren't an infinite amount of TITAN tokens (are there?), even if all of the TITAN in existence were put into this AMM, there would still be a little money left to give TITAN a positive price and fix the issue.

Re: The collapse of the IRON stable coin

#430

Earlier quoted context omitted.

Yes, and when normal contracts don't ( because they can't ) anticipate every possible scenario, there is a meta layer on top of that to resolve edge cases. In the case of a smart contract, it can even happen that both parties agree in how things should take place when there's a problem! But bad code doesn't work that way, and you can find yourself in a null state of indeterminacy without a built in layer to resolve t…

> Trusting any smart contract of sufficient complexity is like trusting that a code base has absolutely zero bugs and zero unanticipated edge cases. I just don't see that as realistic. You can do this to some extent using formal verification. Most code doesn't get formally verified because it's kind of a pain to do, and you can usually fix bugs later, but smart contracts are the perfect candidate for it since they ar…

Formal verification doesn’t help with bad assumptions that went into the design of the program.
Post reply on HN