Enterprise Blockchain: Past, Present and Future
Preparing for the Next Generation of Corda
I gave a talk to an audience of financial and technology executives in São Paulo last week. It was an opportunity to share some reflections on the genesis of the Enterprise Blockchain industry, our successes and failures, and where things might be heading next. I realised that it might be a topic that a broader audience could be interested in. So here is a lightly edited version of what I talked about this week.
What’s the big idea?
Think about a big firm you’re familiar with. Perhaps it’s the one you work for. Chances are, if you operate in a competitive market, your firm makes pretty extensive use of Information Technology (IT), and you’re probably pretty good at it.
It might not feel like your firm is good at technology, but the reality is that firms that are truly bad at IT have been outcompeted by those who figured it out. HR, Payroll, Procurement, Accounting… so much of the firm has been automated and optimised by IT that we don’t even notice it.
But now look at the market in which your firm operates. The technology story is totally different. It’s lamentable. It doesn’t matter who you’re interacting with – suppliers, customers, lenders, borrowers, whomever – the situation is likely the same. Each of you have your own systems – which work perfectly well on their own terms – but which don’t connect to your counterpart’s. Information is endlessly duplicated – badly. Errors are rife. Paper, email and faxes are what passes for communications technology. It’s embarrassing.
Yes – some processes in some markets work well. But it’s remarkable the extent to which they are exceptions to the rule. And it’s not as if we haven’t tried. The ‘B2B’ boom in the late nineties was one valiant attempt to apply the power of technology to optimise and automate entire markets. But, in general, the world has made slow progress.
In the mid-2010s, we decided to try again. The rise of Bitcoin and emergence of Ethereum had shown it was possible to build global-scale networks that allowed disparate parties to connect, coordinate and transact. No one person controlled these networks. Anyone could connect. And, somehow, all the various participants were in sync. These platforms weren’t the answer, of course. But maybe they had some new insights we could learn from?
Dozens of startups, R3 included, were founded during this time, based on the idea that maybe there were some new ideas we could use to take another ‘run’ at solving the problem of terrible market-level technology infrastructure.
R3’s approach was to go the industry – financial services – which seemed to suffer most from the poor state of the ‘inter-firm’ technology landscape. We organised a systematic study of the problems, an analysis of how these emerging blockchain networks worked, and identified the features that a new platform would need to have if it were to have a chance of succeeding.
The outcome of this process was Corda, now the world’s leading enterprise blockchain platform. Its key building blocks – the things that have made it such a powerful tool for industry optimisation are:
- A cross-firm shared ledger enabling collaborating parties to transact based on high quality data, without exposing internal data or systems, and with far fewer reconciliation errors. A ledger that could even become the industry’s system of record for some key questions such as ownership of assets (the terms ‘Digital Assets’ and ‘Tokenisation’ hadn’t been coined back then…)
- Process automation enabling parties to automate multi-step workflows that transcend organisational boundaries
- A permissioning system that provides high identity assurance and gives confidence to regulated entities that they can comply with their legal obligations to know with whom they are transacting
- A privacy-first design, allowing competitors to trade without revealing sensitive data publicly – only participants in a transaction get to see the details – unlike other blockchain-inspired approaches.
- All underpinned by an open source codebase and decentralised architecture allowing parties to interact faster, automatically, with no need to introduce new infrastructure or additional trusted parties.
We’ve been delighted by how successful Corda has been, far beyond the narrow banking scenarios we originally designed it for. Broadly speaking, we’re seeing it being used to solve four main problems in ‘Regulated DeFi’:
- “Decentralised FMI”: Modernising the Financial Market Infrastructure firms that sit of the heart of the financial markets
- “Digital Assets”: Tokenising financial assets such as bonds, stocks and some derivatives to increase liquidity, reduce capital utilization and lower cost for issuance, trading, custody and corporate actions
- “Digital Currency”: Digitising national currencies to improve economic efficiency with resilience, instant settlement, and programmability
- Business Process Automation Across Multiple Parties: Digitising B2B value chains to improve traceability, reduce capital utilisation and remove reconciliation errors
It has been quite a journey and we don’t take the trust firms have put in us lightly – such as DTCC, SDX, HQLAx, the Central Bank of the UAE, Ericsson and more.
What have we learned?
But not everything has gone smoothly. Many Enterprise Blockchain firms have failed. Many projects stalled. And not every Corda project has been a success either.
We started the planning for the next version of Corda by reviewing what we had learned from our work to date. The findings were so deep that next version of Corda is actually the next generation of Corda.
We’ve made some significant changes. It turns out that the lessons we learned also have lessons for those who are building applications and so I wanted to share the top three here:
When we first designed Corda, we assumed the technology’s adoption would follow a familiar path: first used for high-value/low-volume use-cases, and for the problems to which the technology is most uniquely suited. As a result, we optimised Corda for modest workloads, with each node deployed and managed by the firm whose data it managed.
Instead, what we found was the complete opposite. The entire Italian banking industry started using it to reconcile millions of transactions every night! The United States is considering its use to transform how quadrillions of dollars of securities trades are settled each year. These are not ‘low volume’ scenarios…
And, unlike our expectation, many Corda deployments are actually partially centralised: firms want the knowledge that they could control their own node; the option value is extremely high. But it doesn’t mean they want to do it right away. In some deployments we see some firms’ nodes co-deployed on the same infrastructure.
As a result, we needed to redesign Corda to make it massively cheaper to run at scale and far simpler to allow nodes to co-exist on the same infrastructure, whilst still providing security and isolation.
The next generation of Corda is built with this insight at its core. Cloud-native, economically scalable, progressively decentralised.
Sharing without sharing
The Ethereum network is remarkable for a bunch of reasons, but one of them is the way in which multiple applications coexist on the same network and can be ‘snapped together’ like Lego bricks to ‘compose’ new applications. We assumed enterprise blockchains would need to work the same way.
Turns out we couldn’t have been more wrong. Those building regulated networks to optimise a particular market tend to hate the idea of having other applications running on the same network. The testing, security and regulatory questions make their heads explode. Instead, they want to be able to deploy each application onto its own network. But these people are pretty demanding… they nevertheless still want to be able to link different applications seamlessly, with the right controls. This means we had added features to Corda that nobody was using and which made parts of the programming model over-complex.
In the next generation of Corda we’ve completely rethought how applications are built. Now, applications can be deployed to standalone ‘application networks’ and developers can then combine or ‘compose’ these applications into new solutions using a new Corda Composability feature. This is something really quite novel and we’ll be writing a lot more in the coming weeks to explain the concept.
We now know what the interoperability ‘exam question’ is
When we designed Corda there were literally dozens of blockchain platforms vying for supremacy. We all knew that the applications being built would eventually need to interoperate with each other openly and without friction. But it wasn’t clear what those protocols should look like or how they should work.
Happily, the answer is now clear. The ‘winning’ enterprise blockchain platforms are those based on Corda and those utilising the Ethereum Virtual Machine (EVM). And the interoperability solution that customers are demanding is the ability to ‘atomically’ swap assets between networks running on each of these two platforms. In short, ‘Corda-EVM Atomic DvP’ turns out to be the interoperability ‘exam question’. And Corda’s next generation is going to deliver precisely this, working in deep partnership with peers in the industry and neutral standards bodies.
Contrary to what you might have heard, Enterprise Blockchain is alive, kicking and delivering immense value. The next generation of Corda builds on the platform’s success, as well as incorporating the lessons we’ve learned through hard experience at the coal face. If you’re already an expert in this space, I hope you’re going to like what you see. And if you’re new – or sceptical – it will soon be time to take another look.