Past solutions have generally taken the form of creatively hiking the cost of buying and/or renewing a name, perhaps by pegging it to the fiat exchange rate, or by hard-coding rules on name value, such as charging more for shorter names. These have various problems which have already been discussed to death, but may still be better than the present system.
However, any system which applies a blanket increase aimed to make the registration of domains economically sensible also risks to make it useless for e.g. id/ namespaces.
A Harberger tax is a way to tax assets to ensure a Pareto-optimal (efficient) distribution of them. The general scheme is quite simple:
- On your tax returns, you list all your assets and what you value them at. If you don't list an asset, you value it at 0%.
- If anyone thinks the valuation is too low, they buy it from your at your stated price.
- Otherwise, you get taxed a flat percentage of your assets.
- When I buy or renew a name, it gets rejected by consensus unless it sends the name to what looks like an anyone-can-spend address to old clients. With new clients, I have to state a value for my purchased name. I still just have to pay the standard fee of 0.01 NMC.
- I can send OP_RETURN-esque data transactions updating my estimate of its value, N'.
- The max value of N' seen since the last renewal is denoted by N.
- Anyone can send transactions submitting a bid, M, provided they hold at least M namecoins in the signing address and their bid exceeds the current max bid as well as N. They can't cancel their bid themselves, but in case there is another bid M' where M' > M, the lower bid is cancelled.
- If M ≥ N for more than T blocks, the previous holder of the domain receives M namecoins, and the bidder loses M namecoins and gets the domain.
- If, after the admissible bid has been submitted, but before T blocks have passed, the owner increases N[/i], all unexecutable bids are cancelled and their funds unlocked.
- The renewal fees are set to N/K, where K is another arbitrary constant.
- If a name expires, the consensus rules enforce that the block in which it expires must contain a transaction which
- purchases the name
- sets N' = 0
- sends it to a fixed unspendable address, for example the genesis address (N1Gi2mS1VSp1wRj2RU3ZU7t1N1zdsRTuWg) or the address of all zero (MvaNCeVyvP6ZXYFWGpKaDX9ujEQ418F7sm).
K = 1000
T = 4032 (appx. 1 month)
- The reason for using the max of N' in step 5 is to prevent name holders from raising the price and then lowering it to remove bids.
- The reason for using the max of N' in step 7 is to prevent name holders from lowering the price in anticipation of fee payment.
- It is possible to mark a domain as "not for sale" by setting the value to a number exceeding the amount of namecoins in existence. I am unsure whether this is a bug or a feature, but in the former case the algorithm in step 7 could be changed so that K becomes a function of N which goes either to infinity or to unit as N goes to 21 million. Another (extremely complicated) solution would be to quanto the bids into USD.
- Namecoin exchange rate risk is not a great concern, as the holder of a domain name could stockpile Namecoin in advance to be able to pay the tax. He would only have to do it around the times payment is due; if there were a large rise in its price, the bids after the payment and N max period reset would be expected to be proportionally lower.
- The countdown algorithm in step 5 is maybe not ideal; bidders are incentivized to swoop in at the last minute to place their bids. On the other hand, if the timer would reset with each bid, domain name owners could keep it constantly running by submitting bad-faith bids. Some hybrid may be needed.
- To avoid incentivizing people to be 'lazy' with domain payments and renewing at the last minute, it may be a good idea to vary fees based on time since last payment. However, it also seems like it would be a good idea to fix it to some lower bound. It is possible there is a mathematical approach more clever than max(last 6 months) here.
- The cheapest TLDs have registrations around $1 and renewals around $10 per year. (Freenom's 'free TLD' offerings are do not strictly confer ownership, this costs about what a regular TLD does)
- Expensive gTLDs can have fees of a few hundred dollars per year; the most expensive TLD (.hoteles) costs $65k to buy and $71.5k to renew, but hardly anyone uses that.
- Example domains in the $90-100k price range ($90-100 annual fee) are alfaroyal.com, comunida.com, and suicideprevention.com
- Example domains in the $1-10M price range ($1k-10k annual fee) are fb.com, z.com, and casino.com
- With this system, the registration fee could be abolished almost entirely, making it eminently suitable for chat applications. The initial registration of a domain would still cost 0.01 namecoins, but this could only ever be paid once (see steps 8a-c)
- While a rich person could spend large (and boy do I mean large) amounts of money to censor an organization, it would go directly to the victim.
: https://www.cs.princeton.edu/~arvindn/p ... spaces.pdf: Figure 3 on page 11 shows that about 40% of top 100k domains are registered.