Beyond Bitcoin: Oracle, IBM Prepare Blockchains for Industrial Use
There’s been a lot of talk recently about blockchains beyond its original use for supporting Bitcoin. Earlier this year, we covered a session in London where the takeaway from the panel was there are too many problems to be solved. But that was in February, and a lot has changed since then.
Judging from some of the blockchain sessions at the recent Oracle OpenWorld conference, the emerging potential uses for blockchain are kind of staggering.
Blockchain uses a technology also described as a “distributed ledger.” That’s an obvious fit for finance, which is all about ledgers, but it turns out the distributed ledger concept can be applied to — well, to almost everything.
According to BlackBook Research, 70 percent of health insurance payers are planning to have blockchain integrated into their systems by the beginning of 2019. That’s 15 months from now. Among the payers with over 500,000 members, that number climbs to 98 percent, with 14 percent currently testing blockchain systems.
IBM is investing heavily in this technology. Already, IBM Global Financing has found that the time spent resolving financial disputes decreased by 75 percent when it started using blockchain. “What the internet did for communications, blockchain will do for trusted transactions,” IBM CEO Ginni Rometty has boasted.
“There are two types of costs blockchain could reduce for you: the cost of verification and the cost of networking,” Massachusetts Institute of Technology Assistant Professor Christian Catalini, he explained in an article. “The reason distributed ledgers become so useful in these cases is because if you recorded those attributes you now need to verify securely on a blockchain, you can always go back and refer back to them at no cost.”
For OpenWorld, Oracle launched a Blockchain-as-a-Service, to be released in early 2018. The service will bundle the technology, make the system private, and guarantee compliance with all regulations, all of which have issues with getting enterprise companies on board, according to Frank Xiong, Oracle group vice president of blockchain product development.
One jam-packed slide in Xiong’s presentation listed use cases for different industries in addition to financial services including healthcare, supply chain, retail, baggage handling, Internet of Things, and a host of government tracking including birth certificates, property ownership (titles and deeds), driver’s licenses, welfare wallets and as noted above, social security numbers. Even books may come under the Blockchain spell.
A Blockchain Primer: What’s the big deal?
So what is this magic? With distributed ledger technology, everyone gets an identical copy of the ledger, Xiong explained to us in a follow-up interview, but transactions are captured in “blocks.” These blocks are then locked down, creating an immutable record of the transaction.
This addition of security is the factor that is now encouraging enterprises across a variety of industries to look at it seriously. Bitcoin is completely open, meaning anyone on the network can see the entire ledger at any time. Obviously, said Xiong, that is not going to work for enterprise. But now distributed ledgers can require the permission of the peers to join the network and the ability to limit what individual contributors can see according to their need and/or security clearance.
When a transaction occurs, it needs to be endorsed by the people on the blockchain, then it is wrapped into a block, which is then appended the ledger. So everyone has an identical ledger all the time, said Xiong. The key here is that nobody can tamper with a block once it’s been endorsed.
Xiong explained: “If I change that one block there, the whole thing becomes invalid because they use the hash code to restore the previous record. If you change anything, the next block cannot be appended.”
Xiong laid out an example using a small farm-to-table restaurant company that is currently using the Oracle Blockchain PaaS in Beta.
First, said Xiong, you always start with the business process. You identify the players, what they will contribute, the specific points where the endorsement is needed and who will provide that endorsement. With that done, you can start building the chain, but not before.
So this client starts tracking food at a chicken farm, gathering data for the ledger. Are the eggs organic? What’s the country of origin? The cost? The farmer logs this data and endorses a block.
Then the eggs go onto the freight line. Farmer and transporter create a transaction lot, endorses a new block, which is appended to the blockchain and distributed, giving everyone access to the lot number which doubles as a tracking number.
During transport, more data is collected. Is the temperature low enough to ensure freshness? Was there an electrical problem on the trip? When the eggs are delivered, the transporter and the restaurant endorse the delivery, which creates a new block.
Note, said Xiong that these multiple companies, multiple industries. This one block chain collects useful information. Now, if a recall is needed, you can immediately find out how many eggs were distributed from that farm, where they all are and get them off the shelves (or out of the kitchen), saving millions of dollars having to track everything back to the source.
In summary, everything is clearly documented at every step along the way. No one can append anything retroactively.
Developing for BlockChain
So what do developers need to know about this new tech?
Always start with the business model, said Xiong. “Who are the players? What’s the process flow? How you’re gonna organize this. Supply chain, money transfer hands. That’s the first thing I have, the business model.”
Only then, start building the blockchain.
You can code your own, of course, but you will have to keep abreast of all financial and governmental regulations as well as software updates. Or you can sign on to a PaaS where all of that is taken care of.
Oracle’s Blockchain PaaS is written in Go. Xiong calls their interface very friendly to developers, as it walks you through the setup and install process. The Blockchain PaaS is accessible from a variety of environments, including your laptop. Once you instantiate, you need to compile the language in Go and put an executable note. Then the system is ready to use.
To start a transaction, you need to invoke a “smart contract,” which is not like a normal contract, said Xiong. It’s is simply a set of software code, similar to an API. The developer is responsible for creating a “smart contract” for each transaction identified in the business model.
So a smart contract will execute a transaction, say transfer money from A to B or send this chicken from this farm to that warehouse. The players involved then endorse that transaction, a block is created, then appended to the blockchain on the network.
When asked what advice he would give to developers, Xiong said: “apply your programming skills under the understanding of your business model, because now you’re just not simply write a code.”
He also suggested that in the near future, some startups will start developing smart contracts in the same model as APIs are currently. Generic smart contracts that can be used an applied across a variety of blockchains.