A privacy-by-default browser wallet that leverages PrivacyPools for no-effort private Web3 browsing.
At its core, PrivacyLinks automatically generates fresh addresses for each dApp interaction, preventing transaction linking and protecting user privacy without requiring any technical knowledge. When users connect to dApps like Uniswap, they get a new address every time, funded seamlessly through PrivacyPools.
The extension operates on a simple but powerful principle: privacy should be the default, not an opt-in feature. Users don't need to learn complex privacy techniques or manage multiple wallets manually. The system handles everything automatically - from generating session-based addresses to funding them from provably non-malicious onchain sources.
Beyond basic privacy, PrivacyLinks includes cross-chain functionality through both Circle's CCTP and Chainlink's CCIP protocols. Users can send USDC and other tokens across Ethereum L1, Avalanche, Base, Arbitrum, and Polygon networks while maintaining their privacy guarantees. The extension even includes optional address spoofing functionality, allowing users to appear as wealthy addresses to dApps for enhanced functionality.
PrivacyLinks is built as a comprehensive Chrome extension using React, TypeScript, and ethers.js.
Frontend Architecture: The extension uses React 19 with TypeScript for type safety, built using esbuild for fast compilation. The popup interface manages wallet state, transaction flows, and cross-chain transfers through custom React hooks. The background.ts script handles Web3 provider injection and transaction interception, while content.ts manages dApp communication.
Privacy Layer: The core privacy functionality centers around a Pool contract system that replaces direct wallet transfers. Instead of users sending transactions from their main wallet (which would be linkable), the extension automatically generates ephemeral session addresses and funds them by withdrawing from private pools. This is designed to integrate with PrivacyPools protocol, though the demo uses a simplified mock pool contract due to PrivacyPools' testnet integration going offline during the hackathon.
Cross-Chain Integration: The project implements cross-chain protocols for maximum flexibility. Chainlink's CCIP enables broader token support (including CCIP-BnM test tokens) with native gas payments. This allows us to fund new wallets for transactions even on other chains than Ethereum L1.