Bytom unveils Bystack, a system combining PoS+PoW to get the best of both worlds — and it’s bigger than you think.

Dimitris Sfounis
8 min readMay 30, 2019

--

So what is it? Keep it short!

If you’re tired of reading long technical articles, here’s the short story:

Bystack is a multi-level enterprise-oriented platform, built from multiple Bytom components and technologies, combining and mixing together different approaches to blockchain dogma (PoS built on top of PoW), to achieve maximum derived value.
Whatever functionality a business needs to convey on a blockchain (payments, logistics, equity capital or resource management), Bystack can adapt to it — and do it well.

Was that too long? Maybe.
But Bystack is a complex system itself. For the developers of Bytom, it marks the work of more than a year and is a major milestone achieved for the Bytom project in general.
It’s important, and it’s a powerful solution to a very complex problem. Especially considering the ever-varying needs and humongous sizes of both the Chinese and Global business world — no two enterprises are the same in what they do, and everyone needs a custom solution. Bystack is the platform for that.

Bystack aims to be an one-stop-shop blockchain service for businesses. It exhibits customizable sidechains built-to-order for every individual enterprise (with a focus on efficiency), and the underlying security is rooted in the Bytom UTXO main-chain. Communication between chains and layers takes place through the newly introduced Federation protocol.

Combined with innovations and major reworks in the network, storage and protocol layers, Bystack’s combined approach sticks together well. It provides a steady, powerful platform in which business can implement their processes on bytom’s blockchain technologies, and benefit from them massively.

Let’s dig deeper into it…

Blockchain systems always had to adhere to a 3-point balance;
The balance between security, decentralization and scalability.

Given that security is always desirable, and that this is based more-or-less on cryptography alone (and this isn’t a cryptography article), let’s assume that everybody likes security — now, the problem of balance becomes a balance between two variables, a tug-of-war between decentralization and scalability.

These factors are both affected by how the blockchain system attempts to do Consensus. Note that “consensus” is a term I really, really dislike, as I find it inaccurate. Think of consensus as the “Rules” of the blockchain — how this shared system of peers achieves cohesion and agreement.

Both Bytom and Bitcoin blockchains, as well as many others, use Proof of Work (PoW) as their consensus mechanism. Users need to prove they spent energy, effort, to calculate a valid batch of transactions (a block) — and they get rewarded for it.

Soon, the high-energy costs of PoW (deliberately playing a probabilistically-hard guessing game, and wasting CPU cycles) brought forward ideas for alternatives: I’m talking about Proof of Stake (PoS).
And although I’m a huge proponent of PoW systems, we have to analyze the advantages of a PoS system.

Proof of Stake and Bystack’s approach: Enter the byzantine generals!

Very generally (and because I don’t want this article to be a “What is PoS” thesis), Proof of Stake proposes consensus via voting, not work.

Peers, according to how many assets of a network they own, vote on whether a block is valid. The more assets you own, the more votes you get, or the “heavier” your vote becomes.

The logic behind this is: The more invested you are in a network, the less incentive you have for the network to be compromised through falsification. You are going to be degrading your own holdings, your own stake.

This problem of reliable voting (the system needs to detect and be resistant to false and unreliable voters!) to achieve consensus is very close to an old distributed-computing problem in Computer Science: The Byzantine Generals Problem, proposed in 1982 by [Lamport, L.; Shostak, R.; Pease, M.]

Basically, you’re the Emperor of Byzantium, and you have a number of Generals (say, 10 of them) that are in charge of your military forces. You’re besieging a city. You relay your order (either attack, or stay put) to your generals, but some things can go wrong:

  • A military maneuver is successful if and only if your generals perform your orders in unison: If some generals attack, but some stay put, it leads to a catastrophe (a “rout” in your army).
  • Your generals are the ones relaying your Initial Order to each other (their peers), from one onto the next. If one of them mishears or misreports the Order, either by mistake or deceit, is the other general also deceitful? What if the second general is honestly acting on the orders that he received from the other general erroneously? For himself, he’s honest — but for the Emperor, he’s acting out of order.
  • What are the incentives for generals to conspire against the emperor, and how resistant is the system to deceit? What’s the max number of generals that can be deceitful or wrong, with the system still remaining stable in reaching agreement?

The Byzantine Generals Problem therefore describes the problem of reaching an agreement in a distributed network, and a Byzantine Fault in this case is a “node” that appears honest for some nodes, but also dishonest for some others.
On a distributed computing network such as the Bytom platform, Byzantine Fault Tolerance describes the methods implemented to resist such problems, and quantify “how bad can things break, before the network can be considered unreliable”.

