If I have a contract, does it run on all nodes or is a node selected using some method ? If the former, this seems very wasteful of computational power.
it runs on all the nodes mining the ethereum blocks. indeed there is a waste of computational power but there is a trust gain. if we select few nodes to run the code how can we trust them and how to protected them not being compromised