TECH

From a system configuration perspective, blockchain can be defined as “a consensus method for transaction processing order” and “a method for transaction processing”. The former is a consensus algorithm such as PoW, PoS, and DPoS, and the latter refers to a ledger service such as a smart contract or chain code. As the consensus on the order of transaction processing has a direct impact on the processing result to be registered on the ledger, a consensus algorithm should be able to prevent from forging the agreed transaction processing order. Meanwhile, a ledger service defines how to process user-triggered transactions, which data to store accordingly, and which service to offer to users.

Many of existing blockchain platforms have used resource-based consensus algorithms such as PoW, PoS, and DPoS or slightly tweaked them for use. In addition, embedding a smart contract which imitates traditional programming languages has brought a serious doubt about the sustainability of blockchain. Considering that blockchain aims for decentralization, it is somewhat difficult to understand why it has the duplicity which incites a complete free competition involving resources and as well as a technical barrier.

In order to offer fair opportunities to every participant in the blockchain network and help anyone interested use blockchain easily and fast, Tethys Team presents a new consensus algorithm, Proof of Randomized Group and a new smart contract, Standard Contract.

  • Proof of Randomized Group
  • Standard Contract

To create a consensus algorithm based on non-resources and prevent a sybil attack which can frequently occur in an anonymous network, Tethys Chain allows only nodes whose real names have been verified through KYC or CIP to participate in the blockchain network. The real name nodes which joined Tethys Chain create blocks using a non-resource-based consensus algorithm, Proof of Randomized Group. Proof of Randomized Group guarantees any blockchain participants fair opportunities for creating a block.

First, the reason is related to the sustainability of blockchain according to compensation system. Generally, the compensation system for blockchain is designed for participants who successfully created a block through a consensus algorithm to take all the gain. As a ledger service is available regardless of block creation, we can say that a ledger service in the numerous blockchains is offered free of charge. As blockchain aims for simple data storage and lookup service, this already incurs a significant cost from the entire network perspective. But if a blockchain goes beyond and starts offering more complex service, a ledger service can no longer be offered for free. If only a few participants can create blocks, blockchain will degenerate into a system that sacrifices the many for the gain of the few or a centralized system. Likewise, concentrating opportunities for block creation according to computation capacity or the amount of capital, namely “resources” possessed makes it difficult to guarantee the sustainability of blockchain. To address this, ledger service itself should be designed to offer compensation or fair opportunities for block creation should be offered to all the nodes where the ledger service is available.

The second reason is to get performance gains from creating a local chain. A centralized consensus by the few, entanglement, and offchain are attempts to maintain a global single ledger while addressing performance issues, but they have clear pros and cons. As a better alternative to them, Tethys Chain creates a chain structure that allows mutual asset exchange in the numerous blockchains and a small and medium-sized chain with regional connectivity and presents a method to connect them. To make this "local chain" work, there should be no asset or security gain and loss according to the size of the chain. In conclusion, to create a local chain, an asset should not be created as compensation for block creation, and participants’ opportunities for block creation should not be concentrated due to the resource-dependent consensus algorithm.

Proof of Randomized Group divides time by a specific interval and has each block created at each time interval. Once each time interval starts, a node which wants to become a leader to create a block receives consent from a certain number of other nodes and creates a block. Nodes which want to be a leader notify their values to neighboring nodes through leader declaration thereby minimizing meaningless competition. Compensation from block creation is fairly distributed to the nodes which participated in the group.  And incurring cost here is the same at all the nodes. If the cost is same, in a competition where numerous blocks participate at the same time, there is no change in the overall security regardless of which block a next block creator selects. In this case, the next block creator can choose a block that benefits him/herself.

Proof of Randomized Group has all the nodes have different "values" for their height respectively. Values are automatically calculated according to ID, public key and certificate of a node and cannot be manipulated arbitrarily by nodes. The same goes for actions to include or exclude a particular transaction in/from a block. A group leader should accept nodes with much higher values as a group member, because the next block creator is more likely to choose a block with a larger total sum of group nodes values. This is related to the characteristic of a P2P network, not that of a uniformly connected network. Being able to accept nodes with much larger values as group participants means that a corresponding block is created by nodes in a highly connected P2P network. A stable network environment raises the survival capability of a block and guarantees economic gain of a block creator group. In the ideal situation, each block is created by a group of random participating nodes each time, and compensation from block creation is distributed fairly to all the participants.

Considering digital signature verification cost, network speed, and transaction processing time comprehensively, Tethys Team estimates that the best performance of a single blockchain network based on a personal computer would be about 1,000 ~ 2,000 TPS. In the real world, it seems impossible to exceed tens of thousands TPS without a large-scale server and network equipment. This is not something individuals can participate in, hence creates a high barrier of entry for blockchain. A local chain presented by Tethys Chain refers to a small and medium-sized chain that uses Proof of Randomized Group and aims to offer a protocol for two-way communication between them. A local chain can be configured by region to reduce delays in communication but can be configured logically to offer a certain service according to circumstances. As a local chain physically separates less correlated transactions, it doesn't need an excessive computation capacity or large storage space like some blockchains. As the number of participating nodes in a local chain is relatively small, network usage for broadcasting decreases accordingly. In contrast, transaction processing speed increases in proportion to the number of local chains.

 
 
 
Ethereum made massive contribution to expanding the blockchain business landscape by applying the concept of a smart contract. By implementing EVM (Ethereum Virtual Machine) layer on top of P2P network, Ethereum created a programable computation machine, which allows asset transfer if a particular condition is met. Having such computation occur at all peers in the same way enables to dealing with breach of a contract. Thanks to its diverse advantages, Ethereum has become a successful crypto funding platform, in particular, ICO platform.
 

EVM (Ethereum Virtual Machine) was designed, based on Turing completeness which is about coding any kinds of programs like a computer. This is to create a general computation machine considering all business and service types for a single ledger. Despite its good purpose and intention, EVM is excessively heavy and slow by nature as such generality has been taken into account for design. As all peer computers have to support same complex computations, running a smart contract on the Ethereum network requires to consume extremely expensive and valuable resources. To effectively utilize such expensive resources, a user, in turn, must pay commission (Gas) every time execution code is read, and this is definitely an extreme burden to vendors of Dapp which has to be running on the Ethereum network.

As a result, the smart contract has become hardly readable for developers or users. It is created in an unfamiliar language, Solidity, and furthermore from the perspective of general users who will use this smart contract for commercial transactions, it is very difficult to read. Poor readability makes it hard to detect errors in the smart contract and eventually causes security vulnerabilities in the contract itself. A prime example is Ethereum’s DAO hack.

In response, Tethys Team is proposing a new methodology. As a chain is configured for each service, it avoids Turing completeness. Tethys offers Tethys Standard Contract (TSC) template by categorizing businesses or services with similar functional requirements. Thus, it is unnecessary to create a heavyweight smart contract considering all cases of numbers or exceptions. We believe “A stitch in time saves nine.”. Our approach is also aligned to traditional practices of commercial transactions as users can take TSC form and use it instantly for their business with slight code modification or parameter adjustment. And as the contract is XML and JavaScript-based, it offers an easy-to-modify or distribute environment.