Handshake and Namebase: DNS meets Blockchain

I hate ICANN.

Though I agree that it’s a necessary evil, I can’t wait to be rid of centralized, backroom-dealing monopolies on the literal backbone of the internet.

I’ve written about all that before.

But today, I’d like to talk about another player in the space: Handshake.

What is Handshake (HNS)?

Much like ENS, Handshake is a decentralized ledger focused on providing an immutable record for domain names on the internet. HNS is the cryptocurrency of this network.

What this means is that anyone can register and manage TLDs (think .com or .org) instead of a single private company owning them all and leasing them to the rest of us.

As of today (Feb 14, 2020), Handshake has opened bidding on the first round of TLDs, excluding the top 100k domains and existing TLDs to avoid conflicts.

What is Namebase?

Namebase (a private company) is a product through which regular people can register and manage TLDs on Handshake (a public blockchain).

On Namebase, you can buy/sell/use the HNS coin, which is necessary to register TLDs like .poop or .coin.

User-friendly products like Namebase are critical tools for enabling easy management and transacting for regular users – though, you could alternatively use the Handshake CLI or other products as well.

How can we use Handshake TLDs?

Well, you can’t.

Yet.

In order for Handshake TLDs to work, we all need to agree that we’ll use them.

Unless we all want to use them, browsers like Chrome, Firefox, and Brave won’t feel the need to add support for Handshake. And though there are ways to use it without browser support, the whole thing won’t really work out until they do.

And Handshake is up against the establishment, big time. ICANN will fight tooth and nail to retain power over controlling TLDs. Verisign wants to retain control over reselling .com etc. Companies like GoDaddy, Namecheap, and even Google Domains will need to consider switching business models and tech stacks.

It’s a whole thing.

But that doesn’t mean it wouldn’t be worth it! There’s a long road ahead in terms of viability here and I would love to see the vision come to life.

How can we buy Handshake TLDs?

Well, you can’t outright buy them yet.

Just today, Namebase officially launched their very first auction.

The auction consists of an array of TLDs available for bidding, but doesn’t list them all. For the first year, Namebase will be releasing new batches of TLDs for auction every week to ensure that all the TLDs don’t get snatched up by early investors.

Each auction will close after a week and the new owner takes control. Other bids will all be returned to sender, so not a lot of risk in putting your money in (more or less).

Read more about how it all works.

Outstanding Questions

How will Handshake work with existing ENS?

I’m already a fan of ENS. Many thousands of domains have already been registered with ENS and they, too, plan to roll out additional TLDs.

Will Handshake fare well on it’s own Proof-of-Work blockchain?

Instead of building on top of interoperable Ethereum, Handshake is built on its own blockchain. With the fluidity of miners choosing the most profitable networks, PoW blockchains that can’t maintain high hashrate are prone to 51% attacks (not good for DNS…).

Will Brave adopt Handshake?

The only clue to Handshake being included with Brave (the browser with the best odds of giving Handshake its moment) is a single tweet. Browser adoption is key and without it – especially if Brave openly denies – Handshake could be DOA.


I will most likely be throwing my hat in the ring for an experiment with Handshake. Worst case scenario I lose some money on a worthless TLD. Best case, I run the entire internet from my basement.

What do you think?

Experimenting with DeFi: BlockFi and Smart Contract Lending

Heads up, I will be using affiliate links in the article. These do not impact my views on the company or products herein.

Close your eyes and picture a bank. It’s got columns, doesn’t it.

Now, let’s consider banks at a high level. Primarily, they store your currency and offer you a modest return on investment for the handful of products that store it (checking, savings, CD, etc).

Obviously, the bank has to be making money somehow in order to pay your interest rate. The simplest mechanism they have available to them is lending money and gaining interest on those loans.

Simple: Bank issues a loan with 10% interest, pays you 2% interest on your money, and keeps the rest for profit and expenses.

DeFi lending is the same pattern.

  1. You store your currency with an institution like BlockFi.
  2. BlockFi gives you an APY (interest rate) with monthly accruals.
  3. BlockFi uses your money to lend out to borrowers in order to gain interest on their loans.

It’s honestly as simple as that (but obviously, let’s get into the details).

I don’t trust it, but let’s experiment anyway

