BANKEX CTO Denis Khoruzhiy performed at World Crypto Economic Forum in San Francisco. We couldn’t help but recount his bright speech where he cleared up the challenging problems of blockchain-related technologies and the way to solve them.

My name is Den, I’m the CTO at BAKNEX.

Here in BANKEX we are developing a series of technologies built around asset tokenization. And in every product we are trying to achieve the maximum performance. That’s why we frequently encounter the technology limits, and we are trying to push these limits.

If we are talking about all blockchain-related technologies one could define two primary problems: transaction cost and transaction speed. As all of you know these two challenges became a really problem for Bitcoin: nowadays it could be hardly considered as the general purpose cryptocurrency. In this short speech I want to mention two approaches we are developing in BANKEX.

First is the use of child blockchains. This approach AKA Lightning Network for Bitcoin has been initially proposed more than a year ago and now it is making the way to production. Later in August 2017 one of the author of Lightning network Joseph Poon in cooperation with Ethereum founder Vitalik Buterin wrote the paperwork Plasma describing similar approach for Ethereum blockchain.

For a couple of months this paperwork remains academic sense with no real prototype. And back in October 2017 BANKEX team at ETHWaterloo Hackathon has presented the first proof of concept of this system. Later this work has been transformed to open-source solution which can be used in any speed and cost-effective blockchain applications.

I am afraid I don’t have enough time to describe all aspects of this system, I would like to show only the child blockchain structure which can be found on this slide:

Child blockchain is an UTXO-type blockchain which tracks down all internal user transactions from the initial deposit to withdraw to parent blockchain. All operations are Merkle-tree proofed. Transaction delays could be lowered down to milliseconds and transaction cost could be zero. Please check out our GitHub repository for details.

And now is the second approach — Light Contracts which has been initially proposed during the work on crypto trading platform with the support of futures trading. The first attempt was to use all-in-one smart contract for the whole process. But it became obvious that two blockchain challenges (transaction cost and transaction speed) became even worse if we are talking about smart-contracts. That’s why even deployment of relatively complex contract can cost hundreds of dollar equivalent. The substantial part of this price come from computational fees which in its turn primary defined by the computational and storage costs.

The idea itself is rather simple: we are not using our contract to store any data besides some minimum necessary ones for indexing purposes. And we move all data-dependent logic to server side. So we have a situation when all data and logic is defined at server side. In case of futures trading and in many other applications it is the reasonable approach also because a few systems could exist without external data providers, namingly Oracles and server side anyway is necessary. In this case we are passing all storage and computations to server as well. On the other side this solution retains all the benefits of blockchain as verifiability. We are calling functions which are doing just nothing but storing the fact of the call with specific parameters. And that’s enough! All server side state could be easily verified by this records and open-source logic.

On the next slide you can see side-by-side comparison of two Solidity minimal contract listings with normal contract on the left and light contract on the right. As you can see the only differences is elimination of data storage at all. If you are storing in the variable some string you are calling function setText(“New string”) and this invocation is already stored in blockchain. No needs to pay gas for storage this variable in contract space. The only limitation is that you could not use this variable right off the contract. But you can use it on server easily.

On the next slide is a little benchmark of gas price of previous example contract. Here are gas prices for contract creation and three subsequent calls of setText(). As you can see there are 25 to 45% economy even for this simple example. On real-world contracts this is even higher.

Two approaches to the central intricacies of blockchain-related technologies are in the particular attention of BANKEX Team. The team is not only examining the problem but discovered a solution for the whole crypto-community. If you want to discuss the topic, please, feel free to contact us: Telegram