Now available to view, review, compile and fork

Two years after starting to develop MultiChain, we’re delighted to release its source code under the GNU General Public License (GPLv3). The code, along with compilation instructions for Ubuntu, is now available at Github. You are free to browse and review it, compile it for yourself, or fork MultiChain in accordance with the GPL license.

Read more »

When chains and blocks serve no useful purpose

About 18 months have passed since the finance sector woke up, en masse, to the possibilities of permissioned blockchains, or to use the more general term, “distributed ledgers”. The period since has seen a tsunami of activity, including research reports, strategic investments, pilot projects, and the formation of many consortia. No one can accuse the banking world of not taking the potential of this technology seriously.

Naturally, the explosive growth in blockchain projects has driven the development of permissioned blockchain platforms, on which those projects are built. For example, our product MultiChain has tripled in usage over the past year, whether we measure web traffic, monthly downloads or commercial inquiries. And of course, there are many other platforms, such as BigChainDB, Chain, Corda, Credits, Elements, Eris, Fabric, Ethereum (deployed in a closed network), HydraChain and Openchain. Not to mention still more startups who have developed some kind of blockchain platform but have not made it publicly available.

For companies wishing to explore and understand a new technology, an abundance of choice is generally a good thing. However, in the case of blockchains, which still remain loosely defined and poorly understood, this cornucopia comes with a significant downside: many of the available “blockchain” platforms don’t actually address the core problem they are meant to solve. And what is that problem? Allow me to quote the succinct video definition by Richard Gendal Brown, CTO of R3, in full:

A distributed ledger is a system that allows parties who don’t fully trust each other to come to consensus about the existence, nature and evolution of a set of shared facts without having to rely on a fully trusted centralized third party.

Read more »

How to show you know something without showing what you know

Last Friday saw the launch of Zcash, a new public blockchain and associated cryptocurrency that attracted a lot of attention. By now, there are hundreds of cryptocurrencies, so any budding young entrant needs a serious differentiator to rise above the fray. In the case of Zcash, this is easy – Zcash users can send money to each other in absolute privacy. For a cryptocurrency based on a blockchain, this is a remarkable technical achievement. (Though it should be noted that other chains such as Monero and Dash aim at the same goal using simpler but less effective means.)

Read more »

Introducing our partner program for blockchain developers

It’s our pleasure to launch the MultiChain Platform Partner Program, starting with 13 member companies from Europe, Asia and North America. The program facilitates our working relationship with the growing number of consultants and integrators building blockchain solutions on the MultiChain platform.

The initial list of members includes three large multinational solution providers: Accenture, D+H and Mphasis. These are joined by ten more companies, most of which specialize in blockchain application development: ANX International, Cubichain Technologies, DXMarkets, Hashcove, KrypC Technologies, Lexington Innovations, Motivian, regio iT, SettleMint and Vanbex Group.

Read more »

For shared immutable key-value and time series databases

Today we’re proud to release the latest version of MultiChain, which implements a crucial new set of functionality called “streams”. Streams provide a natural abstraction for blockchain use cases which focus on general data retrieval, timestamping and archiving, rather than the transfer of assets between participants. Streams can be used to implement three different types of databases on a chain:

  1. A key-value database or document store, in the style of NoSQL.
  2. A time series database, which focuses on the ordering of entries.
  3. An identity-driven database where entries are classified according to their author.

These can be considered as the ‘what’, ‘when’ and ‘who’ of a shared database.

Read more »

An important step forwards for performance and scalability

After two months of intensive development and testing, we’re proud to release the latest alpha of MultiChain, with a completely rewritten in-node wallet. This new wallet transforms the performance and scalability of creating, receiving and storing transactions in MultiChain.

Read more »

The tragic combination of inevitable bugs and immutable code

Last week witnessed a catastrophic event in the Ethereum ecosystem, when The DAO, a smart contract less than two months old, began rapidly leaking funds to an unknown party. Looking at the current set of Ethereum contracts, filled with casinos and self-declared Ponzi schemes, this might not seem like a big deal. That is, until you learn that over 12 million units of ether, the Ethereum cryptocurrency, had been invested in The DAO by almost 20,000 people. That’s around 15% of all the ether in existence, valued at over $250 million on June 17th.

Read more »

Where shared ledgers add real value in enterprise IT

Almost a year after first releasing MultiChain, we’ve learnt a huge amount about how blockchains, in a private and non-cryptocurrency sense, can and cannot be applied to real-world problems. Allow me to share what we know so far.

To begin with, the first idea that we (and many others) started with, appears to be wrong. This idea, inspired by bitcoin directly, was that private blockchains (or “shared ledgers”) could be used to directly settle the majority of payment and exchange transactions in the finance sector, using on-chain tokens to represent cash, stocks, bonds and more.

Read more »

The three most common smart contract misconceptions

As the developers of a popular blockchain platform, we sometimes get asked whether Ethereum-like smart contracts are on the MultiChain roadmap. The answer I always give is: no, or at least not yet.

But in the hype-filled world of blockchains, smart contracts are all the rage, so why ever not? Well, the problem is, while we now know of three strong use cases for permissioned Bitcoin-style blockchains (provenance, inter-company records and lightweight finance), we’re yet to find the equivalent for Ethereum-style smart contracts.

It’s not that people lack ideas of what they want smart contracts to do. Rather, it’s that so many of these ideas are simply impossible. You see, when smart people hear the term “smart contracts”, their imaginations tend to run wild. They conjure up dreams of autonomous intelligent software, going off into the world, taking its data along for the ride.

Read more »

Four key differences between blockchains and regular databases

If you’ve been reading my previous posts, you will know by now that blockchains are simply a new type of database. That is, a database which can be directly shared, in a write sense, by a group of non-trusting parties, without requiring a central administrator. This contrasts with traditional (SQL or NoSQL) databases that are controlled by a single entity, even if some kind of distributed architecture is used within its walls.

I recently gave a talk about blockchains from the perspective of information security, in which I concluded that blockchains are more secure than regular databases in some ways, and less secure in others. Considering the leading role that centralized databases play in today’s technology stack, this got me thinking more broadly about the trade-offs between these two technologies. Indeed, whenever someone asks me if MultiChain can be used for a particular purpose, my first response is always: “Could you do that with a regular database?” In more cases than you might think, the answer is yes, for the following simple reason:

If trust and robustness aren’t an issue, there’s nothing a blockchain can do that a regular database cannot.

Read more »