vegh, russell | february 2018 blockchain: a digital revolution

11
Merkle Solutions White Paper Vegh, Russell | February 2018 Page 1 of 11 www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions Blockchain: A Digital Revolution Introduction Blockchain technology has garnered a lot of attention over the last decade. Although the first work on a cryptographically secured chain of blocks was described in 1991 by Stuart Haber and W. Scott Stornetta, 1 it wasn’t until 2008 that the first blockchain was conceptualized by an anonymous person — or group — known as Satoshi Nakamoto. 2 The following year, the first blockchain was implemented as the underlying technology for the digital currency known as bitcoin. With the recent explosion in value of bitcoin and other cryptocurrencies, many people, including cryptocurrency investors, still seem confused on the advantages and interworking of the underlying technology. This white paper provides an overview of blockchain technology and discusses key use cases and benefits. This paper also identifies critical challenges associated with implementing blockchain solutions and touches on the research and work underway to address these issues. This is by no means a rigorous or extensive guide on blockchain technology; however, future white papers will drill down further into key areas. It is also important to note that some technical details are simplified so as to appeal to a broader audience. Blockchain Basics A blockchain is an immutable (tamper-proof), distributed (shared), and decentralized digital ledger that records information in “blocks” that are “chained” together, hence the name “blockchain”. For cryptocurrency (i.e. Bitcoin, Bitcoin Cash, Litecoin, etc.), the digital ledger is used to store wallet balances and transaction data; however, the ledger can be used to hold any information. For example, it can be used for the storage of medical records, identity information, and events, providing time stamped and immutable storage of data. Before diving into the benefits of blockchain technology and how it can be used, it’s important to understand the main technological pieces that allow it to function. Blockchain technology relies on the following concepts, which are explained in detail throughout this white paper: Peer-to-peer Networks – used to distribute and update the ledger. Public-key Cryptography – used to identify the sender and the receiver. Consensus System – voting system that allows blockchain participants to validate and agree on new transactions. Cryptographic Hash Functions – used to chain information together in order to provide blockchain immutability. Peer-to-Peer Networks Today, most services, including banking, cloud computing, social media, and many others, are centralized in nature (see Figure 1). One entity, organization, or business has control and responsibility of all information. Blockchain ledgers, however, are decentralized and distributed (see Figure 1) as blockchains use peer-to-peer networks to distribute and update their ledgers.

Upload: others

Post on 08-May-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Vegh, Russell | February 2018 Blockchain: A Digital Revolution

Merkle Solutions White Paper Vegh, Russell | February 2018

Page 1 of 11

www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions

Blockchain: A Digital Revolution Introduction

Blockchain technology has garnered a lot of attention over the last decade. Although the first work on a cryptographically secured chain of blocks was described in 1991 by Stuart Haber and W. Scott Stornetta,1 it wasn’t until 2008 that the first blockchain was conceptualized by an anonymous person — or group — known as Satoshi Nakamoto.2 The following year, the first blockchain was implemented as the underlying technology for the digital currency known as bitcoin.

With the recent explosion in value of bitcoin and other cryptocurrencies, many people, including cryptocurrency investors, still seem confused on the advantages and interworking of the underlying technology. This white paper provides an overview of blockchain technology and discusses key use cases and benefits. This paper also identifies critical challenges associated with implementing blockchain solutions and touches on the research and work underway to address these issues. This is by no means a rigorous or extensive guide on blockchain technology; however, future white papers will drill down further into key areas. It is also important to note that some technical details are simplified so as to appeal to a broader audience.

Blockchain Basics

A blockchain is an immutable (tamper-proof), distributed (shared), and decentralized digital ledger that records information in “blocks” that are “chained” together, hence the name “blockchain”. For cryptocurrency (i.e. Bitcoin, Bitcoin Cash, Litecoin, etc.), the digital ledger is used to store wallet balances and transaction data; however, the ledger can be used to hold any information. For example, it can be used for the storage of medical records, identity information, and events, providing time stamped and immutable storage of data.

