Page 1 of 1

Harberger taxation for names

Posted: Sun Feb 16, 2020 1:25 pm
by yanmaani
Namecoin presently suffers greatly from squatting; a huge chunk of the top Alexa names are already registered in .bit [1], and generally not by their legitimate owners.

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:
  1. 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%.
  2. If anyone thinks the valuation is too low, they buy it from your at your stated price.
  3. Otherwise, you get taxed a flat percentage of your assets.
This proposal, with some minor changes, could work for names in a reverse-compatible manner to ensure a Pareto-optimal distribution, with everyone still keeping their name ownership.
  1. 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.
  2. I can send OP_RETURN-esque data transactions updating my estimate of its value, N'.
  3. The max value of N' seen since the last renewal is denoted by N.
  4. 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.
  5. 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.
  6. 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.
  7. The renewal fees are set to N/K, where K is another arbitrary constant.
  8. If a name expires, the consensus rules enforce that the block in which it expires must contain a transaction which
    1. purchases the name
    2. sets N' = 0
    3. sends it to a fixed unspendable address, for example the genesis address (N1Gi2mS1VSp1wRj2RU3ZU7t1N1zdsRTuWg) or the address of all zero (MvaNCeVyvP6ZXYFWGpKaDX9ujEQ418F7sm).
I suggest the following parameters:
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,, and
  • Example domains in the $1-10M price range ($1k-10k annual fee) are,, and
  • 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.
Appreciate hearing your thoughts.

[1]: ... spaces.pdf: Figure 3 on page 11 shows that about 40% of top 100k domains are registered.

Re: Harberger taxation for names

Posted: Mon Feb 17, 2020 5:56 am
by domob
That's certainly an interesting approach. In the past, there were various ideas about ensuring that names are distributed "economically efficiently" - but my view is that this is not actually a good goal for Namecoin. One of Namecoin's main advantages over e.g. the DNS system is censorship-resistence. But if you allow anyone to forcibly buy any name they like as long as they pay enough, then this is nullified. And while you do mention that applying this would mean that the censored organisation would end up with a lot of money, I'm not yet convinced that would be enough compensation at least for some situations.

Re: Harberger taxation for names

Posted: Wed Feb 26, 2020 6:23 pm
by yanmaani
I thought of this. It seems like it's either to allow that problem or to keep the current state of affairs, which is that any halfway decent domain being taken. If the squatters were willing to sell at a fair market price, fine, but often they are not even contactable.

Anyway, I can envision two solutions:

1) set K to a high value

If we assume that a yearly fee of $240 is acceptable ($20/month - pretty typical hosting costs), that will be safe enough for names valued at up to $240k with K = 1000, or $2.4M with K = 10000. That includes all but the top 48* most expensive domain names.

* extrapolating from the Wikipedia list

2) put a cap on the highest bid

Currently, there is an implicit cap at 21M namecoins; above this it will obviously not be possible to purchase the domain. We could put an explicit cap on the bid (or renewal fee) as measured in USD (e.g. $240 p.a. indexed to inflation as above) and quanto this into namecoin for settlement. That will require the protocol to know the current exchange rate, which is hard but not impossible to do reliably - I should make another thread for it however.

That will get us some of the advantages of this solution but some of the advantages of the current one. Users will get some of the security and squatters will get some of the pain, but high-value squatting will still be possible, and so will using your money to mildly inconvenience users.