Live data from Hacker News

Did I just lose half a million dollars?

reddit.com

641–650 of 837 posts

Re: Did I just lose half a million dollars?

#641

Earlier quoted context omitted.

Yup. One more freebie hardfork that reverses (okay not "reverses" techbically but forks away from a previous state) some mistake/hack and Ethereum would lose trust especially competition between chains (EVM or otherwise) is so high.

They would gain trust for returning all of the WETH accumulated in all of the contracts where it’s been idled due to PEBCAK, in concert with a code fork that refuses to accept such transactions. That would be a sign of maturity and intelligence to bankers, and influence their consideration of whether Ethereum might be a viable platform for their financial business someday.

This idea would be antithetical to decentralization of cryptocurrency, but I think that since this issue is a platform level problem (e.g. future contracts can also introduce this) what is needed is a set of mediators/arbitrators (we can call them "judges" that hear these cases and have a technical mechanism to correct them without a fork.

In order to select these judges, the community can elect them directly or elect a board or leaders to select them indirectly.

Of course these corrections would require gas, so they may need to add a small additional gas charge to transactions to fund this group and perhaps also their salaries. We can call this extra gas a "tax".

In summary: Stand up an entire government around ETH in order to ensure the benefit of judges and humans can override code. Once you do this though, you have a central ruling authority with an in-code constitution, but parts that take place in a human judgement realm.

I set this up partially in jest of blockchain currencies in general, but I do actually say this seriously. I think that purists of decentralized code only control will hold back any possible benefits that cryptocurrency could bring. The situation above still has benefits from a monetary fiat system run by a nation state, though I think severely less than what the cryptocurrency ideal is. Some include:

- There is no nation state attached to this centralized ruling body and itself can be decentralized and beholden to no nation

- All transactions and reasons of the body can still be public and on open API's for people to integrate and monitor with modern tech

- The loose "untraceable" or general "freedom" arguments that come with a blockchain would still hold so long as the community with these tenants maintains control of the board / judges / leaders.

Re: Did I just lose half a million dollars?

#642
post #628

Earlier quoted context omitted.

Interacting with a contract by sending it tokens (and having no idea what the outcome will be) is about as risky behaviour as you can imagine, and is quite a lot like using a low level API to circumvent the guardrails put in place by typical payment processors. Certainly client and wallet UX can be dramatically improved to mitigate these problems. And education more generally about the risks of interacting with smart…

So, you don’t recomend MetaMask to send tokens? Which wallets/services would you recomend to avoid this situation? Would binance not allow me to send WETH to that wallet? Would any decentralized/centralized wallet be safer? Please tell me which? Or should I not be sending tokens and just use coinbase and binance non-centralized features?

MetaMask is a wallet. You would use a decentralized exchange, like Uniswap, to transform WETH into ETH.

Re: Did I just lose half a million dollars?

#643
post #73

In case you’re wondering what happened, from the thread: He sent ETH to the WETH contract, received WETH as expected. Then he wanted to do the reverse and sent WETH, but will not receive anything, because you're supposed to swap your WETH to ETH in exchanges like Uniswap, or call the "withdraw" function in the contract. For contracts that want to only work with ERC-20 tokens, you use WETH, which comes from a contract…

I don’t understand why these contracts don’t let addresses that make this particular error recover their funds, it would be easy to implement at contract creation or am I missing something?

Basically the smart contract could have been written so that this transaction was rejected or so that the money could have been sent back, but that would make inteacting with the contract a little bit more expensive for everybody. Or maybe the developers wanted it to be possible to burn tokens by sending them to the contract address.

Re: Did I just lose half a million dollars?

#644

In case you’re wondering what happened, from the thread: He sent ETH to the WETH contract, received WETH as expected. Then he wanted to do the reverse and sent WETH, but will not receive anything, because you're supposed to swap your WETH to ETH in exchanges like Uniswap, or call the "withdraw" function in the contract. For contracts that want to only work with ERC-20 tokens, you use WETH, which comes from a contract…

Here is background on this for a developer-but-not-crypto-developer. The Ethereum blockchain has its own money that is built right into "OS" of the blockchain. It's called ETH. Any time one program calls another, the actual function call itself can send ETH along with it. In fact, to transfer ETH from your account, you just make a function call to another account with no parameters, ignore return values, and transfer…

Thanks for the explanation!

Re: Did I just lose half a million dollars?

#645
post #366

Earlier quoted context omitted.

Do ethereum and smart contracts currently have excellent customer service, such that the guy in TFA can get his 500k back?

The one who has the private keys to that account could give them the ETH back, yeah. But if no one has the private keys, they can not get it back, that would defeat the entire point of cryptocurrencies in the first place.

There are two types of accounts in Ethereum, externally owned accounts (EOA) and contracts. EOA are controlled by private keys where contracts are not. Since the user sent ETH to a contract, he cannot get his ETH back if the contract does not have a method to transfer ETH back. Whereas if he sent ETH to an EOA then the user of that account can send him back ETH.

Re: Did I just lose half a million dollars?

#646

Earlier quoted context omitted.

Options work differently, you can lose all your money.

If by accident I buy an option / wrong option, realise that, I can probably sell it and get my money back, less commission, spread and change in value.

Yes but if the option expires, and you realize at the end of that period you bought the wrong thing, then that is the case I've talked about.

Not sure how likely is that scenario though.

Re: Did I just lose half a million dollars?

#648
post #247

Earlier quoted context omitted.

It's not really edge bases, it's how contracts works, and how this contract works. There is nothing magical here. It's a bit like avoiding the checksums that IBAN has, and then complaining that IBAN is broken. Most people interact with WETH via UIs, but for some reason this user chose not to, and got severely burned because of it. Things that require expertise usually requires one to know acronyms and how things work…

Currencies don't come with a prerequisite of intimate knowledge of industrial jargon that requires use on a daily basis to be proficient enough in to not lose everything.

I've been paying attention to this whole thing for a few years, and I still can't tell how I could send coins to a friend if I had them.

Re: Did I just lose half a million dollars?

#649
post #199

Earlier quoted context omitted.

It is immutable, unless in some cases it is not. However of majority of us plebs it is practically immutable.

Isn‘t that exactly like the status quo with banks?

Bank transactions are mutable/reversible by design and by law. It's quite the opposite from banks.

Re: Did I just lose half a million dollars?

#650
post #427

Earlier quoted context omitted.

From what I can tell, the underlying issue is that everything is spaghetti code written in a dynamically typed language. Ignoring that, it's nuts that the best practice is "send a little money, and see if it works". Apparently they don't even have a working transaction simulator that just runs the relevant logic on your laptop so you can see what it will do.

> From what I can tell, the underlying issue is that everything is spaghetti code written in a dynamically typed language. We need to re-write this in Rust before there can be universal acceptance!

I believe most contracts on the Solana network are written in Rust
Post reply on HN