XELIS is an innovative cryptocurrency built from scratch with BlockDAG, Homomorphic Encryption, Zero-Knowledge Proofs, and Smart Contracts.
It's built with the famous programming language Rust, to be fast and secure using its memory safe features.
Database, P2P, and API IO are all handled using an event-driven asynchronous task system.
It is extremely easy to monitor the network with the event system available for developers to be notified on any events happening on the network and to be able to react instantly to them.
Main Features
BlockDAG is used to improve the scalability and the security of the network.
Instead of choosing between two chains during soft forks, BlockDAG merges both chains into one.
Homomorphic Encryption is enabled using ElGamal to provide privacy on transactions (transferred amounts) and balances.
ElGamal cryptosystem was chosen because it's a well known and studied encryption algorithm which has homomorphism features.
ElGamal is used in combination with the Ristretto255 curve to provide a good level of security (~128 bits of security).
Homomorphic operations available using ElGamal are addition/subtraction between ciphertexts and/or plaintext and multiplication against plaintext value.
Account Model (instead of UTXO like Bitcoin) was chosen in order to be faster, smaller, and easier for everyone.
It allows to have a more flexible system than UTXO model and to have a better privacy because there is no need to link inputs and outputs, which provide real fungibility.
It also enables the fast-sync feature to only download the last state of the chain instead of downloading all its history.
Pruning system is available to reduce the size of the blockchain by removing old blocks and transactions.
P2P Encrypted Network is used to prevent any network traffic analysis and to provide better privacy. All messages between nodes are encrypted with ChaCha20-Poly1305. Messages keys are rotated every GB of data.
Smart Contracts are not yet available, but progress is being made towards their development.
To read more in details about all features available, please use the Features tab.
Network
Three built-in networks are available for use.
The mainnet is the primary network. Testnet and devnet are for testing and development and can be reset at any time. All networks have the exact same consensus rules, but do not share the same chain or peers.
Consensus
The current configuration of the consensus is the following:
- Target Block Time is
15
seconds. - Minimum transaction fee is
0.00001000
XEL per KB. - Full coin can be divided up to
8
decimals. - Maximum supply is set to
18.4
millions. - Maximum block size is set to
1.25
MB. - Maximum transaction size is set to
1
MB.
To prevent mis-using addresses across different networks, we set them a prefix.
Mainnet addresses begin with with xel
prefix, while devnet/testnet addresses begin with xet
.
Objectives
We want to provide better privacy than Bitcoin and Ethereum by having encrypted balances and encrypted transferred amounts.
This is done using Homomorphic Encryption and Zero-Knowledge Proof.
This means nobody except you can see how much you own and how much you spend.
Scalability and security is also a point we try to solve using a BlockDAG.
Because of a low block time target we may have some orphaned blocks.
We try to reduce its rate as much as we can by using a BlockDAG which allows a higher count of blocks, faster confirmation, better security and more transactions per seconds.
Smart Contracts are a necessity to build a real DeFi ecosystem, it is planned to have Smart Contract support using our own Virtual Machine.
Confidential Assets will allow to have real decentralized tokens, with the same level of privacy and decentralization as XELIS and not just a Smart Contract managing numbers.
Decentralized network is a necessity for its own security and to remove any failure point.
We can have a decentralized network by having a lot of nodes spread across the Earth, but we can also have reward emissions decentralized.
This is done by attracting CPUs and GPUs miners to join mining XELIS using a friendly PoW algorithm.
Ease of use is one of our main focuses to attract everyone and have real adoption in daily usage.
It is not only for people using our software, but also for developers to create and integrate any kind of application.
Funding
XELIS is a community-driven project and is not funded by any company or organization.
To help its development, success, and provide continuous support, we have set a decreasing dev fee curve starting at 10%
on block reward.
The funds are crucial to ensure a strong early ecosystem. This guarantees, a constant stream of capital exclusively used for the growth of the blockchain.
The funds are not there for a money grab, nor for being dumped; they are exclusively used for past / future network development expenses. The community can also suggest, ask questions about, and help decide how the funds will be spent.
Dev fee halving is as following:
10%
from block 0 to 3,249,999 (expected time is ~1.5 years with BlockDAG).5%
from 3,250,000 until the project being developed is stable on major facets of the ecosystem in order to reduce it.
There are multiple reasons why we opted for a dev fee halving, but one among others, is to prevent big miners from earning too much during the birth of the project, especially when the block reward is at the highest and the mining difficulty at the lowest. This is to avoid quick accumulation and manipulation of a young market. Despite all of this, the miners still have plenty of room to make a profit and reinvest wherever they see fit.
As of now, XELIS does not have Smart Contract capabilities, but after the integration, we will be able to redirect the fees into an exclusive Smart Contract with multiple trustees. It will allow to create a DAO and manage all of this trustlessly and in simplicity. On the plus side, the fees are not here to stay. They will decrease and may be exempt entirely when the network can sustain itself without it.
All in all, a dev fee is the best solution we came up with. We do not have mining infrastructures, and we cannot mine the network ourselves as easily as you could back in the day. We are aware that there are big miners we can't compete with, and we absolutely need funds for maintaining a healthy growing environment. We have the best interest for this platform, not powerful entities joining for a quick turnaround. The dev fund is here to keep us in the same playing field as them, and inject back exactly where the network needs it.