PoS systems based on the pBFT algorithm (Practical Byzantine Fault Tolerance — as introduced in 1999 by [CASTRO M.; LISKOV B.]) are already in use. They’re faster, use less energy (and therefore, are more scalable) than PoW systems, but they open up to a whole new range of probelms. And they’re not as decentralized. In their basis, they value & categorize users as more important the more they invest.
NEO is a notable example, Ethereum is another, when it finally goes fully-PoS.
For Bytom, this wasn’t good enough. So they developed their own unique approach, a “marriage” of both PoS and PoW.

Bystack is a higher-level enterprise multisystem, combining both PoS and PoW elements for maximum efficiency.

So PoS is more scaleable, but less decentralized.
And PoW is more secure, decentralized, but less scaleable.

Bytom’s solution? Introducing Bystack: A model and platform that uses a PoW main-chain, and custom, enterprise-specific PoS sidechains.
It separates its functionality into two Layers, Layer #1 and Layer #2:
— Layer #1 is the Bytom PoW main-chain, and provides the security and decentralisation of bystack. It’s the “diesel engine” behind everything.
— Layer #2 is the PoS sidechains of Bystack, they provide functionality, speed and optimization for business-specific actions: They push the functionality of Layer #1 into the real business world.

A visual representation of Bystack’s layer functionality — maximum project value comes from the intersection of the two areas.

As a programmer, this approach honestly makes sense.
When you have two distinct systems, both with their advantages and disadvantages on a problem, the real value comes when you combine them.

But wait, how do these layers communicate between each other? Are assets transferred between them? Are they separate?
While side-chains are linked (“pegged”) to the main-chain (after all, the main-chain IS the base immutable layer), assets can be transferred (or rather, “mirrored”) from sidechains from and into the main-chain.
The protocol under which side-chains are connected to and communicate with the main-chain is called Federation, in Bystack.
The Federation layer acts as a validator, a regulator, making sure everything is working correctly between the main-chain and a customized sidechain.

You’ve probably realized why the whole project is called ByStack. The functionality of one layer is built and derived from the ones stacked below it, much like the stack data structure in computer science.

Bystack represents a major milestone for the Bytom development team: They’ve been building it for months — and it shows. It’s all done as part of their main goal as a project: To provide an open platform that brings real-world usability and efficiency to the real business world, to Enterprises.
Looking at the specifics and technical concepts of Bystack, it exhibits multiple levels of innovation, and I’d like to go over the ones that, for me, represent the biggest breakthroughs.

1. The Bytom main-chain, the base of Bystack, is still built on the Tensority PoW algorithm.

Bytom is not losing connection with its roots, and it isn’t trying to change itself. Bytom developers are building on top of their previous work, keeping things stable.

2. All sidechain layers will be autonomous, and using Bytom’s implementation of decentralized Proof of Stake (dPoS): BBFT — Bytom Byzantine Fault Tolerance!

For businesses that want speed and efficiency over all, to take advantage of the latest in consensus technology advancement, a sidechain can be created and customised to their needs.
The BBFT algorithm for sidechain consensus is also really well built — from what I’ve seen and read on their whitepaper (it’s on GitHub).
It’s still pBFT-based, but attempts to prune-off bad and worst cases, to stay as far as possible from O(n²) complexity — even claiming to maintain a baseline of linear O(n) on average.

3. Bystack’s network layer is overhauled — it’s not only about how fast its subsystems are, it’s also how fast they can communicate with each other.

Bystack’s whitepaper places heavy emphasis not only on the individual component’s algorithmic structure, but also on how they communicate each other on a machine/network layer.
Sidechains do not adhere to the master-slave model, they’re autonomous and implement their own functionalities and features, never needing to constantly correlate data with the master chain to do something.

This focus brings optimisation and security through redundancy. The Bystack whitepaper mentions a plethora of working models on the network base (VNR — Vapour Neuron Relay, with Vapour being the first defined sidechain, or UDP-layer error handling — Forwad Error Correction [FEC]), but I have yet to read up fully on those, so stay tuned for further analysis.

4. Storage and asset transfer methods also get expanded.

Common database schemes weren’t inclusive enough for the Bytom team.
Implementing interfaces for SQL and Non-SQL database infrastructure (Postgres, MongoDB) gives a business the added ability of porting and using their own databases natively on the chain.
More native, non-specialist connection functionalities means a better and more seamless experience for enterprises — the easier they are to jump onto the Bystack platform, the quicker they’ll work with Bytom.

Conclusion

Bystack marks a major point in Bytom’s history. It’s bigger than you might think, and certainly the most important news from Bytom in the last months.

It shows that the team still actively have their fingers on the market’s pulse, and are striving for innovation, striving to make their technologies available to the needs of the modern market.

I’d say, stay tuned. The news is only just starting.

All information and analysis above comes from official documentation and methods, as published openly by the Bytom dev team.
Bystack whitepaper: https://www.bystack.io/en/Bystack_WhitePaper.pdf
BBFT whitepaper: https://github.com/bystackcom/BBFT-Whitepaper
Edit, 31st Aug 2020: Had some typos in the figures, fixed now!

--

--