Does an implementation of Ethereum have to use the Ether currency? For instance, if one created an autonomous organization would is have to be tied to Ether or could that AO be run on its own currency and not linked to a potential volatile Ether? Are there technical reasons the use of Ether is required and if so, what are they?
Thanks.
0 ·
Comments
I'm sure there will also be "colored coin" contracts, which would track ownership of some category of fungible goods (gold, USD, whatever). That would make it easy to base the organization off of any real world currency, so long as you can trust the operator to redeem your credits for the actual good.
This would work because once a data flag has been selected it would stay unique to the initial issuing contract.
We haven't sorted out all the details of its implementation but it's certainly an interesting idea to add an arbitrary incentive layer for those who require it.
> Does an implementation of Ethereum have to use the Ether currency?
You could fork the code and start your own blockchain with a different genesis block to create your own "implementation". All functionality would be intact, but your system would be entirely separate from what other people call Ether.
>For instance, if one created an autonomous organization would is have to >be tied to Ether or could that AO be run on its own currency and not >linked to a potential volatile Ether?
The AO could deal in its own currency primarily, but the setup, execution, and interactions with the contract will all consume some ether. In the last case it could be as low as the transaction fee provided the contract has some other income or savings to fund its execution.
>Are there technical reasons the use of Ether is required and if so, what are >they?
All instructions in the ethereum scripting language (after the first 16 steps, IIRC) cost ether to get executed by miners. The only technical reason is that the code says so, and not saying so presumably would lead to rapid overconsumption of CPU resources.
TLDR; Depends on what you mean by "implementation", No, Sorta.
Let's say an AO has its own currency--assuming a miner viewed that currency as valuable, shouldn't he be able if he wants to accept such a currency as payment for his computer time to execute the contract? Or if I wanted to send a transaction and had control of another currency (or more arbitrary asset), why shouldn't I be able to offer a fee denominated in this other currency?
Clearly a miner could refuse to process my transaction (or a contract's execution) if I offered what he viewed as an inadequate fee, but presumably market forces would determine which assets (and in what amounts) were enticing enough to incentivize miners.
But all is not lost! Forget about the miners. You can form a contract with anyone at all that stipulates that they provide the necessary ether to your contract so that it can run and the results will be validated by the network. You can send them your DAO currency, and in exchange they would send ether to your DAO contract to fund its execution. The catch, though, is that all of those transactions (sending DAO currency to your partner, sending ether to the DAO to fund execution, and finally sending a transaction to the DAO to trigger its execution) all require ether if they are running on the ethereum blockchain.
That said, and to your question, my goal is to have miners behave differently ONLY with respect to which transactions to include in a block.
Basically, I am proposing a blockchain protocol without a native currency and in which transaction fees are the only reward for mining (rather than new units of a blockchain's native currency). As people create subcurrencies (or other assets/colored coins or whatever exactly is living on a particular blockchain), transaction fees are offered to be paid in such subcurrencies or other assets. Miners are free to program their nodes to specify which assets and in which amounts they are willing to accept as a fee to include a particular transaction in their blocks.
Maybe the initial subsidy of an inflationary tax on existing currency holders (i.e., issuing newly created currency as blocks are mined) is necessary to adequately bootstrap the network, but given an established network, I don't see the value in artificially interfering with the pricing of network access by forcing miners to accept fees in only one currency (at the threat of causing a hard fork if they want to).
We definitely need to pay miners (both to prevent spam and to entice the greatest possible number of people to mine), but flexibility in denominating those fees would be very powerful.