Before diving into the benefits of blockchain technology and how it can be used, it’s important to understand the main technological pieces that allow it to function. Blockchain technology relies on the following concepts, which are explained in detail throughout this white paper:

• Peer-to-peer Networks – used to distribute and update the ledger. • Public-key Cryptography – used to identify the sender and the receiver. • Consensus System – voting system that allows blockchain participants to validate and

agree on new transactions. • Cryptographic Hash Functions – used to chain information together in order to provide

blockchain immutability. Peer-to-Peer Networks

Today, most services, including banking, cloud computing, social media, and many others, are centralized in nature (see Figure 1). One entity, organization, or business has control and responsibility of all information. Blockchain ledgers, however, are decentralized and distributed (see Figure 1) as blockchains use peer-to-peer networks to distribute and update their ledgers.

Page 2: Vegh, Russell | February 2018 Blockchain: A Digital Revolution

Page 2 of 11

www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions

These distributed ledgers can be public or private and only differ in who is allowed to participate in the network.

Figure 1: The left and center images illustrate a centralized versus a decentralized system. The figure on the right illustrates a distributed system where each node retains a copy of the ledger (i.e. the ledger is distributed).

Public blockchains give anyone permission to participate in the blockchain consensus

system. This means that anybody in the world has the ability to stand up their own node and retain a copy of the ledger. As participants, these nodes are also responsible for verifying new transactions, adding them to the ledger, and publicizing the updated blockchain. The network has a mechanism to incentivize nodes (see Consensus System section) to encourage more participants to join the network, thus making it more decentralized. Public blockchains offer transaction transparency and are considered by some to be more decentralized than private blockchains.

Conversely, private or permissioned blockchains require an invitation to join the network, verify transactions, post transactions, and maintain the ledger. There are various mechanisms that can be put into place to give nodes or participants different levels of privilege. Permissioned blockchains are particularly useful in cases where ledger information needs to remain private or remain within the hands of certain trusted parties. For example, the ledger could contain personal information or intellectual property. While public blockchains need a consensus system that incentivizes nodes to participate, private blockchains may or may not have this incentivizing mechanism. Participants of permissioned blockchains may receive other benefits for maintaining the ledger, such as access to the privileged information. Public-Key Cryptography

Blockchain technology uses a system known as public-key cryptography to sign and verify transactions as well as generate wallet addresses. Public-key cryptography, or asymmetric cryptography, is commonly used in communication to encrypt and decrypt information. A user generates a private/public key pair which are mathematically linked to each other. The public key is made publicly available and is used to encrypt the data or “plaintext”. The encrypted data, also known as the cypher text, can only be decrypted with the private key (see Figure 2). Since the private key decrypts the information, this key must be securely stored (i.e. it must be kept private).

5

Blockchains are Distributed, Decentralized Ledgers

Centralized Decentralized Distributed

Page 3: Vegh, Russell | February 2018 Blockchain: A Digital Revolution

Page 3 of 11

www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions

Figure 2: Plaintext is encrypted by a public key and only the corresponding private key can be used to decrypt it.

Aside from encrypting and decrypting data, public-key cryptography is also used to create “digital signatures”. A digital signature, much like a handwritten signature, is used to validate integrity and authenticity of a message. For example, Bob digitally signs his mortgage document and his bank wants to verify no one has tampered with the document and that it was filled out and signed by Bob. After filling out the mortgage document, Bob would encrypt the document (i.e. digitally sign it) with his private key and send it to his bank. Since only Bob’s public key can decrypt the information, the bank can verify that the document was signed (encrypted) with Bob’s private key (see Figure 3). If Bob’s public key does not decrypt the document, the bank knows that either someone has tampered with the document or the document was not signed by Bob.

Figure 3: An example of how public-key cryptography can be used to digitally sign mortgage documents. The bank knows the document was filled out and signed by Bob if the public key properly decrypts the document.

15

Plaintext

