I recently moved this website from the old domain to bitedge.co. As part of that process I tried to buy bitedge.com. I contacted the owner via the domain’s whois information and was pleased to find he wanted to sell and we agreed on the price.

All that was left was for me to send him the money and him to send me the domain in a way that neither of us could get ripped off. These are the steps to perform a domain ownership transfer

The seller unlocks the domain and gives the buyer the authorization code The buyer submits a transfer request through his domain registrar An email is sent to the domain’s whois email address with a confirmation link that when clicked transfers the domain ownership

The problem

At what point should the seller send the money? Currently the only way to do this without one party being able to take possession of both the money and the domain is to use a trusted escrow.

Enter escrow.com a slow, expensive, fallible and corruptible middleman. If either party is outside the USA escrow will cost at least $50 and take 7 days! I offered to pay all the fees but the seller would not trust an escrow. Indeed even with an escrow either or both parties could still get ripped off, not by each other but by the escrow.

We had a willing buyer and a willing seller but the system failed us.

The crypto solution

This is where programmable money can save the day. A domain transfer could be done by the buyer sending the agreed amount of funds to the crypto address of a smart contract with an oracle which is programed to listen for the change of ownership in the domain’s whois information and only release the funds to the seller when that change of ownership happens.

If the seller does not transfer the ownership in the time specified by the contract the funds are automatically returned to the buyer’s address.

Both parties could agree to set the domain’s whois email address to one that is controlled by the oracle, then the oracle would receive the transfer confirmation email and “click” the confirmation link itself therefore being sure of the transfer.

Making the smart contract and oracle code open source means no trust is required from the users and that code could be used by domain registrars like Namecheap to offer the service in a non-technical and integrated way.

Neither party would have to use crypto if a partnership is set up with a payment processor like Bitpay enabling the buyer to send government currency to the processor who would then send that amount of crypto to the smart contract address. The crypto could also be transferred to government currency to be received by the seller. This would add a layer of trust but it would be optional.

This trustless, cheap domain transfer set up using crypto smart contracts requires no change to any laws, no change to the ICANN domain name registration system and no change at the domain registrars. We can do this today! Hooray for magic internet money!

The ultimate solution: ICANN on a blockchian

It could be taken to a whole other level if ICANN itself would integrate blockchain smart property. If ICANN did that and open sourced the code it would be truly trustless.

In that case a seller would set the price for his domain and the domain would be automatically transferred to anyone who sends that amount of crypto to the domain’s sale address. That would be very quick and easy given no communication between the buyer and the seller would be necessary.

If I have missed something or you can improve on this idea please let us know in the comments.