What privacy problem are you solving?
Describe the pain point. What are the shortcomings of current solutions?
Right now, thousands of developers all over the world are programming smart contracts to build decentralized applications (commonly known as “dapps”). Arguably, privacy concerns play a part in discouraging adoption beyond the crypto niche, as traditional investors hesitate to expose how much they trade on a trading dapp like Uniswap, or how often they invest & borrow on a lending dapp like Compound.
What is needed is the incognito mode for smart contracts. Once this is available, we will unlock two essential use cases.
-
For crypto users: you will be able to use existing dapps anonymously — buying & selling crypto anonymously on Uniswap, investing & borrowing anonymously on Compound, minting DAI anonymously at MakerDAO, etc.
-
For crypto builders: you can build your own dapps and write your own smart contracts on Ethereum, and out of the box, you can provide the incognito mode for your smart contracts for your users too.
What is the solution?
Why is it a good idea? What’s new about what you’re doing? The more details, the better. Sketches, mockups, demos, prototypes, videos, pictures - it all helps community members get excited as you are.
There are some teams actively working on privacy for smart contracts, such as Oasis and RenVM. We believe there is a different approach.
We’re exploring a way to simply unshield the input when making a smart contract function call, then shield the output (or “returned value”) from it. The smart contract runs as-is on Ethereum.
This approach avoids the need to build a new EVM from scratch. We reuse the existing Ethereum EVM and thousands of existing Ethereum dapps and focus on solving the privacy problem for dapp users. Developers can build dapps as usual on Ethereum, and also offer their users the choice of accessing these dapps in incognito mode.
What substitutes do people resort to because this doesn’t exist yet?
Who are the direct and indirect competitors? Why is your solution better?
There are several approaches to allow developers to build dapps in a confidential manner:
-
Implement privacy functions (encrypt & verify) right on top smart contracts (Ethereum’s, Neo’s and so on). Every newly created dapp will then use those functions for its operations.
-
Create a completely new VM with built-in privacy supported.
Each of the above approaches has its own downside; gas expense for cryptographic computation in the former, or huge engineering and testing efforts in the latter.
In our approach, we’re trying to utilize existing weapons: privacy of Incognito chain and battle-tested EVM of Ethereum. Dapp developers can still write and deploy smart contracts to Ethereum, and Incognito users can still experience those dapps seamlessly and anonymously using their privacy coins (pETH, pDAI, etc.)
Who are you?
Introduce the project team members (schools, jobs, projects, github, twitter, blogs, etc.) and any similar work you’ve done.
The project will be implemented by @harry, @thachtb, and @tien on the core team.
-
@thachtb has nearly 3 years of experience as a blockchain engineer. Previously, he was a leader of a crypto-exchange project. He has contributed to many blockchain projects as a core member. And now he is a smart contract engineer of the project. In his spare time, apart from coding, he also loves mentoring about blockchain stuff.
-
@tien has over 4 years of experience as a senior software engineer. Previously, he was a core developer for a Japanese employment service in Vietnam. He is now the frontend lead responsible for building the Incognito wallet. He is also a community enthusiast and loves asking questions and giving answers on Stack Overflow.
-
@harry recently joined Incognito’s interoperability team to help build cool stuff. Previously, @harry worked for one of the biggest e-commerce systems in Vietnam called Tiki. He has had experiences with the popular programming languages as well as messaging systems like Kafka in a microservices architecture. He’s strongly interested in building scalable and reliable systems with low latency APIs. On a less serious note, as a human, he’d love to sleep well at night by building monitoring systems apart from the main system.
Why do you care?
Tell people why you’re passionate about your privacy project and committed to making it happen.
As we’ve mentioned previously, there are many developers (including ourselves) who want to build dapps to serve as many users as possible. However, we feel that the lack of privacy would be of big concern to our users, especially in financial applications where there is a need for confidential transactions. We believe Incognito mode for smart contracts will help solve this problem.
What’s your plan? What’s your schedule?
Layout a clear, specific timeline for what community members can expect.
The project duration will be 3 months from Feb 1, 2020 to April 30, 2020.
Ship Date | Deliverable |
---|---|
March 31, 2020 | Ship pKyber (incognito mode for Kyber) |
April 30, 2020 | Ship pCompound (incognito mode for Compound) |
May 21, 2020 | Ship pUniswap (incognito mode for Uniswap) |
What’s your budget?
A simple breakdown lets community members know you’ve thought things through and have a workable plan, so they can trust you to use funds wisely.
The project will be undertaken by 4 engineers for 3 months.
Resource | Cost | Quantity | Monthly Cost |
---|---|---|---|
Incognito Protocol Engineer | 1,000 PRV | 1 | 1,000 PRV |
Ethereum Smart Contract Engineer | 1,000 PRV | 1 | 1,000 PRV |
Senior Software Engineer (1 month) | 500 PRV | 2 | 1,000 PRV |
| TOTAL (x 3 months) | | | 7,000 PRV |
Is there an existing conversation around this idea?
Not yet on this forum. Let us know what you think!
Is there anything else you would like the community to know?
Feedback welcome. What do you think is the best way to offer incognito mode for dapps?