In all likelihood, if I send Bank of America $20, I can be pretty confident that they won’t lose it. Between institutional standards and the FDIC insurance, I have faith and trust in my account with them – despite absolute garbage savings account interest rates (literally, 0.03% interest – it should be illegal).

Now, if I send that same $20 to my BlockFi account, there’s a greater chance of that money vanishing at some point – whether through a hack, management theft, or general crypto fuckery. It is not FDIC insured, I do not own the keys, and crypto is an evolving industry.

So, the fundamental crypto strategy must be applied: only spend what you can lose!

$20, here we go!

How it actually works

After passing through standard account creation (username, password), I logged in to a completely disabled BlockFi dashboard that prompted me to continue account setup with identity verification.

See, despite how the media might portray crypto, most companies in the space try their best to abide by KYC/AML laws.

SSN, pictures of my ID, address, etc later, I had an activated account available for experimentation within 10 minutes of signup.

At this point, the only thing left to do was deposit some crypto. No application, no negotiation, no wait.

I clicked on “deposit” (one of three possible actions) and was prompted with a deposit address.

Feel free to deposit ETH into my BlockFi account I guess

From there, I sent $20 worth of ETH from one of my other accounts and 30 seconds later my balance was updated!

Protip: technically, that "wallet address" they prompted was actually a smart contract address that controls the account!
3.6% APY on its way!

Time will tell what the actual value of this changes to over time – and specifically what the accrual of eth looks like.

Though the UI showcases my account balance in USD, all payouts and APY are denominated in currency of the account. For example, 6% APY (hypothetical APY) on 10 ETH would yield 0.05 ETH after one month (10 ETH x 6% / 12 months), regardless of the USD:ETH price.

For this reason, we’ll be monitoring the actual ETH numbers for this experiment, not the USD value.

One more thing

BlockFi accepts other currencies beyond ether – and each currency has it’s own APY.

For instance, right now I am getting 3.6% on ETH, but I can get a whopping 8.6% on GUSD (I’m assuming stablecoins offer less risk for loans, so the share is greater)!

On top of that, you can actually trade and take out loans from the platform as well (more on this later).


Check back in later for updates on how this experiment went! Hopefully I’ll have time to monitor and keep track of my $20 🙂

Join BlockFi and try it yourself! Just remember, only use what you can lose.

I’m now a verified Brave Rewards creator!

Brave is quickly becoming my favorite web browser.

They prevent ads, trackers, and fully integrate with the world of cryptocurrency through their BAT token.

Their entire ecosystem is super cool because they aim to replace the current web advertising structure completely. Check it out:

I’m now a verified Brave Rewards creator!

At long last, I’ve now registered myself and this website to the Brave Rewards program!

All this means is that visitors like you, using the Brave browser, can contribute tiny amounts of BAT tokens straight to my wallet; only if you believe my content is worthwhile though! 🙂

If you’re using the Brave browser, check out the Brave icon to see the details of my registration!

Congressman Bill Foster: the US Central Bank Digital Currency

On Thursday, January 23, 2019, I listened to Congressman Bill Foster (IL – 11) present his thoughts on a US Central Bank Digital Currency (CBDC) and its relationship with a centralized Digital Identity.

Before getting into the weeds, I’d like to restate that these are his expert thoughts (blended with some personal perspective), not a polished proposal ready for votes.

Overview

Principally, Foster’s US CBDC would rely on three foundational elements.

  1. Account-based balance transfers through Fed-owned accounts.
  2. Judicial safety nets for “reversing” transactions through courts
  3. Biometrically-signed Digital Identity tied to both ends of transactions

Notably, what it does not explicitly include is establishing this CBDC on a blockchain or as a cryptocurrency. Rather, the nature of the judicial safety net to allow transactions to be frozen or reversed would fall directly opposed to the immutable nature of the typical blockchain.

Before we explore each of these, let’s add some context to his point of view.

Why they want to do it

Fundamentally, the US government is not acting from a forward-thinking mentality. Rather, they are playing defense against China.

The threat of a Chinese CBDC is the strongest impetus the US government has for pushing for a US CBDC. They worry, among many, that the dawn of a Chinese CBDC will dethrone the USD as the world’s reserve currency. Without this, the US would not act.

