I’ve been thinking about this issue a lot lately. Even at the current valuation of SafeCoin it needs to be divisible. I, as I’m sure many others, would love to see it go even higher. Regardless, this issue needs to be solved. On with the idea.
This idea has a few requirements:
- Non-zero account creation fee
- Non-zero transaction fee (in some cases - explained below)
- Rather than the network just “managing” burned coins, it owns them (many implications)
- Addition of a “frozen” state to coins
- Creation of new coin for every decimal place you want to extend the value. (1.xxx = 3 new coins, 1.xxxxx = 5 new)
####Why account creation fee?
I believe this has already been planned for a while, but it’s needed in this case to prevent account spam to carry out network-DoS attack using SC. If you were to want to try it, it would cost (thus giving back to the farmers)
####Why only sometimes a transaction fee?
This method would only stress the network when moving low decimal value values when you don’t own any “low decimal currency”. The most stress is created when moving a single lowest denomination from a whole number of coins. Sending .00001 when you have 1 whole coin. You would end up paying a fee for every new decimal place you must “create” coins for. (Stick with me, I’ll try to explain better in a bit)
####Why have the network have it’s own wallet?
The main reason is that if it “owns” them it has to know where they are. In this case, knowing the location of safecoins that it owns so it can send them to other people. This also opens up some interesting ideas including allowing the network to pay for things itself.
####Why a “frozen” state + new currencies?
(Non-fee example)Alice has 1 SC and wants to send .00001 to Bob. Alice signs a message telling the network to freeze her 1 SC, giving her access to 10 SC.1. Then signs a message for the network to freeze one of her SC.1, giving her access to 10 SC.01… Then transfer one SC.00001 to Bob. (I would assume this could all be handled in one /few messages - just demonstrating the logic) The wallet software would request to combine any value greater than 9 decimal currency up to the next, releasing a frozen coin to themselves. So if Bob sent Alice back that .00001, it would release all the way back up to 1 SC.
In the above example, Alice and Bob could stress the network pretty hard just sending that .00001 back and forth to each other with no repercussions without a fee. However, Alice sending Bob .00001 after the first transaction (while she has .99999 SC) is just as trivial as current ideas for sending full SC. Some fee schedule would have to be figured out to make it worth it for the work that goes into the network making those calculations, messages and tranfers. How small the fee could be would depend on how efficiently the above could be coded. My preliminary thought would be an added fee for every decimal place changed (currency used).
Maybe this is how we pay routing nodes? With the transaction fees
By the same token, account creation must have a cost to prevent a whale from wreaking havoc creating tons of accounts and not caring about the (hopefully still miniscule) transaction fees and stressing the network needlessly.
Mining can still happen much the safe way - after a get request an address, if its owned by the network and not frozen, it’s transferred to farmer.
####Pros:
Divisibility
Simplicity - Once SC is implemented, the decimal currencies are all copy-paste
Our autonomous network has autonomy over it’s own money
####Cons
All coins have to be made up front and “given” to the network - Network plays the bank / “money changer” instead of “file manager”
Opens up some more attack vectors for network stress