What Digital Cats Taught Us About Blockchain

Given the number of cat pictures that the internet serves up every day, perhaps we shouldn’t be surprised that blockchain’s latest pressure-test involves digital cats. CryptoKitties is a Pokémon-style collecting and trading game built on Ethereum where players buy, sell, and breed digital cats. In a matter of a week, the game has gone from a relatively obscure but novel decentralized application (DAPP) to the largest DAPP currently running on Ethereum. Depending on when you sampled throughput, CryptoKitties accounted for somewhere in the neighborhood of 14% of Ethereum’s overall transaction volume. At the time I wrote this, players had spent over $5.2 million in Ether buying digital cats. The other day, a single kitty was sold for over $117,000.

Wednesday morning I attended a local blockchain meet-up, and the topic was CryptoKitties.

Congestion on the Ethereum node that the player was connected to was so bad, gas fees for buying a kitty could be as high as $100. The node was so busy that game performance was significantly degraded to the point where the game became unusable. Prior to the game’s launch, pending transaction volume on Ethereum was under 2,000 transactions. Now it’s in the range of 10,000-12,000 transactions. To summarize: A game where people pay (lots of) real money to trade digital cats is degrading the performance of the world’s most viable general-purpose public blockchain.

If you’re someone who has been evaluating the potential of blockchain for enterprise use, that sounds pretty scary. However, most of what has been illustrated by the CryptoKitties phenomenon isn’t news. We already knew scalability was a challenge for blockchain. There are a proliferation of off-chain and side-chain protocols emerging to mitigate these challenges, as well as projects like IOTA and Swirlds which aim to provide better throughput and scalability by changing how the network communicates and reaches consensus. Work is ongoing to advance the state of the art, but we’re not there yet and nobody has a crystal ball.

So, what are the key takeaways from the CryptoKitties phenomenon?

Economics Aren’t Enough to Manage the Network

Put simplistically, as the cost of trading digital cats rises, the amount of digital cat trading should go down (in an idealized, rational market economy that is). Yet both the cost of the kitties themselves – currently anywhere from $20 to over $100,000 – and the gas cost required to buy, sell, and breed kitties has gone up to absurd levels. The developers of the game have also increased fees in a bid to slow down trading. Up to now, nothing has worked.

In many ways, it’s an interesting illustration of cryptocurrency in general: cats have value because people believe they do, and the value of a cat is simply determined by how much people are willing to pay for it. In addition, this is clearly not an optimized, nor ideal, nor rational market economy.

The knock-on effects for the network as a whole aren’t clear either. Basic economics would dictate that as a resource becomes more scarce, those who control that resource will charge more for it. On Ethereum, that could come in the form of gas limit increases by miners which will put upward pressure on the cost of running transactions on the Ethereum network in general.

For businesses looking to leverage public blockchains, the implication is that the risk of transacting business on public blockchains increases. The idea that a CryptoKitties can come along and impact the costs of doing business adds another wrinkle to the economics of transacting on the blockchain. Instability in the markets for cryptocurrency already make it difficult to predict the costs of operation for distributed applications. Competition between consumers for limited processing power will only serve to increase risk and likely the cost of running on public blockchains.

Simplify, and Add Lightness

Interestingly, the open and decentralized nature of blockchains seems to be working against a solution to the problem of network monopolization. Aside from economic disincentives, there isn’t a method for ensuring that the network isn’t overwhelmed by a single application or set of applications. There isn’t much incentive for applications to be good citizens when the costs can be passed on to end-users who are willing to absorb those costs.

If you’re an enterprise looking to transact on a public chain, your mitigation strategy is both obvious and counter-intuitive: Use the blockchain as little as possible. Structure your smart contracts to be as simple as they can be, and handle as much as you can either in application logic or off-chain. Building applications that are designed to be inexpensive to run will only pay off in a possible future where the cost of transacting increases. Use the right tools for the job, do what you can off-chain, and settle to the chain when necessary.

Private Blockchains for Enterprise Applications

The easiest way to assert control over your DAPPs are to deploy them to a network you control. In the enterprise, the trustless, censorship-free aspects of the public blockchain are much less relevant. Deploying to private blockchains like Hyperledger or Quorum (a permissioned variant of Ethereum), gives organizations a measure of control over the network and its participants. Your platform then exists to support your application, and your application can be structured to manage the performance issues associated with blockchain platforms.

