Namecoin

From Bitcoin Wiki
This is the approved revision of this page, as well as being the most recent.
Jump to: navigation, search
Namecoin.jpg

Namecoin (Symbol: or NMC) is a cryptocurrency that is mined with bitcoin software as bonus. It is based on the code of bitcoin and uses the same proof-of-work algorithm. Like bitcoin, it is limited to 21 million coins.[1]

Unlike bitcoin, Namecoin can store data within its own blockchain transaction database. The original proposal for Namecoin called for Namecoin to insert data into bitcoin's blockchain directly. Anticipating scaling difficulties with this approach,[2] a shared proof-of-work (POW) system was proposed to secure new cryptocurrencies with different use cases.

Namecoin's flagship use case is the censorship-resistant top level domain .bit, which is functionally similar to .com or .net domains but is independent of ICANN, the main governing body for domain names.

History[edit]

Namecoin Technical Analysis

In September 2010 a discussion was started in the Bitcointalk forum about a hypothetical system called BitDNS and generalizing bitcoin, based on a talk at IRC at 14 November 2010. Gavin Andresen and Satoshi Nakamoto joined the discussion in the Bitcointalk forum and supported the idea of BitDNS. A reward for implementing BitDNS was announced at the Bitcointalk forum in December 2010. Soon a developer decided to implement this idea to earn this reward.

On April 18, 2011 Namecoin was introduced by Vinced (Rumored to be Vincent Durham) as a multipurpose and distributed naming system based on bitcoin. It was inspired by the BitDNS discussion on the Bitcointalk forum.[3] WikiLeaks mentioned the project via Twitter in June 2011.

On block 19200 Namecoin activated the merged mining upgrade to allow mining of bitcoin and namecoin simultaneously, instead of having to choose between one or the other, this fixed the issue of miners jumping from one blockchain to another when the profitability becomes favorable in the former.

Two years later, in June 2013, NameID was launched.It is a service to associate profile information with identities on the Namecoin blockchain and an OpenID provider to allow logging into existing websites with Namecoin identities. The main site itself is accompanied by an open protocol for password-less authentication with Namecoin identities, a corresponding free-software implementation and a supporting extension for Firefox.

In October 2013, Michael Gronager, main developer of libcoin, found a security issue in the Namecoin protocol, which allowed modifying foreign names. It was successfully fixed in a short timeframe and was never exploited, except for bitcoin.bit as a proof-of-concept.

In February 2014, a plug-in for Firefox compatible with Windows and Linux, FreeSpeechMe, was released, providing automatic resolution of .bit addresses. This is available by downloading the Namecoin blockchain and running it in the background.[4]

Namecoin was also mentioned by ICANN in a public draft report as the most well-known example of distributing control and privacy in DNS.

One month later, in March 2014, Onename was released. It is another identity system built on top of the Namecoin protocol that stores usernames and personal profile data in the Namecoin blockchain. In contrast to NameID, Onename is built purely for profile information and does not support password-less authentication or log-in. Onename later (in September 2015) switched user profiles from Namecoin to the Bitcoin blockchain, citing the higher hashrate of Bitcoin as the reason.[5]

In May 2014, Kevin McCoy and Anil Dash introduced Monegraph, a system that links Twitter accounts and digital assets (such as artwork) in the blockchain, allowing proof of ownership of such assets.

Principles of work[edit]

The Namecoin software is used to register names and store associated values in the blockchain, a shared database distributed by p2p in a secure way. The software can then be used to query the database and retrieve data. How much does it cost to register a domain (a.k.a. a name)? The cost includes a network fee and a transaction fee. As of 2014-1-15 the price is .01 NMC but there are plans to make this more dynamic. How do I obtain namecoins? You can mining them or trade them, see How to get Namecoins. Who gets the network fee? The network fees are destroyed by the transaction. Nobody gets them. Who gets the transaction fee? The miners do, just like in Bitcoin. Initially a reasonable transaction fee is either 0.00 or 0.01 NMC. You can choose this based on how fast you want your transaction to be processed. How long are names good for? You have to execute an update on a name every 36,000 blocks (approx. ~250 days) or it expires. There are no network fee for updates. Do I have to pay renewal fees? Not at the moment, although there are plans to change this.. Can Namecoin be used to register other data types? Namecoin can be used to register any data type of data. Each record must follow the same rules (expire time, data size limit, etc) but there are plans to restrict records to a defined specification.