Encrypt Decrypt

PlaintextCyphertext

Private Key

Public Key

Decrypt

Bob’s Public Key

Bob’s Private Key

Encrypt

Fill In Missing

Information

Send To Bank

Page 4: Vegh, Russell | February 2018 Blockchain: A Digital Revolution

Page 4 of 11

www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions

Blockchain technology uses public-key cryptography much in the same way. First, the public key is passed through mathematical functions to generate a wallet address, which is a string of alphanumerical characters. This address provides a digital location to or from which funds can be sent or released; however, only the private key can authorize the release of funds from this wallet address. For example, Bob wants to pay Alice for coffee, so he goes on his computer, enters Alice’s wallet address and the amount he wants to pay her. He then signs the transaction with his private key, thereby releasing the funds from his wallet address, and posts the transaction to the network. Using Bob’s public key, the nodes on the network verify whether Bob signed the transaction and whether Bob has enough money in his wallet. If so, the transaction can be verified and published to the blockchain, moving money from Bob’s wallet address to Alice’s.

Since the private key is used to release funds, it is of the utmost importance that these keys are securely stored. If this key is made public, anyone can sign transactions on behalf of that key. So, where exactly are these private keys stored? When digital wallet software is downloaded and installed, this software generates the private/public key pair and is responsible for securely storing that private key on that device. Therefore, it is critical that the device and wallet software do not have any vulnerabilities or bugs that could allow a hacker access to the private key. If the device storing the private keys is somehow destroyed (e.g. fire, flood, etc.), the funds could be lost forever. Therefore, most wallet programs today allow users to generate a random sequence of words that can be memorized or written down, which, through mathematical functions, can be used to regenerate the private key. One could also choose to write down their private key and store it securely (e.g. in a firebox, safe, etc.).

When dealing with a cryptocurrency exchange, it is the exchange that signs transactions on behalf of its users. Thus, the exchange has the responsibility of protecting its users’ private keys. Since exchanges hold so much cryptocurrency, they are the target of many attacks. This is why some users choose to move their currency to wallets under their control. Exchanges generally store most of their holdings in “cold wallets”, which means that the private keys for those funds are stored on a server that is not connected to the internet. Conversely, wallets that store funds online are called “hot wallets”. Consensus System

Now that we understand how transactions are signed, let’s shift gears and discuss how they are verified, validated, and added to the ledger. This is done through the consensus system. As previously discussed, blockchains are hosted by nodes (computers, servers, etc.) and these nodes are responsible for verifying transactions, adding them to the ledger, and maintaining a copy of the entire blockchain. Although consensus can be reached in many different ways, this paper focuses on the two main types used today: Proof of Work (PoW) and Proof of Stake (PoS).

Nodes need incentive for participating in the network since they are using their storage and computing power to manage the blockchain and verify transactions. This is managed through the consensus process. In a PoW system, nodes, better known as miners, race to solve computational puzzles (see Cryptographic Hash Function section). When a miner solves a puzzle, it posts its solution to the network. Once 51 percent of the network nodes verify the puzzle answer and transaction validity, that transaction is added to the blockchain forever and the

Page 5: Vegh, Russell | February 2018 Blockchain: A Digital Revolution

Page 5 of 11

www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions

network generates newly minted coin to reward that miner. These puzzles are very random in nature, giving each node an “equal” opportunity to win currency.

In a PoS system, the creator of the next block is chosen based on various combinations of random selection and wealth (i.e. stake). Compared to a PoW system where all nodes are racing to solve the puzzle and confirm the transaction to win the newly minted coin, a PoS system drastically reduces the computational expense because only one node is confirming the transaction. In a PoS implementation, the nodes are better known as forgers as they are not winning newly generated coin but, rather, they are rewarded by the block transaction fees, paid for by the person sending the transaction. This means that cryptocurrencies that are built on PoS have a fixed supply of currency. PoS systems are considered faster and more environmentally friendly. Cryptographic Hash Functions

