project screenshot 1
project screenshot 2
project screenshot 3

zkCV

Anonymous, until not. Side stepping unconscious bias with blockchain thorough an anonymous CV application process

zkCV

Created At

Circuit Breaker

Project Description

The "Zero-Knowledge CV" project introduces an innovative solution aimed at eliminating conscious and unconscious biases in the job recruitment process. By anonymizing CV submissions through Semaphore groups and blockchain technology, we ensure that candidates are judged solely on their qualifications, promoting fairness and diversity in hiring.

Employers create job advertisements as Semaphore groups, allowing applicants to submit their CVs anonymously via an IPFS hash, with personal information redacted. This process maintains applicant privacy while focusing on their skills and experiences. However, the challenge of verifying CV ownership without revealing identity led us to devise an ad-hoc solution using Ethereum's attestation service. Applicants attest to their CV's hash upon submission, and upon selection, we verify ownership by matching the attestation data against the chosen CV list, ensuring the applicant's current address aligns with the attestation creator's.

During development, we encountered technical hurdles, notably with the Semaphore's generateProof function, which proved incompatible with our front-end. This led us to opt for proof generation through an external API, a workaround that, while effective, highlighted the need for more seamless integration in future iterations. Additionally, we recognize that our project's user interface (UI) and user experience (UX) require significant enhancement. Despite these challenges, our commitment to delivering a viable solution drove us to submit our project, confident in its foundational concept and potential impact.

The "Zero-Knowledge CV" project marks a pivotal step toward a more equitable job market, where hiring is purely merit-based. Although acknowledging the necessity for a more robust verification process and improved UI/UX, we are committed to refining our solution, inspired by the progress we've made and the obstacles we've overcome.

How it's Made

We used a Vite react front end. We used Redux for state management (most of the time). Hardhat for the smart contract dev framework. Used Sempahore protocol to allow for anon cv submission and EAS to to attest the cvHash to proved ownership of the chosen cv. Contracts all deployed on Scroll.

background image mobile

Join the mailing list

Get the latest news and updates