We use cookies to enhance your browsing experience and analyze our traffic. By clicking "Accept All", you consent to our use of cookies.. View our Privacy Policy for more information.
Your browser (Internet Explorer) is out of date. Please download one of these up-to-date, free and excellent browsers:
For more security speed and comfort.
The download is safe from the vendor's official website.


How to: Proof of HUMANity

Harjyot Singh
Jun 17, 2021

How to: Proof of HUMANity

2 min read

What is Proof of HUMANity?

Proof of HUMANity is a way to verify human activity on-chain; we believe it is the first tool which can accurately and comprehensively block bots in this context. The HUMAN Protocol Foundation has accomplished this by integrating hCaptcha with the Metamask API, which is the most popular wallet on the most popular blockchain for DApps, making the bot-blocking technology readily available to a large portion of those who can benefit from it most.

For DApp developers looking to implement Proof of HUMANity on their apps, visit the HUMAN Protocol Github. For the details on how we created this, read our blog post.

Application launch: the demo

Below is a step-by-step guide for end-users to participate in Proof of HUMANity enabled applications. The initial application, which is simply a demo for on-chain governance applications, is a simple ‘for’ or ‘against’ vote, as you will see when you go through the setup.

Step 1: at https://labs.humanprotocol.org/, select the browser you wish to use for the HUMAN enabled Metamask extension.

Step 1: select browser

Step 2: unzip the downloaded file.

Step 3: visit the extensions page for your browser. For Chrome, this is chrome://extensions.

Step 4: click ‘Developer mode’ in the top right; then click ‘Load unpacked’. 

Step 4

Step 5: select the unpacked/unzipped folder for the Metamask extension.

Tip: to get Metamask pinned to your browser for easy access, click the ‘Extensions’ button at the top right corner of Chrome, and make sure the application is pinned.

Step 6: sign up or import your Metamask account. The demo application runs on Kavan Test Network only, so make sure you select this chain. To execute the demo, you will need Test Ether (no market value) on the Kovan Network. You can get this from a faucet site, such as: https://faucet.kovan.network/, for which you will need a Github account. Enter your KETH address, and an amount of test Ether will be sent for you to use.

Step 6: getting Test Ether on Kovan Network

Step 7: enter the demo app: https://human-demo.herokuapp.com/. This can also be accessed through https://labs.humanprotocol.org/, followed by ‘Demo’. Click ‘Connect to Metamask’.

Step 7: demo page with connected Metamask

Step 8: when you try to engage in the demo vote, an hCaptcha window will push through your Metamask extension. Solve the CAPTCHA, and your vote will be processed. 

Step 8: solving the CAPTCHA

Well done! You have successfully participated in a human-assured application.

The next steps...

The purpose of this tutorial is to demonstrate how Proof of HUMANity works. As for how this can be applied, there are a multitude of possibilities. A few examples include:

  • Securing DeFi pools, where bots hold onto tokens to create scarcity and thereby manipulate the price.
  • Increasing the cost of front running, which occurs on Ethereum because bots can place bids of a higher gas price on a transaction. Miners are incentivized to place the bots’ transactions ahead of others in creating the block. 
  • Reducing vote-stuffing in governance applications, where bots can influence voting results.

We have built this demonstration using hCaptcha as it is one of the most popular and widely available humanity verification options, but other challenge sources could also be used. In principle, any HUMAN Exchange - compatible with the same APIs - should be usable in this context, allowing many different types of questions to be asked.

For the latest updates on HUMAN Protocol, follow us on Twitter or join our community Telegram channel.

Legal Disclaimer

The HUMAN Protocol Foundation makes no representation, warranty, or undertaking, express or implied, as to the accuracy, reliability, completeness, or reasonableness of the information contained here. Any assumptions, opinions, and estimations expressed constitute the HUMAN Protocol Foundation’s judgment as of the time of publishing and are subject to change without notice. Any projection contained within the information presented here is based on a number of assumptions, and there can be no guarantee that any projected outcomes will be achieved.

Guest post