Skip to content

Instantly share code, notes, and snippets.

Last active May 18, 2020 09:29
Show Gist options
  • Save 0x2830/25232fe9cfd4c8ae4f22565826cd0c9c to your computer and use it in GitHub Desktop.
Save 0x2830/25232fe9cfd4c8ae4f22565826cd0c9c to your computer and use it in GitHub Desktop.
0x2830 - BLSCT proposal for NavCoin community fund.
Hello @everyone!
Over the last three months, I have been in charge of developing the BLSCT implementation in NavCoin core. BLSCT is a new method for adding privacy to transactions using NAV. Its characteristics will allow you to hide the amount and its recipient. BLS signatures also allow nodes to collaborate with each other by mixing their coins to disguise the origin of payments. Nodes that participate and contribute their coins to this process can earn small rewards, incentivizing users to hold their coins. All of this happens in a trustless and decentralized way!
Before starting my work on this project, @aguycalled explained how contributions are funded using the community fund. Since this is my first contribution to the project, I decided to write code first. This way, you know more about how I work, and you can value my contribution better.
In these three months, I have completed:
- Research, design, and architecture of the BLSCT protocol.
- Written a library for operations on the elliptic curve BLS12-381.
- Written an implementation of Bulletproofs using the elliptic curve BLS12-381.
- Integrated a TOR node in the NavCoin wallet.
- Implemented support to manage the cryptographic keys necessary to carry out private transactions.
- Essential support in the graphical interface and RPC commands for sending and receiving using the new privacy features.
- Implemented a P2P protocol for coin aggregation between nodes.
In the next three months, my work would focus on refining the system, finalizing the integration in the graphical interface, and RPC commands, in addition to adding test units. This should allow activating BLSCT on the testnet, a previous step to see it on the mainnet!
I discussed in Discord about what amount should be requested and decided to create a proposal for 300,000 NAV. I would claim 40% of the total amount as soon as my suggestion for funding sees enough positive votes for the work I've done in the last three months. When the protocol is activated in the testnet, I would ask for another 20%. The remaining amount would be locked until privacy is fully enabled in the mainnet.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment