Coins, Contracts, and Cats: What a Blockchain Network May Hold for Your Business
Blockchain was conceptualized in 2008 as the public transaction ledger of the digital bitcoin currency. Since then, hundreds of bitcoin-like cryptocurrencies have emerged, and more potential applications of the concept are in development. They say that blockchain development is paving the way for a new internet and that a new technological revolution is upon some of the largest industries.
Whether you only wish to get a basic understanding of the blockchain technology, are curious about the ways it helps solve various business problems, or interested in using it in your project – we hope this article will be helpful.
Introduction to Blockchain Technology
Blockchain is a type of database: a growing list (‘chain’) of digital records (‘blocks’). Each block contains:
an index (block number);
a timestamp indicating when the block was created;
transaction data (usually a merkle tree root hash);
a cryptographic hash of the block;
a hash pointer.
The hash pointer connects each block to the previous one.
Everything placed into the system stays there. Once data goes inside a block, it can’t be altered. As shown below, even a slight modification of the input, like an extra character, drastically changes the output hash:
If someone tampered the data in a block, it would affect the hash. As a result, the whole chain would be affected. This would freeze up the chain, which is impossible. Thanks to the cryptographic ‘hashing’ mechanism, the database attains immutability.
A blockchain network is made up of computing ‘nodes.’ When a computer joins the network, it automatically downloads a copy of the blockchain. There’s no centralized ‘official’ copy, and all users are ‘trusted’ equally. All members of the peer-to-peer network are adhering to a protocol for inter-node communication and validating new blocks. What is true is determined by consensus rather than a decision from one central authority. For example, every time there’s a transaction on the bitcoin blockchain, multiple nodes should approve it based upon their local blockchain. The transaction approval requires that 51% of nodes be in agreement. It makes the network decentralized.
That is a basic description of a public blockchain network. Three types exist now:
A public blockchain has no access restrictions or even offers incentives for those who secure it. Any member with an internet connection can send transactions to the network and participate in the execution of a consensus protocol.
A private blockchain uses an access control layer to admit users to the network. It’s impossible to join without the administrators’ invitation. The network owner also vets the nodes that validate transactions.
A consortium blockchain network is semi-decentralized. It’s not controlled by a single organization. Instead, each node is operated by one of the companies, and a limited group of nodes executes a consensus protocol.
The latter is the flagship of Ethereum. The open-source platform was designed for building and operation of decentralized applications (‘DApp’) using smart contracts. A smart contract is an electronic protocol for the communication of information and mutual performance of contractual terms. Its premise is a simple If-Then statement. Once the specified conditions are met, the blockchain automatically enforces and executes the autonomous smart contract for asset exchange between the parties. Each party is sure that the other(s) can’t change the terms or construe them to own advantage. The network members can exchange money, equity, property, and other assets securely and straightforward, without intermediaries. Ethereum’s cryptocurrency is called Ether.
Other popular blockchain development platforms are R3 Corda and Linux Foundation’s Hyperledger. The latter is an umbrella collaboration designed to support blockchain-based distributed ledgers. Its open-source projects are intended for corporations to operate their businesses. A large community is constantly studying, analyzing, and improving them.
Wrapping up, a blockchain network is massive, decentralized, and tamper-proof. As such, it produces many benefits:
Such a database can’t be owned or controlled exclusively by one entity, has no single point of failure, and no centralized version of the data which hackers might corrupt.
It can store nearly any form of digital information. Almost any digital asset can be exchanged with a blockchain-based smart contract.
The database can work as an open, distributed digital ledger that can record transactions between two parties in a verifiable and permanent way.
As a digital value-exchange protocol, it’s a self-auditing ecosystem. A blockchain network reconciles every transaction that happens in ten-minute intervals. One result of this is that transparency data is embedded within the network as a whole. The second is that the network cannot be corrupted. Altering any unit of information would require a tremendous amount of computing power to override the entire network, which is unlikely to happen.
A problem with virtual currencies is that a holder may make a copy of a digital token, send it to another party, and retain the original. The blockchain eliminates the risk of double spending by confirming that each item was transferred only once.
Within a blockchain network, units of value can be exchanged faster, safer, and at a lower cost than in the traditional systems.
The records that the database keeps are easily verifiable and truly public. Hosted by millions of computers simultaneously, the data can be accessible to anyone on the Internet.
The security is enhanced through the use of public and private key cryptography. A public key is a randomly-generated series of numbers that stands for a user’s address on the blockchain. For example, bitcoins or value tokens passing through the network are registered as belonging to that address. A private key, like a password, gives the user access to their digital assets or other blockchain-based capabilities. As a result, user data stored on the blockchain is virtually incorruptible.
The technology promotes automation. For example, smart contracts can be executed without any human intervention.
A full list of advantages of the networks and the use of blockchain currency would make for a very large article. Those listed above, along with those yet to find out, make this kind of database a near-perfect digital ledger of transactions that may record virtually everything of value. Let’s take a look at some of the examples of present and proposed technology adoption for real-world tasks.
Potential Applications in Business
Blockchain development is currently a concern of Research and Development for major financial institutions, multinational corporations, governments, and universities.
The financial industry seems to offer most viable use cases for the distributed ledgers for bitcoin and other virtual currencies. If implemented in banking, the technology could speed up back office settlement systems, increase efficiency, and reduce costs. Smart contracts might perform simple functions, such as paying out a derivative when a financial instrument meets a specific benchmark. The blockchain technology and bitcoin would automate the payout.
In stock trading, the use of blockchains would enable trade confirmations to be executed peer-to-peer and almost instantly, without taking days for clearance. This also implies a possibility of removing the clearinghouse and other intermediaries from the process. It can eliminate the need for an intermediary in international remittances too.
The technology has the potential to remove from the safety equation not only clearinghouses, auditors, and banks, but also businesses and even governments. In theory, any intermediaries could be replaced with computers in a blockchain network in the future. This promises more secure databases, swift peer-to-peer payments, and other opportunities for new internet business, sharing economy, and personal interactions. OpenBazaar is an actual example of a blockchain-based eBay without transaction fees.
Current web commerce and sharing economy need better methods for identity management and verification. An identity blockchain might confirm identities through crowdsourced consensus. Decentralized government systems could start distributing birth, marriage, death, and criminal records, breaking them out of local silos. Smart contracts also offer the possibility to automate bureaucracy-laden processes, and distributed ledgers – to digitize personal documents.
For example, the Dubai government has partnered with UK-based startup ObjectTech for a new security project. A system combining blockchain technology, biometric verification, and digital passports is expected to eliminate manual checks at Dubai International airport. A pilot program should be ready by 2020. The encrypted ‘proof of existence’ biometrically tied to a person’s DNA instead of a vulnerable identification number can solve the problem of identity theft forever. Blockchain’s identity verification abilities can also help banks and stock exchanges reduce financial fraud.
Financial institutions may also benefit from optimizing anti-money-laundering and know-your-customer practices through the blockchain technology. Cross-institutional client verification can increase monitoring and analysis effectiveness. It’ll save much time, effort, and costs. Better identity verification will also be integral to so-called ‘wallets’ – applications which people will use to make purchases with bitcoin and store it along with other virtual currencies.
New currencies are sure to appear as well. Facebook is reportedly planning to launch its own blockchain-based currency. It should facilitate payments on the marketplace section of the site where millions of users buy and sell goods. The company is reportedly investigating other ways to leverage the tokenized digital currency and blockchain technology across their platform.
The problems of inventory management, fraud, counterfeiting, product safety, and ethics can also be solved with blockchain-based logistics and supply chains. For example, the timestamping of a date and location that corresponds to a product number will allow tracking the path of goods to consumers. This technology will help ensure that imported commodities meet fairtrade standards, the foods are organic indeed or were harvested sustainably, and that the goods were produced without labor law violations.
In January 2018, IBM and the shipping giant Maersk announced that they were collaborating to employ blockchain technology in more efficient, secure, and transparent methods of conducting global trade. Their solution includes digitizing the supply chain process from end-to-end. If the result is adopted at scale, it can potentially save the global industry billions of dollars. The project is based on the Hyperledger Fabric.
All kinds of record-keeping can be more efficient with publicly-accessible ledgers and smart contracts. Property titles are especially susceptible to fraud and costly and labor-intensive to administer. In June 2018, Sweden’s land registry authority together with a group of banks, companies, and startups completed the third phase of an ongoing private blockchain project. A live demonstration included client-side verification of government-approved digital signatures and the final exporting of the required legal contracts. The smart contract which facilitated the transaction is compliant with European Union laws and regulations, including the GDPR rules.
Smart contracts can help content creators retain control over their intellectual property and automate the online sale of their creative works. The blockchain’s ability to issue payments in fractional cryptocurrency amounts further supports the business model. For example, Mycelia based its music distribution service on the blockchain and smart contracts. Musicians store the content safely, license samples to producers, sell their music directly to the audience, and automatically calculate and pay out royalties to songwriters and musicians.
Smart contracts can also automate remote systems management. The ‘intelligent grid’ is an early example of the technology adoption in the Internet of Things. When solar neighborhood microgrids generate excess energy, Ethereum-based smart contracts automatically redistribute it. This increases system efficiency and improves cost monitoring.
The distributed database technology can increase the speed and security of online voting or other kinds of poll-taking. If organizational decision-making can happen on the blockchain, the management of digital assets, equity or information by corporations can become more transparent and verifiable than ever before. Blockchains are also a ‘wisdom of the crowd’ technology. Prediction markets and crowdfunding are only two potential applications that come to mind.
Blockchain technology is truly industry-agnostic and can be integrated into almost anything. You might be wondering why this post title mentions cats. CryptoKitties present a case of adopting the technology in recreational activities. The blockchain-based virtual game involves players into purchasing, collecting, breeding (!), and selling cute virtual cats.
Like the internet, blockchain is something upon which you can build new systems, economies, societies, and whole parallel realms. You can adopt your own currency, create and post new digital assets, tokenize them, write smart contracts, or let other users do whatever you want them to do. Your imagination seems to be the only limitation.
Our Experience in Blockchain Development
We have recently participated in the development of the SEED Token project. The international project is building the infrastructure for a conversational user interface (CUI) economy (a.k.a. bot economy). The infrastructure will be used to store the intellectual property and to carry out settlements between the network members. All settlements will be carried out in the internal ‘SEED token’ currency. At the first development stage, we implemented a blockchain network and a library to communicate with the blockchain. Currently, the wallet application is being developed.
The blockchain network was deployed on the basis of the Parity blockchain. Our team developed Ansible scripts for adding new authorized and non-authorized nodes to the network. The scripts automate test networks deployment and facilitate the future customers’ interaction with the network. The team also automated the deployment of modified smart contracts from the TokenMarket company for issuing SEED tokens.
We wrote a library for server applications to work with all functionalities of the SEEDToken blockchain network. Namely, it allows handling both the Ether digital currency (whose fork Parity is but another method of authority – Proof of Authority) and the tokens that are issued in the network through the smart contracts.
Once the scripts for adding new nodes and for smart contract delivery were created, load testing was performed. It employed the newly created library and additional software. Thousands of transactions were generated in the blockchain network to pass through it within a few seconds. New nodes were being added, and old nodes were being removed throughout the process. The network nevertheless kept running and performing the core function consistently.
The library has been deployed in a local Vagrant VirtualBox and on the DigitalOcean and AWS servers to check the connectivity of several nodes in different environments. The SEED Token library methods were covered with unit-tests. To run the tests, Parity client updates the data and creates a new smart contract. Tests were written for testing the blockchain network as well. They were running on the local and remote DigitalOcean servers using various nodes, as well as on two nodes simultaneously. The tests were generating transactions and checking the requests-adding speed, queuing, and queue-processing speed. The presence of duplicated transactions or loss of transactions were tracked. A smoke test for the library was done simulating a disabled node.
The first part of the network development has been completed, and the client is ready to test the core functionality on the actual blockchain network.
If you need to build an innovative solution for your business around decentralization, trust, transparency, security, or automation, blockchain technology may be a good choice. The development of a blockchain application begins the same way as any other project – formulating the requirements. What problem should the product solve? Who are your users? Who are your competitors?
If you wish to avoid building a blockchain from scratch, use the Ethereum development framework or another platform. Building your own platform would require the knowledge of cryptography and peer-to-peer network programming, testing/debugging, exclusive design, careful planning, and community-building. The process may take hundreds of hours on top of building the database itself. It will be more difficult without an experienced developer on board.