Further, they worry that if the Chinese CBDC gains adoption, the world would be under the thumb of Chinese law – your assets could be frozen or confiscated without warning or reason, and the recourse would be through Chinese courts.

Now, as much as I distrust the US system to get it right, I’d choose them over the Chinese system every time. And, despite it all, many people would agree with that choice as well.

In summary, the US government wants to protect their power over the global monetary supply against a growing Chinese alternative; reasonable, I suppose.

Why it needs to be built this way

The dream of truly anonymous, immutable, and trustless peer to peer payments cannot be fulfilled through a CBDC (just use crypto instead).

Firstly, KYC/AML fundamentally opposes anonymity. Though any libertarian would argue against it, the reality of the world and its use of money for nefarious purposes is apparent. We can’t have a CBDC that is built to easily comply with washing illegal money into the primary monetary system. Say what you will about cash, but digital currency moves at the speed of light and needs to be held to a higher standard. So, we need a reliable digital identity.

A CBDC can only be built within the confines of its ability to enforce compliance with the law. Therefore, it can only exist with a layer of verified, biometrically-signed digital identity (thumbprint, iris scan). The curious piece of this is how identity would be enforced outside of the US; ie. how would a French banker use a US CBDC; a Russian?

Interestingly, Foster posits that the CBDC can be built in a pseudo anonymous way to prevent counterparties from knowing each other’s identity, while still revealing both to the central authority. This could fundamentally change the data collection strategies of payments companies like PayPal in that they would not have a credit card name on the transaction to relate to any other transactions. Businesses would only know that $29.99 entered the system for an item, not that it came from Joe Smith.

Secondly, like any contractual agreement, the ability to raise issues to a higher, impartial power to settle disputes is foundational to trust, recourse, and plain usability. If I have a contract with someone and there is a dispute, I can take them to court for action. A CBDC must be built with a layer to leverage this pattern; on-chain or off-chain. If you accidentally send funds to a dead-end account, you’ll want a way to escalate the issue to reverse the transaction. If someone steals your money or defrauds you, you’ll want the justice system to provide an option.

While I am against providing a small subset of individuals the keys to a “backdoor” to the CBDC (since it becomes a single point of failure that every enemy nation state will likely make their primary target), the pattern must be implemented to some degree. Personally, I would prefer an off-chain option rather than open a backdoor to the entire monetary system, regardless of how well trained and secure the operators are.

Lastly, instead of using the cryptocurrency pattern of keys owning tokens and transactions transferring ownership, Foster prefers to use account balance transfers within the confines of the Federal Reserve. He believes account balance transfers instead of blockchain would be a superior solution to scale; at present he’s not wrong.

I can’t speak to the strategy of holding these accounts within the Federal Reserve or how this system would play into monetary policy and interest rates. Foster did not have any comments on this perspective, but it’s hard to imagine that they wouldn’t mess with your account somehow.

Final Thoughts

Though many libertarian ideals will die on the table for the CBDC, did we really expect anything else?

I’m actually very excited to see the use cases of a solid, biometrically-signed digital identity. From preventing spam calls to online voting, a trusted, government-backed digital identity would fundamentally transform the internet.

As far as the US CBDC goes, I wouldn’t hold my breath. Acting defensively and without a clear proposal, we’re a long way off from POC and adoption. And I don’t see myself using the Chinese CBDC to pay my bills anytime soon…

Meanwhile, if you want to use USD on the internet, pick up some DAI or any other stablecoins.

Why ENS will be superior to DNS in every way

Anyone who knows me well enough knows that I have a tendancy to buy domains names without second though (shout out to gotballs.org…).

So naturally, I have a few issues with the domain name registrar industry as a whole:

  1. Premium Domains are an absolute scam. Registrars can choose to markup domain names for profit as they see fit even though they don’t own the domain.
  2. ICANN is essentially shaking down users for profit and owns a monopoly on the creation of new TLDs
  3. Domain ownership requires private information to be provided during registration and you would then need to pay for WhoisGuard on top of that to prevent spammers from retrieving it.

Now, the current industry exists as a natural byproduct of the technology that existed at the time it was required. A central trusted authority was needed to maintain a ledger of who owned what domain and which server had its data. A necessary evil, per se.

