Conversation

remains astonishing to me that there’s no real way to know what an eth transaction actually does before signing it, and the ecosystem is basically fine with this
87
862
Replying to and
For Bitcoin, the flow is almost always generating a transaction with your wallet. There are only a small set of operations which can be composed to implement straightforward things. For example, Lightning channels are simple 2-of-2 multisig with a timelock setup for recovery.
1
2
Ethereum has complex arbitrary code with loops, method calls and interactions across contracts. The wallets for working with Ethereum have no idea what they're approving. Users have no idea what they're actually approving and it's pretty easy for all their stuff to be stolen.
1
2
The flow for a Bitcoin wallet is generating a transaction based on what you want and then confirming it. For a hardware wallet, you're required to confirm the destinations/amounts, fee, time lock configuration, etc. and it won't sign what it can't understand and show to you.
1
2
Show replies