How to add Sybil resistance to your dApp on Hemi

How to add Sybil resistance to your dApp on Hemi

Hemi is a modular blockchain platform built to deliver scalability, security, and seamless interoperability, combining the strengths of Bitcoin and Ethereum. Whether you're building DeFi protocols, interoperable dApps, or onchain games, Sybil attacks are a threat you can't ignore.

Biomapper, a tool by Humanode, is now deployed on Hemi. It brings Proof of Personhood directly onchain. No KYC. No identity exposure. Just cryptographic proof that a wallet belongs to a real, unique human.

Why sybil resistance matters on Hemi

Low fees and high performance are great, but they also make it easier for attackers to spin up thousands of wallets. Biomapper helps mitigate that by tying each EVM wallet address to one unique human.

Use cases:

  • Gaming and quests: Ensure only real players get rewards
  • DeFi protocols: Prevent multi-wallet farming in staking and liquidity incentives
  • Governance: Enable fair one-human-one-vote systems
  • Credentialing: Stop badge minting and SBT issuance from being botted

Why Biomapper fits Hemi

Biomapper is designed with privacy and cryptographic trust in mind:

  • Private Biometric Verification: Biometric scans are processed in an AMD SEV-SNP secured Confidential Virtual Machine (CVM). Even Humanode can't access them.
  • No Identity Exposure: There’s no need to know who a user is, only that they’re real and unique.
  • One Person = One Wallet: A user’s biometric data is linked to a single EVM wallet address per generation, and Sybil attacks are cryptographically blocked.

With Biomapper, you can verify uniqueness across the Hemi ecosystem in a trustless and secure way.

Key Concepts

Before you begin, it's helpful to understand a few core Biomapper concepts:

  • Generations: Each uniqueness verification is valid within a "generation", a fixed time period after which users must reverify
  • Integration Flow: Users verify themselves once, bridge their uniqueness proof to Hemi, and interact across multiple dApps

How to Integrate Biomapper into Your Hemi dApp

Step 1: Install the Biomapper SDK

Install the packages with your preferred tool:

npm install --save @biomapper-sdk/core @biomapper-sdk/libraries @biomapper-sdk/events

Or using Yarn:

yarn add @biomapper-sdk/core @biomapper-sdk/libraries @biomapper-sdk/events

Or with Foundry:

forge install humanode-network/biomapper-sdk

Step 2: Import Biomapper Interfaces

In your Solidity contract, import the necessary libraries:

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.20;

import { IBridgedBiomapperRead } from "@biomapper-sdk/core/IBridgedBiomapperRead.sol";

import { IBiomapperLogRead } from "@biomapper-sdk/core/IBiomapperLogRead.sol";

import { BiomapperLogLib } from "@biomapper-sdk/libraries/BiomapperLogLib.sol";

Step 3: Connect to the Deployed Biomapper Contract on Hemi

Use the deployed address for BridgedBiomapper on Hemi.

Example: Verifying Unique Players in a Game

pragma solidity ^0.8.0;

import "@biomapper-sdk/core/IBridgedBiomapperRead.sol";

contract UniquePlayerReward {

    IBridgedBiomapperRead public biomapper;

    mapping(address => bool) public hasClaimed;

    constructor(address _biomapperAddress) {

        biomapper = IBridgedBiomapperRead(_biomapperAddress);

    }

    function claimReward() external {

        require(biomapper.isBridgedUnique(msg.sender), "User not unique");

        require(!hasClaimed[msg.sender], "Already claimed");

        hasClaimed[msg.sender] = true;

        // distribute reward here

    }
}

Step 4: Use Mocks for Local Testing

For development, simulate biomapping with:

function generationsBridgingTxPointsListItem(uint256 ptr) external view returns (GenerationBridgingTxPoint memory);

Refer to the Biomapper SDK Docs for examples.

Step 5: Add Biomapper UI to Your Frontend

Let users complete their verification via the Biomapper App:

< a href="https://biomapper.hmnd.app" target="_blank">Verify Your Uniqueness< / a>

Once they’ve verified, they can return and interact with your dApp.

Deployment & Rollout

  • Deploy your smart contracts on Hemi
  • Connect them to the deployed BridgedBiomapper contract address
  • Link your UI to the Biomapper App
  • Test thoroughly in testnet before going live

So

Hemi enables scalable, secure dApp deployment, and now with Biomapper, you can ensure your users are real humans. No KYC. No guesswork. Just privacy-preserving proof of personhood.

Biomapper is live. Go build.

Resources