Even when the infrastructure is under the direct control of the enterprise, it’s still important to follow the architectural best practices for DAPP development. Use the blockchain only when necessary, keep your smart contracts as simple as possible, and handle as much as you can off-chain. In contrast to traditional distributed computing environments, scaling a distributed ledger platform by adding nodes increases fault tolerance and data security but not performance. Structuring your smart contracts to be as efficient as possible will ensure that you make best use of transaction bandwidth as usage of an application scales.

Emerging Solutions

Solving for scalability is an area of active development. I’ve already touched on solutions which move processing off-chain. Development on the existing platforms is also continuing, with a focus on the mechanism used to achieve consensus. Ethereum’s Casper network proposes to change the consensus mechanism to a proof-of-stake system, where miners put up an amount of cryptocurrency as proof that they aren’t acting maliciously. While proof-of-stake has the potential to increase throughput, it hasn’t yet been proven to be.

Platforms built on alternatives to mining are also emerging.

IOTA has been gaining traction as an Internet of Things scale solution for peer-to-peer transacting. It has the backing of a number of large enterprises including Microsoft, is open-source, and freely available. IOTA uses a directed acyclic graph as its core data structure, which differs from a blockchain and allows the network to reach consensus much more quickly. Swirlds is coming to market with a solution based on the Hashgraph data structure. Similar to IOTA, this structure allows for much faster time to consensus and higher transaction throughput. In contrast to IOTA, Swirlds is leaderless and Byzantine fault tolerant.

As with any emerging technology, disruption within the space can happen at a fast pace. Over the next 18 months, I expect blockchain and distributed ledger technology to continue to mature. There will be winners and losers along the way, and it’s entirely possible that new platforms will supplant existing leaders in the space.

Walk Before You Run

Distributed ledger technology is an immature space. There are undeniable opportunities for early adopters, but there are also pitfalls – both technological and organizational. For organizations evaluating distributed ledger, it is important to start small, iterate often, and fail fast. Your application roadmap needs to incorporate these tenets if it is to be successful. Utilize proofs of concept to validate assumptions and drive out the technological and organizational roadblocks that need to be addressed for a successful production application. Iterate as the technology matures. Undertake pilot programs to test production readiness, and carefully plan application roll out to manage go-live and production scale.

If your organization hasn’t fully embraced agile methods for application development, now is the time to make the leap. The waterfall model of rigorous requirements, volumes of documentation, and strictly defined timelines simply won’t be flexible enough to successfully deliver products on an emerging technology. If your IT department hasn’t begun to embrace a DevOps-centric approach, then deploying DAPPs is likely to meet internal resistance – especially on a public chain. In larger enterprises, governance policies may need to be reviewed and updated for applications based on distributed ledger.

The Future Is Still Bright

Despite the stresses placed on the Ethereum network by an explosion of digital cats, the future continues to look bright for distributed ledger and blockchain. Flaws in blockchain technology have been exposed somewhat glaringly, but for the most part these flaws were known before the CryptoKitties phenomenon. Solutions to these issues were under development before digital cats. The price of Ether hasn’t crashed, and the platform is demonstrating some degree of resilience under pressure.

We continue to see incredible potential in the space for organizations of all sizes. New business models will continue to be enabled by distributed ledger and tokenization. The future is still bright – and filled with cats!

 

How much do you know about Blockchain and is it just hype?

Blockchain Basics: a Primer

Every short while, a technology comes along that promises to turn everything upside down.

Sometimes this happens, sometimes it’s hype.

Think of Yahoo’s search in it’s early days, later overturned by Google’s better algorithms and business model (they did, after all, download the entire internet at one time). There was peer-to-peer networking, popularized by Napster, Application (App) stores, and now, Blockchain has the valley, and startups buzzing away.

But is this hype or reality? Perhaps some of both.

Let’s start by defining Blockchain & Bitcoin

So what is Blockchain?

Blockchain is, at it’s a core, a new way to code, somewhat specific to assets, and primary as things relate to chain of custody.

It started with Bitcoin; but what is Bitcoin?

Bitcoin is one of many (though perhaps the most well known) of a new type of currency called crypto currency (aka digital currency).

The crypto references the highly secure nature of it. It is a virtual currency. There is no physical coin, bill, or other instrument. It’s computer code, plain and simply.

Bitcoin was first mentioned in a now infamous white paper authored by a person, or persons using the pseudonym Satoshi Nakamoto in 2008.

Though by no means the first reference to a digital currency, this paper detailed an innovative peer-to-peer electronic monetary system called Bitcoin that enabled online payments to be transferred directly, without an intermediary: person-to-person, or institution-to-institution.

