Making Smart Filters a whole lot smarter

Today, we’re delighted to release MultiChain 2.1, with two important new features for MultiChain developers.

A year and a half ago, MultiChain 2.0 introduced Smart Filters, which enable custom logic to be embedded in a blockchain for validating transactions and data. Smart Filters are conceptually similar to the “smart contracts” provided by other blockchain platforms, but have a different design to fit MultiChain’s faster transaction model.

Smart Filters come in two varieties – transaction filters and stream filters. A transaction filter validates on-chain transactions in their entirety, by examining their inputs, outputs and metadata. If a transaction doesn’t pass the filter, it is rejected by every node in the network. A stream filter validates individual items written to a MultiChain stream, looking at their key(s), publisher(s) and on-chain or off-chain data, in JSON, text or binary format. If an item doesn’t pass the filter, it is marked as invalid and its data is hidden by every node subscribed to the stream.

Read more »

Getting data out of the blockchain and into the wider world

With the first public release of MultiChain, way back in 2015, we saw interest in blockchain applications from a surprising direction. While we had originally designed MultiChain to enable the issuance, transfer and custody of digital assets, an increasing number of users were interested in using it for data-oriented applications.

In these use cases, the blockchain’s purpose is to enable the storage and retrieval of general purpose information, which need not be financial in nature. The motivation for using a blockchain rather than a regular database is to avoid relying on a trusted intermediary to host and maintain that database. For commercial, regulatory or political reasons, the database’s users want this to be a distributed rather than a centralized responsibility.

Read more »

A deeper look at a leading enterprise blockchain project

A few months ago, we published the details of ten enterprise blockchain networks which are built on MultiChain and running in live production. One of these solutions, made for the pharmaceutical industry, is of particular interest – not only because of its scale, but also because it was built by SAP, the third largest enterprise software vendor in the world.

SAP’s core business runs on centralized systems, so why are they exploring decentralization and blockchains? You’ll find the answers below, in two parts. First, a detailed case study of the pharmaceutical project, written together with SAP, which explains the problem and why a blockchain solution was chosen. And second, an interview with Raimund Gross, the Innovation Manager who played a large role in driving SAP’s work with blockchains.

We hope you enjoy the read.

Read more »

Access great new features relating to confidentiality, scalability and compliance.

Today we’re excited to release our demo version of MultiChain 2.0 Enterprise for all MultiChain users to try. The demo can be downloaded now and freely deployed for application development and testing. It unlocks all the features in MultiChain 2.0 Enterprise and can be used for the first 3 months of each blockchain’s life.

MultiChain Enterprise is commercial software that provides all the functionality of MultiChain Community, plus high-end blockchain features relating to confidentiality, scalability and compliance. It is fully compatible with all Community API commands and parameters, and you can mix Community and Enterprise nodes on a single network.

Read more »

Permissioned networks built by MultiChain partners in live production

This is a write-up of a talk given at the Consensus 2019 conference. A video of the talk is also available.

In the four years since the first alpha version of MultiChain, hundreds (if not thousands) of proof-of-concept and pilot projects have been built by our partners on the platform. While many of the early ones were pointless blockchains, over time we have seen a consistent rise in the proportion of projects using the technology appropriately. Now we rarely hear about a blockchain-based application which lacks a good answer to the question: “Why not just use a regular database?” What a relief!

Proof-of-concepts and pilots are all well and good, but to my mind, the most important signal comes from solid enterprise blockchain projects that make it to live production. To be clear, this means networks containing multiple blockchain nodes belonging to multiple parties, where more than one of these parties is involved in generating real transactions and participating in the blockchain’s consensus algorithm. Without these characteristics, the blockchain is providing little or no value compared to a centralized database.

This article is a survey of ten of the most interesting permissioned blockchain applications built on MultiChain that are in production today. Each application will be described briefly, along with an explanation of why it made sense to use a blockchain and some numbers to give a sense of scale. Note that confidentiality agreements prevent us from revealing some of these projects’ details, but we’re telling you as much as we can. After reviewing the ten projects, I’ll finish with a list of five important lessons that I believe we can learn.

Ready? Then let’s begin…

Read more »

The next major version of MultiChain enters production

Today we’re thrilled to announce the production release of MultiChain 2.0, after 18 months of development and 3 months in beta testing. Version 2.0 of MultiChain is now available to download for Linux and Windows, and can also be compiled for Linux, Windows or Mac OS X.

