Knuth Release — Integrating New Payment Technology

The Knuth Release is here and with that, Appcoins accomplishes yet another milestone! This release introduces brand new features and incorporates new technology. The Knuth release, which consists of a proof-of-concept (PoC), as previously mentioned in the last two ANUs (#10 and #11), aims to showcase the possibility of doing fee-less and under-the-second microtransactions using payment channel technology.

The post is divided into three sections. The 1st details the purpose of the PoC, the 2nd explains the technology used, and the 3rd describes what the PoC does and how users can try it out.

The Purpose

The Ethereum network introduced the concept of using a Blockchain structure as a basis for decentralised and trustless computing. However, as many Blockchain protocols, it uses the “longest chain” rule together with the proof-of-work (PoW) mechanism to achieve consensus between nodes in the network. The PoW mechanism defines the rules of participation in the block creation process.

PoW is a costly mechanism, as it requires everyone in the network to validate transactions and solve complex mathematical puzzles to produce new blocks for the chain. Since everyone is required to participate and there’s a high cost involved in solving the puzzles, it poses scalability problems regarding transaction latency and transaction fees that need to be paid to help to support the network. Therefore, it’s not possible to achieve a significantly high throughput in terms of the number of transactions per second (TPS) to make it possible for the Ethereum network to be used for day-to-day micropayments. There are certainly projects aiming to mitigate and/or solve these issues, both at the protocol level (sharding, Casper) and at the application level (Plasma, Raiden).

The purpose of this PoC is to use µRaiden technology, which is a simpler approach to the Raiden network, to facilitate microtransactions in in-app purchases (IAP). We want to give users a preview of what paying for in-app items using cryptocurrencies can be. For developers and app stores, we want to show that they can verify all transactions done and get the income generated from in-app purchases instantly, so they can use them faster for their needs.

The Technology

As said in the previous section, we are using µRaiden technology to achieve under-the-second and fee-less transactions.

µRaiden is part of the Raiden Network project. As opposed to Raiden, which aims to have bidirectional payment channels between interconnected nodes, µRaiden consists of unidirectional payment channels with no network of nodes. Opening and closing payment channels are on-chain transactions, which means they will require transaction fees. This happens because payment channel data, such as sender and receiver, and channel balance are kept on-chain to avoid centralisation and complete control of data.

However, the advantage of payment channels is that all transactions done within payment channels are off-chain transactions without fees. Therefore, one can open a channel with someone else for a certain period of time and make microtransactions without worrying with transaction latency or fees. The sender or the receiver can close the channel once the interaction no longer is advantageous for them.

The payment channel flow pattern is the following:

The PoC

The PoC will be composed by a mobile game integrating our SDK and an iteration of the AppCoins Wallet, a wallet that implements µRaiden payments. We’ve also adapted the channel manager contract in order to have it using APPC as channel token. The PoC is working in the Ropsten network, and will be deployed in the main Ethereum network in the next days.

The above pattern of µRaiden applied to the IAP flow of the AppCoins Protocol is:

Below you can see how the payment flow is done using payment channels. You can get our demo app Trivial Drive from Aptoide and the AppCoins Wallet also from Aptoide or Google Play, and try out the PoC.

IAP flow using the AppCoins Wallet with Payment Channels

You can also see how transactions of opening a payment channel and doing a transaction inside a payment channel look like in the AppCoins Wallet.

(Left) Opening a payment channel; (Left) Doing a transaction within a payment channel

As always, you’re invited to follow our work regarding all of the products we’re working on:

The first ICO serving 200 million users to create a trusted economy without intermediaries. Supported by Aptoide App Store. Learn more: https://appcoins.io/