I will participate in a keynote panel discussion on the Future of Blockchain on August 23 from 4:50 PM to 6:00 PM at the 6th Annual Global Big Data Conference in Santa Clara, California. Let me know if you would like a free ticket to the conference.
Following are some of the ideas I hope to discuss with the other members of the panel. First, I would like to remind the reader that blockchain data is passive; without a program to access it blockchain data is inert. Now I'd like to give the definition that I will use for this discussion.
The word blockchain is defined by Wikipedia as: "a growing list of records, called blocks, which are linked using cryptography." The main theme I'd like to personally bring forward during this discussion is that Blockchain does not imply or require decentralization, or even distributed systems. Instead, blockchain is a useful technology in its own right, even if it is not distributed / decentralized. I have nothing against decentralization, when used appropriately; the point I want to make is that decentralization is not necessary for blockchain to provide value.
Here are the use cases I want to talk about:
#1: Secure Mobile and Embedded Databases
For me, blockchain is a file format that yields immutable data, highly resistant to modification. It is not a database, instead, it is a generic type of storage technology. Yes, an API could be provided that provides a structured interface to blockchain data, but there is no universally accepted standard in use for this in any blockchain implementation that I am aware of. Such a standard should exist, and I would be interested in learning about any standards work in this area.
A database built using blockchain would not support the full CRUD API (create, read, update, and delete) functionality traditionally supported by SQL. Instead, only create and read functionality would be supported.
This seems especially useful for mobile and embedded data recorders, for example flight recorders used in airplanes. I have not yet attempted to compute how feasible it might be to use blockchain to store video or audio streams from devices such as police body cameras.
#2: Secure Data Distribution
Blockchain is a data storage technology that is known to be highly resistant to corruption or modification. Because data can only be created or read, but not modified or deleted, if you have a file of blockchain data that passes inspection you can be confident that you have all the data that was available at the time the file was last updated.
Blockchain data could be stored in RFID tags. This is possible because RFID tags exist which can store up to 66 kB of data, and read/write RFID tags are available. Read-write RFID tags usually have a serial number that can't be written over. Additional blocks of data can be used to store additional information about the items the tag is attached to (these can usually be locked to prevent overwriting of data).
This would allow blockchain to be used for smart passports and smart ID cards. Secure, smart passports would provide extra security for passport/ID card holders and would make counterfeiting extremely difficult, and would provide a digital record of countries visited, instead of relying on passport stamps, which are easy to counterfeit.
Similarly, smart ID cards could hold mutable yet secure data.
#3: Secure Software Build Systems
There have been many instances of corporate spies infiltrating software companies or their repositories. The perpetrators altered the source code, accompanying data or modified other build dependencies. When the next version of the software is published, all the customers who install updates will potentially be compromised.
uses similar cryptography techniques as does blockchain.
A blockchain-based build system would use a git tag to kick off build,
and would need to also store and compare hashes for all dependencies to ensure that they had not changed.
Because the software build toolchain is also a dependency,
hashes for all of the software used in the toolchain would need to be validated at build time.
#4: Secure Software Distribution
Computer viruses have been a problem for decades. There have been many instances where programs have viruses embedded after they are published. This is generally true for any software downloaded from a torrent site. If software was packaged using blockchain technology, it could be retrieved for installation with confidence. Software installers that used blockchain in this way could be trusted.
Hope to see you at the conference!