MultiChain 2.0 adds smart filters for custom transaction or data validation rules, and a ton of enhancements for streams, including support for text and JSON data, multiple keys, off-chain data and richer querying. Other new features include blockchain parameter upgrading, per-asset and custom permissions, inline metadata and a binary cache for dealing with large pieces of data. Click for more details on all the new functionality.

For production systems based on MultiChain 2.0 we offer both Commercial Licenses (non-GPL) and Service Level Agreements (SLAs). For more information about these products and guidelines for when they are appropriate, see the pricing page or contact us.

Read more »

Empowering a broad new range of blockchain applications

Today we’re delighted to release the first beta version of MultiChain 2.0, the next generation of the MultiChain blockchain platform, after 16 months in development. MultiChain 2.0 (download) includes three major new areas of functionality to help developers rapidly build powerful blockchain applications:

  • Smart Filters. These allow custom rules to be coded for validating transactions or data. Smart Filters are written in JavaScript and run within a deterministic version of the high-performance V8 engine that powers Google Chrome. Click for more on Smart Filters or a comparison with Fabric, Ethereum and Corda.
  • Off-chain data. Any item published in a MultiChain stream can optionally be stored off-chain, in order to save bandwidth and storage space. Off-chain data (up to 1 GB per item) is automatically hashed into the blockchain, with the data itself delivered rapidly over the peer-to-peer network. Click for more about off-chain data.
  • Richer data streams. JSON and Unicode text are now supported natively and stored efficiently on- or off-chain. Multiple JSON items can be merged together, allowing a stream to serve as a database with a full audit history. Stream items can have multiple keys, and be queried by multiple keys and/or publishers together. Finally, to increase data throughput, a single transaction can publish multiple items to one or more streams.

Read more »

There’s more than one way to put code on a blockchain

In most discussions about blockchains, it doesn’t take long for the notion of “smart contracts” to come up. In the popular imagination, smart contracts automate the execution of interparty interactions, without requiring a trusted intermediary. By expressing legal relationships in code rather than words, they promise to enable transactions to take place directly and without error, whether deliberate or not.

From a technical viewpoint, a smart contract is something more specific: computer code that lives on a blockchain and defines the rules for that chain’s transactions. This description sounds simple enough, but behind it lies a great deal of variation in how these rules are expressed, executed and validated. When choosing a blockchain platform for a new application, the question “Does this platform support smart contracts?” isn’t the right one to ask. Instead, we need to be asking: “What type of smart contracts does this platform support?”

Read more »

When a hash is worth a million words

By now it’s clear that many blockchain use cases have nothing to do with financial transactions. Instead, the chain’s purpose is to enable the decentralized aggregation, ordering, timestamping and archiving of any type of information, including structured data, correspondence or documentation. The blockchain’s core value is enabling its participants to provably and permanently agree on exactly what data was entered, when and by whom, without relying on a trusted intermediary. For example, SAP’s recently launched blockchain platform, which supports MultiChain and Hyperledger Fabric, targets a broad range of supply chain and other non-financial applications.

Read more »

A detailed look at the non-blockchain blockchain

As time goes on, the blockchain world has been separating into two distinct parts. On one hand, public blockchains with their associated cryptocurrencies have enjoyed a remarkable recent comeback, minting many a multi-millionaire. On the other hand, use of permissioned or enterprise blockchains has been growing quietly but steadily, seeing their first live deployments across multiple industries during 2017.

One interesting question to consider is the appropriate level of similarity between these two types of chain. Both implement a shared database using peer-to-peer networking, public–private key cryptography, transaction rules and consensus mechanisms that can survive malicious actors. That’s a great deal of common ground. Nonetheless, public and private blockchains have different requirements in terms of confidentiality, scalability and governance. Perhaps these differences point to the need for radically divergent designs.

The Corda platform, developed by the R3 banking consortium, adopts a clear stance on this question. While some aspects were inspired by public blockchains, Corda was designed from scratch based on the needs of R3’s members. Indeed, although R3 still uses the word “blockchain” extensively to help market their product, Corda has no chain of blocks at all. More than any other “distributed ledger” platform I’m aware of, Corda departs radically from the architecture of conventional blockchains.

Read more »