In a PoS system, what exactly is this puzzle that miners are racing to solve and how are transactions chained together to provide ledger immutability? It all comes down to what are known as cryptographic hash functions. Simply put, hash functions are mathematical functions that take data of arbitrary size and produce a fixed alphanumerical character set known as a hash or message digest (see Figure 4). Hashes are fingerprints of their original data. One way in which hash functions are used today is for the storage of passwords in databases. The hash, instead of your actual password, is stored. Whenever you enter your password to log into a site, the website hashes that password and compares it to the hash in its database to ensure they match. Since hashes are one way, it is virtually impossible or mathematically improbable for malicious actors to take the stored hash value and get the original password to compromise your account.

Figure 4: In the examples above, the text on the left is passed through a hash function to yield the hash on the right. In this example, an MD5 hash function was used but there are many types of hash functions that are utilized for various reasons.

Blockchain for Connected Vehicles

10

Hash Function(MD5)

Hash

functions

generate

fingerprints

of their

input

d01d8363ac8215082ae50c7710669bc4

Page 6: Vegh, Russell | February 2018 Blockchain: A Digital Revolution

Page 6 of 11

www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions

How are hash functions used in blockchains? When transactions are received, they are bundled together into a block and that block is hashed, creating a fingerprint of the original transaction data. It’s important to note that, in addition to the transaction information, the hash of the previous block is also bundled with the new transactions before hashing. Therefore, each block of transactions is cryptographically linked to the previous block and, if someone tried to modify a transaction block from an earlier time, the hashes of all of the following blocks would be different and the network would know. As previously discussed, in a PoW system miners are racing to solve puzzles so they can win the block reward. The blockchain rules state that the hash value of the bundled transactions must start with a certain number of leading zeros. Therefore, not only do the miners bundle the transactions with the hash of the previous block, they must also add a random number, known as a nonce value, to the block. Miners try different nonce values until they get a new hash with the correct number of leading zeros (defined by the blockchain rules) and, when they do, they publicize their solution to the network (see Figure 5). Once 51 percent of the network confirms the validity of the transactions and the puzzle answer, those transactions are finalized and the miner that solved the puzzle wins newly generated currency.

Figure 5: Miners take the hash value of the previous block, combine it with the hash of the bundled transactions, and they try several nonces (random numbers) until they find a nonce that generates a hash value with x number of leading zeros, where x is defined by the blockchain rules. Once the random number is found which yields a transaction block hash with the correct number of leading zeros, that miner posts its solution to the network and is rewarded for solving the puzzle. Smart Contracts and Decentralized Applications Although blockchain technology was first implemented for bitcoin, blockchains have other applications aside from financial instruments. Blockchains can store executable code also known as smart contracts. Smart contracts were first proposed by Nick Szabo in 1994 where he compared smart contracts to a vending machine.3 A vending machine takes coins in exchange for goods, dispensing said goods and change according to the displayed price. The vending machine also protects the stored coins and goods from attacks. Smart contracts allow for the exchange of money, goods, services, property, or anything of value without a middle man, similar to the

Blockchain for Connected Vehicles

40

Page 7: Vegh, Russell | February 2018 Blockchain: A Digital Revolution

Page 7 of 11

www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions

