Let’s Learn about Brahma Chain from KJ
Tags: Brahma Chain, Bitcoin, Blockchain, Chain, Brahmaos

Brahma Chain is an important part in the ecosystem of Brahma OS. The research on Brahma Chain is mainly conducted by KJ. As the researcher of Brahma OS, KJ has more than 12 years’ experiences in architecture design, distributed database system, and P2P Network. His research domains include the blockchain capacity, the data shard, and the ecosystem. KJ has strong experiences in both technology and research.

KJ’s Profile

There are lots of information about the development of Brahma OS yet few about Brahma Chain. To respond to questions from the community of Brahma OS, KJ made some special videos to explain the mechanism of Brahma Chain. The following parts are the transcription of KJ’s words. Please read through it or watch the videos on youtube with subtitles of English, Korean, Chinese and Japanese. You can leave a comment or your questions about Brahma Chain below the video.

Part 1: Introduction

Chinese subtitles: https://www.youtube.com/watch?v=mFfWX0AYNlU

Korean subtitles: https://www.youtube.com/watch?v=o7vKT53-27Q&t=2s

Japanese subtitles: https://www.youtube.com/watch?v=eMDrG2_RVLw

Transcriptions:

The blockchain has the very famous performance issue, the transactions per second limitation is a big issue. That’s why we can see a lot of public chain projects state that they can achieve very high TPS. But so far there is no mature solution yet. For example, ETH is trying very hard to increase its performance. And EOS, we still can not see any killer application.

To build an eco-system, Brahma OS need blockchain applications. We believe there should be some contribution to the fundamental chain technology.

From the academic perspective, there are some papers talking about how to increase Bitcoin’s performance. This gave us some idea. However, as we did further investigation, we believe the chain structure will not work for the high-performance requirement.

We also took a look in IOTA. DAG data structure is very famous now. But the biggest the problem with DAG is that the double spending problem ACTUALLY CAN NOT be solved.

We took the idea of the graph data structure from DAG, and the Bitcoin’s performance increasing idea, creating something new. We call it GraphChain, it’s the basic data structure of Brahma Chain.

The chain has two majority points: graph data structure and parallel mining, which will be discussed later. It covers a lot of blockchain fundamental knowledge.

Part 2: GraphChain structure

Chinese subtitles: https://www.youtube.com/watch?v=VoFLAu9MoAE

Korean subtitles: https://www.youtube.com/watch?v=xMHmjj-zjek&t=82s

Japanese subtitles: https://www.youtube.com/watch?v=6ZhZIal5SGw&t=4s

Transcriptions:

As we mentioned last time, today we’ll talk about the GraphChain structure.

When looking at the data structure, it’s required to know some Computer Science Data Structure knowledge.

First, let’s talk about the chain structure.

Chain Structure

The chain data structure is very popular. Most of the chain like Bitcoin use this data structure.

Each cycle is called a block. One block contains a lot of transactions inside.

I bet you must be familiar with this chain structure. Let’s talk about the disadvantage: imagine why we have to put a lot of transactions into one block? It’s for performance.

In this design, there should be enough interval time between two blocks, it’s the time for block broadcast spreading. If we limit the size, to allow only one transaction inside, then the transactions per hour will be six.

Second, DAG data structure

DAG data structure

DAG not only proposal the data structure like this, but also removed the miner. So anyone can generate a new block.

The DAG node is like a big database, allows anyone to insert micro records. Yes, the records are blocks. Those blocks are not listed in order, it’s in DAG structure.

For the double spending problem, as there is no miner in the system, the user will not get confirmation notification when the transaction was confirmed. The only way for users to make sure that the translations are made, is to keep inquiry if there is more guy confirming their transactions.

Finally, GraphChain

The GraphChain data structure looks like this

GraphChain Structure

The cycle is called the non-transaction block. Usually, it stands for an account. It has one output point. The square is called a transaction block. It has two inputs and two outputs.

Inside the transaction block, there are two parts, the above part stands for the sender, the below part stands for the receiver. Transaction block represents the two users’ accounts balance after the current transaction.

Part 3: parallel mining

Chinese subtitles: https://www.youtube.com/watch?v=ti7LqyajReU&t=41s

Korean subtitles: https://www.youtube.com/watch?v=wRvce6oxYko&t=1s

Japanese subtitles: https://www.youtube.com/watch?v=wRvce6oxYko&t=1s

Transcriptions:

Let’s talk about parallel mining.

First it’s about Bitcoin’s mining. Mining is to create a new block. Besides the Bitcoin miner got, the mining activity is more about resource contribution. People talking about the computing capacity, the graphics card, and energy costs, that’s the necessary part in order to give miner a difficult enough task. Do not forget about the other resource like storage and bandwidth.

On the other hand, full node contributes the storage and bandwidth but did not get rewarded yet. Maybe we can fix this one day. The bitcoin mining is not efficient, as it only allows one miner to contribute at one moment. It’s decided by chain data structure.

If we want more miners to contribute, the first thing we have to do is change the data structure, which we had done. Then, we allow more miners to work, it’s called parallel mining.

Let’s see two types of transactions:

The first type is that a merchant accepts payment one customer by another. In this case, transactions cannot be processed in parallel.

The second type is like that your parent give you some pocket money, while my parents gave me some. Those transactions can be done in parallel by different miners.

We use voting to select some miners to join transactions processing, the miners work together to get the maximum amount of transactions packed into blockchain. this is the key to increase the overall blockchain performance.

Hope this explanation will bring you closer to Brahma Chain. Thanks.