PolyMix

PolyMix

Elevate Your Security, Embrace Cryptographic Privacy

Created on 3rd June 2023

PolyMix

PolyMix

Elevate Your Security, Embrace Cryptographic Privacy

The problem PolyMix solves

Polymix offers individuals a way to enhance the privacy and security of their digital transactions.

Enhanced Privacy: By utilizing a crypto mixer, individuals can obscure the traceability of their transactions, making it harder for others to link their financial activities to their identity. This heightened privacy protects sensitive financial information from prying eyes.

Increased Security: Crypto mixers help protect against transaction analysis and tracking. They provide an additional layer of security by breaking the transaction trail, making it difficult for potential attackers or malicious actors to gain insights into one's financial behavior.

Preserving Financial Confidentiality: Using a crypto mixer allows individuals to maintain their financial confidentiality. It enables them to keep their transaction history private and safeguards their financial information from being exposed or exploited.

To ensure strict compliance with Anti-Money Laundering (AML) regulations, our Polymix platform has implemented stringent measures. While Polymix is designed for public use, we acknowledge the potential misuse for illicit activities. To address this concern, we have introduced a verification process where only verified entities and authorized personnel can withdraw funds from the mixer. This precautionary measure safeguards against the misuse of the platform and reinforces our commitment to maintaining a secure and responsible financial ecosystem.

Challenges we ran into

The biggest challenge that we ran into was that we were not really sure on what format the input data should be fed into the verifier contract which is on-chain and verifies the proof generated by groth16.

const proofInput = await { "root": utils.BNToDecimal(decodedData.root), "nullifierHash": input.nullifierHash, "recipient": utils.BNToDecimal(account.address), "secret": utils.BN256ToBin(input.secret).split(""), "nullifier": utils.BN256ToBin(input.nullifier).split(""), "hashPairings": decodedData.hashPairings.map((n) => utils.BNToDecimal(n)), "hashDirections": decodedData.pairDirection };

We went through the snarkjs library verifier contract documentation and it was not realy helpful since this is relatively new technology.

Later we reached out to the community and they helped us fixing this issue.

Tracks Applied (5)

Web3

PolyMix is a decentralized crypto mixer project that aligns with the Web3 track of the hackathon. It leverages blockchai...Read More

Ethereum + Polygon Track

PolyMix's deployment on the Mumbai Testnet of Polygon makes it relevant to the Ethereum+Polygon track. It demonstrates P...Read More
Polygon

Polygon

Ethereum Track

Polygon is built on polygon which is a sidechain of ethereum
Polygon

Polygon

Filecoin

PolyMix's hosting on IPFS aligns it with the Filecoin track. By leveraging IPFS as a decentralized file storage system, ...Read More
Filecoin

Filecoin

Grand Prize

PolyMix fits into the "Grand Prize" track by demonstrating innovation, technical excellence, and potential impact. With ...Read More

Discussion

Builders also viewed

See more projects on Devfolio