vending machine use case. For example, pallets of goods are shipped around the world every day but someone at the receiving end needs to be present to account for the pallets and issue payment. Instead, the pallets could have GPS trackers and, when the goods reach their intended location, that location is transmitted and posted to the blockchain. If the location is the correct location per the smart contract, payment is issued to the appropriate party via the blockchain smart contract. Smart contracts are the basis for decentralized applications. Today, websites and applications run on and communicate with servers. If those servers go down, so does the website or the functionality of the application. Decentralized applications, or Dapps, are blockchain enabled applications. They run directly off the blockchain and, since the blockchain is decentralized, there is no single point of failure. These Dapps rely on smart contracts written in the blockchain. There are many use cases for decentralized applications such as social networks, games, crowdfunding, blogging services, and many more. For example, today social media sites like Facebook, Instagram, Twitter, and others are able to censor published content if it violates their rules. One could create a social network built entirely on the blockchain to prevent this issue. Since Dapps are decentralized, once content is published by a user, it is there permanently unless it is removed by that same user. Blockchain Forks A fork occurs when a blockchain diverges into two separate chains. This occurs quite often when miners discover a block at the same time; however, this split is temporary as the chain that finds the next block first becomes the longest chain and is therefore the valid one. The rule is that the longest chain always wins. As mentioned, these forks are just temporary and a natural part of the consensus process. There are other forks that occur as a result of the changes in the underlying codebase. Just like all software, blockchains require code changes to address bugs, vulnerabilities, or to introduce new features. Code changes can result in two different types of forks: a hard fork and a soft fork. A soft fork is a software change that is backwards compatible. Nodes can decide whether or not they want to adopt the changes. This means that nodes that have not updated their software will still be able to participate in validating, verifying transactions, and maintaining the ledger. However, the nodes that have not upgraded their software will have reduced functionality as they will not be able to mine new blocks. A soft fork requires that a majority of the nodes upgrade to enforce the new rules. A hard fork occurs when new code is introduced and that code is not compatible with the legacy code, resulting in two blockchains. This is done to introduce major changes to the blockchain protocols of a coin or to introduce a new coin altogether. Both of the coins will have the same ledger up until the point of the hard fork. Once the hard fork occurs, each blockchain operates independently of the other using its own ledger and having its own participating nodes. For a hard fork to occur, there must be reasonable support from the community in order to have nodes to participate in the consensus process and maintain the new ledger. Hard forks do not always result in two currencies. If the community sees the changes as essential (i.e. to fix a major security flaw or introduce a much-needed feature), all or a majority of the nodes adopt the new code, resulting in only one blockchain. The legacy blockchain would

Page 8: Vegh, Russell | February 2018 Blockchain: A Digital Revolution

Page 8 of 11

www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions

need substantial support in order to survive since, when you have fewer nodes, it’s easier to perform a 51 percent attack. This attack occurs when a group of miners gain 51 percent of the hashing power, thus enabling them to prevent the confirmation of transactions or reverse transactions that were completed under their control (i.e. they can double spend coins). Blockchain Challenges There are several issues that need to be addressed in order to gain widespread adoption of blockchains and make them effective and usable. This section will focus on some of those issues and provide insight on current research aiming to address these problems. These include the trend towards centralization of blockchains, the size and throughput of blockchains, and the processing power or wasted energy used in the consensus process. The issue of centralization is one that arises often and can even result from certain measures put in place to address other problems. So, one must consider this when they are developing solutions to address issues to improve the technology. Blockchains built on certain consensus systems can only process a limited number of transactions per second. The number of transactions that can be processed per second is related to the block size and time. For example, Bitcoin blocks are limited to 1 MB in size and, since each transaction is about 250 bytes, each block can hold about 400 transactions. Additionally, Bitcoin only allows a block to be published once every 10 minutes. This comes out to about 7 transactions per second.4,5 Conversely, credit card company Visa can handle tens of thousands of transactions per second.5 A proposed solution is to increase the block size from 1 MB to 2 MB; however, this requires a hard fork, something that was scheduled but didn’t get enough support and was eventually dropped. Additionally, increasing the block size from 1 to 2 MB is a short-term fix as it would only roughly double the transactions per second that could be processed. So, why not just increase the block size to 10 MB or 100 MB? A larger block size requires much more computing power as larger amounts of data are being passed through cryptographic hash functions. This results in only the most powerful computers being able to participate, thereby centralizing the network. Furthermore, the smaller block size acts as a security feature since someone could flood the network with invalid blocks. This flooding would cause nodes to waste time attempting to validate invalid blocks since it takes much more time to validate larger blocks than smaller ones. In order to increase the number of transactions per second that can be processed by the Bitcoin blockchain, a soft fork to the bitcoin network named SegWit was introduced. This change modifies the format of the transactions, thus decreasing the overall average transaction size and allowing more transactions per block. Each transaction contains certain information from the sender, also known as the witness data, and this data is not necessary to verify the transaction. SegWit segregates or removes this data from the transaction. Since transaction fees are generally calculated per transaction byte, the SegWit soft fork also saves on transaction fees; however, this requires adoption of the new software which is barely in the double digits as of writing this white paper. Additionally, the increase in the number of transactions per second by implementing SegWit is not significant and, therefore, is only a short-term fix.