Blockchain did not exist to serve as a trustless middleman to coordinate this information.

But now it does.

What is ENS?

So ENS – Ethereum Name Service – is a smart contract built on the Ethereum network that acts as a trustless, decentralized mechanism for registering and managing domain names.

For example, through ENS I have registered jameswmontgomery.eth by sending an arbitrary amount of ether to the smart contract. It then marks my address down as the owner for X number of years and will expire unless I reregister.

Most notably, the ether I sent does not go to some corporation – it literally gets burned.

The first thing you’ll notice, though, is that you cannot simply visit jameswmontgomery.eth as you would jameswmontgomery.com – at least not on major browsers (yet). We’ll revisit this in a bit.

Primarily – at this point – ENS’s main value is acting as a shortcut for Ethereum addresses (and other cryptocurrencies).

Specifically, instead of sending ether to my address 0xcDbB43A1BacB5Fe29ff895C7f79dC9dD0d536F71, you would send it to jameswmontgomery.eth from a supported wallet like Meta Mask or MyEtherWallet.

The ENS smart contract would then automatically route the payment to the correct address; it’s even smart enough to route payments to the different token addresses automatically like Ethereum, Bitcoin, BCash, Ripple, and others.

It doesn’t sound like DNS though.

Payment routing is just the beginning.

They’re also rolling out support for registering existing TLDs like .com and have already established a proof-of-concept with the .xyz TLD.

This allows existing TLD registrants (you can’t just buy google.com, sorry) to claim their domains on the ENS network and enable three key features:

  1. Accept payments from any crypto wallets directly to jameswmontgomery.com without an intermediary like PayPal.
  2. Join Web 3.0 by serving site content through Swarm and IPFS.
  3. Store meta data like email, Twitter username, and others as structured data for easy reference on apps.

It can’t be far from thought for the architects to want to support core DNS features like A Records, CNAME, etc as well, but these features are currently not supported.

TL;DR

When ENS does support these key DNS features, it will ultimately be the superior choice for the future of the internet because:

  1. It does not rely on a central authority to maintain a ledger of ownership
  2. It does not arbitrarily establish “premium” domain names and jack up prices (though, it does have simple character count scaled price to ward off domain piracy).
  3. It is an open source protocol that can ultimately be governed by a DAO instead of a corporation.
  4. It is inherently censorship resistant and governments cannot shut down ENS addresses.
  5. DNS’s core function as a distributed ledger with TTL is handled by default on Ethereum.

Thoughts?

Star Wars meets Blockchain: The Mandalorian and Interplanetary Chain Code

Recently, Disney+ launched a new series to build on the Star Wars universe called The Mandalorian. It follows a Mandalorian bounty hunter (think Boba Fett) on his adventures tracking down various characters for their bounties.

During a meeting with his handler in trying to acquire new bounties, the Mandalorian makes mention of “chain code” in the terms of taking on a vague underworld contract.

Chain code has never been discussed or defined in the Star Wars universe and the show doesn’t explain it at all, but I firmly believe that they are referring to blockchain (and you will too).

Chain code is code run on the blockchain

That’s the literal name of it IRL.

Also called Smart Contracts or dApps, chain code refers to any code that lives on a blockchain and does stuff automatically.

A great example of this would be to, say, put bounty money in escrow that would automatically be released when the subject is captured and returned.

It allows the bounty hunter to feel secure that payment would come through when terms are met.

Blockchain is the solution for interplanetary transactions

If I make a deal on Coruscant to deliver a prisoner to Naboo, I wouldn’t want to wait or rely on intergalactic transmissions to ensure payment. It would make more sense to confirm against a node (computer) on Naboo that has a copy of the chain code.

Since blockchains are immutable, append-only ledgers that are distributed identically across the galaxy, I can rest assured knowing that I will get payed for my bounty from the chain code and that my handler will be notified of the hand off.

If I were using standard centralized servers, I couldn’t guarantee that my handler didn’t delete or alter the contract – or that the government didn’t seize the assets and shut it all down.

And on top of all that, intergalactic communication take a while even at the speed of light. This distance requires asynchronous systems to have any type of reliability; otherwise I’d be waiting hours for communications to confirm.

In short, chain code via blockchain is the only reasonable solution for bounty hunting baby yodas.