Will Open Source Drive Blockchain Interoperability?
Blockchain technology matured a lot this year. Sure, it's still unclear why banks should use it — needs vary by company. But it is clear blockchains provide more value if they can interact with each other.
Competing blockchain vendors have worked hard to differentiate their products and sell them to banks. In the process some players have begun open-sourcing their software — following the same path as operating-system programmers and architects of the internet.
Their commitment to open source has shown an underlying interest in interoperability. When software designers and systems builders work on projects, they can study similar efforts by others and consider how they can all ultimately connect, said Adam Ludwin, the chief executive of the Silicon Valley blockchain startup Chain.
Last month Chain began open-sourcing its blockchain platform, Chain Protocol, which it built with the help of nine major banks and payments companies to run high-volume financial applications on permissioned blockchain networks.
Days earlier, the bank consortium R3 revealed that Corda, its distributed-ledger platform for managing financial agreements between regulated financial institutions, would be released as open-source code to The Hyperledger Project, an initiative to advance blockchain technology for recording and verifying transactions across multiple industries. Hyperledger has been building technology for more general purposes, where all details of a trade are shared with all members of the network.
"Let's say someone wishes to connect a Chain network that has digital assets running on it with a Corda contract," Ludwin said. "If those projects are open source and well documented, and that documentation is public, then whoever might be building the interfaces or connectors for these networks and services will have a much easier time doing so. That's why open source is a boon for interoperability."
Since the blockchain industry first caught banks' attention, a lot of thought has been focused on the technology's potential uses. "What problem are we trying to solve," banks constantly ask themselves — as they do when faced with any new technology or innovation. But as the discussion evolved, the question arose whether there should be one blockchain or many, and whether access should be permissioned or permissionless. The open-source trend in the permissioned blockchain world would suggest the latter.
Whatever applications banks deem necessary for their business can be built on top of the blockchain's inner plumbing, said Brian Behlendorf, the executive director of Hyperledger. But vendors need to collaborate because such efforts are expensive.
"We talked to blockchain companies, and they'd talk about great apps that they could build — medical records, reforming how land title would work" and other things, Behlendorf said, citing his work at a previous job with a venture capital company. "Then we'd ask them, 'What do you spend the money we're giving you on?' And they would say, 'On plumbing.'"
Open source is a model for developing and distributing software. If a certain software is open source, that means that the original code, or source code, is available for all to download and use freely for their own purposes and that code was written in an open, collaborative way.
"In the software innovation community we tend to build on each other, and that creates faster innovation, more progress and more positive transformation of industry — that's what open source is really all about," said Jeff Jaffe, CEO of the World Wide Web Consortium (W3C). "People write code and make it available to colleagues much like researchers do with research papers. Research papers have been around hundreds of years, were always open and people were able to read other people's results."
Wendy Seltzer, W3C's policy counsel and strategy lead, said making code available to many experts in the field can help make bugs "shallow." If it's something they are using, she said, they are also contributing to finding and perhaps patching flaws.
Moreover, it is a way for engineers to give back to the engineering community.
"When external engineers can review the architecture and code, they can assess the quality of the projects companies are working on. This serves as a great recruiting tool," said Max Levchin, CEO of the digital lending startup Affirm and a co-founder of PayPal. "When you open-source, it allows third parties to build applications on top of yours, [a process] which acts as a distribution channel for your own product."
The challenges facing businesspeople and engineers to make an open-source strategy work cannot be underestimated. It's like planning a big party, Behlendorf said.
"It's possible to rent the location for the night, hire the DJ, get everything catered and then have nobody show," he explained. "Or people show up, but they don't dance. … It's a really bad, lousy party."
Behlendorf identifies with the school that says open-sourcing earlier is better, he said, because when one organization presents something as a finished work, others are reluctant to join in, thinking they are too late.
Seltzer used some different imagery to make a similar point. Under most open-source licenses, anyone can take the code and fork it — that is, take the source code from an open-source software program, like R3's Corda for example, and build an entirely new program from it.
"If the holder of one piece of the fork takes it in a direction you, as a user of the software, don't like, you're free to copy and move off in a different direction," Seltzer explained. "There's no guarantee the two pieces will continue to interoperate."
Each user of software is faced with that choice: to remain on the common branch or to go off in a different direction. Sometimes properties of code serve to enforce that cohesion, Seltzer said. Sometimes governance mechanisms like those in a consensus standards organization serve to unify people around the interface or interoperability point.
Ian Jacobs, W3C's technical staff contact for web payments activities, said a number of different pieces need to come together to achieve interoperability.
"You don't get interoperability magically; just having a single open-source code base is not interoperability," Jacobs said. "We've even seen in the case of browsers at first some convergence toward a single code base, but then communities have different priorities and they fork and go back to multiple code bases."
Behlendorf said industry observers get too caught up in who will become the dominant player among the blockchain vendors, but this does not have to be a winner-take-all environment to create value. Having many providers of infrastructure technology would probably create more value than if there were just one.
"This isn't going to look like Amazon with a retail business or Google with a search business. This will look like the database business, where you have a couple of very large companies growing around that," he said.
Even though interoperability is important, Ludwin sees it as less important than problem solving. If the industry spends too much time making sure the players interact before putting any networks in place, that might actually slow down progress and problem solving.
"What will drive interoperability ultimately will be the customers — not the vendors — that say, 'I have a business reason to connect my set of services to this other set of services,'" Ludwin said. "Trying to anticipate all of those at the outset is not practical."