Simple @handles for Ethereum

infernal_toast
2 min readMar 23, 2019

--

When interacting with Ethereum, it is not uncommon to have to paste confusing addresses like ‘0xB6eD7644C69416d67B522e20bC294A9a9B405B31’ into different fields. Wouldn’t it be nice if you could use @handles like other social media websites?

There were some attempts to make ‘domain names’ on Ethereum, with ENS, but most people struggle to understand how to register them (its VERY confusing) and lack the patience to wait weeks. Furthermore, those can only be greater than 7 characters and are not able to be traded or transferred as ERC721 Non Fungible Tokens. Confusing and bulky.

In order to address these short-comings, now there is an extremely simple, open, and free protocol for registering @handles for your Ethereum accounts called Nametag Token.

https://nametagtoken.com, etherscan.io/address/0x3c642be0bb6cb9151652b999b26d80155bcea7de

In order to claim an ERC721 Nametag Token, simply call the address on the contract ‘claimToken(to, name)’ to provide your address and a lowercase string name for the handle. This will mint you a new unique ‘nametag’ @handle token, which can be used to send you money, like a beacon.

For example, in the Lava Wallet software, you will be able to set the ‘To’ field to either a long Ethereum address or a simple Nametag Token @handle. Should you try to send funds to such a token, the wallet is smart enough to actually send your funds to the account that is holding that token!

Because Nametag Tokens are ERC721 tokens, they can be traded on the open market and some may be quite rare or hard to acquire. They will make tipping and sending funds extremely easy, and it is very easy to see which Ethereum account a particular token belongs to by using the method ownerOf() in the contract. The Nametag Token website provides tools for this after you connect Metamask!

When this scales, if there are concerns about front-runners (there is no lengthy auction) then you can perform a keccek256 hash on the name you want and then call the contract method reserveToken(to, hash) which will reserve that token for you without revealing to the network what your name will be! After, you can safety call claimToken() with that name and it can only be yours.

Overall, this will be an extremely simple, secure, and scaleable solution for address @handles on Ethereum and will improve the user experience for the entire network.

See more at https://nametagtoken.com

Here is sample code to integrate these into your Dapp:

https://github.com/nametagtoken

--

--

No responses yet