The Private Blockchain Gatekeeper
This piece proposes concepts for designing a Private Blockchain Smart Contract Application.
Private (because we don’t want the whole world to access it, or take on the load)
Blockchain (because different entities that don’t necessarily trust each other need to transact)
Smart Contract (because we’re going to be implementing a workflow and share data between organisations that do not trust each other)
Application (because it’s going to do something useful)
Continue reading on LinkedIn
Blockchain Predictions for 2016
Wishing you a happy, healthy and successful 2016!
1. The hype won't last. This time next year, not everyone will be talking about Blockchain. The hype will not last. Blockchain is at the peak of a tech hype cycle. As with any hype cycle, this will not last forever. In fact, by the end of 2016 it’s unlikely to be centre stage. I do however believe that over time, some aspects of Blockchain technology will enable meaningful changes in a number of verticals including financial services.
2. Reality will hard for today’s blockchain players. There is a lot of experimentation and learning taking place, and proof of concepts are being created. However, the transition to production grade, real world applications is going to be a long hard slog. The networked nature of Blockchain solutions means that it’s not just a case of installing Blockchain technology within one organisation, but rather getting many organisations to adopt, and integrate their existing systems with the technology - not to mention the business process and organisational changes. This will be no easy challenge and will take years to implement.
Continue reading on LinkedIn
The Blockchain as a database
Much has been written about the merits of private blockchains, including articles by Richard Brown of IBM, as well as the founders of Eris.
A private blockchain involves a separate, essentially closed network, of blockchain participants (also known as nodes). Each participant has their own copy of the blockchain, essentially a ledger, with a locked down history of all of the transactions that took place in the network.
The advantage that the blockchain offers over traditional databases is that the history of transactions (essentially a transaction log) is shared between participants, and locked down using cryptographic layers. This is immutable data storage.
Continue reading on LinkedIn
What is a blockchain?
Blockchain is the core technology behind bitcoin. At its heart is a distributed data store. Anyone who participates in the blockchain network has their own data store that stores all of the transactions that ever happened on the network (this is also known as the distributed ledger).
Entries are stored within a cryptographic chain of blocks. At every stage, the network of participants must agree about the latest block of transactions. Agreement is reached through a process of majority consensus, eliminating duplicate entries, double spending etc. This process and the cryptographic layering of the blocks makes the agreed blockchain irreversible and immutable. The 'history' of events within the blockchain cannot be modified by any one of the participants without majority consensus from the group.
What is a private blockchain?
Private blockchains are deployed either within an organisation, or shared between a known group of participants. Private blockchains can be limited to a predefined set of participants. In this case, no one else can access the blockchain or the data residing in the blockchain. These blockchains can be secured in a similar way to securing other integrated enterprise applications (e.g. firewalls, VPN etc).
What is a Smart Contract?
A Smart Contract is code that is deployed to the blockchain. Each smart contract contains code that can have a predefined set of inputs. Smart contracts can also store data. Following the distributed model of the blockchain, smart contracts run on every node in the blockchain, and each contract's data is stored in every node. This data can be queried at any time. Smart Contracts can also call other smart contracts, enforce permissions, run workflow logic, perform calculations etc. Smart contract code is executed within a blockchain transaction - so the data stored as a result of running the smart contract (i.e. the state) is part of the blockchain's immutable ledger.
What is a private blockchain app?
A private blockchain app is a combination of one or more Smart Contracts, and some client code to call and present the application interface to a user. We're developing apps using node.js, and these can be presented as web applications that run in any browser.
What about mining?
Mining is used a proof of work for participants in the blockchain. Whenever a block of transactions is to be agreed, every participating node attempts to 'mine' the block (a mathematical algorithmic process that requires extensive CPU capacity). In public blockchains successful mining is rewarded with a cryptocurrency token.
Is Mining Relevant to Private Blockchains?
Mining, and the resulting cryptocurrency tokens may not be required in private blockchains, where the parties are already trusted (in the sense that you know who they are - we still might not trust them when it comes to attempting to modify the transaction history). Mining would simply use up costly CPU resource for no gain. Blocks could still be created and agreed by consensus without the CPU overhead of processing artificially difficult algorithms created to prevent a 51% attack.
What about cryptocurrency?
We're not interested in cryptocurrency. Our solutions involve private blockchains that are not connected to cryptocurrency blockchains (Bitcoin, Ethereum).
How is this related to Ethereum?
Ethereum is a group of incredibly smart individuals who have developed the next generation of blockchain and cryptocurrency. The Ethereum project involves a large single network (much like Bitcoin), and runs on a cryptocurrency that can be mined (Ether). We are looking at deploying private networks of the Ethereum blockchain (or similar) within organisations, or across small predetermined groups of organisations.