Cryptocurrency, a technical perspective

What’s a Blockchain?

Matteo Carioli
Reply U / Talents

--

“A blockchain is a continuously growing list of records, called blocks, which are linked and secured using cryptography. Each block typically contains a hash pointer as a link to the previous block, a timestamp and a transaction data. By design blockchain are inherently resistant to modification of the data.”

Wikipedia’s definition of blockchain — wiki/Blockchain

From this definition we can say with absolute certainty that the blockchain is not a traditional structure for currency management (or a traditional data management, as a database), so the question that we need to answer is:

How does blockchain apply to Bitcoin and other cryptocurrency?

Image courtesy of “The Economics of Cryptocurrencies — Bitcoin and Beyond”, Koeppel, 2017

First of all, a little introduction on what Bitcoin are and when they were introduced.

Bitcoin, launched in 2009 by Satoshi Nakamoto, is the first successful decentralized cryptocurrency. In short, a cryptocurrency is a virtual coinage system that functions much like a standard currency, enabling users to provide virtual payment for goods and services free of a central trusted authority. Cryptocurrencies rely on the transmission of digital information, utilizing cryptographic methods to ensure legitimate, unique transactions. Bitcoin took the digital coin market one step further, decentralizing the currency and freeing it from hierarchical power structures.

Nakamoto begins his paper stating “Commerce on the Internet has come to rely almost exclusively on financial institutions serving as trusted third parties to process electronic payments. While the system works well enough for most transactions, it still suffers from the inherent weakness of the trust based model”. The existence of the so called trusted intermediary increases transaction costs, “cutting off the possibility of small casual transactions.”

Now that we know what is the idea behind the currency, let’s talk about the technical aspect of it.

First of all, every transaction during a certain time period is collected into something called a block. The so called block is then broadcasted to all the nodes currently connected to the Bitcoin network. Each node then has to agree upon a set of broadcasted transactions, using a hash based mechanism as a “Proof of Work” (PoW). The Bitcoin protocol requires that nodes use the SHA-256 hashing function. Once a node finds a solution to the problem, the PoW requirements are considered satisfied, and the new block (that now contain the hash and a little piece of information used in conjunction with the block to calculate the hash) is added to the blockchain and broadcasted to all nodes.

The entire process undergone by each node is called mining, and because of it, the node (in this case it’s the miner) receives a payment for his service.

This architecture is far from perfect and has some major and potential drawbacks.

First of all, transactions of any value imply the payment of a transaction fee. The main use for cryptocurrency in the future will be micropayments, in particular considering the rapid development of IoT industry, and paying a fee that is larger than the amount of value being transferred is not logical. Moreover, the transaction fees are almost a necessity, because they serve as an incentive for the miners (otherwise, without fees there will be no more blocks).

Another problem is the fact that the system is composed by two distinct types of participants: those who issue transactions and those who approve transactions. This model creates unavoidable discrimination of some participants that creates conflicts that make all element spend resources on conflict resolution.

The next generation Blockchain…Directed acyclic graph architecture

Image courtesy of “IOTA Whitepaper, The Tangle”, Serguei Popov, 2017

In the last years, a new type of cryptocurrency is spreading and gaining users support. It’s name is IOTA, a cryptocurrency for the Internet-of-Things (IoT) industry. The main feature of this new cryptocurrency is the tangle, a direct acyclic graph (DAG) for storing transactions.

The transactions issued by nodes constitutes the site set of the tangle graph, which is the ledger for storing transactions. The edge set of the tangle (name used to Indicate the DAG) is obtained in the following way: when a new transaction arrives, it must approve two previous transactions. These approvals are represented by directed edges, and if there is not a direct edge between two transaction, but there’s a directed path (of length at least two) it’s called indirectly approval. Then there’s the genesis transaction, which is approved by other transactions. The genesis transaction is the first address with a balance that contained all of the tokens that got transferred to several other founder address. This mean that no more tokens will be created in the future.

In conclusion the main idea behind the tangle is that: “to issue a transaction, users must work to approve other transactions. Therefore, users who issue a transaction are contributing to the network’s security. Of course it is assumed that if a node issue a transaction it’s going to check if the approved transactions are not conflicting, and if that’s the case, the node will not approve the conflicting transaction. This helps the system to prevent the acceptance of double-spending transactions.

Another important information is that the iota network is asynchronous. This mean that nodes do not see the same set of transactions and the tangle may contain conflicting transactions.

One last benefit of the DAG architecture is the resistance against quantum computing attacks, due to the algorithm used (in the IOTA implementation) that is structured such that the time to find a nonce Is not much larger than the time needed for other tasks that are necessary to issue a transaction.

A final note…

Blockchain and DAG can solve issues like secure data storage of important information like identity documents or even school degrees. They can be used for a lot more than “just” cryptocurrency!

--

--