It was built on what we now call Blockchain.

While obvious on the surface, there are dramatic limitations to physical transactions that are one-to-one. Person-to-person, entity-to-entity; both parties have to agree on value, typically both parties have to be present, and both parties have to bring along the matter and currency to be transacted.

In short, this doesn’t scale well.

This process led to the evolution from the barter systems of days gone by, to the establishment of monetary systems by the Romans and other societies to set published values for marks, coinage, and other instruments of currency (aka – a common currency).

Common currency led to the development of banks and other intermediary systems, like Federal Reserve banks, central banks, and other regulatory bodies, who set established value for mutually agreed upon instruments, whether they be coins, or paper money.

Yet these intermediaries have grown in power, can delay processing, and some feel, do not always add the value to the transaction that they charge to conduct it. These intermediaries do still provide valuable services; they track our funds, lend funds, and clear transactions for us when needed.

Imagine showing up to a house closing with a bag of gold.

No need, a cashier’s check from the bank, against a mortgage (another monetary instrument) is all you need (plus lots of contract paperwork).

So how might we move forward to a system both digital, yet trusted by all, whilst not compromising security?

Let’s track back to where we began: Bitcoin vs Blockchain

Bitcoin is a digital currency, built on a technology we call Blockchain. Blockchain is a distributed ledger technology; distributed, meaning, that multiple systems across the internet store identical information about an asset, or a data file.

Technically, these are redundant data files, kept in synchronization, that can be stored on the public internet, or in a closed, secured system, or both.

In the current, traditional banking system, our accounts are stored in a single centralized database. If a person transacts business (think of going to an ATM, or cashing a check) at a bank that they don’t hold an account at, the system we are accessing must link to and validate our information from said person’s home bank where the account records live.

When a digital transaction is carried out on a currency built on Blockchain (Bitcoin is but one of many digital currencies), it is grouped together in a cryptographically protected block with other transactions that have occurred in the last set amount minutes (typically ten minutes) and sent out to the entire network. From there, Miners (members in the network with high levels of computing power-basically powerful, specially constructed servers) then compete to validate the transactions by solving complex coded problems. The first miner to solve the problems and validate the block receives a reward. (In the Bitcoin Blockchain network, for example, a miner would receive Bitcoins).

The validated block of transactions is then timestamped and added to a chain in a linear, chronological order. New blocks of validated transactions are linked to older blocks, making a chain of blocks that show every transaction made in the history of that blockchain. The entire chain is continually synched with each instance so that every ledger in the network is the same, giving each member the ability to prove who owns what at any given time.

The Evolution of Blockchain

One example of the evolution and broad application of blockchain, beyond digital currency, is the development of the Ethereum public blockchain, which is providing a way to execute peer-to-peer contracts.

It is this decentralized, open and secure attribute, that allows for trust between parties, and eliminates the need for intermediaries. It’s also important to note that traditional hacking type attacks would struggle to crack this widespread system. You might be wondering why and/or how would hackers struggle to crack this widespread system? They would struggle since multiple systems and files would need to be accessed in order to execute a traditional hacking type attack, and almost simultaneously; meaning, the likelihood and feasibility of this happening hovers somewhere right around zero.

So is this hype or reality?

It is real enough that TxMQ has committed to building a Center of Excellence focused on building Blockchain solutions for our customers.

Already, use cases are being evaluated for industries as widespread as the airlines, global logistics, pharmaceuticals, banking and finance, and even personal health records, auto manufacturers, and real estate transactions. Imagine following the custody chain of drugs from point of manufacturer to ultimate consumption or destruction. Imagine the value to a car manufacturer if they knew the precise ownership and chain of custody of not just every vehicle manufactured, but of each and every after market part produced.

So our money is on reality more than hype.

Certainly, not all coding need be done using blockchain; yet the ability to digitize assets, and track the precise chain of custody, is game changing.

There are countless millions globally who are counted among the unbanked; whether they be people in areas too rural, or people who are just too distrustful of these systems. Yet, most of the population has a cell phone, and with that instrument, can have access to this newfound democratization of society. We’re already seeing companies like Apple hint at introducing peer to payment into their future operating systems.

For more information on Blockchain and Blockchain solutions, feel free to call or email us.

I’m always interested in hearing about new startup ventures, or talking with other cutting edge thinkers interested in Blockchain, digital currency mining, and other cutting edge ways of solving today’s challenges. Look me up at TxMQ.com, my personal blog at Chuckfried.com, or find me on LinkedIn.