In the next few days the COLX wallet will be updated to include the zerocoin protocol. Many members of the community have questions, and with this article we hope to make this newest update transparent. So, what does ZeroCoin mean for you?
Why Zerocoin is important to the ColossusXT platform:
Coming at the cost of a delayed release, the implementation of the ZeroCoin protocol will prove to be a key feature of the ColossusXT platform, protecting users from being tracked, identified and attacked. Our primary goal is to put users privacy first, and the protocol is paramount to our view of a private resource grid system.
1) ZeroCoin can hide your coin balance from prying eyes protecting you from being targeted. Your ZeroCoin balance isn’t linked to any particular address.
2) ZeroCoin can hide the transaction history of the coins being sent. Source & target addresses aren’t visible making it private, safe & fungible.
3) Automatic conversion to ZeroCoin is enabled by default, but transparent transfer options are still available. It means that as a user you can always send a fully transparent transaction when required.
When will ZeroCoin start?:
The ZeroCoin protocol will go live at block 500,000 or approximately 17.09.2018 (September 17th 2018). This will allow time for the majority of wallets to update to the latest build. After block 500,000 old wallets will not be able to connect to the network.
Can I stake ZeroCoins?:
At this time staking of ZeroCoins is not available. This function will come during a later release. A user will need to decide which coins they wish to stake (COLX) versus which coins they wish to set aside for anonymous transactions (ZeroCoins).
What are the associated network fees?:
1 COLX is the fee to mint single a ZeroCoin denomination. The fee was set low to encourage the creation of the anonymous currency. The current ZeroCoin denominations are 50, 100, 500, 1000, 5000, 10000, 50000, 100000.
See further down for more information on denominations
Is ZeroCoin a separate currency?:
No, ZeroCoins are your COLX coins just made anonymous. It is a protocol-level pooling of existing COLX using zero-knowledge proofs. Let’s discuss this process now.
How Zerocoin works:
Traditional cryptocurrencies provide privacy through pseudonymity, meaning that addresses are not connected to any personal details. Unfortunately, this still allows for the possibility that sets of transactions, or public addresses, can be linked to a specific individual. If that individual’s identity can be found, they lose their anonymity. Depending on the application in use, the ability to link multiple transactions or addresses to one individual alone can cause issues for that person.
With ZeroCoin (zCOLX), user’s coins are pooled into a mixing set and redeemed as needed using a zero-knowledge proof. The zero-knowledge proof enables a user to prove to another user that a transaction is true without publicly providing any information aside from the fact that the ‘money’ was sent and received. This allows for transactions to be verified as valid and take place without providing the other party with other information such as wallet balance, other transactions from the user etc.
zCOLX grants users’ total privacy and renders every end-to-end transaction entirely untraceable. This means that nobody can know the details of your personal transactions or your total wallet balance. It is not possible to trace the history of any given transaction, so nobody can data mine and recover any information to identify patterns and users in the transactions. Allowing users to hide their wallet balance prevents them from being targeted by those with bad intentions.
zCOLX allows direct anonymous payments between parties. zCOLX transactions exist alongside the (non-anonymous) COLX currency. Each user can convert (non-anonymous) COLX into (anonymous) zCOLX.
The ZeroCoin extension to COLX functions like a pooling service at the protocol level, temporarily pooling COLX together in exchange for zCOLX. It anonymizes the exchanges to and from the pool using cryptographic principles.
Users can then send zCOLX to other users, and split or merge zCOLX they own in any way that preserves the total value. Users can also convert zCOLX back into COLX, though in principle this is not necessary: all transactions can be made in terms of zCOLX.
zCOLX are purchased with COLX in fixed denominations by a ZeroCoin mint transaction. Later, these zCOLX can be redeemed for COLX to a different COLX address by a ZeroCoin spend transaction. Through the use of cryptographic accumulators and digital commitments with zero-knowledge proofs, it is not possible to link the COLX address that was used to mint the original zCOLX to the COLX address used to redeem the zCOLX.
Ok… Can you explain that in a way that is easier to digest?:
Sure. In general (and this is very high level explanation) you take your COLX coins and turn them into zCOLX (ZeroCoins). This adds them to a giant pool of zCOLX which everyone can contribute to. Your wallet still knows how many zCOLX you control, but when you send zCOLX to another user it sends it from the pool of coins thus hiding the fact that you have made a transaction.
Keep in mind that the pooling does not mean that everyone’s zCOLX is stored in a centralized location. Rather, the public ledger (decentralized blockchain) keeps track of how much zCOLX is created.
This means that each coin that gets sent using zCOLX is now 100% fungible as it has no determinable history attached to them.
When the zCOLX is received by another wallet it is turned back into COLX for the receiving user. As a user you determine if you want to make transactions using COLX or zCOLX.
Finally, a simple analogy. Think of zCOLX as casino chips. You give your 100 dollar bill (i.e. COLX to the cashier and you get some denominations 1x$10, 2x$20, 1x$50 dollar chips (i.e. zCOLX). This means that you no longer own that particular 100 dollar bill you exchanged and instead have “proof” that you still own $100. Now when you need 50 dollars of it back as fiat (COLX), you give your chips (zCOLX) back to the cashier and the cashier delivers a brand new uncirculated 50 dollar bill to a recipient of your choosing.
Now let’s walk through some of this in the wallet;
The home screen of your new wallet should look similar to your old wallet with a few additions. ( These photos were created on the COLX test network. For reference tCOLX = “test COLX”. )
Combined Balance = Total of your COLX + zCOLX
COLX Balance = Total of only your COLX
zCOLX Balance = Total of zCOLX (zCOLX is really just COLX but anonymized)
In your Settings > Options menu zCOLX automint can be enabled or disabled. If automint is enabled your wallet will always try to mint the % of COLX set here to zCOLX without user interaction. For example; If your wallet contained 100 COLX and a 50% automint was enabled your wallet would automatically turn the 100 COLX into 50 COLX and 50 zCOLX (minus the fee of course).
The privacy tab is new to this version of the COLX wallet.
‘Zerocoin Actions’ allow you to manually create zCOLX if automint is disabled. You can only mint COLX to zCOLX in multiples of 50 and within the set denominations. For example; If you told the wallet to mint 150 COLX to zCOLX it would create 1 denomination of 50 zCOLX and 1 denomination of 100 zCOLX. In total you would have created 150 zCOLX.
In the above photograph the user tries to mint 45 zCOLX but receives an error. The minimum denomination is 50 and amount must be multiples of 50.
The above values depicted in the photograph represent the total number of zCOLX under the control of the user. zCOLX can be minted using the eight (8) listed denomination values.
The above values depicted in the photograph represent the total number of zCOLX in the global pool. The user’s values are included in this calculation.
In the above photograph we send a sum of 1337 zCOLX to another user. Sending of COLX can be done with ANY number of coins. To accomplish this transaction the wallet uses a zCOLX denomination of 5000. 1337 zCOLX is sent to the end user and 3663 zCOLX is returned to the sending wallet as COLX.
When spending zCOLX denominations, a user is prompted to enter a Security Level choosing from 1–100. In an indirect way, the Security Level parameter allows the user to choose how many coins to obfuscate their transaction with.
The higher the Security Level, the more computation and time it will take to spend. Although it takes longer, a level of 100 is recommended for transactions that need maximum anonymity.
The above values depicted in the photograph show the 1337 zCOLX being sent to another user and the 3663 zCOLX being returned to the sender as as COLX.
What is next for ColossusXT?
When we are happy with the performance of the new protocol the updated wallet will be released which will include ZeroCoin. A sneak peak of the wallet was already distributed;
Further, the development team is now diving into constructing the custom I2P privacy network layer for our blockchain, code name: (TBD)
ColossusXT will be fast tracking development to meet a quicker timeline for release of the Colossus Grid. I2P is an anonymous overlay network — a network within a network. The I2P layer will serve as an abstraction layer further obfuscating the users of ColossusXT nodes. This abstraction layer allows two parties to communicate in an anonymous manner, and is optimised for anonymous file-sharing.
COLX I2P nodes, or ‘wallets’, will operate in what’s called ‘hidden mode’. This mode prevents the users IP address from being published to the I2P network. By doing this however, the user is not able to contribute bandwidth back into the I2P network. Although this will not typically be a problem considering the relatively low amount of bandwidth used by the current COLX wallet, this needs to scale with the implementation of the Colossus Grid project. To solve scaling issues COLX masternodes will be used as high bandwidth low latency nodes that contribute back to the network which in turn formulates a more distributed model.
The COLX team hopes this information was useful. Over the next few days all of our technical documents will be updated, a public news release to over 1000 news entities will go out, and we will continue to release more information about ZeroCoin and other upcoming exciting topics. Thank you for supporting our unique project.