Facebook EmaiInACirclel
Software Development

Blockchain startup, blockchain project… Do you really have a blockchain use case?

PentaGuy
PentaGuy
Blogger

More and more startups are launching a blockchain project or building a blockchain-related POC (Proof of Concept) based on ready-to-use solutions such as Multichain or platforms such as Ethereum. Well, in this context, blockchain is more than a buzzword. Read below some uses of the blockchain that can bring a real added value to your IT project

Blockchain, a reason to raise funds

Everybody talks about the blockchain. In 5 years’ time, the blockchain will profoundly modify the way transactions are envisaged. Transactions are just cash transfers, but also contracts between two parties.It’s time blockchain-based projects and applications were built, namely the moment to raise funds. Among the 10 most important Fintech deals in Q1 2016, 2 Series A fundraisings are blockchain projects, for $60 M and, respectively, $55 M (source: KPMG, May 2016)It’s good to have one’s head in the clouds with a Blockchain startup project, but one should also keep their feet on the ground. Blockchain, a buzzword like Big Data and Machine Learning, is sometimes exaggeratedly used by project holders. One should really consider when and where the blockchain has a real added value for their company.

Use the blockchain technology only if it’s necessary

Many innovative projects can sometimes be perfectly implemented via a traditional relational database such as Oracle, SQL Server, MySQL and Postgre.If your needs are met by today’s relational databases, you would be crazy to use the blockchain. Why? Because products such as Oracle and MySQL have been used for several decades now, and deployed on millions of servers executing billions of queries. They contain a thoroughly tested, debugged and optimized part of code on a planet with billions of transactions per second without the slightest crash.“Attention, I am not saying that the blockchain is useless. Not in the least. But before launching yourselves into a blockchain project, you should have a very clear idea about the reasons why you are using the blockchain technology.”

What conditions should your startup blockchain project meet?

A whole set of conditions must be met. Otherwise, you will have to go back to the design phase either for better defining the project or saving everybody a lot of time, money and energy since you really don’t need the blockchain.Infographic: the 6 conditions a blockchain project must meetblockchain checklist1. Database:Here’s the first rule. Blockchain is a shared database technology. Thus, you have to start by knowing why you use a database, meaning a structured data repository.In other words, you have to know if you would be satisfied with a traditional relational database containing one or several tables such as spreadsheets or a NoSQL base that mostly operates like a file system or dictionary.Let’s take as an example a book for financial assets that can naturally be expressed as a database table where each line represents a type of asset owned by a specific entity. Each line has three columns containing: (a) the owner’s identifier, such as the account number, (b) an identifier of the type of asset, such as “USD” or “AAPL”, and (c) the quantity of this owner’s asset.Databases are modified through “transactions” that represent a set of modifications brought to the database that must be accepted or rejected as a whole. For example, in the case of an asset register, the payment made by one user to another user is represented by a transaction that deducts the appropriate quantity from one row and adds it to another row.2. Multiple writersThis condition is easy. Blockchain is a technology for databases with multiple writers. In other words, there must be more than one entity that generates transactions modifying the database.Do you know who these writers are? In most cases, writers will equally execute nodes that contain a copy of the base and they pass on transactions towards other nodes in a peer-to-peer mode. Nevertheless, transactions can also be created by users that are not about to execute a node. Let’s take for example a payment system that is collectively maintained by a small group of banks, but having on mobile devices millions of end users that only communicate with the systems of their own bank.3. MistrustThe third rule. If various entities are writing in the database, there must be a certain level of mistrust among them. In other words, blockchain is a technology for databases with multiple non-trusting writers.You might think that mistrust only exists among distinct organizations, such as in the commercial relationships among banks on a market or the companies involved in a supply chain. But mistrust can also exist within the same large organization, for example, among ministries or operations in different countries.What do I mean by mistrust? That a user doesn’t want to let another user modify entries in the database owned by him. Also, when reading the content of a database, a user doesn’t accept it as an evangelical truth, as reported by another user, since each of them has different economic or political incentives.4. DisintermediationThe blockchain annuls the need for trusted intermediaries by allowing the direct modification of those databases with several writers that don’t trust each other. A central gatekeeper that verifies transactions and authenticates their sources is no longer necessary. As a result, the definition of a transaction is extended to include an authorization proof and a validity proof. Transactions can thus be independently verified and processed by each node that maintains a copy of the database.The question you should ask yourselves is: Do I need this disintermediation? Given your use case, is there any objection against having a central part that maintains an authoritative database and acts as a transaction controller?The right reasons for preferring a blockchain-based database on a trusted intermediary could include• cost reduction,• faster transactions,• automatic reconciliation,• a new settlement or• an inability to find a proper intermediary.5. Interaction of transactionsThus the blockchain gives meaning to databases shared by various writers that don’t trust each other and which directly modify the database. But this is not enough. The blockchain becomes interesting when there is a certain interaction between transactions created by these writers.What do I mean by interaction? In the broadest sense, that transactions created by different users often depend on another transaction.For example, let’s say Aymen sends funds to Bogdan and Bogdan transfers a part to Chris. In this case, Bogdan’s transaction depends on Aymen’s transaction. Also, Bogdan’s transaction cannot be verified without first verifying Aymen’s transaction. Because of this dependency, transactions naturally belong to a uniquely shared database.An interesting feature of the blockchain is that transactions can be collaboratively created by various writers without exposing the parties to risks. This allows delivery versus the settlement of payments in full security over a blockchain, without the need for a trusted intermediary.A less frequent case can also be considered for situations where transactions coming from different writers are cross-correlated with each other, even if they remain independent. An example would be a common identity database where various entities validate the consumers’ different identity aspects. Even if each of these certifications stands alone, the blockchain provides a useful tool for gathering everything in a unified way.6. Defining rulesThis is not really a condition, but rather an inevitable consequence of the previously exposed reasons. In the case of a database directly modified by various non-trusting writers, the database must contain integrated rules that restrain the performed transactions.These rules are fundamentally different from the constraints emerging in the traditional databases since they are relating to the legitimacy of transformations rather than the status of the database at a precise moment in time. Each transaction is verified compared to these rules by each network node, and those that fail are rejected.The large books of assets contain a simple example of this type of rule. The rule stipulates that the total quantity of each asset in the large book must be the same before and after each transaction.

A blockchain transaction in short: when to use the blockchain technology

As mentioned in the introduction, if your project doesn’t meet the first 5 conditions, you shouldn’t use the blockchain technology. In absence of one of these conditions, you would have to consider one of the following cases:• storage of regular files,• a centralized database,• a replication of the master/slave database,• multiple databases to which users can subscribe.And if you do meet the first five conditions, there’s much more to be done. You must be able to express the rules of your application in terms of transactions authorized by a database. You have to trust your validators and define a distributed consensus.


Leave a Reply

Your email address will not be published. Required fields are marked *