Transactions[edit]

A peer-to-peer network similar to bitcoin's handles Namecoin's transactions, balances and issuance through SHA-256, proof-of-work scheme (they are issued when a small enough hash value is found, at which point a block is created; the process of finding these hashes and creating blocks is called mining). The issuing rate forms a geometric series, and the rate halves every 210,000 blocks, roughly every four years, reaching a final total of 21 million NMC.

Namecoins are currently traded primarily for USD and other cryptocurrencies, mostly on online exchanges. To avoid the danger of chargebacks, reversible transactions, such as those with credit cards or Paypal, are not advised since Namecoin transactions are irreversible.

Addresses[edit]

Payments and records in the Namecoin network are made to addresses, which are Base58-encoded hashes of users' public keys. They are strings of 33 numbers and letters which begin with the letter N or M. Initially addresses beginning with 1 existed but this was changed to avoid confusion with Bitcoin addresses.

Records[edit]

Each Namecoin record consists of a key and a value which can be up to 520 bytes in size. Each key is actually a path, with the namespace preceding the name of the record. The key d/example signifies a record stored in the DNS namespace d with the name example and corresponds to the record for the example.bit website. The content of d/example is expected to conform to the DNS namespace specification.[6]

The current fee for a record is 0.01 NMC and records expire after 36000 blocks (~200 days) unless updated or renewed. Namecoins used to purchase records are marked as used and destroyed, as giving the fee to miners would enable larger miners to register names at a significant discount.

Uses[edit]

Proposed potential uses for Namecoin besides domain name registration include:

  • Identity systems
  • Messaging systems
  • Personal namespaces
  • Notary/timestamp systems[7]
  • Alias systems
  • Issuance of shares/stocks

Relationship to Bitcon[edit]

The Namecoin codebase consists of the Bitcoin codebase with relatively minor changes (~400 lines) and addtional functionality built on top on it. The mining procedure is identical but the blockchain is separate, thus creating Namecoin. This approach was taken because Bitcoin developers wanted to focus almost exclusively on making Bitcoin a viable currency while the Namecoin developers were interested in building a general data-value store. Bitcoin is a data-value store as well but it attempts to limit the type of data that can be stored to financial transactions, so it is more of a monetary-value store. Namecoin leverages Bitcoin's monetary-value store but focuses more on additional information which can be stored, such as a domain name system or an identification/authorization database.

Differences with BTC[edit]

  • There are additional RPC commands which allow you to send special transactions which contain data.
  • Those operations are name_new, name_firstupdate and name_update.
  • The coins used to pay for a name_firstupdate operation are currently destroyed, although there are ideas on how to change this.
  • name_new, name_firstupdate and name_update contain a pair of name/value which expire after 36,000 blocks (~250 days).
  • The "d/" prefix is used to register a domain name, without the .bit TLD

Similarities with BTC[edit]

  • 21 millions namecoins total, minus the lost coins.
  • 50 coins are generated each block, each 210000 blocks (around 4 years), the reward halves by two.

External links[edit]

See also[edit]

References[edit]

  1. Namecoin
  2. Re: BitDNS and Generalizing Bitcoin
  3. Namecoin - a distributed naming system based on Bitcoin
  4. FreeSpeechMe: The new anti-censorship and secure domain resolving Namecoin-based plug-in
  5. Why Onename is Migrating to the Bitcoin Blockchain
  6. Namecoin DNS specification|
  7. Could the Bitcoin network be used as an ultrasecure notary service?


Licence.png