Another solution that is proposed to combat blockchain throughput problem is the “Lightning Network”.6 This is a network that is layered on top of the bitcoin blockchain and commits a certain amount of bitcoin to be used in the network. This network is used between

Page 9: Vegh, Russell | February 2018 Blockchain: A Digital Revolution

Page 9 of 11

www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions

groups or individuals who regularly conduct business with each other. Therefore, there could be several lightning networks sitting on top of the bitcoin blockchain. There are many other proposed solutions to address blockchain’s scalability problem such as Schnorr Signatures,7 MimbleWimble,8 and Rootstock.9 These are not discussed in this paper but are worth a closer look. As previously mentioned, the ever-increasing size of blockchains presents a large storage problem. Blockchains will increase in size over time and, since every node stores the entire ledger, each blockchain will consume massive amounts of storage, depending on how many full nodes participate in the consensus process. Light clients are commonly used today to help combat this problem. These clients do not download the entire blockchain but, instead, they download only the block header information to validate transactions. It’s important to point out that these light clients rely on full nodes to function. Another solution, suggested in Nakamoto’s original paper, is a term known as “pruning”, whereby spent transactions can be discarded to save on disk space.2 For example, if Bob pays Alice 50 bitcoins, it is not necessary to keep the spent transaction information as we only need to keep the information that pertains to Alice receiving 50 bitcoins. Pruning brings about its own set of problems and concerns which are currently under research and will be discussed in future white papers.

In a white paper published in June 2017, the World Economic Forum stated, “Estimates liken the bitcoin network’s energy consumption to the power used by nearly 700 average American homes at the low end of the spectrum and to the energy consumed by the island of Cyprus at the high end. That’s more than 4.409 billion kilowatt-hours, a Godzilla-sized carbon footprint, and it’s by design. It’s what secures the network and keeps nodes honest.”10 This is an estimate of only one blockchain and, with thousands of other blockchains popping up, the energy consumption is something that needs to be taken seriously. One way to address the energy consumption problem is through the consensus mechanism. As previously mentioned, the PoS system consumes far less energy than a PoW but it’s not without its own drawbacks (i.e. possibly decentralization). Researchers need to focus on and develop new consensus mechanisms that address the high energy consumption while still maintaining a decentralized system. Private blockchains do not suffer from the same energy usage problem since they are usually maintained between small groups of organizations and they usually do not have the same energy intensive consensus mechanism. Use Cases: Although blockchains are not solely intended to be used for currency, there are many that have been developed and implemented with this sole purpose. Each coin is trying to address a particular set of problems or trying to satisfy a different use case. Litecoin, similar to Bitcoin, focused on increasing the speed of transactions, reducing the total transaction time from 10 to 2.5 minutes. Cryptocurrencies like Monero and Verge are interested in obfuscating transactions so you are unable to trace them back to a particular user. Others such as Chia and Burst are focused on energy efficiency and decentralization by using different consensus mechanisms.

Another cryptocrurrency known as XRP was developed to support cross-border payments. Today, cross-border payments can take anywhere from two to four days but, with Ripple’s ledger technology, transaction settlement time can be decreased to just four seconds.

Page 10: Vegh, Russell | February 2018 Blockchain: A Digital Revolution

Page 10 of 11

www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions

