Video thumbnail

WhoAreYou

WhoAreYou: The Real-Time "Address" Book for the Web3 Ecosystem

WhoAreYou

Created At

ETHGlobal Taipei

Project Description

WhoAreYou: The real-time "address" book for the Web3 ecosystem.

========== Problem we want so solve ==========

Transfer Risks: When your friend pays for dinner and sends you a wallet address over Messenger, how can you be sure it’s really them? maybe scam or typo, who knows? A phishing attack with a fake address — can cost you hundreds of dollars.

Cumbersome Address Lookups: Want to check wallet history or verify a contract? You’re stuck copying an address, opening Etherscan, selecting the right chain, and repeating the process across networks.

Fragmented Information Across Chains: Blockchain data is scattered across multiple explorers, making it difficult and time-consuming to piece together a complete picture of one wallet or contract.

========== About ==========

WhoAreYou is a browser extension that functions as your blockchain-native address book, designed for fast, intelligent, and cross-chain lookups of any wallet or contract address.

  • View interaction history between your wallet and any address.
  • Get real-time trust signals using ML-powered anomaly detection.
  • Instantly access key details about EOAs, ERC-20, ERC-721, and more—across multiple chains.

No more copy-pasting. No more guessing. Just hover, and know.

  1. Cross-Compatible: Works across devices, websites, dApps, and services.

  2. Lightning Fast: Retrieve address insights in under 3 seconds.

  3. Effortless UX: Just hover or copy to reveal full context. No clicks required.

Built as a Chrome extension, WhoAreYou brings instant transparency wherever you browse—no matter the chain, the service, or the page.

========== User Story ==========

  1. Is this really my friend's wallet? After a dinner out, your friend sends their wallet via Messenger to split the bill. Before sending funds, you hover over the address using WhoAreYou, which confirms that you’ve interacted with this wallet before—reducing the chance of a costly mistake or scam.

  2. Cumbersome Address Lookup: The current process of checking a wallet address requires users to copy the address, search for it manually, and open an Etherscan page using the address as a query parameter to retrieve the necessary information. If the address exists across multiple chains, the process often involves even more steps. With WhoAreYou, users can instantly and effortlessly access the most important information.

  3. Fragmented Information: When a wallet address holds activity across multiple chains, users often need to use several different blockchain explorers to piece together a complete picture. Now with WhoAreYou, cross-chain, cross-service, and cross-website lookups are seamless and unified.

========== Why It Matters ==========

WhoAreYou bridges the usability gap in Web3 by transforming how we perceive and interact with blockchain identities. It's not just about data—it's about trust, safety, and speed. In a world where every transaction counts, WhoAreYou gives you the context you need, when you need it.

Web3 is decentralized. Your tools shouldn’t be.

How it's Made

========== Extension Overview ==========

This browser extension integrates Web3 data and machine learning models. The backend uses the web3j library to interact with the blockchain via the Nodit node API, which also serves as the primary data source for training and inference of address classification models. Through ABI analysis, it identifies the type of address (e.g., EOA wallet, ERC20 token contract, ERC721 NFT contract) and fetches relevant data based on the address type for visualization on the frontend.

========== Address Classification and Display ==========

  1. Personal Addresses (EOA)

Frontend Display: type = EOA / chain / anomaly detection (ML model) / interaction warning.

Technical Implementation: Address classification and anomaly detection using machine learning models.

Loading state indicators while data is being fetched.

A popup allows users to input their wallet address, which is stored in localStorage and used as input for model predictions.

  1. Token Addresses (ERC20)

Frontend Display: type = erc20 / chain / token icon / token name / token price / symbol / token info (features)

Technical Implementation: Automatically collects token data every 30 minutes (~500 tokens), cleans the data, and extracts features.

A sliding window approach is used to create training data, simulating both historical and future price movements.

Prediction targets:

  • Whether the next price change exceeds +0.5%.
  • The direction of the price movement (up/down).
  1. NFT Addresses (ERC721)

Frontend Display: type = erc721 / chain / total supply / name

Technical Implementation: Based on standard contract patterns and on-chain data, fetches the total supply and name of the NFT collection.

Model Architecture

Model 1: Unsupervised Learning — Descan Clustering (for EOA classification) Data Source: Randomly samples 100 transactions per block from the last 100 blocks (~8,000+ unique addresses). Each address is represented by 16 features, including both statistical and time-series metrics. Analysis Flow: Uses the Descan clustering algorithm to identify clusters and central points. Calculates an optimal cluster radius to detect outliers (extreme or anomalous behavior). Flags suspicious wallet addresses based on deviation from the norm.

Model 2: Supervised Learning — CatBoost for Token Prediction. Data Pipeline: Token price data is collected every 30 minutes (~500 tokens), repeated 5 times to form a clean dataset. After processing, the final dataset (~500 records) is split into 80% training and 20% validation sets. A sliding window is used to feed previous records as input features and the current record as the label.

Prediction Goals: Predict if the next price change will exceed +0.5%. Predict the direction of the price movement (increase/decrease).

========== Tech Stack & Integration ==========

Frontend: React

Popup for user wallet input

LocalStorage integration

Loading state UI components

Backend:

Java with web3j for blockchain interaction via Nodit nodes

Python as the interface for running machine learning models

Machine Learning Models:

Descan (Unsupervised learning)

CatBoost (Supervised learning)

background image mobile

Join the mailing list

Get the latest news and updates