This story draft by @escholar has not been reviewed by an editor, YET.
This paper is available on arxiv under CC BY-NC-SA 4.0 DEED license.
Authors:
(1) Carlos Efrain Quintero-Narvaez, School of Science and Engineering Tecnologico de Monterrey;
(2) Raul Monroy-Borja, School of Science and Engineering Tecnologico de Monterrey.
The significance of the use of the described approach for the P3rsonalities platform lies in the resulting Soulbound NFT. This NFT is unique and cannot be transferred, making it a valuable piece of evidence for anyone interested in verifying the results of the personality test. By combining ZK proofs, ERC-721 NFTs, and the Circom 2 generated Solidity verifier, we have created a secure and tamper-evident solution for result validation and attestation.
Our implementation demonstrates the practical application of ZK proofs and NFTs in the context of questionnaire evaluation. The use of Circom 2 and its integration with ERC-721 Smart Contracts allowed us to achieve efficient and secure result validation. The results provide an immutable and verifiable record of the user’s test result, which holds value for various purposes, such as research and identity verification.
Further research and experimentation can explore scalability, performance optimization, and potential extensions of this approach. Furthermore, it is also worth it to research the potential vulnerabilities of the protocol implemented here. Indeed, although this protocol is good at first glance, it still has some inherent vulnerabilities, such as users being able to “cheat” by sharing the answers that led to a certain result of the test in the past. However, this issue can be resolved by having a larger bank of questions such that it is improbable for two users to get the same set of questions. Thus making it infeasible to cheat by sharing the answers to an instance of the test.
On the matter of scalability, this protocol is mainly limited by the capacity of the centralized server that executes the evaluation of the questionnaire and generates the corresponding proof. On the contrary, the verification part of the protocol executed on the EVM blockchain scales pretty well in comparison, due to the decentralized nature of the blockchain network. A possible solution to the bottleneck caused by the centralized server could be to decentralize that part too. However, this is difficult as executing the questionnaire evaluation on the blockchain requires publishing the corresponding code, compromising the integrity of the evaluation. Decentralized access control protocols like Lit Protocol [9] could offer a solution to this issue, but further research is needed.