Banks are already using Ripple’s ledger technology, RippleNet, but they haven’t yet adopted XRP, the cryptocurrency that backs RippleNet. Banks are instead using IOUs due to the volatility and uncertainty behind XRP. In addition to currency, blockchains will likely play a large role in the internet of things (IoT). IoT devices will need ways to transact with one another to pay for goods, products, services, etc. For example, a car could pay for its own gas or a washing machine could order its own detergent. This can all be managed via blockchains and smart contracts. IoT devices may also log pertinent information to the blockchain when the validity and time of transactions are important. For example, a vehicle could log speed, steering information, acceleration, etc. to the blockchain which can be used by public law enforcement or insurance companies to validate what happened during an accident. One thing to note is that an IoT blockchain solution needs to have transaction costs at or close to zero since these IoT devices will be small, cheap, and conducting many transactions. IOTA, a lightweight distributed ledger technology, aims to solve this problem as it has a zero-transaction fee solution. IOTA doesn’t operate on blockchain technology as it uses a data structure called a directed acyclic graph, referred to as “the tangle”.11 In the future, blockchains will play an important role in user and device identity management. Today, users have many identities to log into the various platforms that they utilize (e.g. social media, online banking, bill payment systems, etc.). If each of these platforms were able to work off one centralized identity, it would simplify things for both the user and the company offering services. There are many shared authentication schemes out there today but they are not decentralized. For example, many people use Facebook’s single sign-on feature to log into other 3rd party applications; however, if they cancel their Facebook account they are no longer able to authenticate to those 3rd party applications. Device identity management suffers from similar problems in that every platform or application has a different way to identify and authenticate devices. They use MAC addresses, IP addresses, public-key infrastructure, symmetric keys, and device IDs, among others. Creating a decentralized device identity registry would help simplify the thousands of platforms utilizing these identities and it would help facilitate platform to platform and device to device communication. There are numerous other use cases for which blockchains can be utilized but are not discussed in this paper for the purpose of concision. The time-stamped, immutable, and decentralized nature of blockchains opens the door for incalculable possibilities. So, let your mind circumambulate the blockchain possibilities and be the next to define a solution that will help drive this digital revolution. References:

1. Haber, Stuart; Stornetta, W. Scott. How to time-stamp a digital document. Journal of Cryptology. 3 (2), Jan. 1991, pp. 99–111.

2. Nakamoto, Satoshi. Bitcoin: A Peer-to-Peer Electronic Cash System. Bitcoin.org. Retrieved February 18, 2018.

3. Szabo, Nick. Formalizing and Securing Relationships on Public Nodes. www.fon.hum.uva.nl. Retrieved February 18, 2018.

4. "What is the Block Size Limit". CryptoCompare. Retrieved February 18, 2018.

Page 11: Vegh, Russell | February 2018 Blockchain: A Digital Revolution

Page 11 of 11

www.MerkleSolutions.com All rights reserved © 2018 Merkle Solutions

5. Croman, Kyle; Eyal, Ittay (2016). "On Scaling Decentralized Blockchains”. doi:10.1007/978-3-662-53357-4_8. Retrieved February 18, 2018.

6. Poon, Joseph; Dryja, Thaddeus. "The Bitcoin Lightning Network". Retrieved February 18, 2018.

7. Gregory Maxwell; Andrew Poelstra; Yannick Seurin; Pieter Wuille; Simple Schnorr Multi-Signatures with Applications to Bitcoin. https://eprint.iacr.org/2018/068.pdf Retrieved February 18, 2018.

8. Tom Elvis Jedusor. MIMBLEWIMBLE. https://scalingbitcoin.org/papers/mimblewimble.txt Accessed February 18, 2018.

9. "Coinsilium Invests in Smart-Contract Sidechain Platform Rootstock". CCN: Financial Bitcoin & Cryptocurrency News.

10. World Economic Forum. Realizing the Potential of Blockchain. June 2017. Accessed February 18, 2018.

11. Serguei Popov. The Tangle. October 1, 2017. https://iota.org/IOTA_Whitepaper.pdf Retreived February 19, 2018.