The main challenges that all fintech startups based on blockchain
facing with are assuring the security, lowering the high transaction costs and supporting the high performance for processing the huge number of transactions. Thus, lost of founders come up with an idea to consider the private network instead of Ethreum with the well-developed ecosystem. Indeed, it is easier to start with the Ethrereum for a simple wallet
management app or any fintech startups leveraging the blockchain technologies for the financial services. However, there are lots of technologies and solutions available at the market to revise the way of thinking and private blockchains are commonly used in fintech domain due to the high performance and security. Blockchain is known to be immutable, which is both its strongest and weakest point.
Transactions immutability does not mean data stored in blockchain cannot be changed, for example, it is possible to alter data stored in smart contracts, but all those changes are stored in the database and smart contracts (or similar solution) should assume upfront what kind of changes would be made and allow such functionality.
All in all architecture and implementation of blockchain application requires lots of upfront planning (sing you cannot change what was not planned to be changed initially) which goes against modern development methodologies (agile). Internally, we've designed the Blockchain cards
- a solution for software architects for fast and easy decision making in designing blockchain driven systems. It substantially decreases the timelines for Senior Architects, Business owners to make the reasonable tech decisions based on the Consensus Algorithms Comparison.
In the blockchain world, there are 2 different camps for implementing business logic: - Smart Contracts popularized by Ethereum.
Works on top of the blockchain introducing itself as an abstract super-computer. However, capabilities of smart contracts are quite limited and in many cases require external middleware to implement the features they can't do (like getting in data outside blockchain network or scheduling tasks execution, oracles).- Native business logic.
This is the approach used by Sawtooth Lake with their "transaction families" or Exonum with their "services". Assumes implementing business logic as a part of blockchain technology itself with widespread programming tools. This approach is much more flexible than smart contracts, but harder to start with.Usually, it is a good idea to have as little as possible business logic on blockchain side and as much as possible on common back-end side, e.g. using habitual programming languages and frameworks for business logic and blockchain for storing data (raw and computed). Which solution to choose for fintech startups?
There is no silver bullet or any other ultimate solution in the world of private blockchains. All of the solutions has its pros and cons
and should be chosen based on actual project needs. Here are few solutions we use most often:
Quorum - JP Morgan's fork of Ethereum. Not lightweight by any means and relatively slow. Recommended for cases where anonymous transactions and anonymous smart contracts are a must.
Hyperledger Sawtooth Lake - Intel's blockchain solution, part of Hyperledger initiative. Ultra-fast and very flexible. However, it is harder to start with, comparing to Ethereum and its forks. Recommended for projects with high-performance requirements or moderate to high amount of business logic in the blockchain.
However, if we talk about the compatible and lightweight solution for the fintech projects aiming to process the cross-border payments, multi-currency transactions via distributed exchange - Stellar is the suitable one. The core dev team consists of the ex CTO and ex CEO at Stripe ( well know USA payment gateway), founders of Angellist and WordPress.com. In fact, Stellar - is a decentralized network
of servers that can store the info about the transactions occurred in this network. The main advantage of this network that it doesn't depend on any single server. The logic is that Stellar ledger records a list of all the balances and transactions belonging to every single account on the network. In case you want to swap the information between the counterparties ( banks or other financial institutions) and allow them to have the security access to the info about the transactions, parties, exchange rates, etc by providing the private key for encrypting the info - Stellar blockchain can easily do it.