Syscoin Platform Advancements
At the Syscoin Foundation we are always looking for ways to further optimize our platform and its core features. Fast, secure, and low-cost transactions are not just a marketing slogan, they are a proven reality, available to anyone looking for a blockchain platform offering a low-cost and secure transaction solution for their project. With the recent launch of our Syscoin↔Ethereum bridge, all ERC-20 projects can easily benefit from these advantages, while maintaining tokens on the Ethereum network for use there.
In this fast-moving space we must innovate to stay ahead. To remain true to our vision of developing the most secure, fast, and low-cost value transfer platform, the Syscoin Foundation and Blockchain Foundry developers have spent years researching ways to further strengthen and future proof the platform. In this post, the Syscoin Development Team presents in-depth, the motivation and challenges behind the upcoming improvements. But first, we would like to give a short summary of the upcoming improvements and their benefits.
UTXO-based Syscoin Platform Tokens
We are very excited to announce that we are changing Syscoin Platform Tokens (SPT) to a UTXO-based consensus system!
This brings four key benefits:
- SPTs will be directly in sync with bitcoin core logic. It is safe to say that Bitcoin is one of the most researched and developed blockchains today, with many promising innovations lying ahead, such as Lighting Networks for scalability, and MAST & Taproot for smart contracts; all of them rely on the UTXO model.
- Payment Channels / Lightning for SPTs: implementation of SPT payment channels on top of the Syscoin base protocol will be greatly simplified, allowing us to leverage the high-block capacity and fee savings provided by Z-DAG on Syscoin’s base layer to scale SPT Lightning payments to everyone, everywhere — a feat not even achievable by Bitcoin.
- SPTs will be much easier for exchanges and wallets to integrate, as the UTXO model is widely used. This will also help to expedite their adoption and use.
- The core code will become cleaner and faster, and will bring us closer to our original vision of Syscoin Platform as a platform for blockchain-based money and value transfers.
There are two major ways of storing an account balance. Either you record the balance itself and update it based on performed transactions — Ethereum does this, and so do Syscoin Platform Tokens (SPT). Or you keep track of which incoming transaction outputs don’t have corresponding outgoing transaction inputs, then your balance is the sum of the unspent transaction outputs, also known as UTXO. This method is used by Bitcoin.
Money on the blockchain
Money is a concept to store and exchange tokens for services and goods, allowing participants in the monetary system to trade with more partners without the issues inherent to perishable goods. Money has seen many forms over time, from units of rare materials to digital tokens issued by central banks and backed by the trust in a country’s ability to pay its debt. A recently invented form of monetary system are cryptocurrencies. These feature digital asset tokens whose changes in ownership are recorded in a public, distributed ledger and controlled by a consensus algorithm.
The introduction of a distributed ledger and decentralised consensus enables monetary systems that work without the control of and trust in a central issuing authority. They offer predictable inflation rates, distribution of power and robustness to change as a result. However, these gains are achieved at the cost of scalability.
Bitcoin today, cannot scale to the demands of commerce in bandwidth and transaction speed. Other systems have been proposed to satisfy these requirements, usually at the cost of decentralisation and security.
This trade-off might be acceptable for some applications, like buying the proverbial cup of coffee, but are much less so for other applications, like buying a car or saving for retirement.
A viable system must be scalable enough to expand to the load of the global demands for commerce yet still remain just as secure as envisioned by Satoshi in his whitepaper.
Most of the proposed scaling solutions make these trade-offs within the core protocol, reducing their viability for large value transactions or as a store of value, as all value on the ledger is as secure as the implementation which has made the tradeoff in an attempt to increase speed.
To understand why Syscoin is different you must first understand that to put money on the blockchain you must offer a secure store of value without sacrificing security.
Syscoin’s base protocol is aligned with the Bitcoin security model without distinctions or trade-offs and is secured by Bitcoin’s hash power.
It is used as “gas” in the transactions that are involved in the creation and transfer of assets on the second layer. In Exter’s Pyramid of value the base layer is always ideally meant to be a store of value, while layers on top are meant for convenience and speculation on global economic growth. The base layer therefore must be secure without trade-offs, but layers above add convenience for spendability.
Syscoin’s Z-DAG algorithm adds a probabilistic payments model on top of the assets protocol, enabling spendability at scale as an opt-in mechanism without sacrificing security of value of those that are not participating in these transactions.
This is an important distinction to designs that, in the pursuit to scale, resort to validation models, relying on a trusted set of nodes or a subset of the peer network and introducing far-reaching implications for the security of the network as a result. When the market is given an option, money will always rest at the bottom of Exter’s pyramid of value, the most secure medium available.
All roads converging, clarity on direction
All of our design principles and all the features we have worked on over the years have led us to this design, combining a secure core, a globally scaling second transaction layer and an interoperability module that allows us to trustlessly bridge to other blockchains.
What belongs on the chain is not “data” but logic that peers must consume in order to enforce rules that all players in the system must abide by.
At scale, this puts tremendous pressure on the resources required for the system to operate.
With our consensus layer minimized to the UTXO logic handling in Bitcoin Core, we mitigate risks of attack vectors from the tried, trusted and true protocol of Bitcoin. Where Bitcoin falls short we innovate and alleviate bottlenecks. The Lightning Network’s paper states that in order for Bitcoin to scale to 7 billion people doing 2 transactions per year assuming all are off chain, Bitcoin will need 140 MB blocks.
This obviously is not going to happen. What does that mean for Bitcoin? The only thing it can mean is continued research to crunch data and logic, pushing it off chain, approaches like MAST/Taproot/Payment channels with the blockchain layer acting as a judgement system to keep those off chain systems honest. Even doing so, it will not help Bitcoin achieve the levels of scale needed for global everyday commerce. It will remain a store of value similar to Gold, but without the spendability characteristics of money today. It is still valuable from a secure, ledgering of assets perspective but interoperability is key to unlock the usefulness of cryptocurrencies replacing fiat as money (being able to store and spend it securely). With the UTXO model, all of the innovation that happens on Bitcoin is instantly portable to our technology, meaning the technical prowess of the Bitcoin development community feeds directly into the Syscoin project without much engineering effort on our part to adapt. It will open new avenues of utility that even Bitcoin developers did not envision because we add layers that are synergistic to aspects of putting money on the blockchain.
Z-DAG is just a piece of the puzzle
In the past we have alluded to Z-DAG improving scalability without sacrificing base layer decentralization or security. It will not alone be enough to scale to global demands for peer-to-peer digital payments. Offchain payment methods like payment channels will be required to satisfy the efficiency in both cost and bandwidth at scale. Payment channels work by creating an onchain transaction locking value in an off chain network where participants which are also locked through onchain transactions act as either receivers or trustless intermediaries to route payments to receivers. It requires network effect to become usable but once enough participants exist, you can achieve payments that are very scalable and cost efficient enough to satisfy global commerce. Bitcoin developers are working hard to complete the BOLT specification into software implementations, however there are some problems with doing this all on Bitcoin.
- The block size of 1MB is not sufficient to satisfy demands for global participation. As noted by the Lightning Network paper, it will require 140MB or more every block under the assumption that all transactions are off chain and 7 billion people are doing 2 transactions per year (opening and closing channels), with the rest happening off chain for an almost infinite amount of transaction capability. Because there is not enough block space, onchain fees increase and make the system unviable for microtransactions as the cost of completing an onchain transaction rises over the value of the microtransactions, happening in the payment channel and leading to a myriad of congestion based attack vectors.
- Payment channels are time-locked (a transaction becomes spendable at some blockheight in the future) which means that if blocks are full, participants may be unable to exit their payment channel.This enables people to game the system through a “Forced Expiration Spam attack” by taking coins and spamming the blockchain to prevent users from closing their side of the transaction (which would negate the attack) before timeout expiry. To counter this, some flags are introduced where miners are adding some data into the block to stop the timers for payment channels so honest players can get their transactions into the block without worrying their funds are lost. Doing so means miners must know when to add these flags, and also means it adds a layer of perception to a decentralized system which is meant to be logical, guaranteeing rewards for work rather than any personal interest or relationship.
- Payment channels are not guaranteed to enable payments to occur, there are multiple technical problems due to the fact that there is no consensus system for payments or ordering. If a routing problem occurs, which is fairly common even in well-connected networks, then users have no ability to transact.
Syscoin addresses these issues.
Its effective block capacity for segwit transactions of 160MB every 10 minutes covers the demand of global commerce and reduces the frequency of full blocks and in effect the likelihood of Forced Expiration Spam attacks.
If a payment channel issue does arise, Z-DAG allows users to settle even microtransactions onchain, albeit at a slightly higher fee. Z-DAG transactions stay cost-effective due to a unique fee-market. As Z-DAG transactions gain protection against double-spend attacks within 10 seconds and can be spent again - while being unconfirmed - from the mempool, both merchant and buyer have less interest in getting their transaction into the very next block. With the motivation to pay a more-than-average fee removed, what remains is a motivation to pay a more-than-minimum fee as wallets have to ensure the transaction isn’t dropped from the mempool once that gets full.
The default size of the mempool is 3GB (around 1.5m transactions). Transactions from the mempool would be cleared in chunks of 16MB (segwit block size on Syscoin) every minute (or around 3300 of confirmed transactions per second). Fees for onchain transactions in Z-DAG should be commensurate with confirmation in say 5-10 minutes instead of 1 minute (next block) which reduces fees dramatically.
Having onchain scalability as well as off chain scalability creates a hybrid approach without affecting baseline decentralization or security. Users can pay off chain in most cases, or fall back to onchain Z-DAG if there are any issues. This kind of approach is unique to Syscoin and is what enables it to create convenience as well as dependability for a payments platform.
Visa/Mastercard today are common payment rails. They are conveniently able to process thousands of transactions per second but that comes at a large cost offloaded to merchants and consumers. It also suffers from uptime guarantees as they are more likely to go down under stress than decentralized systems. If you can offer a system with better uptime guarantees (through a decentralized onchain/offchain hybrid solution) while still enabling fully secure payments then you have a viable solution and a technology that is valuable to the global payments market at a time where businesses are looking to cut costs, remove middlemen and “go digital” to serve the demands of the new generation of spenders. It also allows for the transaction medium to represent value that is tamper resistant and the transaction itself remains between individuals without third parties which may intrude into the payment process and degrade privacy.
Creating the first asset-transacting Lightning Network
Our goal is to create a Lightning Network that allows you to transact Syscoin Platform Tokens (SPTs instead of say Bitcoin or Syscoin). For a single SPT, the Lightning Network spec combined with Syscoin’s features provides a viable solution. In Lightning Networks that allow to send multiple different assets though, there is a principle problem that is a major showstopper.
On a payment channel route consisting of two channels allowing each for a different asset to be transacted, a payer could pay in one currency while a payee receives another currency and the operator of the middle node earns a small fee for the service of exchanging the tokens as depicted in the figure below.
The problem arises when the payer and the payee collude or are the same person. In this case, due to the design of Lightning Network payment channels, they have two options: they can either accept the payment, in which case they exchange token A for token B at the prearranged rate, or they can wait until the payment channels time out and they get back token A. This gives the colluding pair a free option of either exchanging or not exchanging over the lifetime of the payment channel, which they can exploit to profit from exchange rate changes between the two tokens at the cost of the operator providing the exchange service.
Avenues of mitigating the risk posed by changing exchange rates have failed so far.
Reduced payment channel lifetimes lead to a drastic increase of the onchain transaction volume as payment channels close and re-open frequently. This undermines the bandwidth savings and increases transaction costs.
Increased transaction fees also undermine the savings in transaction costs.
Fees payable in case of transaction failure due to channel timeout break the Lightning Network’s routing model, which relies on routing failures to be free.
That all said, we will continue researching ways to interoperate assets on our Lightning Network through our partnership with the payment channel experts of Delft Blockchain Lab at TU Delft.
So again we will look to mitigate these attacks. The only way we see currently is if the people who exchange different tokens increase their fees and premiums to offset risks. This might work but we will need a better solution going forward. Our research will hopefully uncover ways to solve the problems.
The BOLT spec recently enabled TLV extensions for data which means we can add our asset colouring information in BOLT messages so it should make integration into the Lightning Network specification fairly easy once UTXO-based assets are enabled on the network. Because of the issues around multi-asset networks, each major asset on the Syscoin network would require its own payment channel network. We are talking to asset operators and new potential operators to facilitate the creation of these networks so they create their own highly efficient and scalable payments ecosystem. Business models such as spendable stablecoins become possible for the first time. This will enable developers and businesses to bring a whole new complexion to the asset-backed cryptocurrency industry.
The vision is that each of these networks are independent without polluting risk amongst one another and are all backed by the Syscoin blockchain, which offers a fallback payment solution using Z-DAG and finality through Nakamoto Consensus secured by merged-mining Bitcoin.