What is the best practice to interact from an Ethereum contract with the Bitcoin blockchain (e.g. look up a transaction)? Is it possible at all?
Is there a possibility to load data inside a contract from a non-contract source? Or is the only way how Ethereum knows something about the outside world to push those data to a contract and then request those data by other contracts? But then you need to trust that data feed provider and lose the trustless nature of another blockchain. But there is probably no way around that. Using oracles, voting pools or the like might mitigate the problem.
0 ·
Comments
So it is not possible to directly look up a transaction, but you can send a transaction together with such a Merkle-proof and the contract can verify the validity of the transaction.
Ethereum to me is a tool for applications - nothing more nothing less. Some think "how can I use Ethereum to make an app" which will ensure that their app is very crappy and Ethereum specific. The better question is "I have an app, how can I use Ethereum in it". At the end of the day - an app is an app. Ethereum is just another component. Just one microservice out of many that modern applications will (or will not) use. Think big.
Note that all interactions with elements outside of the Ethereum network are always from the outside in, never from the inside out (the EVM cannot have any randomness, and by definition network connections are random).
That brings me back to my original question, why to not use then that server for all computation, data storage if the crucial data is coming form it and its not a trustless entity.
I know there are possibilities to mitigate the trust issue with voting pools...