Previously published on Medium on December 6th, 2017 (here)
Who we are:
- Thesis-long investors in ChainLink
- The fourth-largest holder of ChainLink tokens outside of the company and exchanges (at the time of this post and based on wallet holdings)
- Tenured cryptocurrency investors with experience in investment banking, management consulting, and product development
What this is:
- A primer on smart contracts and our general investment thesis
- An overview of our investment thesis for ChainLink
- Analysis of ChainLink’s addressable market, go-to-market strategy, and progress to date
What this isn’t:
- Financial or investment advice
Investment Thesis and Smart Contracts 101
What is our investment thesis?
Our firm’s general investment thesis relies on three assumptions:
- Financial institutions will realize competitive advantages as smart contract functionality allows them to streamline costs and realize new revenue streams.
- Permissionless open protocols will provide access to financial services to a wider range of people than possible today.
- Token based business models have a competitive advantage over traditional business models for some technical products.
From a technology perspective, we are still far away from this being a reality. Since the advent of Bitcoin in 2009, the infrastructure layer of blockchain technology has been materializing, and we are now moving into a phase focused on middleware technologies. This phase will be embodied by tools being built on top of core protocols to enable decentralized applications. We believe that most decentralized applications will need to utilize middleware to incorporate value added services beyond the computational power provided by blockchains. Therefore, we believe critical pieces of middleware technology (i.e. ChainLink) will capture similar amounts of total transaction volume and proportional value as the blockchain platform (i.e. Ethereum) providing computing power for decentralized applications.
From a platform perspective, our view is that Ethereum currently provides the best infrastructure to build and run smart contracts. Therefore, we plan to invest in ERC-20 middleware utility tokens that play integral roles in creating a more robust decentralized ecosystem.
What is Ethereum?
In 2014, Vitalik Buterin created a new decentralized cryptocurrency called Ether and released the first version of the Ethereum network. The goal of Ethereum is to build a global operating system for trusted computing. The Ethereum network is accessible to anyone and ensures that all programs are run the exact way they are written across shared infrastructure. This provides a new level of verifiability and validity to computation. When looking to assess the value of the Ethereum network, we base it’s overall size on the aggregate value of all applications built on top of the platform.
What is a smart contract?
In essence, a smart contract is a program that runs based on a set of parameters that are defined by the creator and has the ability to control the movement of value based on interactions with those parameters. First discussed in 1996 by Nick Szabo, many claim that smart contracts are the real use case for blockchain technology in the same way programs extended the power of the computer beyond basic calculator math.
The simplest example is a digital vending machine. If represented as a program, the input of money equal to the price for a soda will enable the release of said soda to the user. The soda will not be accessible without providing the appropriate amount of value, and if that value is provided the program will ensure that the soda is delivered. These ‘programs’ predicated on value exchange are what Ethereum is specifically built to run in a secure environment. Creators and users of smart contracts do not need to know each other or have any predetermined level of trust.
Smart contracts have the capability to be digital representations of any financial contracts that currently exists in the analog world. A few examples of everyday financial contracts:
- Municipal bonds that pays a quarterly interest payments to investors
- Insurance contracts that provides coverage for a flight being on time
- Uber rides where the rider pays a dynamic price to the driver
It is the unlimited flexibility of what can be created as a smart contract that makes them intriguing and potentially revolutionary.
Why are smart contracts powerful?
The most fundamental building block in economics is a general-purpose financial agreement. These agreements specify inputs, logic and outputs for anything ranging from credit card purchases to employment contracts.
Intermediaries are present in many of the transactions that take place within digital markets today. From a ride on the Uber platform to a bank executing on the covenants of a bond agreement, these financial contracts are everywhere. In each instance there is one (or more) intermediary introducing a high level of overhead cost, unnecessary counterparty risk, and potential for fraud. Many businesses that enable financial platforms have a fee-based business model, in excess of their platform cost, for every transaction occurring on their platform. Ronald Coase contended in his 1960 article, The Problem with Social Cost, “is that if we lived in a world without transaction costs, individuals would bargain with one another to produce the most efficient allocation of resources.” In economic theory, additional fees have a cost on the overall economic system and increase friction for buyers and sellers, limiting the total output.
How do we realize the potential of smart contracts?
We believe that smart contracts represent a fundamental shift for all financial contracts in terms of how they are created, how they are executed, and what their functionality could be. The immediate work that will get us closer to this reality is happening in two parts — identifying use cases for financial contracts and developing viable smart contract tools to enable them. The format of our use-case analysis is as follows:
- Relationship of Participants: is there a one to one or one to many relationship?
- Level of Standardization: is the financial contract repeatable or unique to a specific agreement?
- Digitization: is the financial contract fully controlled by existing digital signals or is there an offline component on either the data or payment side?
As the use cases below outline, increasing layers of complexity open up new industries that would benefit from using smart contracts and increase the total addressable market for smart contracts:
- One to one | standardized | digitized (i.e. A bet on a basketball game)
- One to many | standardized | digitized (i.e. A bond that pays out based on LIBOR yields)
- One to one | non-standardized | digitized (i.e. A ride-share contract that matches riders and drives with dynamic pricing)
- One to many | non-standardized | digitized (i.e. A unique financial derivative based on the value of another asset)
- One to one | non-standardized | non-digitized (i.e. A car insurance policy that pays the driver to stay below speed limit)
- One to many | non-standardized | non-digitized (i.e. A pollution tax policy that adjusts the amount of tax for citizens based on the level of measurable pollution)
The viability of these use cases is dependent on robust smart contract tools. Aside from general blockchain scaling increasing throughput, these tools can be defined as data inputs, control logic, and terminating outputs.
- Data Inputs: Currently, the only secure input that can power smart contracts is data that exists on the Ethereum blockchain, which is essentially token inflows/outflows. As a result, the vast majority of today’s smart contracts are for token transfers. Many of the use cases above are currently impossible as Ethereum is essentially unable to communicate with external data feeds and program smart contracts around them.
- Control Logic: Solidity and the Ethereum Virtual Machine allow developers the ability to write any logic into a smart contract; this problem has been effectively solved.
- Terminating Outputs (payments channels): Almost all financial contracts terminate with a payment and confirmation of that payment receipt. The final component of smart contracts is the ability to transfer value based on the logic of the contract and the data inputs. The speed, variability and security of this process is crucial to robust smart contracts.
The glaring hole for smart contracts currently is the lack of secure, private, off-chain data inputs and payment outputs that expand beyond cryptoassets. If a platform were to enable blockchains to ingest and program contracts based on external data feeds and fiat payment outputs, the use cases outlined above become significantly closer to reality.
Smart Contracts’ missing LINK
The problem at a high level
Mass adoption of interesting smart contracts will require data feeds that are secure, external to the blockchain (i.e. interest rate data from a bank), and maintain privacy when incorporated into a smart contract. Data feeds that meet these conditions are not currently available for a number of reasons. Broken down, the problem lies with the following:
- Blockchains (and smart contracts running on the blockchain) cannot directly fetch and incorporate external data; they lack the networking capabilities necessary.
- Current solutions are powered by a community of centralized oracles, software that connects external data feeds to blockchains for smart contract functionality.
- Relying on single sources of data for a smart contract is inherently insecure; the single entity is left vulnerable to tampering or data corruption. The self-executing nature of smart contracts makes data integrity paramount.
- Lastly, data requests transmitted through the blockchain are publicly available; observers can see any data fed into a contract which possibly leaks sensitive information.
These conditions result in extremely limited smart contract functionality and low adoption rates. If you are a large enterprise, the tamperproof value of smart contracts is effectively nullified if contracts are public and the underlying data feeds are insecure.
Diving deeper, let’s examine a specific example of the problem:
Smart contracts are often highlighted as being able to create the next generation of financial contracts; i.e bonds that issue coupon payments automatically instead a human intermediary facilitating the quantity and cadence of payments. The current lack of off-chain data availability for smart contracts (centralized oracles) is flawed:
- Assume that a bank went through the trouble to set up self-executing smart contracts that would process trillions of dollars a year in bond payments, and elected to use a centralized oracle (i.e. Oraclize) as its data input for interest rates.
- Now imagine either the source of data (Standard and Poors) that feeds the centralized oracle, or the centralized oracle itself (Oraclize), gets hacked and the interest rate data is changed . Billions or trillions of dollars are erroneously paid out as a result of a hack on the data provider and the self-executing nature of smart contracts.
This is what is typically called a “security at the edges” problem and underlines our investment thesis for ChainLink. Large institutions will not adopt smart contracts until both the smart contract and the data feeds that power them are verifiably secure end-to-end and private where possible.
So, how do we ensure that the data feeds that trigger smart contracts maintain their integrity? The high-level solution is that ChainLink employs decentralization & reputation scoring to set up and maintain data feeds.Layered on top of this system, is low-level hardware integration with leading trusted hardware processing enclaves (Intel SGX) to ensure smart contracts have high-integrity/private data feeds.
An example of the solution, provided by ChainLink:
Applying decentralization to data feeds will ensure there are multiple sources providing data inputs for any given smart contract product. It also means that the multiple inputs are scored in a way that rewards the most accurate data feeds and punishes the inaccurate ones — maintaining a reputation system/marketplace for data providers. Below we walk through our bond example from above, exploring how a decentralized oracle and trusted hardware approach solves this problem:
- Instead of the bond smart contract calling a single API for interest rate data when the coupon payment is due, the contract puts the data-request “up for bid” on an on-chain marketplace. The smart contract owner stipulates parameters like the number of data providers they want to aggregate, the reputation score required to be able to participate, and a general Service Level Agreement (SLA) for data delivery.
- Several data providers respond to this service agreement with a bid in the form of a data reply — when enough data providers have responded, the majority response is taken (or average depending on the request), outliers are removed, and data is fed into the contract. Even if a single data provider has been hacked/tampered with, there is no effect on the data powering the smart contract.
- Once the payment is executed by the contract, the confirmation of the receipt is confirmed by a transaction that is executed within a trusted hardware enclave and therefore verifiable to the Bond smart contract, but does not leak sensitive PII to the entire Ethereum network.
In this case, the resulting outcome is a profound step for both smart contracts and the bond issuance market: a high-quality, broadly-sourced change in a bond yield rate is securely and privately acted upon without a centralized intermediary structure.
Why does this need to be tokenized?
The LINK token serves a few specific use cases within the ChainLink ecosystem:
Compensating data feed providers (smart contract data inputs)
- Example: Bond coupon smart contract compensates interest rate data providers with the LINK token for responding to their data request.
Compensating payment oracles (smart contract payment outputs)
- Example: Bond coupon smart contract compensates a banking network (i.e. SWIFT) for processing the coupon payment after the smart contract is triggered by interest rate data.
Maintaining a reputation system for payment oracles/data providers
- Example: LINK tokens are held by data or payment oracles and contribute to the overall reputation of those oracles.
- Example: LINK tokens are taken from network participants on a per-request basis, as for each request they “stake” LINK tokens on their response being accurate. If their data is inaccurate or incomplete, the network takes these LINK tokens away and distributes the staked tokens to accurate participants.
Specific use cases aside, the value of a token in this model is much broader than just utilizing it within the ecosystem. The power of a tokenized business model isn’t specific to ChainLink and is commonly referred to as cryptoeconomics. The two benefits of tokenized business models are 1) for solving the “chicken-or-the-egg” problem of initializing a two sided network, and 2) for removing network transaction fees to realize greater platform utilization.
For context, the ICO allocation for ChainLink was 35% sold in the Token Sale, 35% dedicated to a network incentive program, and 30% retained by the team for platform development.
- Solving the chicken-or-the-egg problem for networks
Allocating 35% of the tokens to node incentives allows the team to create programs that will incentivize data and payment providers to develop services on the ChainLink network. For larger providers, the cost of setting up a new system (even if there is an ROI from eventual cost savings) can be prohibitive. Allocating these tokens can be used to offset that cost, but also serve to aligning partners with investors and the team in realizing the success of the network. Everyone now has a financial interest in the growth of the network and then the appreciation of the token. Enacting this strategy breaks down the chicken-or-the-egg problem that has hindered so many previous networks from reaching scale.
2. Removing additional transaction fees
Many businesses have a business model where the success of their company depends on the volume of transactions that occur on their platform and they take a fee for facilitating those transactions. Token businesses don’t have revenue or profit in the same way that traditional businesses do.Instead, their success is directly tied to the growth of the network and therefore the appreciation of the token value. “C” corporations in the United States provide similar incentive models by allowing employees to earn shares of stock. This works to ensure that employees have a shared investment in the success of the business. By retaining 30% of the tokens, there is no need for an additional fee for each transaction. This decreases the friction in the market and increases the potential output overall.
ChainLink Overview and Analysis
ChainLink is a decentralized oracle solution. At a high level, the project aims to provide secure inputs (data) for smart contracts, and secure outputs (payment functionality) for those smart contracts to settle once triggered. An example would be ChainLink providing interest rate inputs for banks for a bond coupon payment contract, and facilitating smart contract outputs — in this case paying USD out to the corresponding bank account stipulated in the contract. The two goals of the project broken down:
- Smart Contract Inputs: Build a network of data providers (Inputs) for smart contracts, where data providers provide service for a fee paid in the network’s native token, LINK. The decentralization of data feeds means that, for a given smart contract request, multiple data providers will answer the request for data, leaving the self-executing contracts significantly less susceptible to manipulation from the underlying data feed.
- Smart Contract Outputs: Build a network of payment oracles to take the result of the smart contract and pay out a corresponding amount (Ether, Bitcoin, Fiat), compensated for their service with LINK tokens. The project specifically takes the position that the majority of smart contract payments in the near future will be desired (by the user) to be done in fiat currency. We agree with this. Accordingly, they have have a partnership with SWIFT, the largest network of banks in the world. This gives them a rare scale bridge from crypto to fiat currency.
Market Size and Strategy
There are essentially two markets that ChainLink is pursuing in the near term for the use of their secure inputs and outputs — Large Financial Firms and FinTech Startups. We will address each in-depth below.
Large Financial Firms
These firms are adopting smart contracts to streamline their operations and generate new revenue streams. As an example, securities settlement (i.e. a Bond coupon payment) is a time and resource intensive process that requires access to external data feeds and human interaction. CapGemini estimates that $7.5Bn in annual cost savings could be achieved if in-house settlement systems were automated and that overall loans could grow $149Bn if settlement times were reduced.
In recognition of this opportunity, ChainLink has partnered with SWIFT, the largest interbank network in the world. At its core, SWIFT is essentially a messaging service that banks use to communicate with each other. Each message carries a type of payment command which can range from the simple (send $X from Bank X to Bank Y) to complex (have Bank Z settle security A balloon payment). SWIFT has been under pressure from consortiums of other banks that have adopted blockchain technology (ex. Bank of America adopting the Ripple messaging platform), and are now seeking the same performance efficiencies that their competitors have by adopting blockchain technology.
In October, ChainLink completed a year-long proof of concept for smart-contract based Bond payments over the SWIFT network, and are currently working on building a larger implementation for smart-contract based securities. The opportunity for this specific implementation is large. In terms of volume, SWIFT does about 25–30M payment messages per day, of which 11–13M are related to securities processing — this equates to a total of about 3bn per year. We assume (conservatively) that around 10% (300M) of these securities messages are related to bond processing.
If the LINK token is addressing smart contract data input/payment output functionality for over 300M messages per year — it will be involved in processing around 820K transactions a day. This is more than Ethereum (600K transactions per day, valued at $44bn at time of writing) or Ripple (200K network payments per day, valued at $11bn at time of writing). ChainLink is currently valued at $100m.
The final piece of the SWIFT partnership that is important to understand is that, if it is implemented, ChainLink will have access to one of the very few gateways to fiat that exists for smart contracts. If the partnership is successful, ChainLink will not only enable SWIFT to process smart contracts, but it is possible SWIFT will enable other external smart-contracts to settle through fiat on its network by means of a ChainLink/SWIFT oracle. This is a massive opportunity for both companies: SWIFT could potentially become the fiat clearinghouse for cryptocurrency-based smart contract transactions by way of ChainLink.
There are countless FinTech-startups that aim to utilize smart contracts to create new and interesting businesses. Unfortunately, the availability of secure, private, and external data feeds as well as viable payment oracles lags well behind their ambition, and therefore most of their projects are currently technically impossible. As a result, it is difficult to accurately size the market for data feeds and payment oracles for crypto startups. If the promise of smart contracts is real, there is a chance that ChainLink could play an integral part in terms of spurring development in this space, opening the door to capturing a significant amount of the value that is created by these yet unrealized use-cases which require secure data inputs and payment outputs.
A good example of how a crypto-startup might use ChainLink is Request Network. At its core, Request Network is a decentralized network for payment requests. An example would be a YouTube celebrity requesting payment from their representative agency based on YouTube video counts. Using ChainLink, Request would determine how many YouTube views were generated via a 3rd party data provider feeding into a ChainLink oracle, request the payment from the agency via Request, and then pay out the corresponding amount using a ChainLink payment oracle on the SWIFT network.
Core team — Sergey Nazarov & Steve Ellis:
Both Sergey and Steve have been working on the problem for smart contract data feeds and interoperability between blockchains for several years. They intimately understand the problems that face the community. Steve has made the majority of the commits to the public github repositories and Sergey represents the project for of the community. They are both highly capable in their respective areas of focus, but need more team members to accomplish the large goals outlined in the whitepaper.
Advisors — Evan Cheng, Hudson Jameson & Ari Jules:
Evan Cheng is a director of engineering at Facebook and an advisor to a small number of cryptocurrency startups. He was the original architect of LLVM while at Apple. Hudson Jameson is a member of the Ethereum foundation and helps the Ethereum team deliver on their roadmap. He was previously an entrepreneur in Dallas and is a blockchain expert. Ari Jules is a professor of computer science at Cornell and the co-author of Town Crier and co-director of Initiative for cryptocurrencies and contracts (IC3). They are both very important technical advisors to the ChainLink team and project. It is unclear how they are both assisting the team and if there is regular communication. Ari Jules was a co-author of the ChainLink whitepaper which shows the level of technical depth that this project embodies.
Community managers — Rory Piant & Thomas Hodges:
Both Rory and Thomas have emerged from the community to help manage the community ecosystem (Rory) and the technical community (Thomas). While they have both been valuable in facilitating community inquires and technical questions, the level of engagement from the core team has been minimal over the last two months. We expect this to change as more official announcements are made and the main network is launched. They both will continue to play integral roles in ensuring community involvement and node (oracle) adoption.
The initial version of the smart contract developer kit was written in Ruby and the test versions are available on the site, smartcontract.com. There are examples of how major businesses could use the services, ranging from AXA, Sony and SWIFT. The API documentation is available for anyone and nodes can be created and run on the test network.
While Ruby is a great language to get a prototype up and running, the team is porting the backend over to Go. We believe that this is to prepare for the scale of a live network launch and that the Ruby version was useful in proving the concept with enterprise partners. Steve has confirmed that API endpoints won’t be changing to “ensure that partners developing on it won’t have to make any changes to existing work”. This is a positive sign that the network is moving forward soon with a live launch and there is active development by partners that are likely unknown to date.
Town Crier & Intel SGX
Town Crier was research that came out of Cornell University and IC3 to ensure data privacy & security for smart contracts. The project outlines a novel way to process transactions and use encryption to verify the processing without leaking any sensitive information in the process. The research was co-authored by Ari Jules who is an advisor and co-author of the ChainLink whitepaper. Intel Software Guard Extension technology is critical to the Town Crier project, as it relies on a Trusted Execution Environment (TEE) for transaction processing. SGX technology became available on all Intel chips created after 2015 and partitions the CPU to generate the TEE on chip.
ChainLink is uniquely positioned to take advantage of the privacy and security advantages of both Town Crier and Intel SGX. At DevCon3 in November, Mr. Nazarov gave a presentation about both technologies and how they fit into the ChainLink model. Features like TC & SGX will become factors in determining reputation for data/payment oracles. These will likely cost more per request, given the additional hardware requirements to achieve security and privacy, but for many smart contract applications it will be worth the additional cost.
ChainLink has already developed capabilities to work across the Ethereum blockchain, Bitcoin blockchain, Hyperledger ecosystem and the SWIFT banking system. This means that ChainLink is the only protocol that enables Ethereum smart contracts that can payout in Bitcoin. This is a largely unmentioned component within the ChainLink technology offering but provides a major advantage when working with businesses that have already started developing on Hyperledger or Bitcoin protocols. This also allows ChainLink to be blockchain-agnostic in that the success of the project is not directly tied to the survivorship of a single infrastructure platform.
Oracle networks and decentralized data provider and integrity services in the smart contract ecosystem are not a new concepts, and there is a general understanding that this is a necessary component to realize the vision of decentralized technology. There is debate around the best implementation for an oracle model. We’ve outlined a bit of this above, but it is worth exploring and explaining more deeply:
Token-less models (i.e. Oracleize.it)
- These projects do not rely on a token to help facilitate the data services but instead provide API tools for smart contract developers to equip their blockchain programs with data inputs. The advantage with this model is it gives complete flexibility to the smart contract developer to choose the source of data, request it in the format that fits best and to control any privacy related to the contract via pre-processing and hard-coding specific variables for sensitive information.
- We believe this model does not stand up to ChainLink for two reasons: 1) for any smart contract developer that also needs to build data services, it’s additional work and complexity to require the construction of the middleware in addition to the contract itself. (As a comparison, iPhone developers are not left to recreate the underlying libraries and systems built into iOS, and can instead focus solely on building their app.) And 2), the power of incentives and network effects are very strong; we believe that leveraging cryptoeconomics, as described above, is a strong force that will pull the highest quality data and payment providers into a single ecosystem of oracles whereas there is little incentive to do so without token payment.
Centralized models (i.e. Microsoft Bletchley)
- When large enterprises started looking into blockchain technologies, many of them saw value in forming consortia to develop permissioned blockchains instead of the open protocols and permissionless blockchains. In essence, they started developing shared databases that could be read by and written to by a group of pre-approved members.
- While there is potentially ample room for cost savings with permissioned blockchains for some large businesses in the short term, we believe this strategy is akin to developing intranets instead of applications for the internet. The short term efficiency gains in some back office functions may be attractive, but the competitive advantage of decentralized technology is derived from permissionless blockchains enabling applications that don’t need a ‘back office’ all together. Additionally, there’s a scenario that permissioned and permissionless blockchains coexist for some time. We welcome this scenario as we believe businesses will progress through database phases from proprietary -> permissioned -> permissionless technology. The businesses that do so fastest will realize the greatest advantages.
Other token-based models (i.e. Streamr)
- There are other competitive projects working on similar decentralized oracle networks. These projects are taking the same approach and using tokens as a form of payment and incentive for data providers. Each project is taking a specific approach to decentralized data oracles by focusing on specific features that differentiate it by which data providers it attracts.
- The market for decentralized data providers is not a “winner-take-all” market. In fact if a data provider is savvy, they will develop oracles for each platform where they can realize a profitable service. Streamr has built its service around providing the easiest-to-use tools, they have a ‘visual editor’ that enables drag and drop functionality for oracle creation. We believe that enterprise-grade financial contracts will be the first use-case for smart contracts and that consumer-grade applications will take longer to materialize. Given ChainLink’s focus on enterprise partnerships and its relationship with Swift for payments, it is uniquely positioned to become the financial contract data and payment provider for this initial wave of smart contract functionality.
Our initial investment originated from the token sale and we have continued to add to our position as the price has been in the $0.15–0.17 range. We have a long-term horizon for the tokens and do not plan on selling in the next 2–3 years. Given ChainLink’s focus on enterprise relationships and solutions, we see the opportunity set of outcomes being bi-modal. The need for decentralized oracle tools is apparent now and we believe there is a $1 per token base-case, even if strong partnerships do not materialize. If successful in implementing the Swift partnership, launching the live network and partnering with other high-quality enterprise service providers, we have a price target of $10–20 per token. Both of these outcomes have multi-year timelines, require more ChainLink core team members to be hired and expect that the cryptoasset markets continue to grow.
We’re excited to see where this team, technology and community go and will continue to support them where ever we can. Please feel free to reach out with any questions or comments!
Disclosure: This post was written on Medium in December 2017, before the official incorporation of Framework Ventures L.P. in June 2019. Framework Ventures has since become an investor in ChainLink.