Synergy solves the problem of limited control over personal data and the inability to monetize it. It allows users to aggregate their on-chain and off-chain accounts into valuable user profiles without revealing their specific information. Data curators can turn the data into a service for B-side, enabling them to solve actual problems while protecting user privacy. Synergy makes it easier for users to benefit from sharing their data and provides a safer way to monetize it.
Specifically, there are two limtations to be solved:
(1) Limitations of data curating
Our data generates value in our daily lives, such as search engines using our browsing data for ads, and using our past experiences to endorse our abilities or apply for jobs. However, in web2 and web3, the value generated by our data does not belong to us.
We need an infrastructure that allows us to have more data than others and control whether or not to make them public, so we can benefit from sharing them.
(2) Limitations of data aggregating
Data integration amplifies its value. By aggregating information from different platforms, a user's profile can become very rich, providing insights that cannot be obtained from just one platform.
In the on-chain data field, aggregating wallet addresses can help overcome the issue of fragmented data. This enables users to have more data than others, giving them an advantage in the field.
Challenges I ran into during building Synergy include implementing zero-knowledge proof technology, ensuring data privacy and security, and integrating different components of the system. These challenges can be overcome through thorough research, testing, and collaboration with experts in the field. Additionally, using established frameworks and libraries can help simplify the development process and reduce the risk of errors or bugs.
Specifically, a very tricky problem is I need to transform proof of account ownership into proof of secret knowledge, which is required in zero-knowledge (ZK) systems. Because ecdsa signature is very expensive in circom constraint calculation so that transformation can make eddsa signature a substitution solution. How I implement the solution is as below:
I achieves this by verifying the validity of the account ownership proof and recording the commitment for the account in a mapping stored in a database. The Commitment Mapper then sends a signed commitment receipt to the user, confirming that they have completed the commitment process. This process allows users to prove that they know the secret without revealing it, making it cheaper and more secure to use in constrained environments like zk-SNARK circuits. The Commitment Mapper is deployed in an isolated infrastructure, following best practices with high web2 security in mind, and is open-source.
Tracks Applied (1)
Discussion