Disclaimer – Coins discussed in this post are for educational purpose. Please don’t take them as any form of endorsements.
In our previous post we discussed one of the important tools to evaluate ICOs. In this post, we will expand our understanding of the blockchain technology. This will help us to further evaluate ICOs by understanding their underlying technology proposal.
Trustless and decentralized transactions, consistency and privacy – are the major advantages of blockchain.
All these features are already provided by bitcoin. So, the question is what do ICOs or other blockchain offer at all? It all comes down to usage.
Let’s go back to our earlier blockchain example:
From this we understand that a blockchain contains:
- Identity information
But what if things can go beyond this?
Blockchain as Database
The very first block of bitcoin or genesis did not contain only balances and identity information. It also contained a message –
“The Times 03/Jan/2009 Chancellor on brink of second bailout for banks”
If you actually want to see the actual message. Find the genesis block:
Click on the text just below “Transactions”, it will take you here:
Click on “show scripts and coinbase”.
As bitcoin caught on, people started storing all sort of data on the blockchain. With ingenuity and enough fees anything can be stored . Examples include:
- Bitcoin logo
- Catholic Prayers – Oh yes, it is embedded in the bitcoin blockchain forever
- Nelson Mandela complete pic
- Bitcoin pdf paper etc.
(credit to: http://www.righto.com/2014/02/ascii-bernanke-wikileaks-photographs.html. Check the page for detailed information. )
Combined with inherent characteristics like privacy, decentralized etc., blockchain could be used for a lot of things.
Now, armed with this information people came up with two ways to utilize it:
- Using the blockchain underlying principle to create a new blockchain (also known as altcoins) to solve a problem.
- Using bitcoin as a metadata store (Metadata is data about data. Check the Nelson Mandela pic example in the righto.com link above. Nelson Mandela pic is the data. While the pic name – 3Nelson-Mandela.jpg? is the metadata).
Let’s look at one example of both the ways:
New Blockchain or Altcoins
Any new coin with its own blockchain falls into this category. These tend to solve a particular problem.
Namecoin is the first example of leveraging blockchain concept for a different purpose other monetary transaction.
This was the first fork of bitcoin.
A fork, in layman terms, means copying a program code and then reusing it. The re-use can be:
- Simple renaming (ex. Use bitcoin code as it is to create Mycoin)
- Improving the code
- Re-purposing the code
Namecoin used the bitcoin code to create a new coin which could be used, you guessed it, to store names. Domain names are the most stored information on namecoin.
Think of addresses – the major component of a normal address is the House Number and Zip code. Similarly, every computer in this world has an IP address. A website which is a computer also has an IP address.
For example, www.google.com IP address is: 220.127.116.11
So, when you type www.google.com in chrome or Firefox, it checks the site address in a domain name registry which is hosted on a Domain Name Server or DNS. Your computer requires the correct IP to open a website.
The DNS database is a centralized server. So think of a controversial website like – wikileaks.org. In this case, blocking a site is simple. Just delete the IP address associated with wikileaks.org from the DNS database.
Namecoin and DNS
Namecoin blockchain allows people to store site name and IP address in exchange for well what else but namecoins. The extension for a namecoin site is .bit (extension examples are .com, .net, .org etc). So, WikiLeaks can create a site – wikileaks.bit and store a corresponding IP address on the namecoin blockchain after paying some coins.
Website IP information cannot be tampered as blockchains are secure (immutable in tech speak). So any website information stored on namecoin blockchain will remain forever within the blockchain.
Using Bitcoin Blockchain as Metadata Store
Metadata is data that provides information about other data. So, using blockchain as a metadata means using it to store information about “other” data ie non-bitcoin information.
An example of these are coins which are layered on top of bitcoin. They utilize bitcoin’s blockchain to store their metadata information ie non-bitcoin information. They utilize the computing power behind bitcoin to secure their network. Examples include — Omni (earlier known as Mastercoin) and Counterparty.
Let’s look at Omni (I will be using Mastercoin and OMNI interchangeably)
(Their paper https://github.com/OmniLayer/spec )
Mastercoin was one of the first coin sales or ICO. People were asked to send coins to an exodus address (1EXoDusjGwvnjZUyKkxZ4UHEf77z6A5S4P). Mastercoin was credited in lieu of BTC to those accounts. The distribution was similar to ICO nowadays. Just like a classic IPO, late buyers paid a slight premium compared to the early adopters.
How does OMNI work?
Omni uses an elaborate scheme to manage transactions. All OMNI transactions have three parts:
- The sender and receiver -These are bitcoin addresses which own OMNI coins. Yes you read it right, because of layering all OMNI coin owners are also bitcoin owners
- Exodus address – Each OMNI transaction pays a small fee to the Exodus address. It makes filtering OMNI transactions from the complete bitcoin blockchain very easy. So all OMNI transactions can be found on the exodus account page: https://blockchain.info/address/1EXoDusjGwvnjZUyKkxZ4UHEf77z6A5S4P
- Data Address – This is a special bitcoin address which stores the OMNI coin transaction. So if I send you 1 OMNI from my bitcoin address to your address, a special data address will store that transaction.
Let’s take an example:
A transfer of 0.9 OMNI between two addresses as seen and stored by OMNI:
You can see the sender and receiver of the coins.
As, we know OMNI uses bitcoin blockchain so the information must exist there too:
If you match both the page, the information can be broken down to:
- Sender – 1BF6A2MU7iS5qLRe8tLTHkLZBmEUsKHV5m
- Receiver – 1KTpA9UJfCP5L3at3QwgHYYyRCUwNnRhWY (Both are actual bitcoin address)
- Exodus Address – 1EXoDusjGwvnjZUyKkxZ4UHEf77z6A5S4P (Omniexplorer uses this to filter transactions)
- Data Address – 1BF6A2MU7iS5qLRe8tLTHkLZBmEUsKHV5m → This stores the transaction and ownership information of OMNI coins. In this case it will store the transfer of 0.9 OMNI coins