This repo gives a simple demonstration of the client-puzzle protocol from the publication of Ari Juels and John Brainard. The protocol is an effective way of slowing down robots with the goal of making them as slow as normal humans. This can greatly impede robots from performing unwanted actions on your website.
The backend runs in Node.js. For most amusement, provide a
Giphy API Key through the environmental variable
giphy_api_key
.
This app requires Node.js and Express.
It is desirable (but not required) to set a
Giphy API Key through the environmental variable
giphy_api_key
.
Run the demo by typing node app.js
and then open your
favourite browser to
http://127.0.0.1:5000/search.html.
Type something in the search and it will return a result from
Giphy after your browser solves the client-side
puzzle.
For more information, please see my blog on the client-puzzle protocol.