1
0
Fork 0
forked from mCaptcha/website
This commit is contained in:
Aravinth Manivannan 2023-10-21 15:02:40 +05:30
parent 9762d615a6
commit 7acfda4bc2
Signed by untrusted user: realaravinth
GPG key ID: F8F50389936984FF
110 changed files with 596 additions and 11309 deletions

0
.hugo_build.lock Normal file
View file

150
404.html
View file

@ -1,146 +1,4 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="noindex, follow">
<title>404 Page not found - mCaptcha</title>
<meta name="description" content="mCaptcha - PoW based DoS protection">
<link rel="canonical" href="/404.html">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="404 Page not found">
<meta name="twitter:description" content="mCaptcha - PoW based DoS protection">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="404 Page not found">
<meta property="og:description" content="mCaptcha - PoW based DoS protection">
<meta property="og:type" content="website">
<meta property="og:url" content="/404.html">
<meta property="og:image" content="/icon.png"/>
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "404.Html",
"item": "\/404.html\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="error404">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row justify-content-center">
<div class="col-md-12 col-lg-10 col-xl-8">
<article>
<h1 class="text-center">Page not found :(</h1>
<p class="text-center">The page you are looking for doesn't exist or has been moved.</p>
</article>
</div>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="noindex, follow"><title>404 Page not found - mCaptcha</title><meta name=description content="mCaptcha - PoW based DoS protection"><link rel=canonical href=/404.html><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="404 Page not found"><meta name=twitter:description content="mCaptcha - PoW based DoS protection"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="404 Page not found"><meta property="og:description" content="mCaptcha - PoW based DoS protection"><meta property="og:type" content="website"><meta property="og:url" content="/404.html"><meta property="og:image" content="/icon.png"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"404.Html","item":"\/404.html\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class=error404><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><h1 class=text-center>Page not found :(</h1><p class=text-center>The page you are looking for doesn't exist or has been moved.</p></article></div></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,191 +1,17 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>About - mCaptcha</title>
<meta name="description" content="About mCaptcha">
<link rel="canonical" href="/about/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="About">
<meta name="twitter:description" content="About mCaptcha">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="About">
<meta property="og:description" content="About mCaptcha">
<meta property="og:type" content="article">
<meta property="og:url" content="/about/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:published_time" content="2021-05-27T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "About",
"item": "\/about\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="page single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#philosophy">Philosophy</a></li>
<li><a href="#people">People</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<h1>About</h1>
<p class="lead"></p>
<p>mCaptcha is a kickass CAPTCHA systems that gives (DDoS)
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>About - mCaptcha</title><meta name=description content="About mCaptcha"><link rel=canonical href=/about/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="About"><meta name=twitter:description content="About mCaptcha"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="About"><meta property="og:description" content="About mCaptcha"><meta property="og:type" content="article"><meta property="og:url" content="/about/"><meta property="og:image" content="/icon.png"><meta property="article:published_time" content="2021-05-27T00:00:00+00:00"><meta property="article:modified_time" content="2023-05-29T16:01:44-04:00"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"About","item":"\/about\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="page single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class="nav-item active"><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#philosophy>Philosophy</a></li><li><a href=#people>People</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><h1>About</h1><p class=lead></p><p>mCaptcha is a kickass CAPTCHA systems that gives (DDoS)
attackers a run for their money. And we do all of this without tracking
your users. Oh and did I mention our UX is great?</p>
<p>At mCaptcha, we believe in digital freedom and privacy and so we built
an proof-of-work based CAPTCHA system that doesnt track. Seriously, no
your users. Oh and did I mention our UX is great?</p><p>At mCaptcha, we believe in digital freedom and privacy and so we built
a proof-of-work based CAPTCHA system that doesnt track. Seriously, no
tracking. But that isnt the killer feature, our system doesnt require
the user to pick cars or ID sidewalks — our system does its
thing(usually at the click of a button) and gets out of the way. Our
Philosophy</p>
<h2 id="philosophy">Philosophy<a href="#philosophy" class="anchor" aria-hidden="true">#</a> </h2>
<p>Man has has come so far only because our ancestors chose to share their
thing(usually at the click of a button) and gets out of the way.</p><h2 id=philosophy>Philosophy<a href=#philosophy class=anchor aria-hidden=true>#</a></h2><p>Man has has come so far only because our ancestors chose to share their
knowledge with others. If everything was labeled intellectual property,
we might still be stuck in Stone Age. The idea of intellectual property
is alien to us. For this reason, all of our source code is freely
available(both as in freedom and beers) at our <a href="https://github.com/mCaptcha">GitHub</a>.</p>
<h2 id="people">People<a href="#people" class="anchor" aria-hidden="true">#</a> </h2>
<ul>
<li>
<p><strong><a href="https://batsense.net">Aravinth Mavniannan</a>:</strong>
Author</p>
</li>
<li>
<p><strong><a href="https://sibichakkaravarthy.github.io/">Prof. Sibi Chakkaravarthy
available(both as in freedom and beers) at our <a href=https://github.com/mCaptcha>GitHub</a>.</p><h2 id=people>People<a href=#people class=anchor aria-hidden=true>#</a></h2><ul><li><p><strong><a href=https://batsense.net>Aravinth Mavniannan</a>:</strong>
Author</p></li><li><p><strong><a href=https://sibichakkaravarthy.github.io/>Prof. Sibi Chakkaravarthy
Sethuraman</a>:</strong> Mentor and
Security Advisor</p>
</li>
</ul>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/about/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
Security Advisor</p></li></ul><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/about/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,244 +1,22 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>December, 2021: Monthly Report - mCaptcha</title>
<meta name="description" content="New features, improved accessibility and software integrations">
<link rel="canonical" href="/blog/december-2021-monthly-report/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/blog/december-2021-monthly-report/icon.png">
<meta name="twitter:title" content="December, 2021: Monthly Report">
<meta name="twitter:description" content="New features, improved accessibility and software integrations">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="December, 2021: Monthly Report">
<meta property="og:description" content="New features, improved accessibility and software integrations">
<meta property="og:type" content="article">
<meta property="og:url" content="/blog/december-2021-monthly-report/">
<meta property="og:image" content="/blog/december-2021-monthly-report/icon.png">
<meta property="article:published_time" content="2021-12-23T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Blogdecember 2021 Monthly Report",
"item": "\/blogdecember-2021-monthly-report\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="blog single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#1-full-librejs-compliance">1. Full LibreJS Compliance</a></li>
<li><a href="#2-javascript-polyfill">2. JavaScript PolyFill</a></li>
<li><a href="#3-integration-libraries-for-vanilla-js-react-and-svelte">3. Integration libraries for Vanilla JS, React and Svelte:</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<article>
<div class="blog-header">
<h1>December, 2021: Monthly Report</h1>
<p><small>Posted December 23, 2021 by <a class="stretched-link position-relative" href="/contributors/aravinth-manivannan/">Aravinth Manivannan</a>&nbsp;&hyphen;&nbsp;<strong>2&nbsp;min read</strong></small><p>
<p><small>Last Edited March 10, 2023</small><p>
</div>
<p class="lead">We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p>
<p>Hello and welcome to the first edition of the monthly report!</p>
<p>I believe free software like mCaptcha is critical to a healthy internet
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>December, 2021: Monthly Report - mCaptcha</title><meta name=description content="New features, improved accessibility and software integrations"><link rel=canonical href=/blog/december-2021-monthly-report/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/blog/december-2021-monthly-report/icon.png"><meta name=twitter:title content="December, 2021: Monthly Report"><meta name=twitter:description content="New features, improved accessibility and software integrations"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="December, 2021: Monthly Report"><meta property="og:description" content="New features, improved accessibility and software integrations"><meta property="og:type" content="article"><meta property="og:url" content="/blog/december-2021-monthly-report/"><meta property="og:image" content="/blog/december-2021-monthly-report/icon.png"><meta property="article:published_time" content="2021-12-23T00:00:00+00:00"><meta property="article:modified_time" content="2022-06-14T15:39:59+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Blogdecember 2021 Monthly Report","item":"\/blogdecember-2021-monthly-report\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="blog single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active"><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#1-full-librejs-compliance>1. Full LibreJS Compliance</a></li><li><a href=#2-javascript-polyfill>2. JavaScript PolyFill</a></li><li><a href=#3-integration-libraries-for-vanilla-js-react-and-svelte>3. Integration libraries for Vanilla JS, React and Svelte:</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><article><div class=blog-header><h1>December, 2021: Monthly Report</h1><p><small>Posted December 23, 2021 by <a class="stretched-link position-relative" href=/contributors/aravinth-manivannan/>Aravinth Manivannan</a>&nbsp;&dash;&nbsp;<strong>2&nbsp;min read</strong></small><p><p><small>Last Edited June 14, 2022</small><p></div><p class=lead>We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p><p>Hello and welcome to the first edition of the monthly report!</p><p>I believe free software like mCaptcha is critical to a healthy internet
but being a one-person show, there&rsquo;s hardly any accountability in the
way software is built. I hope, through monthly reports, I can explain
the logic and intentions behind decisions taken in the development
process.</p>
<p>This month, the following things were accomplished:</p>
<h2 id="1-full-librejs-compliance">1. Full LibreJS Compliance</h2>
<p>The CAPTCHA widget and the admin dashboard are 100% LibreJS compliant!</p>
<figure>
<img class="img-fluid lazyload blur-up" data-sizes="auto" src="/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_20x0_resize_q75_box.jpg" data-srcset="/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_500x0_resize_q75_box.jpg 500w" width="915" height="908" alt="Screenshot of mCaptcha admin dashboard with GNU LibreJS extension&#39;s report in frame.LibreJS reports that all scripts in this webpage are accepted(and hence free software) and are licensed under the AGPL license.">
<noscript><img class="img-fluid" sizes="100vw" srcset="/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_500x0_resize_q75_box.jpg 500w" src="/blog/december-2021-monthly-report/librejs-dashboard.jpg" width="915" height="908" alt="Screenshot of mCaptcha admin dashboard with GNU LibreJS extension&#39;s report in frame.LibreJS reports that all scripts in this webpage are accepted(and hence free software) and are licensed under the AGPL license."></noscript>
<figcaption class="figure-caption">LibreJS report of the dashboard webpage</figcaption>
</figure>
<figure>
<img class="img-fluid lazyload blur-up" data-sizes="auto" src="/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_20x0_resize_q75_box.jpg" data-srcset="/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_500x0_resize_q75_box.jpg 500w" width="904" height="913" alt="Screenshot of mCaptcha client-side widget(I&#39;m-not-a-robot widget) with GNU LibreJS extension&#39;s report in frame. LibreJS reports that all scripts in this webpage are accepted(and hence free software) and are licensed under the X11(aka MIT license). It should also detect the Apache licensing but I probably botched it up.">
<noscript><img class="img-fluid" sizes="100vw" srcset="/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_500x0_resize_q75_box.jpg 500w" src="/blog/december-2021-monthly-report/librejs-widget.jpg" width="904" height="913" alt="Screenshot of mCaptcha client-side widget(I&#39;m-not-a-robot widget) with GNU LibreJS extension&#39;s report in frame. LibreJS reports that all scripts in this webpage are accepted(and hence free software) and are licensed under the X11(aka MIT license). It should also detect the Apache licensing but I probably botched it up."></noscript>
<figcaption class="figure-caption">LibreJS report of the CAPTCHA widget webpage</figcaption>
</figure>
<h2 id="2-javascript-polyfill">2. JavaScript PolyFill</h2>
<p>mCaptcha relied on a WebAssembly(WASM) port of the proof-of-work
process.</p><p>This month, the following things were accomplished:</p><h2 id=1-full-librejs-compliance>1. Full LibreJS Compliance</h2><p>The CAPTCHA widget and the admin dashboard are 100% LibreJS compliant!</p><figure><img class="img-fluid lazyload blur-up" data-sizes=auto src=/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_20x0_resize_q75_box.jpg data-srcset="/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_500x0_resize_q75_box.jpg 500w" width=915 height=908 alt="Screenshot of mCaptcha admin dashboard with GNU LibreJS extension's report in frame.LibreJS reports that all scripts in this webpage are accepted(and hence free software) and are licensed under the AGPL license."><noscript><img class=img-fluid sizes=100vw srcset="/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/librejs-dashboard_hu856cef05000f9a4e09e1cd208f2ef170_101197_500x0_resize_q75_box.jpg 500w" src=/blog/december-2021-monthly-report/librejs-dashboard.jpg width=915 height=908 alt="Screenshot of mCaptcha admin dashboard with GNU LibreJS extension's report in frame.LibreJS reports that all scripts in this webpage are accepted(and hence free software) and are licensed under the AGPL license."></noscript><figcaption class=figure-caption>LibreJS report of the dashboard webpage</figcaption></figure><figure><img class="img-fluid lazyload blur-up" data-sizes=auto src=/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_20x0_resize_q75_box.jpg data-srcset="/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_500x0_resize_q75_box.jpg 500w" width=904 height=913 alt="Screenshot of mCaptcha client-side widget(I'm-not-a-robot widget) with GNU LibreJS extension's report in frame. LibreJS reports that all scripts in this webpage are accepted(and hence free software) and are licensed under the X11(aka MIT license). It should also detect the Apache licensing but I probably botched it up."><noscript><img class=img-fluid sizes=100vw srcset="/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/librejs-widget_hu9a63940a47bb530d2d35b12edf31107a_83817_500x0_resize_q75_box.jpg 500w" src=/blog/december-2021-monthly-report/librejs-widget.jpg width=904 height=913 alt="Screenshot of mCaptcha client-side widget(I'm-not-a-robot widget) with GNU LibreJS extension's report in frame. LibreJS reports that all scripts in this webpage are accepted(and hence free software) and are licensed under the X11(aka MIT license). It should also detect the Apache licensing but I probably botched it up."></noscript><figcaption class=figure-caption>LibreJS report of the CAPTCHA widget webpage</figcaption></figure><h2 id=2-javascript-polyfill>2. JavaScript PolyFill</h2><p>mCaptcha relied on a WebAssembly(WASM) port of the proof-of-work
algorithm used in mCaptcha. This meanth browsers without WASM support
couldn&rsquo;t process CAPTCHAs. This month, <a href="https://github.com/mCaptcha/pow_sha256-polyfill">a pure JavaScript(TypeScript,
technically) implementation
</a> was released to
overcome this limitation.</p>
<h2 id="3-integration-libraries-for-vanilla-js-react-and-svelte">3. Integration libraries for Vanilla JS, React and Svelte:</h2>
<p>To make migration from existing CAPTCHA deployments to mCaptha,
integration libraries for <a href="https://www.npmjs.com/package/@mcaptcha/vanilla-glue">Vanilla
JS</a>, <a href="https://www.npmjs.com/package/@mcaptcha/react-glue">React
couldn&rsquo;t process CAPTCHAs. This month, <a href=https://github.com/mCaptcha/pow_sha256-polyfill>a pure JavaScript(TypeScript,
technically) implementation</a> was released to
overcome this limitation.</p><h2 id=3-integration-libraries-for-vanilla-js-react-and-svelte>3. Integration libraries for Vanilla JS, React and Svelte:</h2><p>To make migration from existing CAPTCHA deployments to mCaptha,
integration libraries for <a href=https://www.npmjs.com/package/@mcaptcha/vanilla-glue>Vanilla
JS</a>, <a href=https://www.npmjs.com/package/@mcaptcha/react-glue>React
Js</a> and
<a href="https://www.npmjs.com/package/@mcaptcha/svelte-glue">Svelte</a> with
<a href=https://www.npmjs.com/package/@mcaptcha/svelte-glue>Svelte</a> with
similar APIs very similar to that of Google&rsquo;s reCAPTCHA and Cloudflare&rsquo;s
hCaptcha.</p>
<ul>
<li>Source code: <a href="https://github.com/mCaptcha/glue">mCaptcha/glue</a></li>
</ul>
<h1 id="4-beginner-friendly-captcha-configuration-options">4. Beginner friendly CAPTCHA configuration options.</h1>
<p>The original configuration panel offers a comprehensive but daunting
task for folks that are justgetting started with mCaptcha.</p>
<figure>
<img class="img-fluid lazyload blur-up" data-sizes="auto" src="/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_20x0_resize_q75_box.jpg" data-srcset="/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_500x0_resize_q75_box.jpg 500w" width="819" height="741" alt="Screenshot of mCaptcha admin dashboard CAPTCHA creation form with advance configuration options">
<noscript><img class="img-fluid" sizes="100vw" srcset="/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_500x0_resize_q75_box.jpg 500w" src="/blog/december-2021-monthly-report/captcha-advanced-config.jpg" width="819" height="741" alt="Screenshot of mCaptcha admin dashboard CAPTCHA creation form with advance configuration options"></noscript>
<figcaption class="figure-caption">CAPTCHA creation with advance configuration options</figcaption>
</figure>
<p>A new CAPTCHA creation format is rolled out which generates a
hCaptcha.</p><ul><li>Source code: <a href=https://github.com/mCaptcha/glue>mCaptcha/glue</a></li></ul><h1 id=4-beginner-friendly-captcha-configuration-options>4. Beginner friendly CAPTCHA configuration options.</h1><p>The original configuration panel offers a comprehensive but daunting
task for folks that are justgetting started with mCaptcha.</p><figure><img class="img-fluid lazyload blur-up" data-sizes=auto src=/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_20x0_resize_q75_box.jpg data-srcset="/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_500x0_resize_q75_box.jpg 500w" width=819 height=741 alt="Screenshot of mCaptcha admin dashboard CAPTCHA creation form with advance configuration options"><noscript><img class=img-fluid sizes=100vw srcset="/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/captcha-advanced-config_hu83b247380bbc427ee7cad0c8f4eadaf3_44711_500x0_resize_q75_box.jpg 500w" src=/blog/december-2021-monthly-report/captcha-advanced-config.jpg width=819 height=741 alt="Screenshot of mCaptcha admin dashboard CAPTCHA creation form with advance configuration options"></noscript><figcaption class=figure-caption>CAPTCHA creation with advance configuration options</figcaption></figure><p>A new CAPTCHA creation format is rolled out which generates a
configuration from familiar metrics like average, peak and traffic that
took the user&rsquo;s website down.</p>
<figure>
<img class="img-fluid lazyload blur-up" data-sizes="auto" src="/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_20x0_resize_q75_box.jpg" data-srcset="/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_500x0_resize_q75_box.jpg 500w" width="776" height="556" alt="Screenshot of mCaptcha admin dashboard CAPTCHA creation form with easy configuration options">
<noscript><img class="img-fluid" sizes="100vw" srcset="/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_500x0_resize_q75_box.jpg 500w" src="/blog/december-2021-monthly-report/captcha-easy-config.jpg" width="776" height="556" alt="Screenshot of mCaptcha admin dashboard CAPTCHA creation form with easy configuration options"></noscript>
<figcaption class="figure-caption">CAPTCHA creation with easy configuration options</figcaption>
</figure>
<p>Of course, the advance option is available and can always be swished to
at any moment!</p>
</article>
<div class="docs-navigation d-flex justify-content-between">
<a href="/blog/may-2022-monthly-report/">
<div class="card my-1">
<div class="card-body py-2">
&larr; May, 2022: Monthly Report
</div>
</div>
</a>
<a class="ms-auto" href="/blog/survey/">
<div class="card my-1">
<div class="card-body py-2">
Survey &rarr;
</div>
</div>
</a>
</div>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/blog/12-21-monthly-report/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
took the user&rsquo;s website down.</p><figure><img class="img-fluid lazyload blur-up" data-sizes=auto src=/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_20x0_resize_q75_box.jpg data-srcset="/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_500x0_resize_q75_box.jpg 500w" width=776 height=556 alt="Screenshot of mCaptcha admin dashboard CAPTCHA creation form with easy configuration options"><noscript><img class=img-fluid sizes=100vw srcset="/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_900x0_resize_q75_box.jpg 900w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_800x0_resize_q75_box.jpg 800w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_700x0_resize_q75_box.jpg 700w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_600x0_resize_q75_box.jpg 600w,/blog/december-2021-monthly-report/captcha-easy-config_hue77a6c4a0bac5cb1e9727416c4edcb91_41711_500x0_resize_q75_box.jpg 500w" src=/blog/december-2021-monthly-report/captcha-easy-config.jpg width=776 height=556 alt="Screenshot of mCaptcha admin dashboard CAPTCHA creation form with easy configuration options"></noscript><figcaption class=figure-caption>CAPTCHA creation with easy configuration options</figcaption></figure><p>Of course, the advance option is available and can always be swished to
at any moment!</p></article><div class="docs-navigation d-flex justify-content-between"><a href=/blog/may-2022-monthly-report/><div class="card my-1"><div class="card-body py-2">&larr; May, 2022: Monthly Report</div></div></a><a class=ms-auto href=/blog/survey/><div class="card my-1"><div class="card-body py-2">Survey &rarr;</div></div></a></div><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/blog/12-21-monthly-report/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,211 +1,20 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>February, 2023: Monthly Report - mCaptcha</title>
<meta name="description" content="Gusted and I secured funding from NLnet to work on mCaptcha in 2023, we suffered an outage from 15 January to February 6, polyfill benchmarking support in mCaptcha">
<link rel="canonical" href="/blog/february-2023-monthly-report/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/blog/february-2023-monthly-report/icon.png">
<meta name="twitter:title" content="February, 2023: Monthly Report">
<meta name="twitter:description" content="Gusted and I secured funding from NLnet to work on mCaptcha in 2023, we suffered an outage from 15 January to February 6, polyfill benchmarking support in mCaptcha">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="February, 2023: Monthly Report">
<meta property="og:description" content="Gusted and I secured funding from NLnet to work on mCaptcha in 2023, we suffered an outage from 15 January to February 6, polyfill benchmarking support in mCaptcha">
<meta property="og:type" content="article">
<meta property="og:url" content="/blog/february-2023-monthly-report/">
<meta property="og:image" content="/blog/february-2023-monthly-report/icon.png">
<meta property="article:published_time" content="2023-03-08T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Blogfebruary 2023 Monthly Report",
"item": "\/blogfebruary-2023-monthly-report\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="blog single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#tldr">TL;DR</a></li>
<li><a href="#we-have-funding">We have funding!</a></li>
<li><a href="#infrastructure-outage-15-january-2023-to-february-6-2023">Infrastructure outage: 15 January, 2023 to February 6, 2023</a></li>
<li><a href="#mcaptchasurvey-now-includes-polyfill-benchmarking">mCaptcha/survey now includes polyfill benchmarking</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<article>
<div class="blog-header">
<h1>February, 2023: Monthly Report</h1>
<p><small>Posted March 8, 2023 by <a class="stretched-link position-relative" href="/contributors/aravinth-manivannan/">Aravinth Manivannan</a>&nbsp;&hyphen;&nbsp;<strong>2&nbsp;min read</strong></small><p>
<p><small>Last Edited March 10, 2023</small><p>
</div>
<p class="lead">We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p>
<p>Hello and welcome to the (August 2022 to) February, 2023 monthly report!</p>
<h2 id="tldr">TL;DR</h2>
<p><em><a href="https://gusted.xyz">Gusted</a> and I secured funding from NLnet to work
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>February, 2023: Monthly Report - mCaptcha</title><meta name=description content="Gusted and I secured funding from NLnet to work on mCaptcha in 2023, we suffered an outage from 15 January to February 6, polyfill benchmarking support in mCaptcha"><link rel=canonical href=/blog/february-2023-monthly-report/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/blog/february-2023-monthly-report/icon.png"><meta name=twitter:title content="February, 2023: Monthly Report"><meta name=twitter:description content="Gusted and I secured funding from NLnet to work on mCaptcha in 2023, we suffered an outage from 15 January to February 6, polyfill benchmarking support in mCaptcha"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="February, 2023: Monthly Report"><meta property="og:description" content="Gusted and I secured funding from NLnet to work on mCaptcha in 2023, we suffered an outage from 15 January to February 6, polyfill benchmarking support in mCaptcha"><meta property="og:type" content="article"><meta property="og:url" content="/blog/february-2023-monthly-report/"><meta property="og:image" content="/blog/february-2023-monthly-report/icon.png"><meta property="article:published_time" content="2023-03-08T00:00:00+00:00"><meta property="article:modified_time" content="2023-03-09T02:30:43+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Blogfebruary 2023 Monthly Report","item":"\/blogfebruary-2023-monthly-report\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="blog single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active"><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#tldr>TL;DR</a></li><li><a href=#we-have-funding>We have funding!</a></li><li><a href=#infrastructure-outage-15-january-2023-to-february-6-2023>Infrastructure outage: 15 January, 2023 to February 6, 2023</a></li><li><a href=#mcaptchasurvey-now-includes-polyfill-benchmarking>mCaptcha/survey now includes polyfill benchmarking</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><article><div class=blog-header><h1>February, 2023: Monthly Report</h1><p><small>Posted March 8, 2023 by <a class="stretched-link position-relative" href=/contributors/aravinth-manivannan/>Aravinth Manivannan</a>&nbsp;&dash;&nbsp;<strong>2&nbsp;min read</strong></small><p><p><small>Last Edited March 9, 2023</small><p></div><p class=lead>We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p><p>Hello and welcome to the (August 2022 to) February, 2023 monthly report!</p><h2 id=tldr>TL;DR</h2><p><em><a href=https://gusted.xyz>Gusted</a> and I secured funding from NLnet to work
on mCaptcha in 2023, we suffered an outage from 15 January to February
6, polyfill benchmarking support in mCaptcha</em></p>
<h2 id="we-have-funding">We have funding!</h2>
<p><a href="https://gusted.xyz">Gusted</a> and I applied and secured funding through
2023 development is funded through the <a href="https://nlnet.nl/entrust">NGI0
Entrust</a> Fund, via <a href="https://nlnet.nl">NLnet</a>.</p>
<p>The full list of tasks that we&rsquo;ll be working on in the period is is
6, polyfill benchmarking support in mCaptcha</em></p><h2 id=we-have-funding>We have funding!</h2><p><a href=https://gusted.xyz>Gusted</a> and I applied and secured funding through
2023 development is funded through the <a href=https://nlnet.nl/entrust>NGI0
Entrust</a> Fund, via <a href=https://nlnet.nl>NLnet</a>.</p><p>The full list of tasks that we&rsquo;ll be working on in the period is is
available
<a href="https://git.batsense.net/mCaptcha/2023-NLnet/projects/6">here</a>.</p>
<h2 id="infrastructure-outage-15-january-2023-to-february-6-2023">Infrastructure outage: 15 January, 2023 to February 6, 2023</h2>
<p>A hard disk on of the servers hosting mCaptcha infrastructure failed,
<a href=https://git.batsense.net/mCaptcha/2023-NLnet/projects/6>here</a>.</p><h2 id=infrastructure-outage-15-january-2023-to-february-6-2023>Infrastructure outage: 15 January, 2023 to February 6, 2023</h2><p>A hard disk on of the servers hosting mCaptcha infrastructure failed,
which caused the outage. Fixing the hard disk lead to additional
problems, the fan on that server was failing and we couldn&rsquo;t get spares
sooner.</p>
<p>We had current backups, so there was no data loss.</p>
<p>Going forward, we are planning to create Infrastructure-as-Code to fully
sooner.</p><p>We had current backups, so there was no data loss.</p><p>Going forward, we are planning to create Infrastructure-as-Code to fully
restore all mCaptcha infrastructure, so that in the even of an outage,
we could restore our infrastructure in much shorter duration.</p>
<h2 id="mcaptchasurvey-now-includes-polyfill-benchmarking">mCaptcha/survey now includes polyfill benchmarking</h2>
<p>mCaptcha/survey runs benchmarks with mCaptcha&rsquo;s PoW algorithm to collect
we could restore our infrastructure in much shorter duration.</p><h2 id=mcaptchasurvey-now-includes-polyfill-benchmarking>mCaptcha/survey now includes polyfill benchmarking</h2><p>mCaptcha/survey runs benchmarks with mCaptcha&rsquo;s PoW algorithm to collect
statistics on how mCaptcha performs on various browsers and devices. So
far, we&rsquo;ve only been running benchmarks with the WebAssembly
implementation. This <a href="https://github.com/mCaptcha/survey/pull/14">pull request</a> added support for running benchmarks
implementation. This <a href=https://github.com/mCaptcha/survey/pull/14>pull request</a> added support for running benchmarks
with the JavaScript polyfill implementation on browsers without
WebAssembly support.</p>
</article>
<div class="docs-navigation d-flex justify-content-between">
<a class="ms-auto" href="/blog/july-2022-monthly-report/">
<div class="card my-1">
<div class="card-body py-2">
July, 2022: Monthly Report &rarr;
</div>
</div>
</a>
</div>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/blog/02-23-monthly-report/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
WebAssembly support.</p></article><div class="docs-navigation d-flex justify-content-between"><a class=ms-auto href=/blog/july-2022-monthly-report/><div class="card my-1"><div class="card-body py-2">July, 2022: Monthly Report &rarr;</div></div></a></div><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/blog/02-23-monthly-report/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,99 +1,18 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Blog on </title>
<link>/blog/</link>
<description>Recent content in Blog on </description>
<generator>Hugo -- gohugo.io</generator>
<language>en-US</language><atom:link href="/blog/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>February, 2023: Monthly Report</title>
<link>/blog/february-2023-monthly-report/</link>
<pubDate>Wed, 08 Mar 2023 00:00:00 +0000</pubDate>
<guid>/blog/february-2023-monthly-report/</guid>
<description>Hello and welcome to the (August 2022 to) February, 2023 monthly report!
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Blog on</title><link>/blog/</link><description>Recent content in Blog on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><atom:link href="/blog/index.xml" rel="self" type="application/rss+xml"/><item><title>February, 2023: Monthly Report</title><link>/blog/february-2023-monthly-report/</link><pubDate>Wed, 08 Mar 2023 00:00:00 +0000</pubDate><guid>/blog/february-2023-monthly-report/</guid><description>Hello and welcome to the (August 2022 to) February, 2023 monthly report!
TL;DR Gusted and I secured funding from NLnet to work on mCaptcha in 2023, we suffered an outage from 15 January to February 6, polyfill benchmarking support in mCaptcha
We have funding! Gusted and I applied and secured funding through 2023 development is funded through the NGI0 Entrust Fund, via NLnet.
The full list of tasks that we&amp;rsquo;ll be working on in the period is is available here.</description>
</item>
<item>
<title>July, 2022: Monthly Report</title>
<link>/blog/july-2022-monthly-report/</link>
<pubDate>Thu, 04 Aug 2022 00:00:00 +0000</pubDate>
<guid>/blog/july-2022-monthly-report/</guid>
<description>Hello and welcome to the July, 2022 monthly report!
The full list of tasks that we&amp;rsquo;ll be working on in the period is is available here.</description></item><item><title>July, 2022: Monthly Report</title><link>/blog/july-2022-monthly-report/</link><pubDate>Thu, 04 Aug 2022 00:00:00 +0000</pubDate><guid>/blog/july-2022-monthly-report/</guid><description>Hello and welcome to the July, 2022 monthly report!
TL;DR Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support, mCaptcha supports MariaDB, I&amp;rsquo;ve applied for NLnet and Open Tech Fund, documentation is updated: tutorials and glossary is added and glue libraries have new releases.
Codeberg is deploying mCaptcha Codeberg is committed to trying out mCaptcha to make their platform more accessible: they currently use a text-based CAPTCHA, which will be replaced by mCaptcha.</description>
</item>
<item>
<title>June, 2022: Monthly Report</title>
<link>/blog/june-2022-monthly-report/</link>
<pubDate>Thu, 07 Jul 2022 00:00:00 +0000</pubDate>
<guid>/blog/june-2022-monthly-report/</guid>
<description>Hello and welcome to the June 2022 edition of the monthly report!
Codeberg is deploying mCaptcha Codeberg is committed to trying out mCaptcha to make their platform more accessible: they currently use a text-based CAPTCHA, which will be replaced by mCaptcha.</description></item><item><title>June, 2022: Monthly Report</title><link>/blog/june-2022-monthly-report/</link><pubDate>Thu, 07 Jul 2022 00:00:00 +0000</pubDate><guid>/blog/june-2022-monthly-report/</guid><description>Hello and welcome to the June 2022 edition of the monthly report!
mCaptcha is incorporated! I spent June doing non-technical tasks but I made significant progress: I had been trying to do it since summer 2021, but I faced various setbacks along the way. A family friend, who is also an auditor helped me finally get mCaptcha incorporated!
And we&amp;rsquo;ve already filed successfully filed the first tax return too!
GSTIN 33DGKPA2253J1ZN Ideas for Commercial Operations Commercial operations will take a while longer(end of 2022, most probably).</description>
</item>
<item>
<title>May, 2022: Monthly Report</title>
<link>/blog/may-2022-monthly-report/</link>
<pubDate>Fri, 10 Jun 2022 00:00:00 +0000</pubDate>
<guid>/blog/may-2022-monthly-report/</guid>
<description>Hello and welcome to the May 2022 edition of the monthly report!
GSTIN 33DGKPA2253J1ZN Ideas for Commercial Operations Commercial operations will take a while longer(end of 2022, most probably).</description></item><item><title>May, 2022: Monthly Report</title><link>/blog/may-2022-monthly-report/</link><pubDate>Fri, 10 Jun 2022 00:00:00 +0000</pubDate><guid>/blog/may-2022-monthly-report/</guid><description>Hello and welcome to the May 2022 edition of the monthly report!
mCaptcha, for a while was showing all the signs of a dead project: no commits on the repositories and no monthly updates. But the project is far from dead!
Python bindings to mCaptcha PoW pow_py contains bindings to pow_sha256, the proof-of-work library that mCaptcha uses. For the uninitiated, the bindings allow for python programs to automatically solve mCaptcha.</description>
</item>
<item>
<title>December, 2021: Monthly Report</title>
<link>/blog/december-2021-monthly-report/</link>
<pubDate>Thu, 23 Dec 2021 00:00:00 +0000</pubDate>
<guid>/blog/december-2021-monthly-report/</guid>
<description>Hello and welcome to the first edition of the monthly report!
Python bindings to mCaptcha PoW pow_py contains bindings to pow_sha256, the proof-of-work library that mCaptcha uses. For the uninitiated, the bindings allow for python programs to automatically solve mCaptcha.</description></item><item><title>December, 2021: Monthly Report</title><link>/blog/december-2021-monthly-report/</link><pubDate>Thu, 23 Dec 2021 00:00:00 +0000</pubDate><guid>/blog/december-2021-monthly-report/</guid><description>Hello and welcome to the first edition of the monthly report!
I believe free software like mCaptcha is critical to a healthy internet but being a one-person show, there&amp;rsquo;s hardly any accountability in the way software is built. I hope, through monthly reports, I can explain the logic and intentions behind decisions taken in the development process.
This month, the following things were accomplished:
1. Full LibreJS Compliance The CAPTCHA widget and the admin dashboard are 100% LibreJS compliant!</description>
</item>
<item>
<title>Survey</title>
<link>/blog/survey/</link>
<pubDate>Thu, 28 Oct 2021 00:00:00 +0000</pubDate>
<guid>/blog/survey/</guid>
<description>Survey link: https://survey.mcaptcha.org/survey/campaigns/b717e51e-24d4-4ab6-912f-de2dfe3ce1fe/about
1. Full LibreJS Compliance The CAPTCHA widget and the admin dashboard are 100% LibreJS compliant!</description></item><item><title>Survey</title><link>/blog/survey/</link><pubDate>Thu, 28 Oct 2021 00:00:00 +0000</pubDate><guid>/blog/survey/</guid><description>Survey link: https://survey.mcaptcha.org/survey/campaigns/b717e51e-24d4-4ab6-912f-de2dfe3ce1fe/about
NOTE: The survey(at least, the lucky draw is temporarily suspended due to some logistical reasons. Apologies for any inconvenience caused.
mCaptcha relies on a proof-of-work(PoW) mechanism to guard against bots. In order for this to be effective, the difficulty factor should be configured properly. If the difficulty factor is too high all the time, it will inconvenience the users and if it&amp;rsquo;s too low during attack, the defence will be weak.</description>
</item>
<item>
<title>PoW performance</title>
<link>/blog/pow-performance/</link>
<pubDate>Wed, 01 Sep 2021 00:00:00 +0000</pubDate>
<guid>/blog/pow-performance/</guid>
<description>mCaptcha uses a proof-of-work(PoW) mechanism to rate limit users or potential bots. In order for this to be effective, the PoW should be configured properly. The difficulty requirement can&amp;rsquo;t be too high, as it could cause accessibility issues on the client-side while at the same time, it shouldn&amp;rsquo;t be too low, as it wouldn&amp;rsquo;t offer proper protection against bots.
Malicious bots(the ones that wreak havoc), run native code which is capable of running in a multi-threaded context.</description>
</item>
<item>
<title>Say hello to mCaptcha</title>
<link>/blog/say-hello-to-mcaptcha/</link>
<pubDate>Wed, 26 May 2021 00:00:00 +0000</pubDate>
<guid>/blog/say-hello-to-mcaptcha/</guid>
<description>At mCaptcha, we believe in digital freedom and privacy and so we built a proof-of-work based CAPTCHA system that doesn&amp;rsquo;t track. Seriously, no tracking. But that isn&amp;rsquo;t the killer feature, our system doesn&amp;rsquo;t require the user to pick cars or ID sidewalks &amp;mdash; our system does it&amp;rsquo;s thing(usually at the click of a button) and gets out of the way.
How does it work? mCaptcha uses SHA256 based proof-of-work(PoW) to rate limit users.</description>
</item>
</channel>
</rss>
mCaptcha relies on a proof-of-work(PoW) mechanism to guard against bots. In order for this to be effective, the difficulty factor should be configured properly. If the difficulty factor is too high all the time, it will inconvenience the users and if it&amp;rsquo;s too low during attack, the defence will be weak.</description></item><item><title>PoW performance</title><link>/blog/pow-performance/</link><pubDate>Wed, 01 Sep 2021 00:00:00 +0000</pubDate><guid>/blog/pow-performance/</guid><description>mCaptcha uses a proof-of-work(PoW) mechanism to rate limit users or potential bots. In order for this to be effective, the PoW should be configured properly. The difficulty requirement can&amp;rsquo;t be too high, as it could cause accessibility issues on the client-side while at the same time, it shouldn&amp;rsquo;t be too low, as it wouldn&amp;rsquo;t offer proper protection against bots.
Malicious bots(the ones that wreak havoc), run native code which is capable of running in a multi-threaded context.</description></item><item><title>Say hello to mCaptcha</title><link>/blog/say-hello-to-mcaptcha/</link><pubDate>Wed, 26 May 2021 00:00:00 +0000</pubDate><guid>/blog/say-hello-to-mcaptcha/</guid><description>At mCaptcha, we believe in digital freedom and privacy and so we built a proof-of-work based CAPTCHA system that doesn&amp;rsquo;t track. Seriously, no tracking. But that isn&amp;rsquo;t the killer feature, our system doesn&amp;rsquo;t require the user to pick cars or ID sidewalks &amp;mdash; our system does it&amp;rsquo;s thing(usually at the click of a button) and gets out of the way.
How does it work? mCaptcha uses SHA256 based proof-of-work(PoW) to rate limit users.</description></item></channel></rss>

View file

@ -1,256 +1,40 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>July, 2022: Monthly Report - mCaptcha</title>
<meta name="description" content="Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support, mCaptcha supports MariaDB, I&#39;ve applied for NLnet and Open Tech Fund, documentation is updated: tutorials and glossary is added and glue libraries have new releases.">
<link rel="canonical" href="/blog/july-2022-monthly-report/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/blog/july-2022-monthly-report/icon.png">
<meta name="twitter:title" content="July, 2022: Monthly Report">
<meta name="twitter:description" content="Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support, mCaptcha supports MariaDB, I&#39;ve applied for NLnet and Open Tech Fund, documentation is updated: tutorials and glossary is added and glue libraries have new releases.">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="July, 2022: Monthly Report">
<meta property="og:description" content="Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support, mCaptcha supports MariaDB, I&#39;ve applied for NLnet and Open Tech Fund, documentation is updated: tutorials and glossary is added and glue libraries have new releases.">
<meta property="og:type" content="article">
<meta property="og:url" content="/blog/july-2022-monthly-report/">
<meta property="og:image" content="/blog/july-2022-monthly-report/icon.png">
<meta property="article:published_time" content="2022-08-04T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Blogjuly 2022 Monthly Report",
"item": "\/blogjuly-2022-monthly-report\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="blog single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#tldr">TL;DR</a></li>
<li><a href="#codeberg-is-deploying-mcaptcha">Codeberg is deploying mCaptcha</a></li>
<li><a href="#gitea-gets-mcaptcha-support">Gitea gets mCaptcha support</a></li>
<li><a href="#mcaptcha-supports-mariadb">mCaptcha supports MariaDB:</a></li>
<li><a href="#applied-for-funding-nlnet-and-open-tech-fund">Applied for Funding: NLnet and Open Tech Fund</a></li>
<li><a href="#documentation-updates">Documentation updates</a></li>
<li><a href="#new-releases-glue-libraries">New releases: glue libraries</a></li>
<li><a href="#footnotes">Footnotes</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<article>
<div class="blog-header">
<h1>July, 2022: Monthly Report</h1>
<p><small>Posted August 4, 2022 by <a class="stretched-link position-relative" href="/contributors/aravinth-manivannan/">Aravinth Manivannan</a>&nbsp;&hyphen;&nbsp;<strong>2&nbsp;min read</strong></small><p>
<p><small>Last Edited March 10, 2023</small><p>
</div>
<p class="lead">We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p>
<p>Hello and welcome to the July, 2022 monthly report!</p>
<h2 id="tldr">TL;DR</h2>
<p><em>Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support,
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>July, 2022: Monthly Report - mCaptcha</title><meta name=description content="Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support, mCaptcha supports MariaDB, I've applied for NLnet and Open Tech Fund, documentation is updated: tutorials and glossary is added and glue libraries have new releases."><link rel=canonical href=/blog/july-2022-monthly-report/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/blog/july-2022-monthly-report/icon.png"><meta name=twitter:title content="July, 2022: Monthly Report"><meta name=twitter:description content="Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support, mCaptcha supports MariaDB, I've applied for NLnet and Open Tech Fund, documentation is updated: tutorials and glossary is added and glue libraries have new releases."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="July, 2022: Monthly Report"><meta property="og:description" content="Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support, mCaptcha supports MariaDB, I've applied for NLnet and Open Tech Fund, documentation is updated: tutorials and glossary is added and glue libraries have new releases."><meta property="og:type" content="article"><meta property="og:url" content="/blog/july-2022-monthly-report/"><meta property="og:image" content="/blog/july-2022-monthly-report/icon.png"><meta property="article:published_time" content="2022-08-04T00:00:00+00:00"><meta property="article:modified_time" content="2023-02-13T14:50:39+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Blogjuly 2022 Monthly Report","item":"\/blogjuly-2022-monthly-report\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="blog single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active"><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#tldr>TL;DR</a></li><li><a href=#codeberg-is-deploying-mcaptcha>Codeberg is deploying mCaptcha</a></li><li><a href=#gitea-gets-mcaptcha-support>Gitea gets mCaptcha support</a></li><li><a href=#mcaptcha-supports-mariadb>mCaptcha supports MariaDB:</a></li><li><a href=#applied-for-funding-nlnet-and-open-tech-fund>Applied for Funding: NLnet and Open Tech Fund</a></li><li><a href=#documentation-updates>Documentation updates</a></li><li><a href=#new-releases-glue-libraries>New releases: glue libraries</a></li><li><a href=#footnotes>Footnotes</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><article><div class=blog-header><h1>July, 2022: Monthly Report</h1><p><small>Posted August 4, 2022 by <a class="stretched-link position-relative" href=/contributors/aravinth-manivannan/>Aravinth Manivannan</a>&nbsp;&dash;&nbsp;<strong>2&nbsp;min read</strong></small><p><p><small>Last Edited February 13, 2023</small><p></div><p class=lead>We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p><p>Hello and welcome to the July, 2022 monthly report!</p><h2 id=tldr>TL;DR</h2><p><em>Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support,
mCaptcha supports MariaDB, I&rsquo;ve applied for NLnet and Open Tech Fund,
documentation is updated: tutorials and glossary is added and glue libraries
have new releases.</em></p>
<h2 id="codeberg-is-deploying-mcaptcha">Codeberg is deploying mCaptcha</h2>
<p>Codeberg is committed to trying out mCaptcha to make their platform more
have new releases.</em></p><h2 id=codeberg-is-deploying-mcaptcha>Codeberg is deploying mCaptcha</h2><p>Codeberg is committed to trying out mCaptcha to make their platform more
accessible: they currently use a text-based CAPTCHA, which will be
replaced by mCaptcha. The decision was finalized after I presented
mCaptcha to them at a meeting their organized. Please see
<a href="https://batsense.net/talks/codeberg-introducing-mcaptcha/">here</a> for
slides.</p>
<h2 id="gitea-gets-mcaptcha-support">Gitea gets mCaptcha support</h2>
<p><a href="https://gusted.xyz">@Gusted</a> from Codeberg is working on integrating
<a href=https://batsense.net/talks/codeberg-introducing-mcaptcha/>here</a> for
slides.</p><h2 id=gitea-gets-mcaptcha-support>Gitea gets mCaptcha support</h2><p><a href=https://gusted.xyz>@Gusted</a> from Codeberg is working on integrating
mCaptcha in Gitea so that Codeberg can deploy it. Please see
<a href="https://github.com/go-gitea/gitea/pull/20458">here</a> for related the
pull request.</p>
<p>This project is yet to see usage, so we are venturing into uncharted
<a href=https://github.com/go-gitea/gitea/pull/20458>here</a> for related the
pull request.</p><p>This project is yet to see usage, so we are venturing into uncharted
territory: should you face issues with either deploying or
integrating mCaptcha, please feel free <a href="/community">to reach out</a>.</p>
<h2 id="mcaptcha-supports-mariadb">mCaptcha supports MariaDB:</h2>
<p>Codeberg uses MariaDB. To facilitate Codeberg deployment, I implemented
support for MariaDB. <a href="https://mcaptcha.org/blog/may-2022-monthly-report#refactor">The work done in
integrating mCaptcha, please feel free <a href=/community>to reach out</a>.</p><h2 id=mcaptcha-supports-mariadb>mCaptcha supports MariaDB:</h2><p>Codeberg uses MariaDB. To facilitate Codeberg deployment, I implemented
support for MariaDB. <a href=https://mcaptcha.org/blog/may-2022-monthly-report#refactor>The work done in
May, 2022</a> made
implementing support easy. Support for MariaDB is first class in
mCaptcha: automatic testing exist to run tests with both Postgres and
MariaDB, so I expect things to be stable.</p>
<h2 id="applied-for-funding-nlnet-and-open-tech-fund">Applied for Funding: NLnet and Open Tech Fund</h2>
<p>I&rsquo;ve applied for NLnet and Open Tech Fund[0], Please find the
MariaDB, so I expect things to be stable.</p><h2 id=applied-for-funding-nlnet-and-open-tech-fund>Applied for Funding: NLnet and Open Tech Fund</h2><p>I&rsquo;ve applied for NLnet and Open Tech Fund[0], Please find the
applications
<a href="https://forum.forgefriends.org/t/mcaptcha-nlnet-grant-application-august-2022/830/3">here</a>
<a href=https://forum.forgefriends.org/t/mcaptcha-nlnet-grant-application-august-2022/830/3>here</a>
and
<a href="https://forum.forgefriends.org/t/mcaptcha-nlnet-grant-application-august-2022/830/3">here</a>
respectively.</p>
<p>If funding is granted:</p>
<ol>
<li>I&rsquo;ll be able to work full-time for a year at the rate of 2,000 EUR/month</li>
<li>We&rsquo;ll have a dedicated build server</li>
<li>We&rsquo;ll have funds to run a DDoS test to gauge mCaptcha&rsquo;s effectiveness</li>
</ol>
<h2 id="documentation-updates">Documentation updates</h2>
<p>mCaptcha docs over the months have become inconsistent and incorrect. I
cleaned up some of the mess and added <a href="/docs/introduction/installing-captcha/">a
<a href=https://forum.forgefriends.org/t/mcaptcha-nlnet-grant-application-august-2022/830/3>here</a>
respectively.</p><p>If funding is granted:</p><ol><li>I&rsquo;ll be able to work full-time for a year at the rate of 2,000 EUR/month</li><li>We&rsquo;ll have a dedicated build server</li><li>We&rsquo;ll have funds to run a DDoS test to gauge mCaptcha&rsquo;s effectiveness</li></ol><h2 id=documentation-updates>Documentation updates</h2><p>mCaptcha docs over the months have become inconsistent and incorrect. I
cleaned up some of the mess and added <a href=/docs/introduction/installing-captcha/>a
tutorial</a> to help folks install
mCaptcha on their website. The docs also gets <a href="/docs/terminology/access-token/">a
mCaptcha on their website. The docs also gets <a href=/docs/terminology/access-token/>a
glossary</a>, which contain explanations
to mCaptcha jargon.</p>
<h2 id="new-releases-glue-libraries">New releases: glue libraries</h2>
<p><code>0.1.0-alpha-2</code> for
<a href="https://www.npmjs.com/package/@mcaptcha/vanilla-glue">vanilla</a>,
<a href="https://www.npmjs.com/package/@mcaptcha/react-glue">react</a> and
<a href="https://www.npmjs.com/package/@mcaptcha/svelte-glue">svelte</a> glue
to mCaptcha jargon.</p><h2 id=new-releases-glue-libraries>New releases: glue libraries</h2><p><code>0.1.0-alpha-2</code> for
<a href=https://www.npmjs.com/package/@mcaptcha/vanilla-glue>vanilla</a>,
<a href=https://www.npmjs.com/package/@mcaptcha/react-glue>react</a> and
<a href=https://www.npmjs.com/package/@mcaptcha/svelte-glue>svelte</a> glue
libraries were released. They now hand over widget sizing to the client
code(<a href="https://github.com/mCaptcha/glue/pull/12">associated PR</a>).</p>
<h2 id="footnotes">Footnotes</h2>
<ul>
<li>[0]: Special thanks to
<a href="https://mastodon.social/@humanetech">@humantech</a> for his thoughtful
reviews and to <a href="https://dachary.org">@dachary</a> for pointing me towards
OTF.</li>
</ul>
</article>
<div class="docs-navigation d-flex justify-content-between">
<a href="/blog/february-2023-monthly-report/">
<div class="card my-1">
<div class="card-body py-2">
&larr; February, 2023: Monthly Report
</div>
</div>
</a>
<a class="ms-auto" href="/blog/june-2022-monthly-report/">
<div class="card my-1">
<div class="card-body py-2">
June, 2022: Monthly Report &rarr;
</div>
</div>
</a>
</div>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/blog/07-22-monthly-report/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
code(<a href=https://github.com/mCaptcha/glue/pull/12>associated PR</a>).</p><h2 id=footnotes>Footnotes</h2><ul><li>[0]: Special thanks to
<a href=https://mastodon.social/@humanetech>@humantech</a> for his thoughtful
reviews and to <a href=https://dachary.org>@dachary</a> for pointing me towards
OTF.</li></ul></article><div class="docs-navigation d-flex justify-content-between"><a href=/blog/february-2023-monthly-report/><div class="card my-1"><div class="card-body py-2">&larr; February, 2023: Monthly Report</div></div></a><a class=ms-auto href=/blog/june-2022-monthly-report/><div class="card my-1"><div class="card-body py-2">June, 2022: Monthly Report &rarr;</div></div></a></div><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/blog/07-22-monthly-report/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,222 +1,25 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>June, 2022: Monthly Report - mCaptcha</title>
<meta name="description" content="mCaptcha is successfully incorporated in India and ideas for mCaptcha commercial operations">
<link rel="canonical" href="/blog/june-2022-monthly-report/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/blog/june-2022-monthly-report/icon.png">
<meta name="twitter:title" content="June, 2022: Monthly Report">
<meta name="twitter:description" content="mCaptcha is successfully incorporated in India and ideas for mCaptcha commercial operations">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="June, 2022: Monthly Report">
<meta property="og:description" content="mCaptcha is successfully incorporated in India and ideas for mCaptcha commercial operations">
<meta property="og:type" content="article">
<meta property="og:url" content="/blog/june-2022-monthly-report/">
<meta property="og:image" content="/blog/june-2022-monthly-report/icon.png">
<meta property="article:published_time" content="2022-07-07T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Blogjune 2022 Monthly Report",
"item": "\/blogjune-2022-monthly-report\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="blog single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#mcaptcha-is-incorporated">mCaptcha is incorporated!</a>
<ul>
<li><a href="#gstin">GSTIN</a></li>
</ul>
</li>
<li><a href="#ideas-for-commercial-operations">Ideas for Commercial Operations</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<article>
<div class="blog-header">
<h1>June, 2022: Monthly Report</h1>
<p><small>Posted July 7, 2022 by <a class="stretched-link position-relative" href="/contributors/aravinth-manivannan/">Aravinth Manivannan</a>&nbsp;&hyphen;&nbsp;<strong>2&nbsp;min read</strong></small><p>
<p><small>Last Edited March 10, 2023</small><p>
</div>
<p class="lead">We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p>
<p>Hello and welcome to the June 2022 edition of the monthly report!</p>
<h2 id="mcaptcha-is-incorporated">mCaptcha is incorporated!</h2>
<p>I spent June doing non-technical tasks but I made significant
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>June, 2022: Monthly Report - mCaptcha</title><meta name=description content="mCaptcha is successfully incorporated in India and ideas for mCaptcha commercial operations"><link rel=canonical href=/blog/june-2022-monthly-report/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/blog/june-2022-monthly-report/icon.png"><meta name=twitter:title content="June, 2022: Monthly Report"><meta name=twitter:description content="mCaptcha is successfully incorporated in India and ideas for mCaptcha commercial operations"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="June, 2022: Monthly Report"><meta property="og:description" content="mCaptcha is successfully incorporated in India and ideas for mCaptcha commercial operations"><meta property="og:type" content="article"><meta property="og:url" content="/blog/june-2022-monthly-report/"><meta property="og:image" content="/blog/june-2022-monthly-report/icon.png"><meta property="article:published_time" content="2022-07-07T00:00:00+00:00"><meta property="article:modified_time" content="2022-07-07T20:05:57+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Blogjune 2022 Monthly Report","item":"\/blogjune-2022-monthly-report\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="blog single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active"><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#mcaptcha-is-incorporated>mCaptcha is incorporated!</a><ul><li><a href=#gstin>GSTIN</a></li></ul></li><li><a href=#ideas-for-commercial-operations>Ideas for Commercial Operations</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><article><div class=blog-header><h1>June, 2022: Monthly Report</h1><p><small>Posted July 7, 2022 by <a class="stretched-link position-relative" href=/contributors/aravinth-manivannan/>Aravinth Manivannan</a>&nbsp;&dash;&nbsp;<strong>2&nbsp;min read</strong></small><p><p><small>Last Edited July 7, 2022</small><p></div><p class=lead>We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p><p>Hello and welcome to the June 2022 edition of the monthly report!</p><h2 id=mcaptcha-is-incorporated>mCaptcha is incorporated!</h2><p>I spent June doing non-technical tasks but I made significant
progress: I had been trying to do it since summer 2021, but I faced
various setbacks along the way. A family friend, who is also an auditor
helped me finally get mCaptcha incorporated!</p>
<p>And we&rsquo;ve already filed successfully filed the first tax return too!</p>
<h3 id="gstin">GSTIN</h3>
<pre tabindex="0"><code>33DGKPA2253J1ZN
</code></pre><h2 id="ideas-for-commercial-operations">Ideas for Commercial Operations</h2>
<p>Commercial operations will take a while longer(end of 2022, most
probably). For <a href="https://hostea.org">Hostea</a>, I wrote a dashboard with
helped me finally get mCaptcha incorporated!</p><p>And we&rsquo;ve already filed successfully filed the first tax return too!</p><h3 id=gstin>GSTIN</h3><pre><code>33DGKPA2253J1ZN
</code></pre><h2 id=ideas-for-commercial-operations>Ideas for Commercial Operations</h2><p>Commercial operations will take a while longer(end of 2022, most
probably). For <a href=https://hostea.org>Hostea</a>, I wrote a dashboard with
payments capabilities(via Stripe) so that experience will help me do the
same for mCaptcha. Working on Hostea has been truly enlightening: it&rsquo;s
probably the first effort to offer a fully libre, infrastructure-as-code
and payments software included, hosting service. I would like to do the
same for mCaptcha so that service that I setup goes rogue or if someone
wants to offer mCaptcha hosted services, they can replicate my set up
with ease.</p>
<p>But the commercial offering will at no point force me or future
with ease.</p><p>But the commercial offering will at no point force me or future
maintainers turn mCaptcha into adopting a non-free license like the
<a href="https://www.mongodb.com/licensing/server-side-public-license">Server Side Public
<a href=https://www.mongodb.com/licensing/server-side-public-license>Server Side Public
License</a>.
So the following months will see administrative changes within mCaptcha
to device mechanisms to prevent me or any future party with influence in
mCaptcha development from hurting the project by it non-free.</p>
<p>Hostea is also an experiment in Free Software commercial operations, so
mCaptcha development from hurting the project by it non-free.</p><p>Hostea is also an experiment in Free Software commercial operations, so
naturally I&rsquo;m highly impressed by the ideas that are being discussed
there. mCaptcha, too, will borrow ideas from that project to make its
development economically sustainable.</p>
</article>
<div class="docs-navigation d-flex justify-content-between">
<a href="/blog/july-2022-monthly-report/">
<div class="card my-1">
<div class="card-body py-2">
&larr; July, 2022: Monthly Report
</div>
</div>
</a>
<a class="ms-auto" href="/blog/may-2022-monthly-report/">
<div class="card my-1">
<div class="card-body py-2">
May, 2022: Monthly Report &rarr;
</div>
</div>
</a>
</div>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/blog/06-22-monthly-report/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
development economically sustainable.</p></article><div class="docs-navigation d-flex justify-content-between"><a href=/blog/july-2022-monthly-report/><div class="card my-1"><div class="card-body py-2">&larr; July, 2022: Monthly Report</div></div></a><a class=ms-auto href=/blog/may-2022-monthly-report/><div class="card my-1"><div class="card-body py-2">May, 2022: Monthly Report &rarr;</div></div></a></div><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/blog/06-22-monthly-report/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,328 +1,116 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>May, 2022: Monthly Report - mCaptcha</title>
<meta name="description" content="Python bindings to mCaptcha PoW, DDoS effectiveness measurement, major refactoring to prepare for support for other databases, We also tried to test its DoS defence effectiveness, and some exciting news regarding managed hosting!">
<link rel="canonical" href="/blog/may-2022-monthly-report/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/blog/may-2022-monthly-report/icon.png">
<meta name="twitter:title" content="May, 2022: Monthly Report">
<meta name="twitter:description" content="Python bindings to mCaptcha PoW, DDoS effectiveness measurement, major refactoring to prepare for support for other databases, We also tried to test its DoS defence effectiveness, and some exciting news regarding managed hosting!">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="May, 2022: Monthly Report">
<meta property="og:description" content="Python bindings to mCaptcha PoW, DDoS effectiveness measurement, major refactoring to prepare for support for other databases, We also tried to test its DoS defence effectiveness, and some exciting news regarding managed hosting!">
<meta property="og:type" content="article">
<meta property="og:url" content="/blog/may-2022-monthly-report/">
<meta property="og:image" content="/blog/may-2022-monthly-report/icon.png">
<meta property="article:published_time" content="2022-06-10T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Blogmay 2022 Monthly Report",
"item": "\/blogmay-2022-monthly-report\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="blog single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#python-bindings-to-mcaptcha-powhttpsgithubcommcaptchapow_sha256">Python bindings to <a href="https://github.com/mCaptcha/pow_sha256/">mCaptcha PoW</a></a></li>
<li><a href="#measuring-ddos-protection-effectiveness">Measuring DDoS protection effectiveness</a></li>
<li><a href="#refactor">Refactor</a></li>
<li><a href="#mcaptcha-is-now-on-the-fediverse">mCaptcha is now on the Fediverse</a></li>
<li><a href="#generic-hosting">Generic hosting</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<article>
<div class="blog-header">
<h1>May, 2022: Monthly Report</h1>
<p><small>Posted June 10, 2022 by <a class="stretched-link position-relative" href="/contributors/aravinth-manivannan/">Aravinth Manivannan</a>&nbsp;&hyphen;&nbsp;<strong>4&nbsp;min read</strong></small><p>
<p><small>Last Edited March 10, 2023</small><p>
</div>
<p class="lead">We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p>
<p>Hello and welcome to the May 2022 edition of the monthly report!</p>
<p>mCaptcha, for a while was showing all the signs of a dead project:
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>May, 2022: Monthly Report - mCaptcha</title><meta name=description content="Python bindings to mCaptcha PoW, DDoS effectiveness measurement, major refactoring to prepare for support for other databases, We also tried to test its DoS defence effectiveness, and some exciting news regarding managed hosting!"><link rel=canonical href=/blog/may-2022-monthly-report/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/blog/may-2022-monthly-report/icon.png"><meta name=twitter:title content="May, 2022: Monthly Report"><meta name=twitter:description content="Python bindings to mCaptcha PoW, DDoS effectiveness measurement, major refactoring to prepare for support for other databases, We also tried to test its DoS defence effectiveness, and some exciting news regarding managed hosting!"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="May, 2022: Monthly Report"><meta property="og:description" content="Python bindings to mCaptcha PoW, DDoS effectiveness measurement, major refactoring to prepare for support for other databases, We also tried to test its DoS defence effectiveness, and some exciting news regarding managed hosting!"><meta property="og:type" content="article"><meta property="og:url" content="/blog/may-2022-monthly-report/"><meta property="og:image" content="/blog/may-2022-monthly-report/icon.png"><meta property="article:published_time" content="2022-06-10T00:00:00+00:00"><meta property="article:modified_time" content="2022-06-14T15:39:59+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Blogmay 2022 Monthly Report","item":"\/blogmay-2022-monthly-report\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="blog single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active"><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#python-bindings-to-mcaptcha-powhttpsgithubcommcaptchapow_sha256>Python bindings to <a href=https://github.com/mCaptcha/pow_sha256/>mCaptcha PoW</a></a></li><li><a href=#measuring-ddos-protection-effectiveness>Measuring DDoS protection effectiveness</a></li><li><a href=#refactor>Refactor</a></li><li><a href=#mcaptcha-is-now-on-the-fediverse>mCaptcha is now on the Fediverse</a></li><li><a href=#generic-hosting>Generic hosting</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><article><div class=blog-header><h1>May, 2022: Monthly Report</h1><p><small>Posted June 10, 2022 by <a class="stretched-link position-relative" href=/contributors/aravinth-manivannan/>Aravinth Manivannan</a>&nbsp;&dash;&nbsp;<strong>4&nbsp;min read</strong></small><p><p><small>Last Edited June 14, 2022</small><p></div><p class=lead>We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p><p>Hello and welcome to the May 2022 edition of the monthly report!</p><p>mCaptcha, for a while was showing all the signs of a dead project:
no commits on the repositories and no monthly updates. But the project
is far from dead!</p>
<h2 id="python-bindings-to-mcaptcha-powhttpsgithubcommcaptchapow_sha256">Python bindings to <a href="https://github.com/mCaptcha/pow_sha256/">mCaptcha PoW</a></h2>
<p><a href="https://github.com/mCaptcha/pow_py">pow_py</a> contains bindings to
<a href="https://github.com/mCaptcha/pow_sha256">pow_sha256</a>, the
<a href="https://en.wikipedia.org/wiki/Proof_of_work">proof-of-work</a> library
is far from dead!</p><h2 id=python-bindings-to-mcaptcha-powhttpsgithubcommcaptchapow_sha256>Python bindings to <a href=https://github.com/mCaptcha/pow_sha256/>mCaptcha PoW</a></h2><p><a href=https://github.com/mCaptcha/pow_py>pow_py</a> contains bindings to
<a href=https://github.com/mCaptcha/pow_sha256>pow_sha256</a>, the
<a href=https://en.wikipedia.org/wiki/Proof_of_work>proof-of-work</a> library
that mCaptcha uses. For the uninitiated, the bindings allow for python
programs to automatically solve mCaptcha.</p>
<p>So if you are writing a script to do some chore on your favourite
programs to automatically solve mCaptcha.</p><p>So if you are writing a script to do some chore on your favourite
website that is protected by mCaptcha, you can now solve the mCaptcha
automatically from within the program.</p>
<p>Here&rsquo;s an example:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-python" data-lang="python"><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 1</span><span><span style="color:#ff79c6">import</span> os
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 2</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 3</span><span><span style="color:#ff79c6">import</span> mcaptcha_pow_py
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 4</span><span><span style="color:#ff79c6">import</span> requests
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 5</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 6</span><span><span style="color:#6272a4"># get the sitekey that is used in the mCaptcha protected form</span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 7</span><span>SITEKEY <span style="color:#ff79c6">=</span> os<span style="color:#ff79c6">.</span>getenv(<span style="color:#f1fa8c">&#34;MCAPTCHA_CAPTCHA_SITEKEY&#34;</span>)
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 8</span><span><span style="color:#6272a4"># the hostname of the mCaptcha instance that the form is using</span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 9</span><span>MCAPTCHA_HOST <span style="color:#ff79c6">=</span> os<span style="color:#ff79c6">.</span>getenv(<span style="color:#f1fa8c">&#34;MCAPTCHA_CAPTCHA_HOST&#34;</span>)
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">10</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">11</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">12</span><span>GET_CONFIG_ROUTE <span style="color:#ff79c6">=</span> <span style="color:#f1fa8c">f</span><span style="color:#f1fa8c">&#34;</span><span style="color:#f1fa8c">{</span>MCAPTCHA_HOST<span style="color:#f1fa8c">}</span><span style="color:#f1fa8c">/api/v1/pow/config&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">13</span><span>VERIFY_POW_ROUTE <span style="color:#ff79c6">=</span> <span style="color:#f1fa8c">f</span><span style="color:#f1fa8c">&#34;</span><span style="color:#f1fa8c">{</span>MCAPTCHA_HOST<span style="color:#f1fa8c">}</span><span style="color:#f1fa8c">/api/v1/pow/verify&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">14</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">15</span><span><span style="color:#ff79c6">def</span> <span style="color:#50fa7b">solve_captcha</span>():
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">16</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">17</span><span> <span style="color:#6272a4"># get challenge configuration</span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">18</span><span> key <span style="color:#ff79c6">=</span> {<span style="color:#f1fa8c">&#34;key&#34;</span>: sitekey}
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">19</span><span> challenge_config <span style="color:#ff79c6">=</span> requests<span style="color:#ff79c6">.</span>post(GET_CONFIG_ROUTE, json<span style="color:#ff79c6">=</span>key)
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">20</span><span> challenge_config <span style="color:#ff79c6">=</span> challenge_config<span style="color:#ff79c6">.</span>json()
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">21</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">22</span><span> <span style="color:#6272a4"># extract configuration data</span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">23</span><span> config <span style="color:#ff79c6">=</span> mcaptcha_pow_py<span style="color:#ff79c6">.</span>PoWConfig(challenge_config[<span style="color:#f1fa8c">&#34;salt&#34;</span>])
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">24</span><span> pow_string <span style="color:#ff79c6">=</span> challenge_config[<span style="color:#f1fa8c">&#34;string&#34;</span>]
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">25</span><span> pow_difficulty_factor <span style="color:#ff79c6">=</span> challenge_config[<span style="color:#f1fa8c">&#34;difficulty_factor&#34;</span>]
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">26</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">27</span><span> <span style="color:#6272a4"># generate work</span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">28</span><span> work <span style="color:#ff79c6">=</span> config<span style="color:#ff79c6">.</span>work(pow_string, pow_difficulty_factor)
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">29</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">30</span><span> <span style="color:#6272a4"># verify PoW</span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">31</span><span> proof <span style="color:#ff79c6">=</span> {
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">32</span><span> <span style="color:#f1fa8c">&#34;key&#34;</span>: SITEKEY,
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">33</span><span> <span style="color:#f1fa8c">&#34;nonce&#34;</span>: work<span style="color:#ff79c6">.</span>nonce,
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">34</span><span> <span style="color:#f1fa8c">&#34;result&#34;</span>: work<span style="color:#ff79c6">.</span>result,
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">35</span><span> <span style="color:#f1fa8c">&#34;string&#34;</span>: challenge_config[<span style="color:#f1fa8c">&#34;string&#34;</span>],
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">36</span><span> }
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">37</span><span> resp <span style="color:#ff79c6">=</span> requests<span style="color:#ff79c6">.</span>post(VERIFY_POW_ROUTE, json<span style="color:#ff79c6">=</span>proof)
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">38</span><span> resp <span style="color:#ff79c6">=</span> resp<span style="color:#ff79c6">.</span>json()
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">39</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">40</span><span> <span style="color:#6272a4"># extract verification token</span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">41</span><span> token <span style="color:#ff79c6">=</span> resp[<span style="color:#f1fa8c">&#34;token&#34;</span>]
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">42</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">43</span><span> <span style="color:#ff79c6">return</span> token
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">44</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">45</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">46</span><span>token <span style="color:#ff79c6">=</span> solve_captcha()
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">47</span><span>data <span style="color:#ff79c6">=</span> {
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">48</span><span> <span style="color:#f1fa8c">&#34;username&#34;</span>: <span style="color:#f1fa8c">&#34;me&#34;</span>,
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">49</span><span> <span style="color:#f1fa8c">&#34;password&#34;</span>: <span style="color:#f1fa8c">&#34;superlongpassword&#34;</span>,
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">50</span><span> <span style="color:#f1fa8c">&#34;confirm_password&#34;</span>: <span style="color:#f1fa8c">&#34;superlongpassword&#34;</span>,
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">51</span><span> <span style="color:#f1fa8c">&#34;mcaptcha__token&#34;</span>: token,
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">52</span><span>}
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">53</span><span>response <span style="color:#ff79c6">=</span> requests<span style="color:#ff79c6">.</span>post(<span style="color:#f1fa8c">&#34;/mCaptcha-protected-form&#34;</span>, data<span style="color:#ff79c6">=</span>data)
</span></span></code></pre></div><p>This could be missed for building DDoS bots(more on that
<a href="#measuring-ddos-protection-effectiveness">here</a>) but this could also be
automatically from within the program.</p><p>Here&rsquo;s an example:</p><div class=highlight><pre style=color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-python data-lang=python><span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f"> 1</span><span style=color:#ff79c6>import</span> os
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f"> 2</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f"> 3</span><span style=color:#ff79c6>import</span> mcaptcha_pow_py
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f"> 4</span><span style=color:#ff79c6>import</span> requests
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f"> 5</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f"> 6</span><span style=color:#6272a4># get the sitekey that is used in the mCaptcha protected form</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f"> 7</span>SITEKEY <span style=color:#ff79c6>=</span> os<span style=color:#ff79c6>.</span>getenv(<span style=color:#f1fa8c>&#34;MCAPTCHA_CAPTCHA_SITEKEY&#34;</span>)
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f"> 8</span><span style=color:#6272a4># the hostname of the mCaptcha instance that the form is using</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f"> 9</span>MCAPTCHA_HOST <span style=color:#ff79c6>=</span> os<span style=color:#ff79c6>.</span>getenv(<span style=color:#f1fa8c>&#34;MCAPTCHA_CAPTCHA_HOST&#34;</span>)
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">10</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">11</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">12</span>GET_CONFIG_ROUTE <span style=color:#ff79c6>=</span> f<span style=color:#f1fa8c>&#34;{MCAPTCHA_HOST}/api/v1/pow/config&#34;</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">13</span>VERIFY_POW_ROUTE <span style=color:#ff79c6>=</span> f<span style=color:#f1fa8c>&#34;{MCAPTCHA_HOST}/api/v1/pow/verify&#34;</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">14</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">15</span><span style=color:#ff79c6>def</span> <span style=color:#50fa7b>solve_captcha</span>():
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">16</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">17</span> <span style=color:#6272a4># get challenge configuration</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">18</span> key <span style=color:#ff79c6>=</span> {<span style=color:#f1fa8c>&#34;key&#34;</span>: sitekey}
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">19</span> challenge_config <span style=color:#ff79c6>=</span> requests<span style=color:#ff79c6>.</span>post(GET_CONFIG_ROUTE, json<span style=color:#ff79c6>=</span>key)
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">20</span> challenge_config <span style=color:#ff79c6>=</span> challenge_config<span style=color:#ff79c6>.</span>json()
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">21</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">22</span> <span style=color:#6272a4># extract configuration data</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">23</span> config <span style=color:#ff79c6>=</span> mcaptcha_pow_py<span style=color:#ff79c6>.</span>PoWConfig(challenge_config[<span style=color:#f1fa8c>&#34;salt&#34;</span>])
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">24</span> pow_string <span style=color:#ff79c6>=</span> challenge_config[<span style=color:#f1fa8c>&#34;string&#34;</span>]
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">25</span> pow_difficulty_factor <span style=color:#ff79c6>=</span> challenge_config[<span style=color:#f1fa8c>&#34;difficulty_factor&#34;</span>]
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">26</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">27</span> <span style=color:#6272a4># generate work</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">28</span> work <span style=color:#ff79c6>=</span> config<span style=color:#ff79c6>.</span>work(pow_string, pow_difficulty_factor)
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">29</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">30</span> <span style=color:#6272a4># verify PoW</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">31</span> proof <span style=color:#ff79c6>=</span> {
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">32</span> <span style=color:#f1fa8c>&#34;key&#34;</span>: SITEKEY,
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">33</span> <span style=color:#f1fa8c>&#34;nonce&#34;</span>: work<span style=color:#ff79c6>.</span>nonce,
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">34</span> <span style=color:#f1fa8c>&#34;result&#34;</span>: work<span style=color:#ff79c6>.</span>result,
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">35</span> <span style=color:#f1fa8c>&#34;string&#34;</span>: challenge_config[<span style=color:#f1fa8c>&#34;string&#34;</span>],
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">36</span> }
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">37</span> resp <span style=color:#ff79c6>=</span> requests<span style=color:#ff79c6>.</span>post(VERIFY_POW_ROUTE, json<span style=color:#ff79c6>=</span>proof)
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">38</span> resp <span style=color:#ff79c6>=</span> resp<span style=color:#ff79c6>.</span>json()
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">39</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">40</span> <span style=color:#6272a4># extract verification token</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">41</span> token <span style=color:#ff79c6>=</span> resp[<span style=color:#f1fa8c>&#34;token&#34;</span>]
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">42</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">43</span> <span style=color:#ff79c6>return</span> token
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">44</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">45</span>
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">46</span>token <span style=color:#ff79c6>=</span> solve_captcha()
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">47</span>data <span style=color:#ff79c6>=</span> {
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">48</span> <span style=color:#f1fa8c>&#34;username&#34;</span>: <span style=color:#f1fa8c>&#34;me&#34;</span>,
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">49</span> <span style=color:#f1fa8c>&#34;password&#34;</span>: <span style=color:#f1fa8c>&#34;superlongpassword&#34;</span>,
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">50</span> <span style=color:#f1fa8c>&#34;confirm_password&#34;</span>: <span style=color:#f1fa8c>&#34;superlongpassword&#34;</span>,
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">51</span> <span style=color:#f1fa8c>&#34;mcaptcha__token&#34;</span>: token,
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">52</span>}
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">53</span>response <span style=color:#ff79c6>=</span> requests<span style=color:#ff79c6>.</span>post(<span style=color:#f1fa8c>&#34;/mCaptcha-protected-form&#34;</span>, data<span style=color:#ff79c6>=</span>data)
</code></pre></div><p>This could be missed for building DDoS bots(more on that
<a href=#measuring-ddos-protection-effectiveness>here</a>) but this could also be
used to make CAPTCHA solving automated within screen readers and other
accessibility devices!</p>
<h2 id="measuring-ddos-protection-effectiveness">Measuring DDoS protection effectiveness</h2>
<p>Proof-of-work has historically been a good method to achieve rate
accessibility devices!</p><h2 id=measuring-ddos-protection-effectiveness>Measuring DDoS protection effectiveness</h2><p>Proof-of-work has historically been a good method to achieve rate
limiting but how much attack can it, specifically mCaptcha&rsquo;s
implementation, withstand when compared to an unprotected endpoint? To
find out, we used the recently created Python bindings to the mCaptcha
PoW library, the excellent load testing tool,
<a href="https://locust.io">locust</a> and wrote
<a href="https://github.com/mCaptcha/dos">mCaptcha/dos</a>!</p>
<p><a href="https://vitap.ac.in">VIT AP</a> kindly permitted me, @realaravinth, to use their network
<a href=https://locust.io>locust</a> and wrote
<a href=https://github.com/mCaptcha/dos>mCaptcha/dos</a>!</p><p><a href=https://vitap.ac.in>VIT AP</a> kindly permitted me, @realaravinth, to use their network
security lab for setting up a isolated, contained testing environment to
mount a DDoS attack on a <a href="https://github.com/mCaptcha/dos/tree/master/rust-server/demo-server">test
mount a DDoS attack on a <a href=https://github.com/mCaptcha/dos/tree/master/rust-server/demo-server>test
server</a>
instance.</p>
<p>The initial topology consisted of one mCaptcha instance, one DDoS demo
instance.</p><p>The initial topology consisted of one mCaptcha instance, one DDoS demo
server, one locust node running in leader configuration and six locust
nodes running in follower configuration. I was authorised to use the
netsec lab for three days, which unfortunately wasn&rsquo;t enough to go
finish running the experiment. <a href="https://sibichakkaravarthy.github.io/">Dr. Sibi Chakkaravarthy
finish running the experiment. <a href=https://sibichakkaravarthy.github.io/>Dr. Sibi Chakkaravarthy
Sethuraman</a> has kindly offered to
arrange authorisation to use the netsec lab once again in July 2022,
during which I hope to finish running the experiment</p>
<p>Special thanks to <a href="http://ackr8.com/">ackr-8</a> and
<a href="https://github.com/alan2000alex">alan2000alex</a> for help with setting up
infrastructure of the experiment.</p>
<h2 id="refactor">Refactor</h2>
<p>mCaptcha underwent a major refactor during the month of May: We re-wrote
during which I hope to finish running the experiment</p><p>Special thanks to <a href=http://ackr8.com/>ackr-8</a> and
<a href=https://github.com/alan2000alex>alan2000alex</a> for help with setting up
infrastructure of the experiment.</p><h2 id=refactor>Refactor</h2><p>mCaptcha underwent a major refactor during the month of May: We re-wrote
and cleaned up all database-related stuff for higher flexibility
and generally good architecture. This refactor lays the foundation
for implementing support for alternate database software
programs(we currently support PostgreSQL only).</p>
<h2 id="mcaptcha-is-now-on-the-fediverse">mCaptcha is now on the Fediverse</h2>
<p>We recently joined the Fediverse on a
<a href="https://docs.gotosocial.org/">GoToSocial</a> instance run by
programs(we currently support PostgreSQL only).</p><h2 id=mcaptcha-is-now-on-the-fediverse>mCaptcha is now on the Fediverse</h2><p>We recently joined the Fediverse on a
<a href=https://docs.gotosocial.org/>GoToSocial</a> instance run by
@realaravinth. We&rsquo;ll soon be deleting our Twitter account in favour of
the Fediverse account.</p>
<p><strong>Fediverse account:</strong>
<a href="https://gts.batsense.net/@mcaptcha">@mCaptcha@batsense.net</a></p>
<h2 id="generic-hosting">Generic hosting</h2>
<p>I, @realaravinth, have been busy with <a href="https://forgeflux.org">ForgeFlux</a>
and <a href="https://hostea.org">Hostea</a> &mdash; both of which are <a href="https://en.wikipedia.org/wiki/Forge_(software)">software
the Fediverse account.</p><p><strong>Fediverse account:</strong>
<a href=https://gts.batsense.net/@mcaptcha>@mCaptcha@batsense.net</a></p><h2 id=generic-hosting>Generic hosting</h2><p>I, @realaravinth, have been busy with <a href=https://forgeflux.org>ForgeFlux</a>
and <a href=https://hostea.org>Hostea</a> &mdash; both of which are <a href=https://en.wikipedia.org/wiki/Forge_(software)>software
forge</a> related and so
when usable, will mostly improve the Free Software ecosystem. Hostea is
a project that aims to create a libre software development ecosystem and
provide managed hosting for the same. The project is <a href="https://forum.hostea.org/t/a-guide-to-hostea-governance/57">built by a
provide managed hosting for the same. The project is <a href=https://forum.hostea.org/t/a-guide-to-hostea-governance/57>built by a
horizontal community</a>, which allows for multiple service providers who
adhere to the Hostea policies to operate
under the Hostea umbrella &mdash; essentially allowing for the creation of
smaller, highly localised cooperatives.</p>
<p>Cooperatives are interesting, and we believe that mCaptcha, too, can
smaller, highly localised cooperatives.</p><p>Cooperatives are interesting, and we believe that mCaptcha, too, can
benefit from such an architecture as it will prevent any one party from
single-handedly sabotaging the project. The experience gained from
Hostea will be reused in providing managed hosting for mCaptcha.</p>
<p>By the end of this year, mCaptcha will reorganise into a horizontal
community and adopt <a href="https://en.wikipedia.org/wiki/Radical_transparency#Radical_corporate_transparency">radical transparency</a> to improve trust and
reliability of the project</p>
<blockquote>
<p>P.S: I, realaravinth, would do it sooner but I&rsquo;m a little busy right
Hostea will be reused in providing managed hosting for mCaptcha.</p><p>By the end of this year, mCaptcha will reorganise into a horizontal
community and adopt <a href=https://en.wikipedia.org/wiki/Radical_transparency#Radical_corporate_transparency>radical transparency</a> to improve trust and
reliability of the project</p><blockquote><p>P.S: I, realaravinth, would do it sooner but I&rsquo;m a little busy right
now, so if someone is interested to help out do reach out and so that
we could do it sooner!</p>
</blockquote>
<p>In context of mCaptcha, radical transparency will include all decisions
we could do it sooner!</p></blockquote><p>In context of mCaptcha, radical transparency will include all decisions
publicly made, funding and expenses publicly documented, and all
collaborations, too, publicly documented. This of course doesn&rsquo;t imply
that private, personally identifiable information(addresses and phone
numbers, for instance) will be publicly disclosed. Such information will
be redacted and published.</p>
</article>
<div class="docs-navigation d-flex justify-content-between">
<a href="/blog/june-2022-monthly-report/">
<div class="card my-1">
<div class="card-body py-2">
&larr; June, 2022: Monthly Report
</div>
</div>
</a>
<a class="ms-auto" href="/blog/december-2021-monthly-report/">
<div class="card my-1">
<div class="card-body py-2">
December, 2021: Monthly Report &rarr;
</div>
</div>
</a>
</div>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/blog/05-22-monthly-report/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
be redacted and published.</p></article><div class="docs-navigation d-flex justify-content-between"><a href=/blog/june-2022-monthly-report/><div class="card my-1"><div class="card-body py-2">&larr; June, 2022: Monthly Report</div></div></a><a class=ms-auto href=/blog/december-2021-monthly-report/><div class="card my-1"><div class="card-body py-2">December, 2021: Monthly Report &rarr;</div></div></a></div><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/blog/05-22-monthly-report/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,411 +1,25 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>PoW performance - mCaptcha</title>
<meta name="description" content="PoW performance of native and WASM implementations. Does the native implementation have and edge over the WASM library?">
<link rel="canonical" href="/blog/pow-performance/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/blog/pow-performance/icon.png">
<meta name="twitter:title" content="PoW performance">
<meta name="twitter:description" content="PoW performance of native and WASM implementations. Does the native implementation have and edge over the WASM library?">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="PoW performance">
<meta property="og:description" content="PoW performance of native and WASM implementations. Does the native implementation have and edge over the WASM library?">
<meta property="og:type" content="article">
<meta property="og:url" content="/blog/pow-performance/">
<meta property="og:image" content="/blog/pow-performance/icon.png">
<meta property="article:published_time" content="2021-09-01T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Blogpow Performance",
"item": "\/blogpow-performance\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="blog single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#benchmark-tools">Benchmark tools</a></li>
<li><a href="#results">Results</a>
<ul>
<li><a href="#native">Native</a></li>
<li><a href="#browser">Browser</a></li>
<li><a href="#firefox">Firefox</a></li>
</ul>
</li>
<li><a href="#conclusion">Conclusion</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<article>
<div class="blog-header">
<h1>PoW performance</h1>
<p><small>Posted September 1, 2021 by <a class="stretched-link position-relative" href="/contributors/aravinth-manivannan/">Aravinth Manivannan</a>&nbsp;&hyphen;&nbsp;<strong>2&nbsp;min read</strong></small><p>
<p><small>Last Edited March 10, 2023</small><p>
</div>
<p class="lead">We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p>
<p>mCaptcha uses a
<a href="https://en.wikipedia.org/wiki/Proof_of_work">proof-of-work(PoW)</a> mechanism
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>PoW performance - mCaptcha</title><meta name=description content="PoW performance of native and WASM implementations. Does the native implementation have and edge over the WASM library?"><link rel=canonical href=/blog/pow-performance/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/blog/pow-performance/icon.png"><meta name=twitter:title content="PoW performance"><meta name=twitter:description content="PoW performance of native and WASM implementations. Does the native implementation have and edge over the WASM library?"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="PoW performance"><meta property="og:description" content="PoW performance of native and WASM implementations. Does the native implementation have and edge over the WASM library?"><meta property="og:type" content="article"><meta property="og:url" content="/blog/pow-performance/"><meta property="og:image" content="/blog/pow-performance/icon.png"><meta property="article:published_time" content="2021-09-01T00:00:00+00:00"><meta property="article:modified_time" content="2021-09-01T15:33:12+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Blogpow Performance","item":"\/blogpow-performance\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="blog single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active"><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#benchmark-tools>Benchmark tools</a></li><li><a href=#results>Results</a><ul><li><a href=#native>Native</a></li><li><a href=#browser>Browser</a></li><li><a href=#firefox>Firefox</a></li></ul></li><li><a href=#conclusion>Conclusion</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><article><div class=blog-header><h1>PoW performance</h1><p><small>Posted September 1, 2021 by <a class="stretched-link position-relative" href=/contributors/aravinth-manivannan/>Aravinth Manivannan</a>&nbsp;&dash;&nbsp;<strong>2&nbsp;min read</strong></small><p><p><small>Last Edited September 1, 2021</small><p></div><p class=lead>We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p><p>mCaptcha uses a
<a href=https://en.wikipedia.org/wiki/Proof_of_work>proof-of-work(PoW)</a> mechanism
to rate limit users or potential bots. In order for this to be
effective, the PoW should be configured properly. The difficulty
requirement can&rsquo;t be too high, as it could cause accessibility issues on
the client-side while at the same time, it shouldn&rsquo;t be too low, as it
wouldn&rsquo;t offer proper protection against bots.</p>
<p>Malicious bots(the ones that wreak havoc), run native code which is
wouldn&rsquo;t offer proper protection against bots.</p><p>Malicious bots(the ones that wreak havoc), run native code which is
capable of running in a multi-threaded context. This creates an unfair
advantage for crackers using these bots over legitimate users, who
usually use browsers to access a website.</p>
<p>I wanted to see how much of an advantage a native program would have
over our WASM library.</p>
<h2 id="benchmark-tools">Benchmark tools</h2>
<p>So I wrote these to compare native and WASM performances:</p>
<ul>
<li>Browser benchmark: <a href="https://mCaptcha.github.io/benches">https://mCaptcha.github.io/benches</a></li>
<li>Native benchmark: <a href="https://github.com/mCaptcha/cli/blob/master/scripts/bench.sh">mCaptcha/cli managed by scripts/bench.sh</a></li>
</ul>
<div class="alert alert-warning d-flex" role="alert">
<div class="flex-shrink-1 alert-icon"></div>
<div class="w-100">Feel free to reproduce the results!</div>
</div>
<h2 id="results">Results</h2>
<p>The tests were run on my development machine featuring an Intel Core
i7-9750h.</p>
<h3 id="native">Native</h3>
<table>
<thead>
<tr>
<th>Difficulty</th>
<th>Real</th>
<th>User</th>
<th>Sys</th>
</tr>
</thead>
<tbody>
<tr>
<td>500000</td>
<td>0m0.220s</td>
<td>0m0.197s</td>
<td>0m0.006s</td>
</tr>
<tr>
<td>1000000</td>
<td>0m0.203s</td>
<td>0m0.203s</td>
<td>0m0.000s</td>
</tr>
<tr>
<td>1500000</td>
<td>0m0.198s</td>
<td>0m0.198s</td>
<td>0m0.000s</td>
</tr>
<tr>
<td>2000000</td>
<td>0m0.203s</td>
<td>0m0.203s</td>
<td>0m0.000s</td>
</tr>
<tr>
<td>2500000</td>
<td>0m0.758s</td>
<td>0m0.752s</td>
<td>0m0.003s</td>
</tr>
<tr>
<td>3000000</td>
<td>0m0.776s</td>
<td>0m0.769s</td>
<td>0m0.003s</td>
</tr>
<tr>
<td>3500000</td>
<td>0m2.010s</td>
<td>0m1.998s</td>
<td>0m0.000s</td>
</tr>
<tr>
<td>4000000</td>
<td>0m2.038s</td>
<td>0m2.033s</td>
<td>0m0.003s</td>
</tr>
<tr>
<td>4500000</td>
<td>0m2.014s</td>
<td>0m2.013s</td>
<td>0m0.000s</td>
</tr>
</tbody>
</table>
<h3 id="browser">Browser</h3>
<p>I ran the tests on both Firefox and Chromium to compare results</p>
<h3 id="firefox">Firefox</h3>
<ul>
<li><strong>User Agent:</strong> <code>Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0</code></li>
<li><strong>Hardware concurrency:</strong> 12</li>
</ul>
<table>
<thead>
<tr>
<th>Difficulty</th>
<th>Duration(in ms)</th>
</tr>
</thead>
<tbody>
<tr>
<td>500000</td>
<td>401</td>
</tr>
<tr>
<td>1000000</td>
<td>413</td>
</tr>
<tr>
<td>1500000</td>
<td>398</td>
</tr>
<tr>
<td>2000000</td>
<td>394</td>
</tr>
<tr>
<td>2500000</td>
<td>1495</td>
</tr>
<tr>
<td>3000000</td>
<td>1556</td>
</tr>
<tr>
<td>3500000</td>
<td>3971</td>
</tr>
<tr>
<td>4000000</td>
<td>4235</td>
</tr>
<tr>
<td>4500000</td>
<td>4116</td>
</tr>
</tbody>
</table>
<blockquote>
<p>To be fair, my Firefox installation is loaded with a gazillion
usually use browsers to access a website.</p><p>I wanted to see how much of an advantage a native program would have
over our WASM library.</p><h2 id=benchmark-tools>Benchmark tools</h2><p>So I wrote these to compare native and WASM performances:</p><ul><li>Browser benchmark: <a href=https://mCaptcha.github.io/benches>https://mCaptcha.github.io/benches</a></li><li>Native benchmark: <a href=https://github.com/mCaptcha/cli/blob/master/scripts/bench.sh>mCaptcha/cli managed by scripts/bench.sh</a></li></ul><div class="alert alert-warning d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100>Feel free to reproduce the results!</div></div><h2 id=results>Results</h2><p>The tests were run on my development machine featuring an Intel Core
i7-9750h.</p><h3 id=native>Native</h3><table><thead><tr><th>Difficulty</th><th>Real</th><th>User</th><th>Sys</th></tr></thead><tbody><tr><td>500000</td><td>0m0.220s</td><td>0m0.197s</td><td>0m0.006s</td></tr><tr><td>1000000</td><td>0m0.203s</td><td>0m0.203s</td><td>0m0.000s</td></tr><tr><td>1500000</td><td>0m0.198s</td><td>0m0.198s</td><td>0m0.000s</td></tr><tr><td>2000000</td><td>0m0.203s</td><td>0m0.203s</td><td>0m0.000s</td></tr><tr><td>2500000</td><td>0m0.758s</td><td>0m0.752s</td><td>0m0.003s</td></tr><tr><td>3000000</td><td>0m0.776s</td><td>0m0.769s</td><td>0m0.003s</td></tr><tr><td>3500000</td><td>0m2.010s</td><td>0m1.998s</td><td>0m0.000s</td></tr><tr><td>4000000</td><td>0m2.038s</td><td>0m2.033s</td><td>0m0.003s</td></tr><tr><td>4500000</td><td>0m2.014s</td><td>0m2.013s</td><td>0m0.000s</td></tr></tbody></table><h3 id=browser>Browser</h3><p>I ran the tests on both Firefox and Chromium to compare results</p><h3 id=firefox>Firefox</h3><ul><li><strong>User Agent:</strong> <code>Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0</code></li><li><strong>Hardware concurrency:</strong> 12</li></ul><table><thead><tr><th>Difficulty</th><th>Duration(in ms)</th></tr></thead><tbody><tr><td>500000</td><td>401</td></tr><tr><td>1000000</td><td>413</td></tr><tr><td>1500000</td><td>398</td></tr><tr><td>2000000</td><td>394</td></tr><tr><td>2500000</td><td>1495</td></tr><tr><td>3000000</td><td>1556</td></tr><tr><td>3500000</td><td>3971</td></tr><tr><td>4000000</td><td>4235</td></tr><tr><td>4500000</td><td>4116</td></tr></tbody></table><blockquote><p>To be fair, my Firefox installation is loaded with a gazillion
extensions while the Chromium instance is clean, as I don&rsquo;t use it
much</p>
</blockquote>
<h4 id="chromium">Chromium</h4>
<ul>
<li><strong>User Agent:</strong> <code>Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36</code></li>
<li><strong>Hardware concurrency:</strong> 12</li>
</ul>
<table>
<thead>
<tr>
<th>Difficulty</th>
<th>Duration(in ms)</th>
</tr>
</thead>
<tbody>
<tr>
<td>500000</td>
<td>399.40000000037253</td>
</tr>
<tr>
<td>1000000</td>
<td>354.6000000014901</td>
</tr>
<tr>
<td>1500000</td>
<td>351.19999999925494</td>
</tr>
<tr>
<td>2000000</td>
<td>353.80000000074506</td>
</tr>
<tr>
<td>2500000</td>
<td>1337.800000000745</td>
</tr>
<tr>
<td>3000000</td>
<td>1311.199999999255</td>
</tr>
<tr>
<td>3500000</td>
<td>3417.5999999996275</td>
</tr>
<tr>
<td>4000000</td>
<td>3488.800000000745</td>
</tr>
<tr>
<td>4500000</td>
<td>3458.2999999988824</td>
</tr>
</tbody>
</table>
<h2 id="conclusion">Conclusion</h2>
<p>At the highest difficulty factor, the native implementation was a almost second
much</p></blockquote><h4 id=chromium>Chromium</h4><ul><li><strong>User Agent:</strong> <code>Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36</code></li><li><strong>Hardware concurrency:</strong> 12</li></ul><table><thead><tr><th>Difficulty</th><th>Duration(in ms)</th></tr></thead><tbody><tr><td>500000</td><td>399.40000000037253</td></tr><tr><td>1000000</td><td>354.6000000014901</td></tr><tr><td>1500000</td><td>351.19999999925494</td></tr><tr><td>2000000</td><td>353.80000000074506</td></tr><tr><td>2500000</td><td>1337.800000000745</td></tr><tr><td>3000000</td><td>1311.199999999255</td></tr><tr><td>3500000</td><td>3417.5999999996275</td></tr><tr><td>4000000</td><td>3488.800000000745</td></tr><tr><td>4500000</td><td>3458.2999999988824</td></tr></tbody></table><h2 id=conclusion>Conclusion</h2><p>At the highest difficulty factor, the native implementation was a almost second
faster than the WASM library. But the fact that both of them were able
to run to completion in under 5 seconds is impressive!</p>
<p>So, in my opinion, native implementation is only slightly faster than
to run to completion in under 5 seconds is impressive!</p><p>So, in my opinion, native implementation is only slightly faster than
the WASM library and for all intents and purposes, this shouldn&rsquo;t matter
much.</p>
<hr>
<p>P.S Work is underway to benchmark multiple platforms. A detailed report
will be published when that data is available.</p>
<p>For this post, I asked some of my friends to run the tests on their
much.</p><hr><p>P.S Work is underway to benchmark multiple platforms. A detailed report
will be published when that data is available.</p><p>For this post, I asked some of my friends to run the tests on their
computers. The results slightly varied but even the slowest case
generated proof for 4500000 difficulty(the highest in this test), in under
15 seconds!</p>
</article>
<div class="docs-navigation d-flex justify-content-between">
<a href="/blog/survey/">
<div class="card my-1">
<div class="card-body py-2">
&larr; Survey
</div>
</div>
</a>
<a class="ms-auto" href="/blog/say-hello-to-mcaptcha/">
<div class="card my-1">
<div class="card-body py-2">
Say hello to mCaptcha &rarr;
</div>
</div>
</a>
</div>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/blog/pow-performance/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
15 seconds!</p></article><div class="docs-navigation d-flex justify-content-between"><a href=/blog/survey/><div class="card my-1"><div class="card-body py-2">&larr; Survey</div></div></a><a class=ms-auto href=/blog/say-hello-to-mcaptcha/><div class="card my-1"><div class="card-body py-2">Say hello to mCaptcha &rarr;</div></div></a></div><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/blog/pow-performance/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,250 +1,25 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Say hello to mCaptcha - mCaptcha</title>
<meta name="description" content="Introducing mCaptcha, a kickass CAPTCHA systems that gives (DDoS) attackers a run for their money. Oh and UX is great too!">
<link rel="canonical" href="/blog/say-hello-to-mcaptcha/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/blog/say-hello-to-mcaptcha/icon.png">
<meta name="twitter:title" content="Say hello to mCaptcha">
<meta name="twitter:description" content="Introducing mCaptcha, a kickass CAPTCHA systems that gives (DDoS) attackers a run for their money. Oh and UX is great too!">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Say hello to mCaptcha">
<meta property="og:description" content="Introducing mCaptcha, a kickass CAPTCHA systems that gives (DDoS) attackers a run for their money. Oh and UX is great too!">
<meta property="og:type" content="article">
<meta property="og:url" content="/blog/say-hello-to-mcaptcha/">
<meta property="og:image" content="/blog/say-hello-to-mcaptcha/icon.png">
<meta property="article:published_time" content="2021-05-26T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Blogsay Hello to Mcaptcha",
"item": "\/blogsay-hello-to-mcaptcha\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="blog single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#how-does-it-work">How does it work?</a></li>
<li><a href="#okay-but-what-about-bad-actors">Okay, but what about bad actors?</a></li>
<li><a href="#why-use-mcaptcha">Why use mCaptcha?</a></li>
<li><a href="#how-to-migrate">How to migrate?</a></li>
<li><a href="#our-philosophy">Our Philosophy</a></li>
<li><a href="#resources">Resources</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<article>
<div class="blog-header">
<h1>Say hello to mCaptcha</h1>
<p><small>Posted May 26, 2021 by <a class="stretched-link position-relative" href="/contributors/aravinth-manivannan/">Aravinth Manivannan</a>&nbsp;&hyphen;&nbsp;<strong>2&nbsp;min read</strong></small><p>
<p><small>Last Edited March 10, 2023</small><p>
</div>
<p class="lead">We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p>
<p>At mCaptcha, we believe in digital freedom and privacy and so we built a
<a href="https://en.wikipedia.org/wiki/Proof_of_work">proof-of-work</a> based
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Say hello to mCaptcha - mCaptcha</title><meta name=description content="Introducing mCaptcha, a kickass CAPTCHA systems that gives (DDoS) attackers a run for their money. Oh and UX is great too!"><link rel=canonical href=/blog/say-hello-to-mcaptcha/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/blog/say-hello-to-mcaptcha/icon.png"><meta name=twitter:title content="Say hello to mCaptcha"><meta name=twitter:description content="Introducing mCaptcha, a kickass CAPTCHA systems that gives (DDoS) attackers a run for their money. Oh and UX is great too!"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Say hello to mCaptcha"><meta property="og:description" content="Introducing mCaptcha, a kickass CAPTCHA systems that gives (DDoS) attackers a run for their money. Oh and UX is great too!"><meta property="og:type" content="article"><meta property="og:url" content="/blog/say-hello-to-mcaptcha/"><meta property="og:image" content="/blog/say-hello-to-mcaptcha/icon.png"><meta property="article:published_time" content="2021-05-26T00:00:00+00:00"><meta property="article:modified_time" content="2021-12-02T10:25:42+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Blogsay Hello to Mcaptcha","item":"\/blogsay-hello-to-mcaptcha\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="blog single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active"><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#how-does-it-work>How does it work?</a></li><li><a href=#okay-but-what-about-bad-actors>Okay, but what about bad actors?</a></li><li><a href=#why-use-mcaptcha>Why use mCaptcha?</a></li><li><a href=#how-to-migrate>How to migrate?</a></li><li><a href=#our-philosophy>Our Philosophy</a></li><li><a href=#resources>Resources</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><article><div class=blog-header><h1>Say hello to mCaptcha</h1><p><small>Posted May 26, 2021 by <a class="stretched-link position-relative" href=/contributors/aravinth-manivannan/>Aravinth Manivannan</a>&nbsp;&dash;&nbsp;<strong>2&nbsp;min read</strong></small><p><p><small>Last Edited December 2, 2021</small><p></div><p class=lead>We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p><p>At mCaptcha, we believe in digital freedom and privacy and so we built a
<a href=https://en.wikipedia.org/wiki/Proof_of_work>proof-of-work</a> based
CAPTCHA system that doesn&rsquo;t track. Seriously, no tracking. But that
isn&rsquo;t the killer feature, our system doesn&rsquo;t require the user to
pick cars or ID sidewalks &mdash; our system does it&rsquo;s thing(usually
at the click of a button) and gets out of the way.</p>
<h2 id="how-does-it-work">How does it work?</h2>
<p>mCaptcha uses SHA256 based proof-of-work(PoW) to rate limit users.</p>
<p>When a user wants to do something on an mCaptcha-protected website,</p>
<ol>
<li>
<p>they will have to generate proof-of-work(a bunch of math that will
takes time to compute) and submit it to mCaptcha.</p>
</li>
<li>
<p>We&rsquo;ll validate the proof:</p>
</li>
</ol>
<ul>
<li>if validation is unsuccessful, they will be prevented from accessing
the destination website</li>
<li>if validation is successful, read on,</li>
</ul>
<ol start="3">
<li>
<p>They will be issued a token that should be submit along with the
request/form to the destination website.</p>
</li>
<li>
<p>The destination website validates the submitted token with
mCaptcha before processing the request.</p>
</li>
</ol>
<p>The whole process is automated from the user&rsquo;s point of view. All they
have to do is click on a button to initiate the process.</p>
<h2 id="okay-but-what-about-bad-actors">Okay, but what about bad actors?</h2>
<p>mCaptcha makes interacting with websites (computationally)expensive for
at the click of a button) and gets out of the way.</p><h2 id=how-does-it-work>How does it work?</h2><p>mCaptcha uses SHA256 based proof-of-work(PoW) to rate limit users.</p><p>When a user wants to do something on an mCaptcha-protected website,</p><ol><li><p>they will have to generate proof-of-work(a bunch of math that will
takes time to compute) and submit it to mCaptcha.</p></li><li><p>We&rsquo;ll validate the proof:</p></li></ol><ul><li>if validation is unsuccessful, they will be prevented from accessing
the destination website</li><li>if validation is successful, read on,</li></ul><ol start=3><li><p>They will be issued a token that should be submit along with the
request/form to the destination website.</p></li><li><p>The destination website validates the submitted token with
mCaptcha before processing the request.</p></li></ol><p>The whole process is automated from the user&rsquo;s point of view. All they
have to do is click on a button to initiate the process.</p><h2 id=okay-but-what-about-bad-actors>Okay, but what about bad actors?</h2><p>mCaptcha makes interacting with websites (computationally)expensive for
the user. A well-behaving user will experience a slight delay(no delay
when under moderate load to 2-3 seconds when under attack; PoW difficulty is
variable) but if someone wants to hammer your site, they will have to do
more work to send requests than your server you will have to do to respond
to their request.</p>
<h2 id="why-use-mcaptcha">Why use mCaptcha?</h2>
<ul>
<li><strong>Free software, privacy focused</strong></li>
<li><strong>Seamless</strong> UX &mdash; No more annoying CAPTCHAs!</li>
<li><strong>IP address independent:</strong> your users are behind a NAT? We got you covered!</li>
<li><strong>Automatic bot throttling</strong></li>
<li><strong>Resistant to replay attacks:</strong> proof-of-work configurations have short lifetimes(30s) and can be used only once. If a user submits a PoW to an already used configuration or an expired one, their proof will be rejected.</li>
</ul>
<h2 id="how-to-migrate">How to migrate?</h2>
<p>Our client libraries are mostly compatible with reCAPTCHA and hCaptcha.
A detailed guide will be published soon.</p>
<h2 id="our-philosophy">Our Philosophy</h2>
<p>Man has has come so far only because our ancestors chose to
to their request.</p><h2 id=why-use-mcaptcha>Why use mCaptcha?</h2><ul><li><strong>Free software, privacy focused</strong></li><li><strong>Seamless</strong> UX &mdash; No more annoying CAPTCHAs!</li><li><strong>IP address independent:</strong> your users are behind a NAT? We got you covered!</li><li><strong>Automatic bot throttling</strong></li><li><strong>Resistant to replay attacks:</strong> proof-of-work configurations have short lifetimes(30s) and can be used only once. If a user submits a PoW to an already used configuration or an expired one, their proof will be rejected.</li></ul><h2 id=how-to-migrate>How to migrate?</h2><p>Our client libraries are mostly compatible with reCAPTCHA and hCaptcha.
A detailed guide will be published soon.</p><h2 id=our-philosophy>Our Philosophy</h2><p>Man has has come so far only because our ancestors chose to
share their knowledge with others. If everything was labeled
intellectual property, we might still be stuck in Stone Age. The idea of
intellectual property is alien to us. For this reason, all of our source
code is freely available(both as in freedom and beers) at <a href="https://github.com/mCaptcha/">our
GitHub</a>.</p>
<h2 id="resources">Resources</h2>
<ul>
<li><a href="https://github.com/mCaptcha/guard">guard</a> - mCaptcha backend <code>AGPL</code></li>
<li><a href="https://github.com/mCaptcha/browser">frontend library</a> - mCaptcha frontend library. <code>MIT/APACHE</code></li>
</ul>
</article>
<div class="docs-navigation d-flex justify-content-between">
<a href="/blog/pow-performance/">
<div class="card my-1">
<div class="card-body py-2">
&larr; PoW performance
</div>
</div>
</a>
</div>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/blog/say-hello-to-mcaptcha/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
code is freely available(both as in freedom and beers) at <a href=https://github.com/mCaptcha/>our
GitHub</a>.</p><h2 id=resources>Resources</h2><ul><li><a href=https://github.com/mCaptcha/guard>guard</a> - mCaptcha backend <code>AGPL</code></li><li><a href=https://github.com/mCaptcha/browser>frontend library</a> - mCaptcha frontend library. <code>MIT/APACHE</code></li></ul></article><div class="docs-navigation d-flex justify-content-between"><a href=/blog/pow-performance/><div class="card my-1"><div class="card-body py-2">&larr; PoW performance</div></div></a></div><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/blog/say-hello-to-mcaptcha/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,59 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>/blog/february-2023-monthly-report/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/blog/july-2022-monthly-report/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/blog/june-2022-monthly-report/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/blog/may-2022-monthly-report/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/blog/december-2021-monthly-report/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/blog/survey/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/blog/pow-performance/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/blog/say-hello-to-mcaptcha/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</urlset>
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/blog/february-2023-monthly-report/</loc><lastmod>2023-03-09T02:30:43+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/blog/july-2022-monthly-report/</loc><lastmod>2023-02-13T14:50:39+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/blog/june-2022-monthly-report/</loc><lastmod>2022-07-07T20:05:57+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/blog/may-2022-monthly-report/</loc><lastmod>2022-06-14T15:39:59+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/blog/december-2021-monthly-report/</loc><lastmod>2022-06-14T15:39:59+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/blog/survey/</loc><lastmod>2021-12-23T23:26:38+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/blog/pow-performance/</loc><lastmod>2021-09-01T15:33:12+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/blog/say-hello-to-mcaptcha/</loc><lastmod>2021-12-02T10:25:42+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>

View file

@ -1,210 +1,15 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Survey - mCaptcha</title>
<meta name="description" content="We are conducting a survey to benchmark and gather performance metrics of our system on various devices">
<link rel="canonical" href="/blog/survey/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/blog/survey/icon.png">
<meta name="twitter:title" content="Survey">
<meta name="twitter:description" content="We are conducting a survey to benchmark and gather performance metrics of our system on various devices">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Survey">
<meta property="og:description" content="We are conducting a survey to benchmark and gather performance metrics of our system on various devices">
<meta property="og:type" content="article">
<meta property="og:url" content="/blog/survey/">
<meta property="og:image" content="/blog/survey/icon.png">
<meta property="article:published_time" content="2021-10-28T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Blogsurvey",
"item": "\/blogsurvey\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="blog single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#winners">Winners</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<article>
<div class="blog-header">
<h1>Survey</h1>
<p><small>Posted October 28, 2021 by <a class="stretched-link position-relative" href="/contributors/aravinth-manivannan/">Aravinth Manivannan</a>&nbsp;&hyphen;&nbsp;<strong>1&nbsp;min read</strong></small><p>
<p><small>Last Edited March 10, 2023</small><p>
</div>
<p class="lead">We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p>
<p><strong>Survey link:</strong> <a href="https://survey.mcaptcha.org/survey/campaigns/b717e51e-24d4-4ab6-912f-de2dfe3ce1fe/about">https://survey.mcaptcha.org/survey/campaigns/b717e51e-24d4-4ab6-912f-de2dfe3ce1fe/about</a></p>
<p><strong>NOTE:</strong> The survey(at least, the lucky draw is temporarily suspended
due to some logistical reasons. Apologies for any inconvenience caused.</p>
<p>mCaptcha relies on a
<a href="https://en.wikipedia.org/wiki/Proof_of_work">proof-of-work(PoW)</a>
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Survey - mCaptcha</title><meta name=description content="We are conducting a survey to benchmark and gather performance metrics of our system on various devices"><link rel=canonical href=/blog/survey/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/blog/survey/icon.png"><meta name=twitter:title content="Survey"><meta name=twitter:description content="We are conducting a survey to benchmark and gather performance metrics of our system on various devices"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Survey"><meta property="og:description" content="We are conducting a survey to benchmark and gather performance metrics of our system on various devices"><meta property="og:type" content="article"><meta property="og:url" content="/blog/survey/"><meta property="og:image" content="/blog/survey/icon.png"><meta property="article:published_time" content="2021-10-28T00:00:00+00:00"><meta property="article:modified_time" content="2021-12-23T23:26:38+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Blogsurvey","item":"\/blogsurvey\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="blog single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item active"><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#winners>Winners</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><article><div class=blog-header><h1>Survey</h1><p><small>Posted October 28, 2021 by <a class="stretched-link position-relative" href=/contributors/aravinth-manivannan/>Aravinth Manivannan</a>&nbsp;&dash;&nbsp;<strong>1&nbsp;min read</strong></small><p><p><small>Last Edited December 23, 2021</small><p></div><p class=lead>We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?</p><p><strong>Survey link:</strong> <a href=https://survey.mcaptcha.org/survey/campaigns/b717e51e-24d4-4ab6-912f-de2dfe3ce1fe/about>https://survey.mcaptcha.org/survey/campaigns/b717e51e-24d4-4ab6-912f-de2dfe3ce1fe/about</a></p><p><strong>NOTE:</strong> The survey(at least, the lucky draw is temporarily suspended
due to some logistical reasons. Apologies for any inconvenience caused.</p><p>mCaptcha relies on a
<a href=https://en.wikipedia.org/wiki/Proof_of_work>proof-of-work(PoW)</a>
mechanism to guard against bots. In order for this to be effective, the
difficulty factor should be configured properly. If the difficulty
factor is too high all the time, it will inconvenience the users and if
it&rsquo;s too low during attack, the defence will be weak.</p>
<p>So we are conducting a survey to gather performance benchmarks from
it&rsquo;s too low during attack, the defence will be weak.</p><p>So we are conducting a survey to gather performance benchmarks from
various devices and browsers. The data collected from the survey will be made
public, we believe it will guide sysadmins configure difficulty factor
properly.</p>
<p>If you are interested in the lucky draw, please save the <code>submission ID</code> and the <code>proof</code> will be presented
to you at the end of the survey.</p>
<figure>
<img class="img-fluid lazyload blur-up" data-sizes="auto" src="/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_20x0_resize_q75_box.jpg" data-srcset="/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_900x0_resize_q75_box.jpg 900w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_800x0_resize_q75_box.jpg 800w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_700x0_resize_q75_box.jpg 700w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_600x0_resize_q75_box.jpg 600w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_500x0_resize_q75_box.jpg 500w" width="1129" height="325" alt="survey lucky draw identifier credentials">
<noscript><img class="img-fluid" sizes="100vw" srcset="/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_900x0_resize_q75_box.jpg 900w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_800x0_resize_q75_box.jpg 800w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_700x0_resize_q75_box.jpg 700w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_600x0_resize_q75_box.jpg 600w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_500x0_resize_q75_box.jpg 500w" src="/blog/survey/survey-id.jpg" width="1129" height="325" alt="survey lucky draw identifier credentials"></noscript>
<figcaption class="figure-caption">Lucky draw credentials</figcaption>
</figure>
<h2 id="winners">Winners</h2>
<p>This blog post will be updated with the winning submission IDs and the
winners should provide the matching <code>proof</code> to claim their rewards.</p>
</article>
<div class="docs-navigation d-flex justify-content-between">
<a href="/blog/december-2021-monthly-report/">
<div class="card my-1">
<div class="card-body py-2">
&larr; December, 2021: Monthly Report
</div>
</div>
</a>
<a class="ms-auto" href="/blog/pow-performance/">
<div class="card my-1">
<div class="card-body py-2">
PoW performance &rarr;
</div>
</div>
</a>
</div>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/blog/survey/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
properly.</p><p>If you are interested in the lucky draw, please save the <code>submission ID</code> and the <code>proof</code> will be presented
to you at the end of the survey.</p><figure><img class="img-fluid lazyload blur-up" data-sizes=auto src=/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_20x0_resize_q75_box.jpg data-srcset="/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_900x0_resize_q75_box.jpg 900w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_800x0_resize_q75_box.jpg 800w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_700x0_resize_q75_box.jpg 700w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_600x0_resize_q75_box.jpg 600w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_500x0_resize_q75_box.jpg 500w" width=1129 height=325 alt="survey lucky draw identifier credentials"><noscript><img class=img-fluid sizes=100vw srcset="/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_900x0_resize_q75_box.jpg 900w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_800x0_resize_q75_box.jpg 800w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_700x0_resize_q75_box.jpg 700w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_600x0_resize_q75_box.jpg 600w,/blog/survey/survey-id_huff9ec74d3d162f9d0221fc73fa41d293_43947_500x0_resize_q75_box.jpg 500w" src=/blog/survey/survey-id.jpg width=1129 height=325 alt="survey lucky draw identifier credentials"></noscript><figcaption class=figure-caption>Lucky draw credentials</figcaption></figure><h2 id=winners>Winners</h2><p>This blog post will be updated with the winning submission IDs and the
winners should provide the matching <code>proof</code> to claim their rewards.</p></article><div class="docs-navigation d-flex justify-content-between"><a href=/blog/december-2021-monthly-report/><div class="card my-1"><div class="card-body py-2">&larr; December, 2021: Monthly Report</div></div></a><a class=ms-auto href=/blog/pow-performance/><div class="card my-1"><div class="card-body py-2">PoW performance &rarr;</div></div></a></div><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/blog/survey/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,181 +1,8 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Community - mCaptcha</title>
<meta name="description" content="Drop us an email.">
<link rel="canonical" href="/community/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Community">
<meta name="twitter:description" content="Drop us an email.">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Community">
<meta property="og:description" content="Drop us an email.">
<meta property="og:type" content="article">
<meta property="og:url" content="/community/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:published_time" content="2021-03-10T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Community",
"item": "\/community\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="page single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#matrix-community">Matrix Community</a></li>
<li><a href="#fediverse-handle">Fediverse handle</a></li>
<li><a href="#official-twitter-handle">Official Twitter handle</a></li>
<li><a href="#lead-developer-email">Lead developer email</a></li>
<li><a href="#bug-reports">Bug reports</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<h1>Community</h1>
<p class="lead"></p>
<h2 id="matrix-community">Matrix Community<a href="#matrix-community" class="anchor" aria-hidden="true">#</a> </h2>
<p>Come say hi at our <a href="https://matrix.to/#/#mcaptcha:matrix.batsense.net">Matrix community</a>!</p>
<h2 id="fediverse-handle">Fediverse handle<a href="#fediverse-handle" class="anchor" aria-hidden="true">#</a> </h2>
<p>We are on the Fediverse at
<a href="https://gts.batsense.net/@mcaptcha">@mCapthca@batsense.net</a>, toot at
us for queries and whatnot :)</p>
<h2 id="official-twitter-handle">Official Twitter handle<a href="#official-twitter-handle" class="anchor" aria-hidden="true">#</a> </h2>
<p>The project also has a twitter twitter presence at <a href="https://twitter.com/m_captcha/">@m_captcha(Nitter
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Community - mCaptcha</title><meta name=description content="Drop us an email."><link rel=canonical href=/community/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Community"><meta name=twitter:description content="Drop us an email."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Community"><meta property="og:description" content="Drop us an email."><meta property="og:type" content="article"><meta property="og:url" content="/community/"><meta property="og:image" content="/icon.png"><meta property="article:published_time" content="2021-03-10T00:00:00+00:00"><meta property="article:modified_time" content="2022-08-01T18:47:16+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Community","item":"\/community\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="page single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class="nav-item active"><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#matrix-community>Matrix Community</a></li><li><a href=#fediverse-handle>Fediverse handle</a></li><li><a href=#official-twitter-handle>Official Twitter handle</a></li><li><a href=#lead-developer-email>Lead developer email</a></li><li><a href=#bug-reports>Bug reports</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><h1>Community</h1><p class=lead></p><h2 id=matrix-community>Matrix Community<a href=#matrix-community class=anchor aria-hidden=true>#</a></h2><p>Come say hi at our <a href=https://matrix.to/#/#mcaptcha:matrix.batsense.net>Matrix community</a>!</p><h2 id=fediverse-handle>Fediverse handle<a href=#fediverse-handle class=anchor aria-hidden=true>#</a></h2><p>We are on the Fediverse at
<a href=https://gts.batsense.net/@mcaptcha>@mCapthca@batsense.net</a>, toot at
us for queries and whatnot :)</p><h2 id=official-twitter-handle>Official Twitter handle<a href=#official-twitter-handle class=anchor aria-hidden=true>#</a></h2><p>The project also has a twitter twitter presence at <a href=https://twitter.com/m_captcha/>@m_captcha(Nitter
hyperlink)</a>. This space is used in
addition to the blog to post short updates.</p>
<h2 id="lead-developer-email">Lead developer email<a href="#lead-developer-email" class="anchor" aria-hidden="true">#</a> </h2>
<p>Write to me at <a href="mailto:realaravinth@batsense.net">realaravinth@batsense.net</a>!</p>
<h2 id="bug-reports">Bug reports<a href="#bug-reports" class="anchor" aria-hidden="true">#</a> </h2>
<p>We use GitHub for managing tickets</p>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/community/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
addition to the blog to post short updates.</p><h2 id=lead-developer-email>Lead developer email<a href=#lead-developer-email class=anchor aria-hidden=true>#</a></h2><p>Write to me at <a href=mailto:realaravinth@batsense.net>realaravinth@batsense.net</a>!</p><h2 id=bug-reports>Bug reports<a href=#bug-reports class=anchor aria-hidden=true>#</a></h2><p>We use GitHub for managing tickets</p><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/community/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,173 +1,9 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Contact - mCaptcha</title>
<meta name="description" content="mCaptcha contact information">
<link rel="canonical" href="/contact/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Contact">
<meta name="twitter:description" content="mCaptcha contact information">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Contact">
<meta property="og:description" content="mCaptcha contact information">
<meta property="og:type" content="article">
<meta property="og:url" content="/contact/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:published_time" content="2020-08-27T19:23:18+02:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Contact",
"item": "\/contact\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="page single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#matrix-community">Matrix Community</a></li>
<li><a href="#lead-developer">Lead developer</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<h1>Contact</h1>
<p class="lead"></p>
<h2 id="matrix-community">Matrix Community<a href="#matrix-community" class="anchor" aria-hidden="true">#</a> </h2>
<p>We have a <a href="https://matrix.to/#/+mcaptcha:matrix.batsense.net">Matrix
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Contact - mCaptcha</title><meta name=description content="mCaptcha contact information"><link rel=canonical href=/contact/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Contact"><meta name=twitter:description content="mCaptcha contact information"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Contact"><meta property="og:description" content="mCaptcha contact information"><meta property="og:type" content="article"><meta property="og:url" content="/contact/"><meta property="og:image" content="/icon.png"><meta property="article:published_time" content="2020-08-27T19:23:18+02:00"><meta property="article:modified_time" content="2021-05-27T18:12:01+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Contact","item":"\/contact\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="page single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class="nav-item active"><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#matrix-community>Matrix Community</a></li><li><a href=#lead-developer>Lead developer</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><h1>Contact</h1><p class=lead></p><h2 id=matrix-community>Matrix Community<a href=#matrix-community class=anchor aria-hidden=true>#</a></h2><p>We have a <a href=https://matrix.to/#/+mcaptcha:matrix.batsense.net>Matrix
community</a>, come say
hi!.</p>
<h2 id="lead-developer">Lead developer<a href="#lead-developer" class="anchor" aria-hidden="true">#</a> </h2>
<p>You can find me(<a href="/contributors/aravinth-manivannan/">@realaravinth</a>) on
the <a href="https://matrix.to/#/@realaravinth:matrix.batsense.net">Matrix</a>, on
<a href="https://github.com/realaravinth">GitHub</a> or email me at
<a href="mailto:realaravinth@batsense.net">realaravinth@batense.net</a>.</p>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/contact/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
hi!.</p><h2 id=lead-developer>Lead developer<a href=#lead-developer class=anchor aria-hidden=true>#</a></h2><p>You can find me(<a href=/contributors/aravinth-manivannan/>@realaravinth</a>) on
the <a href=https://matrix.to/#/@realaravinth:matrix.batsense.net>Matrix</a>, on
<a href=https://github.com/realaravinth>GitHub</a> or email me at
<a href=mailto:realaravinth@batsense.net>realaravinth@batense.net</a>.</p><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/contact/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,100 +1,18 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Aravinth Manivannan on </title>
<link>/contributors/aravinth-manivannan/</link>
<description>Recent content in Aravinth Manivannan on </description>
<generator>Hugo -- gohugo.io</generator>
<language>en-US</language>
<lastBuildDate>Wed, 26 May 2021 00:00:00 +0000</lastBuildDate><atom:link href="/contributors/aravinth-manivannan/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>February, 2023: Monthly Report</title>
<link>/blog/february-2023-monthly-report/</link>
<pubDate>Wed, 08 Mar 2023 00:00:00 +0000</pubDate>
<guid>/blog/february-2023-monthly-report/</guid>
<description>Hello and welcome to the (August 2022 to) February, 2023 monthly report!
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Aravinth Manivannan on</title><link>/contributors/aravinth-manivannan/</link><description>Recent content in Aravinth Manivannan on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><lastBuildDate>Wed, 26 May 2021 00:00:00 +0000</lastBuildDate><atom:link href="/contributors/aravinth-manivannan/index.xml" rel="self" type="application/rss+xml"/><item><title>February, 2023: Monthly Report</title><link>/blog/february-2023-monthly-report/</link><pubDate>Wed, 08 Mar 2023 00:00:00 +0000</pubDate><guid>/blog/february-2023-monthly-report/</guid><description>Hello and welcome to the (August 2022 to) February, 2023 monthly report!
TL;DR Gusted and I secured funding from NLnet to work on mCaptcha in 2023, we suffered an outage from 15 January to February 6, polyfill benchmarking support in mCaptcha
We have funding! Gusted and I applied and secured funding through 2023 development is funded through the NGI0 Entrust Fund, via NLnet.
The full list of tasks that we&amp;rsquo;ll be working on in the period is is available here.</description>
</item>
<item>
<title>July, 2022: Monthly Report</title>
<link>/blog/july-2022-monthly-report/</link>
<pubDate>Thu, 04 Aug 2022 00:00:00 +0000</pubDate>
<guid>/blog/july-2022-monthly-report/</guid>
<description>Hello and welcome to the July, 2022 monthly report!
The full list of tasks that we&amp;rsquo;ll be working on in the period is is available here.</description></item><item><title>July, 2022: Monthly Report</title><link>/blog/july-2022-monthly-report/</link><pubDate>Thu, 04 Aug 2022 00:00:00 +0000</pubDate><guid>/blog/july-2022-monthly-report/</guid><description>Hello and welcome to the July, 2022 monthly report!
TL;DR Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support, mCaptcha supports MariaDB, I&amp;rsquo;ve applied for NLnet and Open Tech Fund, documentation is updated: tutorials and glossary is added and glue libraries have new releases.
Codeberg is deploying mCaptcha Codeberg is committed to trying out mCaptcha to make their platform more accessible: they currently use a text-based CAPTCHA, which will be replaced by mCaptcha.</description>
</item>
<item>
<title>June, 2022: Monthly Report</title>
<link>/blog/june-2022-monthly-report/</link>
<pubDate>Thu, 07 Jul 2022 00:00:00 +0000</pubDate>
<guid>/blog/june-2022-monthly-report/</guid>
<description>Hello and welcome to the June 2022 edition of the monthly report!
Codeberg is deploying mCaptcha Codeberg is committed to trying out mCaptcha to make their platform more accessible: they currently use a text-based CAPTCHA, which will be replaced by mCaptcha.</description></item><item><title>June, 2022: Monthly Report</title><link>/blog/june-2022-monthly-report/</link><pubDate>Thu, 07 Jul 2022 00:00:00 +0000</pubDate><guid>/blog/june-2022-monthly-report/</guid><description>Hello and welcome to the June 2022 edition of the monthly report!
mCaptcha is incorporated! I spent June doing non-technical tasks but I made significant progress: I had been trying to do it since summer 2021, but I faced various setbacks along the way. A family friend, who is also an auditor helped me finally get mCaptcha incorporated!
And we&amp;rsquo;ve already filed successfully filed the first tax return too!
GSTIN 33DGKPA2253J1ZN Ideas for Commercial Operations Commercial operations will take a while longer(end of 2022, most probably).</description>
</item>
<item>
<title>May, 2022: Monthly Report</title>
<link>/blog/may-2022-monthly-report/</link>
<pubDate>Fri, 10 Jun 2022 00:00:00 +0000</pubDate>
<guid>/blog/may-2022-monthly-report/</guid>
<description>Hello and welcome to the May 2022 edition of the monthly report!
GSTIN 33DGKPA2253J1ZN Ideas for Commercial Operations Commercial operations will take a while longer(end of 2022, most probably).</description></item><item><title>May, 2022: Monthly Report</title><link>/blog/may-2022-monthly-report/</link><pubDate>Fri, 10 Jun 2022 00:00:00 +0000</pubDate><guid>/blog/may-2022-monthly-report/</guid><description>Hello and welcome to the May 2022 edition of the monthly report!
mCaptcha, for a while was showing all the signs of a dead project: no commits on the repositories and no monthly updates. But the project is far from dead!
Python bindings to mCaptcha PoW pow_py contains bindings to pow_sha256, the proof-of-work library that mCaptcha uses. For the uninitiated, the bindings allow for python programs to automatically solve mCaptcha.</description>
</item>
<item>
<title>December, 2021: Monthly Report</title>
<link>/blog/december-2021-monthly-report/</link>
<pubDate>Thu, 23 Dec 2021 00:00:00 +0000</pubDate>
<guid>/blog/december-2021-monthly-report/</guid>
<description>Hello and welcome to the first edition of the monthly report!
Python bindings to mCaptcha PoW pow_py contains bindings to pow_sha256, the proof-of-work library that mCaptcha uses. For the uninitiated, the bindings allow for python programs to automatically solve mCaptcha.</description></item><item><title>December, 2021: Monthly Report</title><link>/blog/december-2021-monthly-report/</link><pubDate>Thu, 23 Dec 2021 00:00:00 +0000</pubDate><guid>/blog/december-2021-monthly-report/</guid><description>Hello and welcome to the first edition of the monthly report!
I believe free software like mCaptcha is critical to a healthy internet but being a one-person show, there&amp;rsquo;s hardly any accountability in the way software is built. I hope, through monthly reports, I can explain the logic and intentions behind decisions taken in the development process.
This month, the following things were accomplished:
1. Full LibreJS Compliance The CAPTCHA widget and the admin dashboard are 100% LibreJS compliant!</description>
</item>
<item>
<title>Survey</title>
<link>/blog/survey/</link>
<pubDate>Thu, 28 Oct 2021 00:00:00 +0000</pubDate>
<guid>/blog/survey/</guid>
<description>Survey link: https://survey.mcaptcha.org/survey/campaigns/b717e51e-24d4-4ab6-912f-de2dfe3ce1fe/about
1. Full LibreJS Compliance The CAPTCHA widget and the admin dashboard are 100% LibreJS compliant!</description></item><item><title>Survey</title><link>/blog/survey/</link><pubDate>Thu, 28 Oct 2021 00:00:00 +0000</pubDate><guid>/blog/survey/</guid><description>Survey link: https://survey.mcaptcha.org/survey/campaigns/b717e51e-24d4-4ab6-912f-de2dfe3ce1fe/about
NOTE: The survey(at least, the lucky draw is temporarily suspended due to some logistical reasons. Apologies for any inconvenience caused.
mCaptcha relies on a proof-of-work(PoW) mechanism to guard against bots. In order for this to be effective, the difficulty factor should be configured properly. If the difficulty factor is too high all the time, it will inconvenience the users and if it&amp;rsquo;s too low during attack, the defence will be weak.</description>
</item>
<item>
<title>PoW performance</title>
<link>/blog/pow-performance/</link>
<pubDate>Wed, 01 Sep 2021 00:00:00 +0000</pubDate>
<guid>/blog/pow-performance/</guid>
<description>mCaptcha uses a proof-of-work(PoW) mechanism to rate limit users or potential bots. In order for this to be effective, the PoW should be configured properly. The difficulty requirement can&amp;rsquo;t be too high, as it could cause accessibility issues on the client-side while at the same time, it shouldn&amp;rsquo;t be too low, as it wouldn&amp;rsquo;t offer proper protection against bots.
Malicious bots(the ones that wreak havoc), run native code which is capable of running in a multi-threaded context.</description>
</item>
<item>
<title>Say hello to mCaptcha</title>
<link>/blog/say-hello-to-mcaptcha/</link>
<pubDate>Wed, 26 May 2021 00:00:00 +0000</pubDate>
<guid>/blog/say-hello-to-mcaptcha/</guid>
<description>At mCaptcha, we believe in digital freedom and privacy and so we built a proof-of-work based CAPTCHA system that doesn&amp;rsquo;t track. Seriously, no tracking. But that isn&amp;rsquo;t the killer feature, our system doesn&amp;rsquo;t require the user to pick cars or ID sidewalks &amp;mdash; our system does it&amp;rsquo;s thing(usually at the click of a button) and gets out of the way.
How does it work? mCaptcha uses SHA256 based proof-of-work(PoW) to rate limit users.</description>
</item>
</channel>
</rss>
mCaptcha relies on a proof-of-work(PoW) mechanism to guard against bots. In order for this to be effective, the difficulty factor should be configured properly. If the difficulty factor is too high all the time, it will inconvenience the users and if it&amp;rsquo;s too low during attack, the defence will be weak.</description></item><item><title>PoW performance</title><link>/blog/pow-performance/</link><pubDate>Wed, 01 Sep 2021 00:00:00 +0000</pubDate><guid>/blog/pow-performance/</guid><description>mCaptcha uses a proof-of-work(PoW) mechanism to rate limit users or potential bots. In order for this to be effective, the PoW should be configured properly. The difficulty requirement can&amp;rsquo;t be too high, as it could cause accessibility issues on the client-side while at the same time, it shouldn&amp;rsquo;t be too low, as it wouldn&amp;rsquo;t offer proper protection against bots.
Malicious bots(the ones that wreak havoc), run native code which is capable of running in a multi-threaded context.</description></item><item><title>Say hello to mCaptcha</title><link>/blog/say-hello-to-mcaptcha/</link><pubDate>Wed, 26 May 2021 00:00:00 +0000</pubDate><guid>/blog/say-hello-to-mcaptcha/</guid><description>At mCaptcha, we believe in digital freedom and privacy and so we built a proof-of-work based CAPTCHA system that doesn&amp;rsquo;t track. Seriously, no tracking. But that isn&amp;rsquo;t the killer feature, our system doesn&amp;rsquo;t require the user to pick cars or ID sidewalks &amp;mdash; our system does it&amp;rsquo;s thing(usually at the click of a button) and gets out of the way.
How does it work? mCaptcha uses SHA256 based proof-of-work(PoW) to rate limit users.</description></item></channel></rss>

View file

@ -1,158 +1,4 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Contributors - mCaptcha</title>
<meta name="description" content="The mCaptcha contributors.">
<link rel="canonical" href="/contributors/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Contributors">
<meta name="twitter:description" content="The mCaptcha contributors.">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Contributors">
<meta property="og:description" content="The mCaptcha contributors.">
<meta property="og:type" content="website">
<meta property="og:url" content="/contributors/">
<meta property="og:image" content="/icon.png"/>
<meta property="og:updated_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<link rel="alternate" type="application/rss&#43;xml" href="/contributors/index.xml">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Contributors",
"item": "\/contributors\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="contributors list">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row justify-content-center">
<div class="col-md-12 col-lg-10 col-xl-8">
<article>
<h1 class="text-center">Contributors</h1>
<div class="text-center"><p>The mCaptcha contributors.</p>
</div>
<div class="card-list">
<div class="card">
<div class="card-body">
<h2 class="h3"><a class="stretched-link text-body" href="/contributors/aravinth-manivannan/">Aravinth Manivannan</a></h2>
</div>
</div>
</div>
</article>
</div>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Contributors - mCaptcha</title><meta name=description content="The mCaptcha contributors."><link rel=canonical href=/contributors/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Contributors"><meta name=twitter:description content="The mCaptcha contributors."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Contributors"><meta property="og:description" content="The mCaptcha contributors."><meta property="og:type" content="website"><meta property="og:url" content="/contributors/"><meta property="og:image" content="/icon.png"><meta property="og:updated_time" content="2021-05-26T14:18:41+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><link rel=alternate type=application/rss+xml href=/contributors/index.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Contributors","item":"\/contributors\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="contributors list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><h1 class=text-center>Contributors</h1><div class=text-center><p>The mCaptcha contributors.</p></div><div class=card-list><div class=card><div class=card-body><h2 class=h3><a class="stretched-link text-body" href=/contributors/aravinth-manivannan/>Aravinth Manivannan</a></h2></div></div></div></article></div></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,21 +1,2 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Contributors on </title>
<link>/contributors/</link>
<description>Recent content in Contributors on </description>
<generator>Hugo -- gohugo.io</generator>
<language>en-US</language>
<lastBuildDate>Wed, 26 May 2021 00:00:00 +0000</lastBuildDate><atom:link href="/contributors/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Aravinth Manivannan</title>
<link>/contributors/aravinth-manivannan/</link>
<pubDate>Wed, 26 May 2021 00:00:00 +0000</pubDate>
<guid>/contributors/aravinth-manivannan/</guid>
<description>Creator of mCaptcha.
@realaravinth</description>
</item>
</channel>
</rss>
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Contributors on</title><link>/contributors/</link><description>Recent content in Contributors on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><lastBuildDate>Wed, 26 May 2021 00:00:00 +0000</lastBuildDate><atom:link href="/contributors/index.xml" rel="self" type="application/rss+xml"/><item><title>Aravinth Manivannan</title><link>/contributors/aravinth-manivannan/</link><pubDate>Wed, 26 May 2021 00:00:00 +0000</pubDate><guid>/contributors/aravinth-manivannan/</guid><description>Creator of mCaptcha.
@realaravinth</description></item></channel></rss>

File diff suppressed because one or more lines are too long

View file

@ -1,205 +1,4 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>API - mCaptcha</title>
<meta name="description" content="Documentation for libraries used in mCaptcha">
<link rel="canonical" href="/docs/api/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="API">
<meta name="twitter:description" content="Documentation for libraries used in mCaptcha">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="API">
<meta property="og:description" content="Documentation for libraries used in mCaptcha">
<meta property="og:type" content="website">
<meta property="og:url" content="/docs/api/">
<meta property="og:image" content="/icon.png"/>
<meta property="og:updated_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<link rel="alternate" type="application/rss&#43;xml" href="/docs/api/index.xml">
<link rel="sitemap" type="application/xml" href="/docs/api/sitemap.xml">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docsapi",
"item": "\/docsapi\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs list">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row justify-content-center">
<div class="col-md-12 col-lg-10 col-xl-8">
<article>
<h1 class="text-center">API</h1>
<div class="text-center"></div>
<div class="card-list">
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/api/browser/">Browser Libraries &rarr;</a>
</div>
</div>
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/api/mcaptcha-system/">MCaptcha System Library &rarr;</a>
</div>
</div>
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/api/pow-sha256/">Pow_sha256 &rarr;</a>
</div>
</div>
</div>
</article>
</div>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>API - mCaptcha</title><meta name=description content="Documentation for libraries used in mCaptcha"><link rel=canonical href=/docs/api/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="API"><meta name=twitter:description content="Documentation for libraries used in mCaptcha"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="API"><meta property="og:description" content="Documentation for libraries used in mCaptcha"><meta property="og:type" content="website"><meta property="og:url" content="/docs/api/"><meta property="og:image" content="/icon.png"><meta property="og:updated_time" content="2022-08-01T22:24:03+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><link rel=alternate type=application/rss+xml href=/docs/api/index.xml><link rel=sitemap type=application/xml href=/docs/api/sitemap.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsapi","item":"\/docsapi\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><h1 class=text-center>API</h1><div class=text-center></div><div class=card-list><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/api/browser/>Browser Libraries &rarr;</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/api/mcaptcha-system/>MCaptcha System Library &rarr;</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/api/pow-sha256/>Pow_sha256 &rarr;</a></div></div></div></article></div></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,45 +1,8 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>API on </title>
<link>/docs/api/</link>
<description>Recent content in API on </description>
<generator>Hugo -- gohugo.io</generator>
<language>en-US</language>
<lastBuildDate>Tue, 06 Oct 2020 08:48:23 +0000</lastBuildDate><atom:link href="/docs/api/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Browser libraries</title>
<link>/docs/api/browser/</link>
<pubDate>Thu, 11 Mar 2021 00:00:00 +0000</pubDate>
<guid>/docs/api/browser/</guid>
<description>The browser part of mCaptcha is divided into three components.
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>API on</title><link>/docs/api/</link><description>Recent content in API on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><lastBuildDate>Tue, 06 Oct 2020 08:48:23 +0000</lastBuildDate><atom:link href="/docs/api/index.xml" rel="self" type="application/rss+xml"/><item><title>Browser libraries</title><link>/docs/api/browser/</link><pubDate>Thu, 11 Mar 2021 00:00:00 +0000</pubDate><guid>/docs/api/browser/</guid><description>The browser part of mCaptcha is divided into three components.
Glue code Widget program Proof-of-Work libraries(WebAssembly and JavaScript polyfill) Glue code This is the code that links mCaptcha with your website&amp;rsquo;s frontend code. It creates an iframe containing the mCaptcha widget and injects the received verification proof token into a hidden input field.
Support is available for various frameworks, see mCaptcha/glue for the full list.
For frameworks without official support, a low-level library, @mcaptcha/core-glue, can be used to implement support.</description>
</item>
<item>
<title>mCaptcha System Library</title>
<link>/docs/api/mcaptcha-system/</link>
<pubDate>Thu, 11 Mar 2021 00:00:00 +0000</pubDate>
<guid>/docs/api/mcaptcha-system/</guid>
<description>Documentation for the library used in mCaptcha core.
Versions master-branch 0.1.3 0.1.2 0.1.1 0.1.0 </description>
</item>
<item>
<title>pow_sha256</title>
<link>/docs/api/pow-sha256/</link>
<pubDate>Thu, 11 Mar 2021 00:00:00 +0000</pubDate>
<guid>/docs/api/pow-sha256/</guid>
<description>Rust crate which generates SHA256 Proofs of Work on serializable datatypes.
For frameworks without official support, a low-level library, @mcaptcha/core-glue, can be used to implement support.</description></item><item><title>mCaptcha System Library</title><link>/docs/api/mcaptcha-system/</link><pubDate>Thu, 11 Mar 2021 00:00:00 +0000</pubDate><guid>/docs/api/mcaptcha-system/</guid><description>Documentation for the library used in mCaptcha core.
Versions master-branch 0.1.3 0.1.2 0.1.1 0.1.0</description></item><item><title>pow_sha256</title><link>/docs/api/pow-sha256/</link><pubDate>Thu, 11 Mar 2021 00:00:00 +0000</pubDate><guid>/docs/api/pow-sha256/</guid><description>Rust crate which generates SHA256 Proofs of Work on serializable datatypes.
This is a fork of the pow library by @robkorn) with some new additions. Primary of these being:
PoW datatype now offers a constructor Salt is no longer hard coded into the library, users can provide unique salts. Other small changes have also been included of various importance but mostly just stylistic/ease of use improvements.
Versions master-branch 0.2.1 0.2.0 0.</description>
</item>
</channel>
</rss>
Versions master-branch 0.</description></item></channel></rss>

File diff suppressed because one or more lines are too long

View file

@ -1,239 +1,9 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>pow_sha256 - mCaptcha</title>
<meta name="description" content="API documenttion for PoW Library used in mCaptcha">
<link rel="canonical" href="/docs/api/pow-sha256/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="pow_sha256">
<meta name="twitter:description" content="API documenttion for PoW Library used in mCaptcha">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="pow_sha256">
<meta property="og:description" content="API documenttion for PoW Library used in mCaptcha">
<meta property="og:type" content="article">
<meta property="og:url" content="/docs/api/pow-sha256/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:published_time" content="2021-03-11T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docsapipow Sha256",
"item": "\/docsapipow-sha256\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<div class="col-lg-5 col-xl-4 docs-sidebar">
<nav class="docs-links" aria-label="Main navigation">
<h3>Introduction</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/introduction/installing-captcha/">Installing mCaptcha on your website</a></li>
<li><a class="docs-link" href="/docs/introduction/configuring-difficulty-factor/">Configuring Difficulty Factor</a></li>
</ul>
<h3>Terminology</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/terminology/access-token/">Access token</a></li>
<li><a class="docs-link" href="/docs/terminology/cooldown-period/">Cooldown Period</a></li>
<li><a class="docs-link" href="/docs/terminology/difficulty-factor/">Difficulty Factor</a></li>
<li><a class="docs-link" href="/docs/terminology/sitekey/">Site key</a></li>
<li><a class="docs-link" href="/docs/terminology/visitor-threshold/">Visitor Threshold</a></li>
</ul>
<h3>Self-Hosted</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/self-hosted/getting-started/">Getting started</a></li>
<li><a class="docs-link" href="/docs/self-hosted/bare-metal/">Deploy bare metal</a></li>
<li><a class="docs-link" href="/docs/self-hosted/docker/">Using Docker</a></li>
<li><a class="docs-link" href="/docs/self-hosted/dependencies/">Database and cache</a></li>
</ul>
<h3>API</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/api/browser/">Browser libraries</a></li>
<li><a class="docs-link" href="/docs/api/mcaptcha-system/">mCaptcha System Library</a></li>
<li><a class="docs-link active" href="/docs/api/pow-sha256/">pow_sha256</a></li>
</ul>
<h3>Help</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/help/troubleshooting/">Troubleshooting</a></li>
<li><a class="docs-link" href="/docs/help/faq/">FAQ</a></li>
</ul>
</nav>
</div>
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#versions">Versions</a></li>
<li><a href="#changelog">Changelog</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9">
<h1>pow_sha256</h1>
<p class="lead"></p>
<p>Rust crate which generates SHA256 Proofs of Work on serializable datatypes.</p>
<p>This is a fork of the <a href="https://github.com/bddap/pow"><code>pow</code> library</a> by
<a href="https://github.com/robkorn/pow_sha256">@robkorn</a>) with some new
additions. Primary of these being:</p>
<ul>
<li>PoW datatype now offers a constructor</li>
<li>Salt is no longer hard coded into the library, users can provide
unique salts.</li>
</ul>
<p>Other small changes have also been included of various importance but
mostly just stylistic/ease of use improvements.</p>
<h2 id="versions">Versions<a href="#versions" class="anchor" aria-hidden="true">#</a> </h2>
<ul>
<li><a href="https://mcaptcha.github.io/pow_sha256/pow_sha256/index.html">master-branch</a></li>
<li><a href="/api-docs/pow_sha256/0.2.1/pow_sha256/index.html">0.2.1</a></li>
<li><a href="/api-docs/pow_sha256/0.2.0/pow_sha256/index.html">0.2.0</a></li>
<li><a href="/api-docs/pow_sha256/0.1.0/pow_sha256/index.html">0.1.0</a></li>
</ul>
<h2 id="changelog">Changelog<a href="#changelog" class="anchor" aria-hidden="true">#</a> </h2>
<p>Changelog is available at the project&rsquo;s
<a href="https://github.com/mCaptcha/pow_sha256/blob/master/CHANGELOG.md">repository</a></p>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/docs/API/pow-sha256.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
<div class="docs-navigation d-flex justify-content-between">
<a href="/docs/api/mcaptcha-system/">
<div class="card my-1">
<div class="card-body py-2">
&larr; mCaptcha System Library
</div>
</div>
</a>
<a class="ms-auto" href="/docs/help/faq/">
<div class="card my-1">
<div class="card-body py-2">
FAQ &rarr;
</div>
</div>
</a>
</div>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>pow_sha256 - mCaptcha</title><meta name=description content="API documenttion for PoW Library used in mCaptcha"><link rel=canonical href=/docs/api/pow-sha256/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="pow_sha256"><meta name=twitter:description content="API documenttion for PoW Library used in mCaptcha"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="pow_sha256"><meta property="og:description" content="API documenttion for PoW Library used in mCaptcha"><meta property="og:type" content="article"><meta property="og:url" content="/docs/api/pow-sha256/"><meta property="og:image" content="/icon.png"><meta property="article:published_time" content="2021-03-11T00:00:00+00:00"><meta property="article:modified_time" content="2022-08-01T20:24:18+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsapipow Sha256","item":"\/docsapipow-sha256\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Introduction</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/introduction/installing-captcha/>Installing mCaptcha on your website</a></li><li><a class=docs-link href=/docs/introduction/configuring-difficulty-factor/>Configuring Difficulty Factor</a></li></ul><h3>Terminology</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/terminology/access-token/>Access token</a></li><li><a class=docs-link href=/docs/terminology/cooldown-period/>Cooldown Period</a></li><li><a class=docs-link href=/docs/terminology/difficulty-factor/>Difficulty Factor</a></li><li><a class=docs-link href=/docs/terminology/sitekey/>Site key</a></li><li><a class=docs-link href=/docs/terminology/visitor-threshold/>Visitor Threshold</a></li></ul><h3>Self-Hosted</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/self-hosted/getting-started/>Getting started</a></li><li><a class=docs-link href=/docs/self-hosted/bare-metal/>Deploy bare metal</a></li><li><a class=docs-link href=/docs/self-hosted/docker/>Using Docker</a></li><li><a class=docs-link href=/docs/self-hosted/dependencies/>Database and cache</a></li></ul><h3>API</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/api/browser/>Browser libraries</a></li><li><a class=docs-link href=/docs/api/mcaptcha-system/>mCaptcha System Library</a></li><li><a class="docs-link active" href=/docs/api/pow-sha256/>pow_sha256</a></li></ul><h3>Help</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/help/troubleshooting/>Troubleshooting</a></li><li><a class=docs-link href=/docs/help/faq/>FAQ</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#versions>Versions</a></li><li><a href=#changelog>Changelog</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9"><h1>pow_sha256</h1><p class=lead></p><p>Rust crate which generates SHA256 Proofs of Work on serializable datatypes.</p><p>This is a fork of the <a href=https://github.com/bddap/pow><code>pow</code> library</a> by
<a href=https://github.com/robkorn/pow_sha256>@robkorn</a>) with some new
additions. Primary of these being:</p><ul><li>PoW datatype now offers a constructor</li><li>Salt is no longer hard coded into the library, users can provide
unique salts.</li></ul><p>Other small changes have also been included of various importance but
mostly just stylistic/ease of use improvements.</p><h2 id=versions>Versions<a href=#versions class=anchor aria-hidden=true>#</a></h2><ul><li><a href=https://mcaptcha.github.io/pow_sha256/pow_sha256/index.html>master-branch</a></li><li><a href=/api-docs/pow_sha256/0.2.1/pow_sha256/index.html>0.2.1</a></li><li><a href=/api-docs/pow_sha256/0.2.0/pow_sha256/index.html>0.2.0</a></li><li><a href=/api-docs/pow_sha256/0.1.0/pow_sha256/index.html>0.1.0</a></li></ul><h2 id=changelog>Changelog<a href=#changelog class=anchor aria-hidden=true>#</a></h2><p>Changelog is available at the project&rsquo;s
<a href=https://github.com/mCaptcha/pow_sha256/blob/master/CHANGELOG.md>repository</a></p><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/docs/API/pow-sha256.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p><div class="docs-navigation d-flex justify-content-between"><a href=/docs/api/mcaptcha-system/><div class="card my-1"><div class="card-body py-2">&larr; mCaptcha System Library</div></div></a><a class=ms-auto href=/docs/help/faq/><div class="card my-1"><div class="card-body py-2">FAQ &rarr;</div></div></a></div></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,24 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>/docs/api/browser/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/api/mcaptcha-system/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/api/pow-sha256/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</urlset>
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/api/browser/</loc><lastmod>2022-08-01T20:24:18+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/api/mcaptcha-system/</loc><lastmod>2022-08-01T20:24:18+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/api/pow-sha256/</loc><lastmod>2022-08-01T20:24:18+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>

File diff suppressed because one or more lines are too long

View file

@ -1,199 +1,4 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Help - mCaptcha</title>
<meta name="description" content="Help mCaptcha.">
<link rel="canonical" href="/docs/help/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Help">
<meta name="twitter:description" content="Help mCaptcha.">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Help">
<meta property="og:description" content="Help mCaptcha.">
<meta property="og:type" content="website">
<meta property="og:url" content="/docs/help/">
<meta property="og:image" content="/icon.png"/>
<meta property="og:updated_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<link rel="alternate" type="application/rss&#43;xml" href="/docs/help/index.xml">
<link rel="sitemap" type="application/xml" href="/docs/help/sitemap.xml">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docshelp",
"item": "\/docshelp\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs list">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row justify-content-center">
<div class="col-md-12 col-lg-10 col-xl-8">
<article>
<h1 class="text-center">Help</h1>
<div class="text-center"></div>
<div class="card-list">
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/help/faq/">FAQ &rarr;</a>
</div>
</div>
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/help/troubleshooting/">Troubleshooting &rarr;</a>
</div>
</div>
</div>
</article>
</div>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Help - mCaptcha</title><meta name=description content="Help mCaptcha."><link rel=canonical href=/docs/help/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Help"><meta name=twitter:description content="Help mCaptcha."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Help"><meta property="og:description" content="Help mCaptcha."><meta property="og:type" content="website"><meta property="og:url" content="/docs/help/"><meta property="og:image" content="/icon.png"><meta property="og:updated_time" content="2021-07-21T15:49:53+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><link rel=alternate type=application/rss+xml href=/docs/help/index.xml><link rel=sitemap type=application/xml href=/docs/help/sitemap.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docshelp","item":"\/docshelp\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><h1 class=text-center>Help</h1><div class=text-center></div><div class=card-list><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/help/faq/>FAQ &rarr;</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/help/troubleshooting/>Troubleshooting &rarr;</a></div></div></div></article></div></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,30 +1,2 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Help on </title>
<link>/docs/help/</link>
<description>Recent content in Help on </description>
<generator>Hugo -- gohugo.io</generator>
<language>en-US</language>
<lastBuildDate>Tue, 06 Oct 2020 08:49:15 +0000</lastBuildDate><atom:link href="/docs/help/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Troubleshooting</title>
<link>/docs/help/troubleshooting/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>/docs/help/troubleshooting/</guid>
<description>Q: I just setup an instance but I am unable to login mCaptcha by default is configured to server at localhost hostname. If the instance is deployed at another hostname, please try setting MCAPTCHA_SERVER_DOMAIN environment variable to the hostname at which your instance is deployed or setting the equivalent in config.toml:
1[server] 2domain=mydomain </description>
</item>
<item>
<title>FAQ</title>
<link>/docs/help/faq/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>/docs/help/faq/</guid>
<description>Coming soon</description>
</item>
</channel>
</rss>
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Help on</title><link>/docs/help/</link><description>Recent content in Help on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><lastBuildDate>Tue, 06 Oct 2020 08:49:15 +0000</lastBuildDate><atom:link href="/docs/help/index.xml" rel="self" type="application/rss+xml"/><item><title>Troubleshooting</title><link>/docs/help/troubleshooting/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/help/troubleshooting/</guid><description>Q: I just setup an instance but I am unable to login mCaptcha by default is configured to server at localhost hostname. If the instance is deployed at another hostname, please try setting MCAPTCHA_SERVER_DOMAIN environment variable to the hostname at which your instance is deployed or setting the equivalent in config.toml:
1[server] 2domain=mydomain</description></item><item><title>FAQ</title><link>/docs/help/faq/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/help/faq/</guid><description>Coming soon</description></item></channel></rss>

View file

@ -1,17 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>/docs/help/troubleshooting/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/help/faq/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</urlset>
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/help/troubleshooting/</loc><lastmod>2022-08-01T22:24:30+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/help/faq/</loc><lastmod>2022-08-01T19:16:21+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>

View file

@ -1,223 +1,9 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Troubleshooting - mCaptcha</title>
<meta name="description" content="Solutions to common problems.">
<link rel="canonical" href="/docs/help/troubleshooting/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Troubleshooting">
<meta name="twitter:description" content="Solutions to common problems.">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Troubleshooting">
<meta property="og:description" content="Solutions to common problems.">
<meta property="og:type" content="article">
<meta property="og:url" content="/docs/help/troubleshooting/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docshelptroubleshooting",
"item": "\/docshelptroubleshooting\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<div class="col-lg-5 col-xl-4 docs-sidebar">
<nav class="docs-links" aria-label="Main navigation">
<h3>Introduction</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/introduction/installing-captcha/">Installing mCaptcha on your website</a></li>
<li><a class="docs-link" href="/docs/introduction/configuring-difficulty-factor/">Configuring Difficulty Factor</a></li>
</ul>
<h3>Terminology</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/terminology/access-token/">Access token</a></li>
<li><a class="docs-link" href="/docs/terminology/cooldown-period/">Cooldown Period</a></li>
<li><a class="docs-link" href="/docs/terminology/difficulty-factor/">Difficulty Factor</a></li>
<li><a class="docs-link" href="/docs/terminology/sitekey/">Site key</a></li>
<li><a class="docs-link" href="/docs/terminology/visitor-threshold/">Visitor Threshold</a></li>
</ul>
<h3>Self-Hosted</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/self-hosted/getting-started/">Getting started</a></li>
<li><a class="docs-link" href="/docs/self-hosted/bare-metal/">Deploy bare metal</a></li>
<li><a class="docs-link" href="/docs/self-hosted/docker/">Using Docker</a></li>
<li><a class="docs-link" href="/docs/self-hosted/dependencies/">Database and cache</a></li>
</ul>
<h3>API</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/api/browser/">Browser libraries</a></li>
<li><a class="docs-link" href="/docs/api/mcaptcha-system/">mCaptcha System Library</a></li>
<li><a class="docs-link" href="/docs/api/pow-sha256/">pow_sha256</a></li>
</ul>
<h3>Help</h3>
<ul class="list-unstyled">
<li><a class="docs-link active" href="/docs/help/troubleshooting/">Troubleshooting</a></li>
<li><a class="docs-link" href="/docs/help/faq/">FAQ</a></li>
</ul>
</nav>
</div>
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#q-i-just-setup-an-instance-but-i-am-unable-to-login">Q: I just setup an instance but I am unable to login</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9">
<h1>Troubleshooting</h1>
<p class="lead">Solutions to common problems.</p>
<h2 id="q-i-just-setup-an-instance-but-i-am-unable-to-login">Q: I just setup an instance but I am unable to login<a href="#q-i-just-setup-an-instance-but-i-am-unable-to-login" class="anchor" aria-hidden="true">#</a> </h2>
<p>mCaptcha by default is configured to server at <code>localhost</code> hostname. If
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Troubleshooting - mCaptcha</title><meta name=description content="Solutions to common problems."><link rel=canonical href=/docs/help/troubleshooting/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Troubleshooting"><meta name=twitter:description content="Solutions to common problems."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Troubleshooting"><meta property="og:description" content="Solutions to common problems."><meta property="og:type" content="article"><meta property="og:url" content="/docs/help/troubleshooting/"><meta property="og:image" content="/icon.png"><meta property="article:modified_time" content="2022-08-01T22:24:30+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docshelptroubleshooting","item":"\/docshelptroubleshooting\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Introduction</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/introduction/installing-captcha/>Installing mCaptcha on your website</a></li><li><a class=docs-link href=/docs/introduction/configuring-difficulty-factor/>Configuring Difficulty Factor</a></li></ul><h3>Terminology</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/terminology/access-token/>Access token</a></li><li><a class=docs-link href=/docs/terminology/cooldown-period/>Cooldown Period</a></li><li><a class=docs-link href=/docs/terminology/difficulty-factor/>Difficulty Factor</a></li><li><a class=docs-link href=/docs/terminology/sitekey/>Site key</a></li><li><a class=docs-link href=/docs/terminology/visitor-threshold/>Visitor Threshold</a></li></ul><h3>Self-Hosted</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/self-hosted/getting-started/>Getting started</a></li><li><a class=docs-link href=/docs/self-hosted/bare-metal/>Deploy bare metal</a></li><li><a class=docs-link href=/docs/self-hosted/docker/>Using Docker</a></li><li><a class=docs-link href=/docs/self-hosted/dependencies/>Database and cache</a></li></ul><h3>API</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/api/browser/>Browser libraries</a></li><li><a class=docs-link href=/docs/api/mcaptcha-system/>mCaptcha System Library</a></li><li><a class=docs-link href=/docs/api/pow-sha256/>pow_sha256</a></li></ul><h3>Help</h3><ul class=list-unstyled><li><a class="docs-link active" href=/docs/help/troubleshooting/>Troubleshooting</a></li><li><a class=docs-link href=/docs/help/faq/>FAQ</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#q-i-just-setup-an-instance-but-i-am-unable-to-login>Q: I just setup an instance but I am unable to login</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9"><h1>Troubleshooting</h1><p class=lead>Solutions to common problems.</p><h2 id=q-i-just-setup-an-instance-but-i-am-unable-to-login>Q: I just setup an instance but I am unable to login<a href=#q-i-just-setup-an-instance-but-i-am-unable-to-login class=anchor aria-hidden=true>#</a></h2><p>mCaptcha by default is configured to server at <code>localhost</code> hostname. If
the instance is deployed at another hostname, please try setting
<code>MCAPTCHA_SERVER_DOMAIN</code> environment variable to the hostname at which
your instance is deployed or setting the equivalent in config.toml:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-toml" data-lang="toml"><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1</span><span>[server]
</span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">2</span><span>domain=mydomain
</span></span></code></pre></div>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/docs/help/troubleshooting.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
<div class="docs-navigation d-flex justify-content-between">
<a href="/docs/self-hosted/dependencies/">
<div class="card my-1">
<div class="card-body py-2">
&larr; Database and cache
</div>
</div>
</a>
<a class="ms-auto" href="/docs/api/browser/">
<div class="card my-1">
<div class="card-body py-2">
Browser libraries &rarr;
</div>
</div>
</a>
</div>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
your instance is deployed or setting the equivalent in config.toml:</p><div class=highlight><pre style=color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-toml data-lang=toml><span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">1</span>[server]
<span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">2</span>domain=mydomain
</code></pre></div><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/docs/help/troubleshooting.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p><div class="docs-navigation d-flex justify-content-between"><a href=/docs/self-hosted/dependencies/><div class="card my-1"><div class="card-body py-2">&larr; Database and cache</div></div></a><a class=ms-auto href=/docs/api/browser/><div class="card my-1"><div class="card-body py-2">Browser libraries &rarr;</div></div></a></div></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,10 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>mCaptcha on </title>
<link>/docs/</link>
<description>Recent content in mCaptcha on </description>
<generator>Hugo -- gohugo.io</generator>
<language>en-US</language><atom:link href="/docs/index.xml" rel="self" type="application/rss+xml" />
</channel>
</rss>
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>mCaptcha on</title><link>/docs/</link><description>Recent content in mCaptcha on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><atom:link href="/docs/index.xml" rel="self" type="application/rss+xml"/></channel></rss>

View file

@ -1,262 +1,26 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Configuring Difficulty Factor - mCaptcha</title>
<meta name="description" content="mCaptcha has options to configure its proof of work engine behavior, this page explains how to determine difficulty facotrs that work best for your website!">
<link rel="canonical" href="/docs/introduction/configuring-difficulty-factor/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Configuring Difficulty Factor">
<meta name="twitter:description" content="mCaptcha has options to configure its proof of work engine behavior, this page explains how to determine difficulty facotrs that work best for your website!">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Configuring Difficulty Factor">
<meta property="og:description" content="mCaptcha has options to configure its proof of work engine behavior, this page explains how to determine difficulty facotrs that work best for your website!">
<meta property="og:type" content="article">
<meta property="og:url" content="/docs/introduction/configuring-difficulty-factor/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:published_time" content="2022-06-22T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docsintroductionconfiguring Difficulty Factor",
"item": "\/docsintroductionconfiguring-difficulty-factor\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<div class="col-lg-5 col-xl-4 docs-sidebar">
<nav class="docs-links" aria-label="Main navigation">
<h3>Introduction</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/introduction/installing-captcha/">Installing mCaptcha on your website</a></li>
<li><a class="docs-link active" href="/docs/introduction/configuring-difficulty-factor/">Configuring Difficulty Factor</a></li>
</ul>
<h3>Terminology</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/terminology/access-token/">Access token</a></li>
<li><a class="docs-link" href="/docs/terminology/cooldown-period/">Cooldown Period</a></li>
<li><a class="docs-link" href="/docs/terminology/difficulty-factor/">Difficulty Factor</a></li>
<li><a class="docs-link" href="/docs/terminology/sitekey/">Site key</a></li>
<li><a class="docs-link" href="/docs/terminology/visitor-threshold/">Visitor Threshold</a></li>
</ul>
<h3>Self-Hosted</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/self-hosted/getting-started/">Getting started</a></li>
<li><a class="docs-link" href="/docs/self-hosted/bare-metal/">Deploy bare metal</a></li>
<li><a class="docs-link" href="/docs/self-hosted/docker/">Using Docker</a></li>
<li><a class="docs-link" href="/docs/self-hosted/dependencies/">Database and cache</a></li>
</ul>
<h3>API</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/api/browser/">Browser libraries</a></li>
<li><a class="docs-link" href="/docs/api/mcaptcha-system/">mCaptcha System Library</a></li>
<li><a class="docs-link" href="/docs/api/pow-sha256/">pow_sha256</a></li>
</ul>
<h3>Help</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/help/troubleshooting/">Troubleshooting</a></li>
<li><a class="docs-link" href="/docs/help/faq/">FAQ</a></li>
</ul>
</nav>
</div>
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li>
<ul>
<li><a href="#easy-option">Easy option</a></li>
<li><a href="#advance-option">Advance option</a></li>
</ul>
</li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9">
<h1>Configuring Difficulty Factor</h1>
<p class="lead"></p>
<p>mCaptcha is highly responsive to detecting DDoS attacks. Admins are
advised to take advantage of it by setting low <a href="/docs/terminology/difficulty-factor/">difficulty
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Configuring Difficulty Factor - mCaptcha</title><meta name=description content="mCaptcha has options to configure its proof of work engine behavior, this page explains how to determine difficulty facotrs that work best for your website!"><link rel=canonical href=/docs/introduction/configuring-difficulty-factor/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Configuring Difficulty Factor"><meta name=twitter:description content="mCaptcha has options to configure its proof of work engine behavior, this page explains how to determine difficulty facotrs that work best for your website!"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Configuring Difficulty Factor"><meta property="og:description" content="mCaptcha has options to configure its proof of work engine behavior, this page explains how to determine difficulty facotrs that work best for your website!"><meta property="og:type" content="article"><meta property="og:url" content="/docs/introduction/configuring-difficulty-factor/"><meta property="og:image" content="/icon.png"><meta property="article:published_time" content="2022-06-22T00:00:00+00:00"><meta property="article:modified_time" content="2022-08-01T23:03:44+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsintroductionconfiguring Difficulty Factor","item":"\/docsintroductionconfiguring-difficulty-factor\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Introduction</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/introduction/installing-captcha/>Installing mCaptcha on your website</a></li><li><a class="docs-link active" href=/docs/introduction/configuring-difficulty-factor/>Configuring Difficulty Factor</a></li></ul><h3>Terminology</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/terminology/access-token/>Access token</a></li><li><a class=docs-link href=/docs/terminology/cooldown-period/>Cooldown Period</a></li><li><a class=docs-link href=/docs/terminology/difficulty-factor/>Difficulty Factor</a></li><li><a class=docs-link href=/docs/terminology/sitekey/>Site key</a></li><li><a class=docs-link href=/docs/terminology/visitor-threshold/>Visitor Threshold</a></li></ul><h3>Self-Hosted</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/self-hosted/getting-started/>Getting started</a></li><li><a class=docs-link href=/docs/self-hosted/bare-metal/>Deploy bare metal</a></li><li><a class=docs-link href=/docs/self-hosted/docker/>Using Docker</a></li><li><a class=docs-link href=/docs/self-hosted/dependencies/>Database and cache</a></li></ul><h3>API</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/api/browser/>Browser libraries</a></li><li><a class=docs-link href=/docs/api/mcaptcha-system/>mCaptcha System Library</a></li><li><a class=docs-link href=/docs/api/pow-sha256/>pow_sha256</a></li></ul><h3>Help</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/help/troubleshooting/>Troubleshooting</a></li><li><a class=docs-link href=/docs/help/faq/>FAQ</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><ul><li><a href=#easy-option>Easy option</a></li><li><a href=#advance-option>Advance option</a></li></ul></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9"><h1>Configuring Difficulty Factor</h1><p class=lead></p><p>mCaptcha is highly responsive to detecting DDoS attacks. Admins are
advised to take advantage of it by setting low <a href=/docs/terminology/difficulty-factor/>difficulty
factors</a> for normal traffic levels
for their website.</p>
<p><strong>Lowest advisable difficulty factor is 5000.</strong></p>
<p>For instance, if it is normal for my website to get 2000 requests for
every 30 seconds, I will set a <a href="/docs/terminology/cooldown-period">cool
for their website.</p><p><strong>Lowest advisable difficulty factor is 5000.</strong></p><p>For instance, if it is normal for my website to get 2000 requests for
every 30 seconds, I will set a <a href=/docs/terminology/cooldown-period>cool
down</a> period of 30 seconds and the
first level of difficulty configuration will have a <a href="/docs/terminology/visitor-threshold">visitor threshold</a> of 2000 with a
difficulty factor of 5000.</p>
<p>There are two modes to setting difficulty factor for your website on
mCaptcha:</p>
<h3 id="easy-option">Easy option<a href="#easy-option" class="anchor" aria-hidden="true">#</a> </h3>
<p>Easy mode asks a few basic statistics about your website and generates a
first level of difficulty configuration will have a <a href=/docs/terminology/visitor-threshold>visitor threshold</a> of 2000 with a
difficulty factor of 5000.</p><p>There are two modes to setting difficulty factor for your website on
mCaptcha:</p><h3 id=easy-option>Easy option<a href=#easy-option class=anchor aria-hidden=true>#</a></h3><p>Easy mode asks a few basic statistics about your website and generates a
configuration that should work for your website. Currently, easy mode is
guided by assumptions on suitable difficulty factors to protect a
website but it will be fine-tuned as mCaptcha sees more deployment.</p>
<p>Configuration generated by easy mode can be tweaked later using the
advance mode, as you become more familiar with how mCaptcha works.</p>
<figure>
<img class="img-fluid lazyload blur-up" data-sizes="auto" src="/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_20x0_resize_box_3.png" data-srcset="/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_900x0_resize_box_3.png 900w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_800x0_resize_box_3.png 800w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_700x0_resize_box_3.png 700w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_600x0_resize_box_3.png 600w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_500x0_resize_box_3.png 500w" width="720" height="452" alt="new sitekey form in easy mode">
<noscript><img class="img-fluid" sizes="100vw" srcset="/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_900x0_resize_box_3.png 900w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_800x0_resize_box_3.png 800w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_700x0_resize_box_3.png 700w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_600x0_resize_box_3.png 600w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_500x0_resize_box_3.png 500w" src="/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode.png" width="720" height="452" alt="new sitekey form in easy mode"></noscript>
</figure>
<h3 id="advance-option">Advance option<a href="#advance-option" class="anchor" aria-hidden="true">#</a> </h3>
<p>Advance mode gives the admin granular control over how mCaptcha behaves
website but it will be fine-tuned as mCaptcha sees more deployment.</p><p>Configuration generated by easy mode can be tweaked later using the
advance mode, as you become more familiar with how mCaptcha works.</p><figure><img class="img-fluid lazyload blur-up" data-sizes=auto src=/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_20x0_resize_box_2.png data-srcset="/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_900x0_resize_box_2.png 900w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_800x0_resize_box_2.png 800w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_700x0_resize_box_2.png 700w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_600x0_resize_box_2.png 600w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_500x0_resize_box_2.png 500w" width=720 height=452 alt="new sitekey form in easy mode"><noscript><img class=img-fluid sizes=100vw srcset="/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_900x0_resize_box_2.png 900w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_800x0_resize_box_2.png 800w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_700x0_resize_box_2.png 700w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_600x0_resize_box_2.png 600w,/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode_hu3f66189ea53484ac6603a2d78fa015c8_26636_500x0_resize_box_2.png 500w" src=/docs/introduction/configuring-difficulty-factor/new-sitekey-easy-mode.png width=720 height=452 alt="new sitekey form in easy mode"></noscript></figure><h3 id=advance-option>Advance option<a href=#advance-option class=anchor aria-hidden=true>#</a></h3><p>Advance mode gives the admin granular control over how mCaptcha behaves
on their website. It has options to set the difficulty factor for each
level of traffic(or visitor threshold, in mCaptcha speak), fully taking
advantage of mCaptcha&rsquo;s variable difficulty factor feature.</p>
<p>For instance, if it is normal for a website to get 200 requests over 30
advantage of mCaptcha&rsquo;s variable difficulty factor feature.</p><p>For instance, if it is normal for a website to get 200 requests over 30
seconds, then setting a very low difficulty factor for a visitor
threshold of 200 and a cool down period of 30 seconds will allow the
users to pass through without waiting on the CAPTCHA. But if 1000
requests over 30 seconds will bring down the service, then the admin can
configure increasing levels of difficulty factor of increasing traffic
levels, effectively rate limiting its users and protecting the
underlying website.</p>
<figure>
<img class="img-fluid lazyload blur-up" data-sizes="auto" src="/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_20x0_resize_box_3.png" data-srcset="/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_900x0_resize_box_3.png 900w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_800x0_resize_box_3.png 800w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_700x0_resize_box_3.png 700w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_600x0_resize_box_3.png 600w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_500x0_resize_box_3.png 500w" width="720" height="407" alt="new sitekey form in advance mode">
<noscript><img class="img-fluid" sizes="100vw" srcset="/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_900x0_resize_box_3.png 900w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_800x0_resize_box_3.png 800w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_700x0_resize_box_3.png 700w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_600x0_resize_box_3.png 600w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_500x0_resize_box_3.png 500w" src="/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode.png" width="720" height="407" alt="new sitekey form in advance mode"></noscript>
</figure>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/docs/introduction/configuring-difficulty-factor/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
<div class="docs-navigation d-flex justify-content-between">
<a href="/docs/introduction/installing-captcha/">
<div class="card my-1">
<div class="card-body py-2">
&larr; Installing mCaptcha on your website
</div>
</div>
</a>
<a class="ms-auto" href="/docs/terminology/access-token/">
<div class="card my-1">
<div class="card-body py-2">
Access token &rarr;
</div>
</div>
</a>
</div>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
underlying website.</p><figure><img class="img-fluid lazyload blur-up" data-sizes=auto src=/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_20x0_resize_box_2.png data-srcset="/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_900x0_resize_box_2.png 900w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_800x0_resize_box_2.png 800w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_700x0_resize_box_2.png 700w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_600x0_resize_box_2.png 600w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_500x0_resize_box_2.png 500w" width=720 height=407 alt="new sitekey form in advance mode"><noscript><img class=img-fluid sizes=100vw srcset="/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_900x0_resize_box_2.png 900w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_800x0_resize_box_2.png 800w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_700x0_resize_box_2.png 700w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_600x0_resize_box_2.png 600w,/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode_huc4867c6295dc4be195d832a52b37239b_23312_500x0_resize_box_2.png 500w" src=/docs/introduction/configuring-difficulty-factor/new-sitekey-adv-mode.png width=720 height=407 alt="new sitekey form in advance mode"></noscript></figure><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/docs/introduction/configuring-difficulty-factor/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p><div class="docs-navigation d-flex justify-content-between"><a href=/docs/introduction/installing-captcha/><div class="card my-1"><div class="card-body py-2">&larr; Installing mCaptcha on your website</div></div></a><a class=ms-auto href=/docs/terminology/access-token/><div class="card my-1"><div class="card-body py-2">Access token &rarr;</div></div></a></div></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,199 +1,4 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Introduction - mCaptcha</title>
<meta name="description" content="Introduction to mCaptcha.">
<link rel="canonical" href="/docs/introduction/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Introduction">
<meta name="twitter:description" content="Introduction to mCaptcha.">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Introduction">
<meta property="og:description" content="Introduction to mCaptcha.">
<meta property="og:type" content="website">
<meta property="og:url" content="/docs/introduction/">
<meta property="og:image" content="/icon.png"/>
<meta property="og:updated_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<link rel="alternate" type="application/rss&#43;xml" href="/docs/introduction/index.xml">
<link rel="sitemap" type="application/xml" href="/docs/introduction/sitemap.xml">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docsintroduction",
"item": "\/docsintroduction\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs list">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row justify-content-center">
<div class="col-md-12 col-lg-10 col-xl-8">
<article>
<h1 class="text-center">Introduction</h1>
<div class="text-center"></div>
<div class="card-list">
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/introduction/configuring-difficulty-factor/">Configuring Difficulty Factor &rarr;</a>
</div>
</div>
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/introduction/installing-captcha/">Installing MCaptcha on Your Website &rarr;</a>
</div>
</div>
</div>
</article>
</div>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Introduction - mCaptcha</title><meta name=description content="Introduction to mCaptcha."><link rel=canonical href=/docs/introduction/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Introduction"><meta name=twitter:description content="Introduction to mCaptcha."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Introduction"><meta property="og:description" content="Introduction to mCaptcha."><meta property="og:type" content="website"><meta property="og:url" content="/docs/introduction/"><meta property="og:image" content="/icon.png"><meta property="og:updated_time" content="2022-08-01T22:25:46+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><link rel=alternate type=application/rss+xml href=/docs/introduction/index.xml><link rel=sitemap type=application/xml href=/docs/introduction/sitemap.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsintroduction","item":"\/docsintroduction\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><h1 class=text-center>Introduction</h1><div class=text-center></div><div class=card-list><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/introduction/configuring-difficulty-factor/>Configuring Difficulty Factor &rarr;</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/introduction/installing-captcha/>Installing MCaptcha on Your Website &rarr;</a></div></div></div></article></div></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,33 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Introduction on </title>
<link>/docs/introduction/</link>
<description>Recent content in Introduction on </description>
<generator>Hugo -- gohugo.io</generator>
<language>en-US</language>
<lastBuildDate>Tue, 06 Oct 2020 08:48:45 +0000</lastBuildDate><atom:link href="/docs/introduction/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Installing mCaptcha on your website</title>
<link>/docs/introduction/installing-captcha/</link>
<pubDate>Wed, 22 Jun 2022 00:00:00 +0000</pubDate>
<guid>/docs/introduction/installing-captcha/</guid>
<description>mCaptcha can protect your website from DDoS attacks. In this guide we&amp;rsquo;ll explore how to install mCaptcha on your website. The end result will be something like this, on your website:
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Introduction on</title><link>/docs/introduction/</link><description>Recent content in Introduction on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><lastBuildDate>Tue, 06 Oct 2020 08:48:45 +0000</lastBuildDate><atom:link href="/docs/introduction/index.xml" rel="self" type="application/rss+xml"/><item><title>Installing mCaptcha on your website</title><link>/docs/introduction/installing-captcha/</link><pubDate>Wed, 22 Jun 2022 00:00:00 +0000</pubDate><guid>/docs/introduction/installing-captcha/</guid><description>mCaptcha can protect your website from DDoS attacks. In this guide we&amp;rsquo;ll explore how to install mCaptcha on your website. The end result will be something like this, on your website:
For the purpose of this demo, we will be using demo.mcaptcha.org, a demo instance running in @realaravinth&amp;rsquo;s bedroom(for this same reason, it shouldn&amp;rsquo;t be used for anything serious)
1. Create an account and sign into the mCaptcha dashboard Head over to demo.</description>
</item>
<item>
<title>Configuring Difficulty Factor</title>
<link>/docs/introduction/configuring-difficulty-factor/</link>
<pubDate>Wed, 22 Jun 2022 00:00:00 +0000</pubDate>
<guid>/docs/introduction/configuring-difficulty-factor/</guid>
<description>mCaptcha is highly responsive to detecting DDoS attacks. Admins are advised to take advantage of it by setting low difficulty factors for normal traffic levels for their website.
1. Create an account and sign into the mCaptcha dashboard Head over to demo.</description></item><item><title>Configuring Difficulty Factor</title><link>/docs/introduction/configuring-difficulty-factor/</link><pubDate>Wed, 22 Jun 2022 00:00:00 +0000</pubDate><guid>/docs/introduction/configuring-difficulty-factor/</guid><description>mCaptcha is highly responsive to detecting DDoS attacks. Admins are advised to take advantage of it by setting low difficulty factors for normal traffic levels for their website.
Lowest advisable difficulty factor is 5000.
For instance, if it is normal for my website to get 2000 requests for every 30 seconds, I will set a cool down period of 30 seconds and the first level of difficulty configuration will have a visitor threshold of 2000 with a difficulty factor of 5000.</description>
</item>
</channel>
</rss>
For instance, if it is normal for my website to get 2000 requests for every 30 seconds, I will set a cool down period of 30 seconds and the first level of difficulty configuration will have a visitor threshold of 2000 with a difficulty factor of 5000.</description></item></channel></rss>

File diff suppressed because one or more lines are too long

View file

@ -1,17 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>/docs/introduction/installing-captcha/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/introduction/configuring-difficulty-factor/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</urlset>
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/introduction/installing-captcha/</loc><lastmod>2022-08-01T23:03:44+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/introduction/configuring-difficulty-factor/</loc><lastmod>2022-08-01T23:03:44+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,210 +1,4 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Self-Hosted - mCaptcha</title>
<meta name="description" content="Instructions to self-host mCaptcha">
<link rel="canonical" href="/docs/self-hosted/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Self-Hosted">
<meta name="twitter:description" content="Instructions to self-host mCaptcha">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Self-Hosted">
<meta property="og:description" content="Instructions to self-host mCaptcha">
<meta property="og:type" content="website">
<meta property="og:url" content="/docs/self-hosted/">
<meta property="og:image" content="/icon.png"/>
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<link rel="alternate" type="application/rss&#43;xml" href="/docs/self-hosted/index.xml">
<link rel="sitemap" type="application/xml" href="/docs/self-hosted/sitemap.xml">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docsself Hosted",
"item": "\/docsself-hosted\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs list">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row justify-content-center">
<div class="col-md-12 col-lg-10 col-xl-8">
<article>
<h1 class="text-center">Self-Hosted</h1>
<div class="text-center"></div>
<div class="card-list">
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/self-hosted/dependencies/">Database and Cache &rarr;</a>
</div>
</div>
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/self-hosted/bare-metal/">Deploy Bare Metal &rarr;</a>
</div>
</div>
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/self-hosted/getting-started/">Getting Started &rarr;</a>
</div>
</div>
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/self-hosted/docker/">Using Docker &rarr;</a>
</div>
</div>
</div>
</article>
</div>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Self-Hosted - mCaptcha</title><meta name=description content="Instructions to self-host mCaptcha"><link rel=canonical href=/docs/self-hosted/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Self-Hosted"><meta name=twitter:description content="Instructions to self-host mCaptcha"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Self-Hosted"><meta property="og:description" content="Instructions to self-host mCaptcha"><meta property="og:type" content="website"><meta property="og:url" content="/docs/self-hosted/"><meta property="og:image" content="/icon.png"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><link rel=alternate type=application/rss+xml href=/docs/self-hosted/index.xml><link rel=sitemap type=application/xml href=/docs/self-hosted/sitemap.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsself Hosted","item":"\/docsself-hosted\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><h1 class=text-center>Self-Hosted</h1><div class=text-center></div><div class=card-list><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/self-hosted/dependencies/>Database and Cache &rarr;</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/self-hosted/bare-metal/>Deploy Bare Metal &rarr;</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/self-hosted/getting-started/>Getting Started &rarr;</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/self-hosted/docker/>Using Docker &rarr;</a></div></div></div></article></div></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,56 +1,11 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Self-Hosted on </title>
<link>/docs/self-hosted/</link>
<description>Recent content in Self-Hosted on </description>
<generator>Hugo -- gohugo.io</generator>
<language>en-US</language><atom:link href="/docs/self-hosted/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Getting started</title>
<link>/docs/self-hosted/getting-started/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>/docs/self-hosted/getting-started/</guid>
<description>Get started There are two main ways to self-host mCaptcha:
Bare metal With Docker </description>
</item>
<item>
<title>Deploy bare metal</title>
<link>/docs/self-hosted/bare-metal/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>/docs/self-hosted/bare-metal/</guid>
<description>2. Configure mcaptcha is highly configurable.
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Self-Hosted on</title><link>/docs/self-hosted/</link><description>Recent content in Self-Hosted on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><atom:link href="/docs/self-hosted/index.xml" rel="self" type="application/rss+xml"/><item><title>Getting started</title><link>/docs/self-hosted/getting-started/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/self-hosted/getting-started/</guid><description>Get started There are two main ways to self-host mCaptcha:
Bare metal With Docker</description></item><item><title>Deploy bare metal</title><link>/docs/self-hosted/bare-metal/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/self-hosted/bare-metal/</guid><description>2. Configure mcaptcha is highly configurable.
Configuration is applied/merged in the following order:
path to configuration file passed in via MCAPTCHA_CONFIG ./config/default.toml /etc/mcaptcha/config.toml environment variables. 1. Install postgres if you don&amp;rsquo;t have it already. For Debian based distributions:
1sudo apt install postgres 2. Create new user for running mcaptcha 1$ sudo useradd -b /srv -m -s /usr/bin/zsh mcaptcha 3. Create new user in Postgres 1$ sudo -iu postgres # switch to `postgres` user 2$ psql 3postgres=# CREATE USER mcaptcha WITH PASSWORD &amp;#39;my super long password and yes you need single quote`; 4$ createdb -O mcaptcha mcaptcha # create db &amp;#39;mcaptcha&amp;#39; with &amp;#39;mcaptcha&amp;#39; as owner 4.</description>
</item>
<item>
<title>Using Docker</title>
<link>/docs/self-hosted/docker/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>/docs/self-hosted/docker/</guid>
<description>With Docker 1. Configure mcaptcha is highly configurable.
1sudo apt install postgres 2. Create new user for running mcaptcha 1$ sudo useradd -b /srv -m -s /usr/bin/zsh mcaptcha 3. Create new user in Postgres 1$ sudo -iu postgres # switch to `postgres` user 2$ psql 3postgres=# CREATE USER mcaptcha WITH PASSWORD &amp;#39;my super long password and yes you need single quote`; 4$ createdb -O mcaptcha mcaptcha # create db &amp;#39;mcaptcha&amp;#39; with &amp;#39;mcaptcha&amp;#39; as owner 4.</description></item><item><title>Using Docker</title><link>/docs/self-hosted/docker/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/self-hosted/docker/</guid><description>With Docker 1. Configure mcaptcha is highly configurable.
Configuration is applied/merged in the following order:
path to configuration file passed in via MCAPTCHA_CONFIG ./config/default.toml /etc/mcaptcha/config.toml environment variables. See CONFIGURATION.md for configurable options.
2. Run image If you have already have a Postgres instance running, then:
1docker run -p &amp;lt;host-machine-port&amp;gt;:&amp;lt;port-in-configuration-file&amp;gt; \ 2 --add-host=database:&amp;lt;database-ip-addrss&amp;gt; \ 3 -e RUST_LOG=debug \ 4 -e DATABASE_URL=&amp;#34;postgres://&amp;lt;db-user&amp;gt;:&amp;lt;db-password&amp;gt;@database:&amp;lt;db-port&amp;gt;/&amp;lt;db-name&amp;gt;&amp;#34; \ 5 mcaptcha/mcaptcha:latest If you don&amp;rsquo;t have a Postgres instance running, you can either install one using a package manager or launch one with docker.</description>
</item>
<item>
<title>Database and cache</title>
<link>/docs/self-hosted/dependencies/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>/docs/self-hosted/dependencies/</guid>
<description>Notes Database Database migrations are baked into the server binary so don&amp;rsquo;t worry about them.
1docker run -p &amp;lt;host-machine-port&amp;gt;:&amp;lt;port-in-configuration-file&amp;gt; \ 2 --add-host=database:&amp;lt;database-ip-addrss&amp;gt; \ 3 -e RUST_LOG=debug \ 4 -e DATABASE_URL=&amp;#34;postgres://&amp;lt;db-user&amp;gt;:&amp;lt;db-password&amp;gt;@database:&amp;lt;db-port&amp;gt;/&amp;lt;db-name&amp;gt;&amp;#34; \ 5 mcaptcha/mcaptcha:latest If you don&amp;rsquo;t have a Postgres instance running, you can either install one using a package manager or launch one with docker.</description></item><item><title>Database and cache</title><link>/docs/self-hosted/dependencies/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/self-hosted/dependencies/</guid><description>Notes Database Database migrations are baked into the server binary so don&amp;rsquo;t worry about them.
When compiling from source, unset database configuration(comment out database configuration/ unset relevant environment variables). mCaptcha uses sqlx database client library which checks SQL queries at compile time. So if you are starting with a fresh database without migrations applied, compilation will fail.
Redis Redis is an optional dependency. Currently, the non-Redis configuration doesn&amp;rsquo;t persist CAPTCHA heat.</description>
</item>
</channel>
</rss>
Redis Redis is an optional dependency.</description></item></channel></rss>

View file

@ -1,31 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>/docs/self-hosted/getting-started/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/self-hosted/bare-metal/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/self-hosted/docker/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/self-hosted/dependencies/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</urlset>
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/self-hosted/getting-started/</loc><lastmod>2022-10-09T12:25:43+02:00</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/self-hosted/bare-metal/</loc><lastmod>2022-08-01T20:24:18+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/self-hosted/docker/</loc><lastmod>2022-08-01T22:26:08+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/self-hosted/dependencies/</loc><lastmod>2022-08-01T20:24:18+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>

View file

@ -1,134 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>/docs/terminology/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/help/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/introduction/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/api/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/self-hosted/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/terminology/access-token/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/terminology/cooldown-period/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/terminology/difficulty-factor/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/terminology/sitekey/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/terminology/visitor-threshold/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/help/troubleshooting/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/help/faq/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/introduction/installing-captcha/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/introduction/configuring-difficulty-factor/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/api/browser/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/api/mcaptcha-system/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/api/pow-sha256/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/self-hosted/getting-started/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/self-hosted/bare-metal/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/self-hosted/docker/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/self-hosted/dependencies/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</urlset>
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/terminology/</loc><lastmod>2022-08-01T22:27:01+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/help/</loc><lastmod>2021-07-21T15:49:53+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/introduction/</loc><lastmod>2022-08-01T22:25:46+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/api/</loc><lastmod>2022-08-01T22:24:03+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/self-hosted/</loc><lastmod>2022-08-01T19:16:21+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/terminology/access-token/</loc><lastmod>2022-08-01T22:27:01+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/terminology/cooldown-period/</loc><lastmod>2022-08-01T23:03:44+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/terminology/difficulty-factor/</loc><lastmod>2022-08-01T22:27:01+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/terminology/sitekey/</loc><lastmod>2022-08-01T22:27:01+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/terminology/visitor-threshold/</loc><lastmod>2022-08-01T22:27:01+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/help/troubleshooting/</loc><lastmod>2022-08-01T22:24:30+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/help/faq/</loc><lastmod>2022-08-01T19:16:21+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/introduction/installing-captcha/</loc><lastmod>2022-08-01T23:03:44+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/introduction/configuring-difficulty-factor/</loc><lastmod>2022-08-01T23:03:44+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/api/browser/</loc><lastmod>2022-08-01T20:24:18+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/api/mcaptcha-system/</loc><lastmod>2022-08-01T20:24:18+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/api/pow-sha256/</loc><lastmod>2022-08-01T20:24:18+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/self-hosted/getting-started/</loc><lastmod>2022-10-09T12:25:43+02:00</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/self-hosted/bare-metal/</loc><lastmod>2022-08-01T20:24:18+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/self-hosted/docker/</loc><lastmod>2022-08-01T22:26:08+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/self-hosted/dependencies/</loc><lastmod>2022-08-01T20:24:18+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>

View file

@ -1,232 +1,16 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Access token - mCaptcha</title>
<meta name="description" content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented.">
<link rel="canonical" href="/docs/terminology/access-token/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Access token">
<meta name="twitter:description" content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented.">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Access token">
<meta property="og:description" content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented.">
<meta property="og:type" content="article">
<meta property="og:url" content="/docs/terminology/access-token/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:published_time" content="2022-07-22T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docsterminologyaccess Token",
"item": "\/docsterminologyaccess-token\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<div class="col-lg-5 col-xl-4 docs-sidebar">
<nav class="docs-links" aria-label="Main navigation">
<h3>Introduction</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/introduction/installing-captcha/">Installing mCaptcha on your website</a></li>
<li><a class="docs-link" href="/docs/introduction/configuring-difficulty-factor/">Configuring Difficulty Factor</a></li>
</ul>
<h3>Terminology</h3>
<ul class="list-unstyled">
<li><a class="docs-link active" href="/docs/terminology/access-token/">Access token</a></li>
<li><a class="docs-link" href="/docs/terminology/cooldown-period/">Cooldown Period</a></li>
<li><a class="docs-link" href="/docs/terminology/difficulty-factor/">Difficulty Factor</a></li>
<li><a class="docs-link" href="/docs/terminology/sitekey/">Site key</a></li>
<li><a class="docs-link" href="/docs/terminology/visitor-threshold/">Visitor Threshold</a></li>
</ul>
<h3>Self-Hosted</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/self-hosted/getting-started/">Getting started</a></li>
<li><a class="docs-link" href="/docs/self-hosted/bare-metal/">Deploy bare metal</a></li>
<li><a class="docs-link" href="/docs/self-hosted/docker/">Using Docker</a></li>
<li><a class="docs-link" href="/docs/self-hosted/dependencies/">Database and cache</a></li>
</ul>
<h3>API</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/api/browser/">Browser libraries</a></li>
<li><a class="docs-link" href="/docs/api/mcaptcha-system/">mCaptcha System Library</a></li>
<li><a class="docs-link" href="/docs/api/pow-sha256/">pow_sha256</a></li>
</ul>
<h3>Help</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/help/troubleshooting/">Troubleshooting</a></li>
<li><a class="docs-link" href="/docs/help/faq/">FAQ</a></li>
</ul>
</nav>
</div>
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#validate-access-token">Validate access token:</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9">
<h1>Access token</h1>
<p class="lead"></p>
<p>When a visitor solves the CAPTCHA and sends their solution to an
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Access token - mCaptcha</title><meta name=description content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented."><link rel=canonical href=/docs/terminology/access-token/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Access token"><meta name=twitter:description content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Access token"><meta property="og:description" content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented."><meta property="og:type" content="article"><meta property="og:url" content="/docs/terminology/access-token/"><meta property="og:image" content="/icon.png"><meta property="article:published_time" content="2022-07-22T00:00:00+00:00"><meta property="article:modified_time" content="2022-08-01T22:27:01+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsterminologyaccess Token","item":"\/docsterminologyaccess-token\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Introduction</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/introduction/installing-captcha/>Installing mCaptcha on your website</a></li><li><a class=docs-link href=/docs/introduction/configuring-difficulty-factor/>Configuring Difficulty Factor</a></li></ul><h3>Terminology</h3><ul class=list-unstyled><li><a class="docs-link active" href=/docs/terminology/access-token/>Access token</a></li><li><a class=docs-link href=/docs/terminology/cooldown-period/>Cooldown Period</a></li><li><a class=docs-link href=/docs/terminology/difficulty-factor/>Difficulty Factor</a></li><li><a class=docs-link href=/docs/terminology/sitekey/>Site key</a></li><li><a class=docs-link href=/docs/terminology/visitor-threshold/>Visitor Threshold</a></li></ul><h3>Self-Hosted</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/self-hosted/getting-started/>Getting started</a></li><li><a class=docs-link href=/docs/self-hosted/bare-metal/>Deploy bare metal</a></li><li><a class=docs-link href=/docs/self-hosted/docker/>Using Docker</a></li><li><a class=docs-link href=/docs/self-hosted/dependencies/>Database and cache</a></li></ul><h3>API</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/api/browser/>Browser libraries</a></li><li><a class=docs-link href=/docs/api/mcaptcha-system/>mCaptcha System Library</a></li><li><a class=docs-link href=/docs/api/pow-sha256/>pow_sha256</a></li></ul><h3>Help</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/help/troubleshooting/>Troubleshooting</a></li><li><a class=docs-link href=/docs/help/faq/>FAQ</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#validate-access-token>Validate access token:</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9"><h1>Access token</h1><p class=lead></p><p>When a visitor solves the CAPTCHA and sends their solution to an
mCaptcha instance, the solution will be verified for correctness. If the
solution is correct, mCaptcha will return a single use access token.</p>
<p>This access token should be attached to the visitor&rsquo;s requited to the
solution is correct, mCaptcha will return a single use access token.</p><p>This access token should be attached to the visitor&rsquo;s requited to the
protected service and the protected service should validity of the
access token with the mCaptcha instance and only allow access to
protected resource if the access token is valid.</p>
<h2 id="validate-access-token">Validate access token:<a href="#validate-access-token" class="anchor" aria-hidden="true">#</a> </h2>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1</span><span>curl --location --request POST <span style="color:#f1fa8c">&#39;https://mcaptcha.example.net/api/v1/pow/siteverify&#39;</span> <span style="color:#f1fa8c">\
</span></span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">2</span><span><span style="color:#f1fa8c"></span> --header <span style="color:#f1fa8c">&#39;Content-Type: application/json&#39;</span> <span style="color:#f1fa8c">\
</span></span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">3</span><span><span style="color:#f1fa8c"></span> --data-raw <span style="color:#f1fa8c">&#39;{
</span></span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">4</span><span><span style="color:#f1fa8c"> &#34;token&#34;: &#34;replace this with the access token presented by visitor&#34;,
</span></span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">5</span><span><span style="color:#f1fa8c"> &#34;key&#34;: &#34;replace this with the sitekey associated with the CAPTCHA&#34;
</span></span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">6</span><span><span style="color:#f1fa8c"> &#34;secret&#34;: &#34;replace this with mCaptcha account secret, available in settings&#34;
</span></span></span><span style="display:flex;"><span style="white-space:pre;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">7</span><span><span style="color:#f1fa8c"> }&#39;</span>
</span></span></code></pre></div>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/docs/terminology/access-token.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
<div class="docs-navigation d-flex justify-content-between">
<a href="/docs/introduction/configuring-difficulty-factor/">
<div class="card my-1">
<div class="card-body py-2">
&larr; Configuring Difficulty Factor
</div>
</div>
</a>
<a class="ms-auto" href="/docs/terminology/cooldown-period/">
<div class="card my-1">
<div class="card-body py-2">
Cooldown Period &rarr;
</div>
</div>
</a>
</div>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
protected resource if the access token is valid.</p><h2 id=validate-access-token>Validate access token:<a href=#validate-access-token class=anchor aria-hidden=true>#</a></h2><div class=highlight><pre style=color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">1</span>curl --location --request POST <span style=color:#f1fa8c>&#39;https://mcaptcha.example.net/api/v1/pow/siteverify&#39;</span> <span style=color:#f1fa8c>\
</span><span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">2</span><span style=color:#f1fa8c></span> --header <span style=color:#f1fa8c>&#39;Content-Type: application/json&#39;</span> <span style=color:#f1fa8c>\
</span><span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">3</span><span style=color:#f1fa8c></span> --data-raw <span style=color:#f1fa8c>&#39;{
</span><span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">4</span><span style=color:#f1fa8c> &#34;token&#34;: &#34;replace this with the access token presented by visitor&#34;,
</span><span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">5</span><span style=color:#f1fa8c> &#34;key&#34;: &#34;replace this with the sitekey associated with the CAPTCHA&#34;
</span><span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">6</span><span style=color:#f1fa8c> &#34;secret&#34;: &#34;replace this with mCaptcha account secret, available in settings&#34;
</span><span style="margin-right:.4em;padding:0 .4em;color:#7f7f7f">7</span><span style=color:#f1fa8c> }&#39;</span>
</code></pre></div><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/docs/terminology/access-token.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p><div class="docs-navigation d-flex justify-content-between"><a href=/docs/introduction/configuring-difficulty-factor/><div class="card my-1"><div class="card-body py-2">&larr; Configuring Difficulty Factor</div></div></a><a class=ms-auto href=/docs/terminology/cooldown-period/><div class="card my-1"><div class="card-body py-2">Cooldown Period &rarr;</div></div></a></div></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,227 +1,10 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Cooldown Period - mCaptcha</title>
<meta name="description" content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented.">
<link rel="canonical" href="/docs/terminology/cooldown-period/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Cooldown Period">
<meta name="twitter:description" content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented.">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Cooldown Period">
<meta property="og:description" content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented.">
<meta property="og:type" content="article">
<meta property="og:url" content="/docs/terminology/cooldown-period/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:published_time" content="2022-07-22T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docsterminologycooldown Period",
"item": "\/docsterminologycooldown-period\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<div class="col-lg-5 col-xl-4 docs-sidebar">
<nav class="docs-links" aria-label="Main navigation">
<h3>Introduction</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/introduction/installing-captcha/">Installing mCaptcha on your website</a></li>
<li><a class="docs-link" href="/docs/introduction/configuring-difficulty-factor/">Configuring Difficulty Factor</a></li>
</ul>
<h3>Terminology</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/terminology/access-token/">Access token</a></li>
<li><a class="docs-link active" href="/docs/terminology/cooldown-period/">Cooldown Period</a></li>
<li><a class="docs-link" href="/docs/terminology/difficulty-factor/">Difficulty Factor</a></li>
<li><a class="docs-link" href="/docs/terminology/sitekey/">Site key</a></li>
<li><a class="docs-link" href="/docs/terminology/visitor-threshold/">Visitor Threshold</a></li>
</ul>
<h3>Self-Hosted</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/self-hosted/getting-started/">Getting started</a></li>
<li><a class="docs-link" href="/docs/self-hosted/bare-metal/">Deploy bare metal</a></li>
<li><a class="docs-link" href="/docs/self-hosted/docker/">Using Docker</a></li>
<li><a class="docs-link" href="/docs/self-hosted/dependencies/">Database and cache</a></li>
</ul>
<h3>API</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/api/browser/">Browser libraries</a></li>
<li><a class="docs-link" href="/docs/api/mcaptcha-system/">mCaptcha System Library</a></li>
<li><a class="docs-link" href="/docs/api/pow-sha256/">pow_sha256</a></li>
</ul>
<h3>Help</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/help/troubleshooting/">Troubleshooting</a></li>
<li><a class="docs-link" href="/docs/help/faq/">FAQ</a></li>
</ul>
</nav>
</div>
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#easy-mode-default-cooldown">Easy Mode: Default cooldown</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9">
<h1>Cooldown Period</h1>
<p class="lead"></p>
<p>mCaptcha implements leaky bucket algorithm to measure
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Cooldown Period - mCaptcha</title><meta name=description content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented."><link rel=canonical href=/docs/terminology/cooldown-period/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Cooldown Period"><meta name=twitter:description content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Cooldown Period"><meta property="og:description" content="mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented."><meta property="og:type" content="article"><meta property="og:url" content="/docs/terminology/cooldown-period/"><meta property="og:image" content="/icon.png"><meta property="article:published_time" content="2022-07-22T00:00:00+00:00"><meta property="article:modified_time" content="2022-08-01T23:03:44+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsterminologycooldown Period","item":"\/docsterminologycooldown-period\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Introduction</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/introduction/installing-captcha/>Installing mCaptcha on your website</a></li><li><a class=docs-link href=/docs/introduction/configuring-difficulty-factor/>Configuring Difficulty Factor</a></li></ul><h3>Terminology</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/terminology/access-token/>Access token</a></li><li><a class="docs-link active" href=/docs/terminology/cooldown-period/>Cooldown Period</a></li><li><a class=docs-link href=/docs/terminology/difficulty-factor/>Difficulty Factor</a></li><li><a class=docs-link href=/docs/terminology/sitekey/>Site key</a></li><li><a class=docs-link href=/docs/terminology/visitor-threshold/>Visitor Threshold</a></li></ul><h3>Self-Hosted</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/self-hosted/getting-started/>Getting started</a></li><li><a class=docs-link href=/docs/self-hosted/bare-metal/>Deploy bare metal</a></li><li><a class=docs-link href=/docs/self-hosted/docker/>Using Docker</a></li><li><a class=docs-link href=/docs/self-hosted/dependencies/>Database and cache</a></li></ul><h3>API</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/api/browser/>Browser libraries</a></li><li><a class=docs-link href=/docs/api/mcaptcha-system/>mCaptcha System Library</a></li><li><a class=docs-link href=/docs/api/pow-sha256/>pow_sha256</a></li></ul><h3>Help</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/help/troubleshooting/>Troubleshooting</a></li><li><a class=docs-link href=/docs/help/faq/>FAQ</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#easy-mode-default-cooldown>Easy Mode: Default cooldown</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9"><h1>Cooldown Period</h1><p class=lead></p><p>mCaptcha implements leaky bucket algorithm to measure
current traffic levels. Cooldown period specifies the leak or the time
after which a visitor addition is decremented.</p>
<p>For instance, if initial traffic level is 0 and a user visits one
after which a visitor addition is decremented.</p><p>For instance, if initial traffic level is 0 and a user visits one
second later, the traffic level will be incremented to 1. Now, if the
cooldown period is set to 30 seconds, the traffic level will be
decremented after 30 seconds. So after 30 seconds, the traffic level will
go from 1 to 0.</p>
<h2 id="easy-mode-default-cooldown">Easy Mode: Default cooldown<a href="#easy-mode-default-cooldown" class="anchor" aria-hidden="true">#</a> </h2>
<p>When configuring mCaptcha in <a href="/docs/introduction/configuring-difficulty-factor/#easy-option">easy Mode</a>, the default cooldown period is set to 30 seconds.</p>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/docs/terminology/cooldown-period.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
<div class="docs-navigation d-flex justify-content-between">
<a href="/docs/terminology/access-token/">
<div class="card my-1">
<div class="card-body py-2">
&larr; Access token
</div>
</div>
</a>
<a class="ms-auto" href="/docs/terminology/difficulty-factor/">
<div class="card my-1">
<div class="card-body py-2">
Difficulty Factor &rarr;
</div>
</div>
</a>
</div>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
go from 1 to 0.</p><h2 id=easy-mode-default-cooldown>Easy Mode: Default cooldown<a href=#easy-mode-default-cooldown class=anchor aria-hidden=true>#</a></h2><p>When configuring mCaptcha in <a href=/docs/introduction/configuring-difficulty-factor/#easy-option>easy Mode</a>, the default cooldown period is set to 30 seconds.</p><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/docs/terminology/cooldown-period.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p><div class="docs-navigation d-flex justify-content-between"><a href=/docs/terminology/access-token/><div class="card my-1"><div class="card-body py-2">&larr; Access token</div></div></a><a class=ms-auto href=/docs/terminology/difficulty-factor/><div class="card my-1"><div class="card-body py-2">Difficulty Factor &rarr;</div></div></a></div></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,220 +1,9 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Difficulty Factor - mCaptcha</title>
<meta name="description" content="Difficulty factor determines the time it takes to solve a CAPTCHA, there are two modes to setting difficulty factor: advance and easy, this page documents both modes.">
<link rel="canonical" href="/docs/terminology/difficulty-factor/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Difficulty Factor">
<meta name="twitter:description" content="Difficulty factor determines the time it takes to solve a CAPTCHA, there are two modes to setting difficulty factor: advance and easy, this page documents both modes.">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Difficulty Factor">
<meta property="og:description" content="Difficulty factor determines the time it takes to solve a CAPTCHA, there are two modes to setting difficulty factor: advance and easy, this page documents both modes.">
<meta property="og:type" content="article">
<meta property="og:url" content="/docs/terminology/difficulty-factor/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:published_time" content="2022-07-22T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docsterminologydifficulty Factor",
"item": "\/docsterminologydifficulty-factor\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<div class="col-lg-5 col-xl-4 docs-sidebar">
<nav class="docs-links" aria-label="Main navigation">
<h3>Introduction</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/introduction/installing-captcha/">Installing mCaptcha on your website</a></li>
<li><a class="docs-link" href="/docs/introduction/configuring-difficulty-factor/">Configuring Difficulty Factor</a></li>
</ul>
<h3>Terminology</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/terminology/access-token/">Access token</a></li>
<li><a class="docs-link" href="/docs/terminology/cooldown-period/">Cooldown Period</a></li>
<li><a class="docs-link active" href="/docs/terminology/difficulty-factor/">Difficulty Factor</a></li>
<li><a class="docs-link" href="/docs/terminology/sitekey/">Site key</a></li>
<li><a class="docs-link" href="/docs/terminology/visitor-threshold/">Visitor Threshold</a></li>
</ul>
<h3>Self-Hosted</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/self-hosted/getting-started/">Getting started</a></li>
<li><a class="docs-link" href="/docs/self-hosted/bare-metal/">Deploy bare metal</a></li>
<li><a class="docs-link" href="/docs/self-hosted/docker/">Using Docker</a></li>
<li><a class="docs-link" href="/docs/self-hosted/dependencies/">Database and cache</a></li>
</ul>
<h3>API</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/api/browser/">Browser libraries</a></li>
<li><a class="docs-link" href="/docs/api/mcaptcha-system/">mCaptcha System Library</a></li>
<li><a class="docs-link" href="/docs/api/pow-sha256/">pow_sha256</a></li>
</ul>
<h3>Help</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/help/troubleshooting/">Troubleshooting</a></li>
<li><a class="docs-link" href="/docs/help/faq/">FAQ</a></li>
</ul>
</nav>
</div>
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents"></nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9">
<h1>Difficulty Factor</h1>
<p class="lead"></p>
<p>Difficulty factor determines the time it takes to solve a CAPTCHA. The
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Difficulty Factor - mCaptcha</title><meta name=description content="Difficulty factor determines the time it takes to solve a CAPTCHA, there are two modes to setting difficulty factor: advance and easy, this page documents both modes."><link rel=canonical href=/docs/terminology/difficulty-factor/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Difficulty Factor"><meta name=twitter:description content="Difficulty factor determines the time it takes to solve a CAPTCHA, there are two modes to setting difficulty factor: advance and easy, this page documents both modes."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Difficulty Factor"><meta property="og:description" content="Difficulty factor determines the time it takes to solve a CAPTCHA, there are two modes to setting difficulty factor: advance and easy, this page documents both modes."><meta property="og:type" content="article"><meta property="og:url" content="/docs/terminology/difficulty-factor/"><meta property="og:image" content="/icon.png"><meta property="article:published_time" content="2022-07-22T00:00:00+00:00"><meta property="article:modified_time" content="2022-08-01T22:27:01+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsterminologydifficulty Factor","item":"\/docsterminologydifficulty-factor\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Introduction</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/introduction/installing-captcha/>Installing mCaptcha on your website</a></li><li><a class=docs-link href=/docs/introduction/configuring-difficulty-factor/>Configuring Difficulty Factor</a></li></ul><h3>Terminology</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/terminology/access-token/>Access token</a></li><li><a class=docs-link href=/docs/terminology/cooldown-period/>Cooldown Period</a></li><li><a class="docs-link active" href=/docs/terminology/difficulty-factor/>Difficulty Factor</a></li><li><a class=docs-link href=/docs/terminology/sitekey/>Site key</a></li><li><a class=docs-link href=/docs/terminology/visitor-threshold/>Visitor Threshold</a></li></ul><h3>Self-Hosted</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/self-hosted/getting-started/>Getting started</a></li><li><a class=docs-link href=/docs/self-hosted/bare-metal/>Deploy bare metal</a></li><li><a class=docs-link href=/docs/self-hosted/docker/>Using Docker</a></li><li><a class=docs-link href=/docs/self-hosted/dependencies/>Database and cache</a></li></ul><h3>API</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/api/browser/>Browser libraries</a></li><li><a class=docs-link href=/docs/api/mcaptcha-system/>mCaptcha System Library</a></li><li><a class=docs-link href=/docs/api/pow-sha256/>pow_sha256</a></li></ul><h3>Help</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/help/troubleshooting/>Troubleshooting</a></li><li><a class=docs-link href=/docs/help/faq/>FAQ</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents></nav></div></nav><main class="docs-content col-lg-11 col-xl-9"><h1>Difficulty Factor</h1><p class=lead></p><p>Difficulty factor determines the time it takes to solve a CAPTCHA. The
higher the difficulty factor, the longer it will take to generate a
proof of work for it to solve the CAPTCHA.</p>
<p>mCaptcha&rsquo;s proof of work based mechanism makes it highly accessible to
proof of work for it to solve the CAPTCHA.</p><p>mCaptcha&rsquo;s proof of work based mechanism makes it highly accessible to
people with special needs but it is important to choose the difficulty factor
with care as very high difficulty factors will make the CAPTCHA
inaccessible to users on slow devices.</p>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/docs/terminology/difficulty-factor/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
<div class="docs-navigation d-flex justify-content-between">
<a href="/docs/terminology/cooldown-period/">
<div class="card my-1">
<div class="card-body py-2">
&larr; Cooldown Period
</div>
</div>
</a>
<a class="ms-auto" href="/docs/terminology/sitekey/">
<div class="card my-1">
<div class="card-body py-2">
Site key &rarr;
</div>
</div>
</a>
</div>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
inaccessible to users on slow devices.</p><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/docs/terminology/difficulty-factor/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p><div class="docs-navigation d-flex justify-content-between"><a href=/docs/terminology/cooldown-period/><div class="card my-1"><div class="card-body py-2">&larr; Cooldown Period</div></div></a><a class=ms-auto href=/docs/terminology/sitekey/><div class="card my-1"><div class="card-body py-2">Site key &rarr;</div></div></a></div></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,217 +1,4 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Terminology - mCaptcha</title>
<meta name="description" content="Information about terminology used in mCaptcha, some of which unique to the project">
<link rel="canonical" href="/docs/terminology/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Terminology">
<meta name="twitter:description" content="Information about terminology used in mCaptcha, some of which unique to the project">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Terminology">
<meta property="og:description" content="Information about terminology used in mCaptcha, some of which unique to the project">
<meta property="og:type" content="website">
<meta property="og:url" content="/docs/terminology/">
<meta property="og:image" content="/icon.png"/>
<meta property="og:updated_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<link rel="alternate" type="application/rss&#43;xml" href="/docs/terminology/index.xml">
<link rel="sitemap" type="application/xml" href="/docs/terminology/sitemap.xml">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docsterminology",
"item": "\/docsterminology\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs list">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row justify-content-center">
<div class="col-md-12 col-lg-10 col-xl-8">
<article>
<h1 class="text-center">Terminology</h1>
<div class="text-center"></div>
<div class="card-list">
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/terminology/access-token/">Access Token &rarr;</a>
</div>
</div>
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/terminology/cooldown-period/">Cooldown Period &rarr;</a>
</div>
</div>
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/terminology/difficulty-factor/">Difficulty Factor &rarr;</a>
</div>
</div>
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/terminology/sitekey/">Site Key &rarr;</a>
</div>
</div>
<div class="card my-3">
<div class="card-body">
<a class="stretched-link" href="/docs/terminology/visitor-threshold/">Visitor Threshold &rarr;</a>
</div>
</div>
</div>
</article>
</div>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Terminology - mCaptcha</title><meta name=description content="Information about terminology used in mCaptcha, some of which unique to the project"><link rel=canonical href=/docs/terminology/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Terminology"><meta name=twitter:description content="Information about terminology used in mCaptcha, some of which unique to the project"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Terminology"><meta property="og:description" content="Information about terminology used in mCaptcha, some of which unique to the project"><meta property="og:type" content="website"><meta property="og:url" content="/docs/terminology/"><meta property="og:image" content="/icon.png"><meta property="og:updated_time" content="2022-08-01T22:27:01+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><link rel=alternate type=application/rss+xml href=/docs/terminology/index.xml><link rel=sitemap type=application/xml href=/docs/terminology/sitemap.xml><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsterminology","item":"\/docsterminology\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs list"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row justify-content-center"><div class="col-md-12 col-lg-10 col-xl-8"><article><h1 class=text-center>Terminology</h1><div class=text-center></div><div class=card-list><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/terminology/access-token/>Access Token &rarr;</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/terminology/cooldown-period/>Cooldown Period &rarr;</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/terminology/difficulty-factor/>Difficulty Factor &rarr;</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/terminology/sitekey/>Site Key &rarr;</a></div></div><div class="card my-3"><div class=card-body><a class=stretched-link href=/docs/terminology/visitor-threshold/>Visitor Threshold &rarr;</a></div></div></div></article></div></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,62 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Terminology on </title>
<link>/docs/terminology/</link>
<description>Recent content in Terminology on </description>
<generator>Hugo -- gohugo.io</generator>
<language>en-US</language>
<lastBuildDate>Wed, 27 Jul 2022 08:48:45 +0000</lastBuildDate><atom:link href="/docs/terminology/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Access token</title>
<link>/docs/terminology/access-token/</link>
<pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate>
<guid>/docs/terminology/access-token/</guid>
<description>When a visitor solves the CAPTCHA and sends their solution to an mCaptcha instance, the solution will be verified for correctness. If the solution is correct, mCaptcha will return a single use access token.
This access token should be attached to the visitor&amp;rsquo;s requited to the protected service and the protected service should validity of the access token with the mCaptcha instance and only allow access to protected resource if the access token is valid.</description>
</item>
<item>
<title>Cooldown Period</title>
<link>/docs/terminology/cooldown-period/</link>
<pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate>
<guid>/docs/terminology/cooldown-period/</guid>
<description>mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented.
For instance, if initial traffic level is 0 and a user visits one second later, the traffic level will be incremented to 1. Now, if the cooldown period is set to 30 seconds, the traffic level will be decremented after 30 seconds. So after 30 seconds, the traffic level will go from 1 to 0.</description>
</item>
<item>
<title>Difficulty Factor</title>
<link>/docs/terminology/difficulty-factor/</link>
<pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate>
<guid>/docs/terminology/difficulty-factor/</guid>
<description>Difficulty factor determines the time it takes to solve a CAPTCHA. The higher the difficulty factor, the longer it will take to generate a proof of work for it to solve the CAPTCHA.
mCaptcha&amp;rsquo;s proof of work based mechanism makes it highly accessible to people with special needs but it is important to choose the difficulty factor with care as very high difficulty factors will make the CAPTCHA inaccessible to users on slow devices.</description>
</item>
<item>
<title>Site key</title>
<link>/docs/terminology/sitekey/</link>
<pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate>
<guid>/docs/terminology/sitekey/</guid>
<description>Site key is a unique identifier associated with CAPTCHA configurations created on mCaptcha. It is required to integrate a CAPTCHA with your website.
How to get site key? Go to &amp;ldquo;Site keys&amp;rdquo; on the side panel in the dashboard click on the clipboard button to copy the site key to your clipboard. </description>
</item>
<item>
<title>Visitor Threshold</title>
<link>/docs/terminology/visitor-threshold/</link>
<pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate>
<guid>/docs/terminology/visitor-threshold/</guid>
<description>mCaptcha&amp;rsquo;s variable difficulty factor mechanism requires a website&amp;rsquo;s traffic statistics be split into levels, so that it can deploy the right difficulty factor for each level.
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Terminology on</title><link>/docs/terminology/</link><description>Recent content in Terminology on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><lastBuildDate>Wed, 27 Jul 2022 08:48:45 +0000</lastBuildDate><atom:link href="/docs/terminology/index.xml" rel="self" type="application/rss+xml"/><item><title>Access token</title><link>/docs/terminology/access-token/</link><pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate><guid>/docs/terminology/access-token/</guid><description>When a visitor solves the CAPTCHA and sends their solution to an mCaptcha instance, the solution will be verified for correctness. If the solution is correct, mCaptcha will return a single use access token.
This access token should be attached to the visitor&amp;rsquo;s requited to the protected service and the protected service should validity of the access token with the mCaptcha instance and only allow access to protected resource if the access token is valid.</description></item><item><title>Cooldown Period</title><link>/docs/terminology/cooldown-period/</link><pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate><guid>/docs/terminology/cooldown-period/</guid><description>mCaptcha implements leaky bucket algorithm to measure current traffic levels. Cooldown period specifies the leak or the time after which a visitor addition is decremented.
For instance, if initial traffic level is 0 and a user visits one second later, the traffic level will be incremented to 1. Now, if the cooldown period is set to 30 seconds, the traffic level will be decremented after 30 seconds. So after 30 seconds, the traffic level will go from 1 to 0.</description></item><item><title>Difficulty Factor</title><link>/docs/terminology/difficulty-factor/</link><pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate><guid>/docs/terminology/difficulty-factor/</guid><description>Difficulty factor determines the time it takes to solve a CAPTCHA. The higher the difficulty factor, the longer it will take to generate a proof of work for it to solve the CAPTCHA.
mCaptcha&amp;rsquo;s proof of work based mechanism makes it highly accessible to people with special needs but it is important to choose the difficulty factor with care as very high difficulty factors will make the CAPTCHA inaccessible to users on slow devices.</description></item><item><title>Site key</title><link>/docs/terminology/sitekey/</link><pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate><guid>/docs/terminology/sitekey/</guid><description>Site key is a unique identifier associated with CAPTCHA configurations created on mCaptcha. It is required to integrate a CAPTCHA with your website.
How to get site key? Go to &amp;ldquo;Site keys&amp;rdquo; on the side panel in the dashboard click on the clipboard button to copy the site key to your clipboard.</description></item><item><title>Visitor Threshold</title><link>/docs/terminology/visitor-threshold/</link><pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate><guid>/docs/terminology/visitor-threshold/</guid><description>mCaptcha&amp;rsquo;s variable difficulty factor mechanism requires a website&amp;rsquo;s traffic statistics be split into levels, so that it can deploy the right difficulty factor for each level.
Visitor threshold is used to traffic into levels and mCaptcha accepts a difficulty configuration for each of these levels. When current traffic exceeds a difficulty factor, mCaptcha will increase the difficulty factor to the next configured level.
For instance, consider the configuration given below:</description>
</item>
</channel>
</rss>
For instance, consider the configuration given below:</description></item></channel></rss>

View file

@ -1,238 +1,7 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Site key - mCaptcha</title>
<meta name="description" content="Site key is the unique identifier associated with a CAPTCHA created on mCaptcha">
<link rel="canonical" href="/docs/terminology/sitekey/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Site key">
<meta name="twitter:description" content="Site key is the unique identifier associated with a CAPTCHA created on mCaptcha">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Site key">
<meta property="og:description" content="Site key is the unique identifier associated with a CAPTCHA created on mCaptcha">
<meta property="og:type" content="article">
<meta property="og:url" content="/docs/terminology/sitekey/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:published_time" content="2022-07-22T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docsterminologysitekey",
"item": "\/docsterminologysitekey\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<div class="col-lg-5 col-xl-4 docs-sidebar">
<nav class="docs-links" aria-label="Main navigation">
<h3>Introduction</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/introduction/installing-captcha/">Installing mCaptcha on your website</a></li>
<li><a class="docs-link" href="/docs/introduction/configuring-difficulty-factor/">Configuring Difficulty Factor</a></li>
</ul>
<h3>Terminology</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/terminology/access-token/">Access token</a></li>
<li><a class="docs-link" href="/docs/terminology/cooldown-period/">Cooldown Period</a></li>
<li><a class="docs-link" href="/docs/terminology/difficulty-factor/">Difficulty Factor</a></li>
<li><a class="docs-link active" href="/docs/terminology/sitekey/">Site key</a></li>
<li><a class="docs-link" href="/docs/terminology/visitor-threshold/">Visitor Threshold</a></li>
</ul>
<h3>Self-Hosted</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/self-hosted/getting-started/">Getting started</a></li>
<li><a class="docs-link" href="/docs/self-hosted/bare-metal/">Deploy bare metal</a></li>
<li><a class="docs-link" href="/docs/self-hosted/docker/">Using Docker</a></li>
<li><a class="docs-link" href="/docs/self-hosted/dependencies/">Database and cache</a></li>
</ul>
<h3>API</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/api/browser/">Browser libraries</a></li>
<li><a class="docs-link" href="/docs/api/mcaptcha-system/">mCaptcha System Library</a></li>
<li><a class="docs-link" href="/docs/api/pow-sha256/">pow_sha256</a></li>
</ul>
<h3>Help</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/help/troubleshooting/">Troubleshooting</a></li>
<li><a class="docs-link" href="/docs/help/faq/">FAQ</a></li>
</ul>
</nav>
</div>
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#how-to-get-site-key">How to get site key?</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9">
<h1>Site key</h1>
<p class="lead"></p>
<p>Site key is a unique identifier associated with CAPTCHA configurations
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Site key - mCaptcha</title><meta name=description content="Site key is the unique identifier associated with a CAPTCHA created on mCaptcha"><link rel=canonical href=/docs/terminology/sitekey/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Site key"><meta name=twitter:description content="Site key is the unique identifier associated with a CAPTCHA created on mCaptcha"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Site key"><meta property="og:description" content="Site key is the unique identifier associated with a CAPTCHA created on mCaptcha"><meta property="og:type" content="article"><meta property="og:url" content="/docs/terminology/sitekey/"><meta property="og:image" content="/icon.png"><meta property="article:published_time" content="2022-07-22T00:00:00+00:00"><meta property="article:modified_time" content="2022-08-01T22:27:01+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsterminologysitekey","item":"\/docsterminologysitekey\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Introduction</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/introduction/installing-captcha/>Installing mCaptcha on your website</a></li><li><a class=docs-link href=/docs/introduction/configuring-difficulty-factor/>Configuring Difficulty Factor</a></li></ul><h3>Terminology</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/terminology/access-token/>Access token</a></li><li><a class=docs-link href=/docs/terminology/cooldown-period/>Cooldown Period</a></li><li><a class=docs-link href=/docs/terminology/difficulty-factor/>Difficulty Factor</a></li><li><a class="docs-link active" href=/docs/terminology/sitekey/>Site key</a></li><li><a class=docs-link href=/docs/terminology/visitor-threshold/>Visitor Threshold</a></li></ul><h3>Self-Hosted</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/self-hosted/getting-started/>Getting started</a></li><li><a class=docs-link href=/docs/self-hosted/bare-metal/>Deploy bare metal</a></li><li><a class=docs-link href=/docs/self-hosted/docker/>Using Docker</a></li><li><a class=docs-link href=/docs/self-hosted/dependencies/>Database and cache</a></li></ul><h3>API</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/api/browser/>Browser libraries</a></li><li><a class=docs-link href=/docs/api/mcaptcha-system/>mCaptcha System Library</a></li><li><a class=docs-link href=/docs/api/pow-sha256/>pow_sha256</a></li></ul><h3>Help</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/help/troubleshooting/>Troubleshooting</a></li><li><a class=docs-link href=/docs/help/faq/>FAQ</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#how-to-get-site-key>How to get site key?</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9"><h1>Site key</h1><p class=lead></p><p>Site key is a unique identifier associated with CAPTCHA configurations
created on mCaptcha. It is required to integrate a CAPTCHA with your
website.</p>
<h2 id="how-to-get-site-key">How to get site key?<a href="#how-to-get-site-key" class="anchor" aria-hidden="true">#</a> </h2>
<ol>
<li>Go to &ldquo;Site keys&rdquo; on the side panel in the dashboard</li>
</ol>
<div align=center>
<figure>
<img class="img-fluid lazyload blur-up" data-sizes="auto" src="/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_20x0_resize_box_3.png" data-srcset="/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_800x0_resize_box_3.png 800w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_700x0_resize_box_3.png 700w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_600x0_resize_box_3.png 600w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_500x0_resize_box_3.png 500w" width="222" height="496" alt="Site key menu option on the dashboard, encircled in red.">
<noscript><img class="img-fluid" sizes="100vw" srcset="/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_800x0_resize_box_3.png 800w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_700x0_resize_box_3.png 700w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_600x0_resize_box_3.png 600w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_500x0_resize_box_3.png 500w" src="/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel.png" width="222" height="496" alt="Site key menu option on the dashboard, encircled in red."></noscript>
</figure>
</div>
<ol start="2">
<li>click on the clipboard button to copy the site key to your
clipboard.</li>
</ol>
<figure>
<img class="img-fluid lazyload blur-up" data-sizes="auto" src="/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_20x0_resize_box_3.png" data-srcset="/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_900x0_resize_box_3.png 900w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_800x0_resize_box_3.png 800w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_700x0_resize_box_3.png 700w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_600x0_resize_box_3.png 600w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_500x0_resize_box_3.png 500w" width="1825" height="831" alt="Copy site key to clipboard. Clipboard button is highlighted in the photo">
<noscript><img class="img-fluid" sizes="100vw" srcset="/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_900x0_resize_box_3.png 900w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_800x0_resize_box_3.png 800w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_700x0_resize_box_3.png 700w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_600x0_resize_box_3.png 600w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_500x0_resize_box_3.png 500w" src="/docs/terminology/sitekey/copy-sitekey.png" width="1825" height="831" alt="Copy site key to clipboard. Clipboard button is highlighted in the photo"></noscript>
</figure>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/docs/terminology/sitekey/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
<div class="docs-navigation d-flex justify-content-between">
<a href="/docs/terminology/difficulty-factor/">
<div class="card my-1">
<div class="card-body py-2">
&larr; Difficulty Factor
</div>
</div>
</a>
<a class="ms-auto" href="/docs/terminology/visitor-threshold/">
<div class="card my-1">
<div class="card-body py-2">
Visitor Threshold &rarr;
</div>
</div>
</a>
</div>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
website.</p><h2 id=how-to-get-site-key>How to get site key?<a href=#how-to-get-site-key class=anchor aria-hidden=true>#</a></h2><ol><li>Go to &ldquo;Site keys&rdquo; on the side panel in the dashboard</li></ol><div align=center><figure><img class="img-fluid lazyload blur-up" data-sizes=auto src=/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_20x0_resize_box_2.png data-srcset="/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_800x0_resize_box_2.png 800w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_700x0_resize_box_2.png 700w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_600x0_resize_box_2.png 600w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_500x0_resize_box_2.png 500w" width=222 height=496 alt="Site key menu option on the dashboard, encircled in red."><noscript><img class=img-fluid sizes=100vw srcset="/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_800x0_resize_box_2.png 800w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_700x0_resize_box_2.png 700w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_600x0_resize_box_2.png 600w,/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel_hu437e619e92d9fef838a97af482e11285_26958_500x0_resize_box_2.png 500w" src=/docs/terminology/sitekey/sitekey-in-dashboard-sidepanel.png width=222 height=496 alt="Site key menu option on the dashboard, encircled in red."></noscript></figure></div><ol start=2><li>click on the clipboard button to copy the site key to your
clipboard.</li></ol><figure><img class="img-fluid lazyload blur-up" data-sizes=auto src=/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_20x0_resize_box_2.png data-srcset="/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_900x0_resize_box_2.png 900w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_800x0_resize_box_2.png 800w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_700x0_resize_box_2.png 700w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_600x0_resize_box_2.png 600w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_500x0_resize_box_2.png 500w" width=1825 height=831 alt="Copy site key to clipboard. Clipboard button is highlighted in the photo"><noscript><img class=img-fluid sizes=100vw srcset="/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_900x0_resize_box_2.png 900w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_800x0_resize_box_2.png 800w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_700x0_resize_box_2.png 700w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_600x0_resize_box_2.png 600w,/docs/terminology/sitekey/copy-sitekey_huf38748cca91d238810283a1abb694c9a_63890_500x0_resize_box_2.png 500w" src=/docs/terminology/sitekey/copy-sitekey.png width=1825 height=831 alt="Copy site key to clipboard. Clipboard button is highlighted in the photo"></noscript></figure><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/docs/terminology/sitekey/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p><div class="docs-navigation d-flex justify-content-between"><a href=/docs/terminology/difficulty-factor/><div class="card my-1"><div class="card-body py-2">&larr; Difficulty Factor</div></div></a><a class=ms-auto href=/docs/terminology/visitor-threshold/><div class="card my-1"><div class="card-body py-2">Visitor Threshold &rarr;</div></div></a></div></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,38 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>/docs/terminology/access-token/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/terminology/cooldown-period/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/terminology/difficulty-factor/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/terminology/sitekey/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>/docs/terminology/visitor-threshold/</loc>
<lastmod>2023-03-10T20:01:19+05:30</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</urlset>
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/docs/terminology/access-token/</loc><lastmod>2022-08-01T22:27:01+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/terminology/cooldown-period/</loc><lastmod>2022-08-01T23:03:44+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/terminology/difficulty-factor/</loc><lastmod>2022-08-01T22:27:01+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/terminology/sitekey/</loc><lastmod>2022-08-01T22:27:01+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>/docs/terminology/visitor-threshold/</loc><lastmod>2022-08-01T22:27:01+05:30</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>

View file

@ -1,266 +1,18 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Visitor Threshold - mCaptcha</title>
<meta name="description" content="Visitor threshold is used to split traffic into levels. If the traffic level supersceedes the configured threshold, then mCaptcha will increase difficulty factor based on the configuration provided.">
<link rel="canonical" href="/docs/terminology/visitor-threshold/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Visitor Threshold">
<meta name="twitter:description" content="Visitor threshold is used to split traffic into levels. If the traffic level supersceedes the configured threshold, then mCaptcha will increase difficulty factor based on the configuration provided.">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Visitor Threshold">
<meta property="og:description" content="Visitor threshold is used to split traffic into levels. If the traffic level supersceedes the configured threshold, then mCaptcha will increase difficulty factor based on the configuration provided.">
<meta property="og:type" content="article">
<meta property="og:url" content="/docs/terminology/visitor-threshold/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:published_time" content="2022-07-22T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Docsterminologyvisitor Threshold",
"item": "\/docsterminologyvisitor-threshold\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="docs single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<div class="col-lg-5 col-xl-4 docs-sidebar">
<nav class="docs-links" aria-label="Main navigation">
<h3>Introduction</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/introduction/installing-captcha/">Installing mCaptcha on your website</a></li>
<li><a class="docs-link" href="/docs/introduction/configuring-difficulty-factor/">Configuring Difficulty Factor</a></li>
</ul>
<h3>Terminology</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/terminology/access-token/">Access token</a></li>
<li><a class="docs-link" href="/docs/terminology/cooldown-period/">Cooldown Period</a></li>
<li><a class="docs-link" href="/docs/terminology/difficulty-factor/">Difficulty Factor</a></li>
<li><a class="docs-link" href="/docs/terminology/sitekey/">Site key</a></li>
<li><a class="docs-link active" href="/docs/terminology/visitor-threshold/">Visitor Threshold</a></li>
</ul>
<h3>Self-Hosted</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/self-hosted/getting-started/">Getting started</a></li>
<li><a class="docs-link" href="/docs/self-hosted/bare-metal/">Deploy bare metal</a></li>
<li><a class="docs-link" href="/docs/self-hosted/docker/">Using Docker</a></li>
<li><a class="docs-link" href="/docs/self-hosted/dependencies/">Database and cache</a></li>
</ul>
<h3>API</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/api/browser/">Browser libraries</a></li>
<li><a class="docs-link" href="/docs/api/mcaptcha-system/">mCaptcha System Library</a></li>
<li><a class="docs-link" href="/docs/api/pow-sha256/">pow_sha256</a></li>
</ul>
<h3>Help</h3>
<ul class="list-unstyled">
<li><a class="docs-link" href="/docs/help/troubleshooting/">Troubleshooting</a></li>
<li><a class="docs-link" href="/docs/help/faq/">FAQ</a></li>
</ul>
</nav>
</div>
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents"></nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9">
<h1>Visitor Threshold</h1>
<p class="lead"></p>
<p>mCaptcha&rsquo;s variable difficulty factor mechanism requires a website&rsquo;s traffic
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Visitor Threshold - mCaptcha</title><meta name=description content="Visitor threshold is used to split traffic into levels. If the traffic level supersceedes the configured threshold, then mCaptcha will increase difficulty factor based on the configuration provided."><link rel=canonical href=/docs/terminology/visitor-threshold/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Visitor Threshold"><meta name=twitter:description content="Visitor threshold is used to split traffic into levels. If the traffic level supersceedes the configured threshold, then mCaptcha will increase difficulty factor based on the configuration provided."><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Visitor Threshold"><meta property="og:description" content="Visitor threshold is used to split traffic into levels. If the traffic level supersceedes the configured threshold, then mCaptcha will increase difficulty factor based on the configuration provided."><meta property="og:type" content="article"><meta property="og:url" content="/docs/terminology/visitor-threshold/"><meta property="og:image" content="/icon.png"><meta property="article:published_time" content="2022-07-22T00:00:00+00:00"><meta property="article:modified_time" content="2022-08-01T22:27:01+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Docsterminologyvisitor Threshold","item":"\/docsterminologyvisitor-threshold\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="docs single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class="nav-item active"><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><div class="col-lg-5 col-xl-4 docs-sidebar"><nav class=docs-links aria-label="Main navigation"><h3>Introduction</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/introduction/installing-captcha/>Installing mCaptcha on your website</a></li><li><a class=docs-link href=/docs/introduction/configuring-difficulty-factor/>Configuring Difficulty Factor</a></li></ul><h3>Terminology</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/terminology/access-token/>Access token</a></li><li><a class=docs-link href=/docs/terminology/cooldown-period/>Cooldown Period</a></li><li><a class=docs-link href=/docs/terminology/difficulty-factor/>Difficulty Factor</a></li><li><a class=docs-link href=/docs/terminology/sitekey/>Site key</a></li><li><a class="docs-link active" href=/docs/terminology/visitor-threshold/>Visitor Threshold</a></li></ul><h3>Self-Hosted</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/self-hosted/getting-started/>Getting started</a></li><li><a class=docs-link href=/docs/self-hosted/bare-metal/>Deploy bare metal</a></li><li><a class=docs-link href=/docs/self-hosted/docker/>Using Docker</a></li><li><a class=docs-link href=/docs/self-hosted/dependencies/>Database and cache</a></li></ul><h3>API</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/api/browser/>Browser libraries</a></li><li><a class=docs-link href=/docs/api/mcaptcha-system/>mCaptcha System Library</a></li><li><a class=docs-link href=/docs/api/pow-sha256/>pow_sha256</a></li></ul><h3>Help</h3><ul class=list-unstyled><li><a class=docs-link href=/docs/help/troubleshooting/>Troubleshooting</a></li><li><a class=docs-link href=/docs/help/faq/>FAQ</a></li></ul></nav></div><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents></nav></div></nav><main class="docs-content col-lg-11 col-xl-9"><h1>Visitor Threshold</h1><p class=lead></p><p>mCaptcha&rsquo;s variable difficulty factor mechanism requires a website&rsquo;s traffic
statistics be split into levels, so that it can deploy the right
difficulty factor for each level.</p>
<p>Visitor threshold is used to traffic into levels and mCaptcha accepts a
difficulty factor for each level.</p><p>Visitor threshold is used to traffic into levels and mCaptcha accepts a
difficulty configuration for each of these levels. When current traffic
exceeds a difficulty factor, mCaptcha will increase the difficulty
factor to the next configured level.</p>
<p>For instance, consider the configuration given below:</p>
<ul>
<li>Cool down period: 30 seconds</li>
</ul>
<table>
<thead>
<tr>
<th>Level</th>
<th>Difficulty Factor</th>
<th>Visitor Threshold</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>5,000</td>
<td>2,000</td>
</tr>
<tr>
<td>2</td>
<td>50,000</td>
<td>5,000</td>
</tr>
<tr>
<td>3</td>
<td>500,000</td>
<td>10,000</td>
</tr>
<tr>
<td>4</td>
<td>5,000,000</td>
<td>15,000</td>
</tr>
</tbody>
</table>
<p>If the website sees 2,000 requests in a 30 second window, level 1
factor to the next configured level.</p><p>For instance, consider the configuration given below:</p><ul><li>Cool down period: 30 seconds</li></ul><table><thead><tr><th>Level</th><th>Difficulty Factor</th><th>Visitor Threshold</th></tr></thead><tbody><tr><td>1</td><td>5,000</td><td>2,000</td></tr><tr><td>2</td><td>50,000</td><td>5,000</td></tr><tr><td>3</td><td>500,000</td><td>10,000</td></tr><tr><td>4</td><td>5,000,000</td><td>15,000</td></tr></tbody></table><p>If the website sees 2,000 requests in a 30 second window, level 1
difficulty factor(5,000) will be deployed. If the traffic increases to
5,000 requests in a 30 second window, then difficulty factor will be
upgraded to level 2(50,000). Likewise 10,000 and 15,000 requests over 30
seconds will result in difficulty factor being upgraded to 500,000 and
5,000,000 respectively.</p>
<p>Visitor threshold is how mCaptcha determines which difficulty factor
5,000,000 respectively.</p><p>Visitor threshold is how mCaptcha determines which difficulty factor
level to deploy. mCaptcha uses leaky bucket algorithm to keep the
visitor threshold constantly updated within the configured cool down
period. So, at any given moment the, the current visitor level will be
the amount of traffic that was served in the cool down period specified.</p>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/docs/terminology/visitor-threshold.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
<div class="docs-navigation d-flex justify-content-between">
<a href="/docs/terminology/sitekey/">
<div class="card my-1">
<div class="card-body py-2">
&larr; Site key
</div>
</div>
</a>
<a class="ms-auto" href="/docs/self-hosted/getting-started/">
<div class="card my-1">
<div class="card-body py-2">
Getting started &rarr;
</div>
</div>
</a>
</div>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
the amount of traffic that was served in the cool down period specified.</p><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/docs/terminology/visitor-threshold.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p><div class="docs-navigation d-flex justify-content-between"><a href=/docs/terminology/sitekey/><div class="card my-1"><div class="card-body py-2">&larr; Site key</div></div></a><a class=ms-auto href=/docs/self-hosted/getting-started/><div class="card my-1"><div class="card-body py-2">Getting started &rarr;</div></div></a></div></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

View file

@ -1,183 +1,11 @@
<!doctype html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-regular.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/fonts/vendor/jost/jost-v4-latin-700.woff2" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity="sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE&#43;ImL0dKU/MZXqcthuu0Ux97m&#43;eKy1g==" crossorigin="anonymous">
<noscript><style>img.lazyload { display: none; }</style></noscript>
<meta name="robots" content="index, follow">
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
<title>Donate - mCaptcha</title>
<meta name="description" content="Donate to mCaptcha">
<link rel="canonical" href="/donate/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="/icon.png">
<meta name="twitter:title" content="Donate">
<meta name="twitter:description" content="Donate to mCaptcha">
<meta name="twitter:site" content="@">
<meta name="twitter:creator" content="@">
<meta property="og:title" content="Donate">
<meta property="og:description" content="Donate to mCaptcha">
<meta property="og:type" content="article">
<meta property="og:url" content="/donate/">
<meta property="og:image" content="/icon.png"/>
<meta property="article:published_time" content="2021-05-27T00:00:00+00:00">
<meta property="article:modified_time" content="2023-03-10T20:01:19+05:30">
<meta property="og:site_name" content="mCaptcha">
<meta property="article:publisher" content="https://www.facebook.com/">
<meta property="article:author" content="https://www.facebook.com/">
<meta property="og:locale" content="en_US">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Donate",
"item": "\/donate\/"
}]
}
</script>
<meta name="theme-color" content="#fff">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
</head>
<body class="page single">
<div class="header-bar fixed-top"></div>
<header class="navbar fixed-top navbar-expand-md navbar-light">
<div class="container">
<input class="menu-btn order-0" type="checkbox" id="menu-btn">
<label class="menu-icon d-md-none" for="menu-btn"><span class="navicon"></span></label>
<a class="navbar-brand order-1 order-md-0 me-auto" href="/">mCaptcha</a>
<button id="mode" class="btn btn-link order-2 order-md-4" type="button" aria-label="Toggle mode">
<span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
<span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
</button>
<ul class="navbar-nav social-nav order-3 order-md-5">
<li class="nav-item">
<a class="nav-link" href="https://github.com/mCaptcha"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg><span class="ms-2 visually-hidden">GitHub</span></a>
</li>
</ul>
<div class="collapse navbar-collapse order-4 order-md-1">
<ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class="nav-item">
<a class="nav-link" href="/blog/">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/community/">Community</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/contact/">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/docs/introduction/installing-captcha/">Docs</a>
</li>
</ul>
<div class="break order-6 d-md-none"></div>
<form class="navbar-form flex-grow-1 order-7 order-md-3">
<input id="userinput" class="form-control is-search" type="search" placeholder="Search docs..." aria-label="Search docs..." autocomplete="off">
<div id="suggestions" class="shadow bg-white rounded"></div>
</form>
</div>
</div>
</header>
<div class="wrap container" role="document">
<div class="content">
<div class="row flex-xl-nowrap">
<nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation">
<div class="page-links">
<h3>On this page</h3>
<nav id="TableOfContents">
<ul>
<li><a href="#xmr">XMR</a></li>
<li><a href="#liberapay">Liberapay</a></li>
</ul>
</nav>
</div>
</nav>
<main class="docs-content col-lg-11 col-xl-9 mx-xl-auto">
<h1>Donate</h1>
<p><small>Last Edited March 10, 2023</small><p>
<p class="lead"></p>
<p>mCaptcha is a small operation that is self-funded. At the time of
<!doctype html><html lang=en-us><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-regular.woff2 type=font/woff2 crossorigin><link rel=preload as=font href=/fonts/vendor/jost/jost-v4-latin-700.woff2 type=font/woff2 crossorigin><link rel=stylesheet href=/main.7a413a9a97a3360893a7e50ee5892da80e0f60349c21739810858ee555d5270e89e0c97966ba1460d57cb94acdf9f6b06e0c8dc2e4fca17a8b59c438b9200f3e.css integrity="sha512-ekE6mpejNgiTp+UO5YktqA4PYDScIXOYEIWO5VXVJw6J4Ml5ZroUYNV8uUrN+fawbgyNwuT8oXqLWcQ4uSAPPg==" crossorigin=anonymous><noscript><style>img.lazyload{display:none}</style></noscript><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Donate - mCaptcha</title><meta name=description content="Donate to mCaptcha"><link rel=canonical href=/donate/><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="/icon.png"><meta name=twitter:title content="Donate"><meta name=twitter:description content="Donate to mCaptcha"><meta name=twitter:site content="@"><meta name=twitter:creator content="@"><meta property="og:title" content="Donate"><meta property="og:description" content="Donate to mCaptcha"><meta property="og:type" content="article"><meta property="og:url" content="/donate/"><meta property="og:image" content="/icon.png"><meta property="article:published_time" content="2021-05-27T00:00:00+00:00"><meta property="article:modified_time" content="2021-07-16T21:58:39+05:30"><meta property="og:site_name" content="mCaptcha"><meta property="article:publisher" content="https://www.facebook.com/"><meta property="article:author" content="https://www.facebook.com/"><meta property="og:locale" content="en_US"><script type=application/ld+json>{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"\/"},{"@type":"ListItem","position":2,"name":"Donate","item":"\/donate\/"}]}</script><meta name=theme-color content="#fff"><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest></head><body class="page single"><div class="header-bar fixed-top"></div><header class="navbar fixed-top navbar-expand-md navbar-light"><div class=container><input class="menu-btn order-0" type=checkbox id=menu-btn>
<label class="menu-icon d-md-none" for=menu-btn><span class=navicon></span></label><a class="navbar-brand order-1 order-md-0 me-auto" href=/>mCaptcha</a>
<button id=mode class="btn btn-link order-2 order-md-4" type=button aria-label="Toggle mode">
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span></button><ul class="navbar-nav social-nav order-3 order-md-5"><li class=nav-item><a class=nav-link href=https://github.com/mCaptcha><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-github"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg><span class="ms-2 visually-hidden">GitHub</span></a></li></ul><div class="collapse navbar-collapse order-4 order-md-1"><ul class="navbar-nav main-nav me-auto order-5 order-md-2"><li class=nav-item><a class=nav-link href=/blog/>Blog</a></li><li class=nav-item><a class=nav-link href=/community/>Community</a></li><li class=nav-item><a class=nav-link href=/contact/>Contact</a></li><li class=nav-item><a class=nav-link href=/about/>About</a></li><li class=nav-item><a class=nav-link href=/docs/introduction/installing-captcha/>Docs</a></li></ul><div class="break order-6 d-md-none"></div><form class="navbar-form flex-grow-1 order-7 order-md-3"><input id=userinput class="form-control is-search" type=search placeholder="Search docs..." aria-label="Search docs..." autocomplete=off><div id=suggestions class="shadow bg-white rounded"></div></form></div></div></header><div class="wrap container" role=document><div class=content><div class="row flex-xl-nowrap"><nav class="docs-toc d-none d-xl-block col-xl-3" aria-label="Secondary navigation"><div class=page-links><h3>On this page</h3><nav id=TableOfContents><ul><li><a href=#xmr>XMR</a></li><li><a href=#liberapay>Liberapay</a></li></ul></nav></div></nav><main class="docs-content col-lg-11 col-xl-9 mx-xl-auto"><h1>Donate</h1><p><small>Last Edited July 16, 2021</small><p><p class=lead></p><p>mCaptcha is a small operation that is self-funded. At the time of
writing, we are not backed by any venture capitals. If you like
mCaptcha, please consider donating. Your donations will go a long
way in supporting us.</p>
<p>Some of the payment options are anonymous. You can optionally send
me(<a href="/contributors/aravinth-manivannan/">@realaravinth</a>) an email so that
I can thank you :)</p>
<h2 id="xmr">XMR<a href="#xmr" class="anchor" aria-hidden="true">#</a> </h2>
<pre tabindex="0"><code>85QAHsHqg4WfA6G7ycXc7U4LmrSLCQARv6H9p3AYjf8o8YP
way in supporting us.</p><p>Some of the payment options are anonymous. You can optionally send
me(<a href=/contributors/aravinth-manivannan/>@realaravinth</a>) an email so that
I can thank you :)</p><h2 id=xmr>XMR<a href=#xmr class=anchor aria-hidden=true>#</a></h2><pre><code>85QAHsHqg4WfA6G7ycXc7U4LmrSLCQARv6H9p3AYjf8o8YP
WH3ngC8Zi7bUYGUifdXb54Xuz41kcu2pqgGFuAYp3VSh5JsR
</code></pre><figure>
<img class="img-fluid lazyload blur-up" data-sizes="auto" src="/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_20x0_resize_box_3.png" data-srcset="/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_900x0_resize_box_3.png 900w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_800x0_resize_box_3.png 800w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_700x0_resize_box_3.png 700w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_600x0_resize_box_3.png 600w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_500x0_resize_box_3.png 500w" width="240" height="240" alt="Monero address QR code">
<noscript><img class="img-fluid" sizes="100vw" srcset="/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_900x0_resize_box_3.png 900w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_800x0_resize_box_3.png 800w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_700x0_resize_box_3.png 700w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_600x0_resize_box_3.png 600w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_500x0_resize_box_3.png 500w" src="/donate/mcptcha-donations-monero-address-qr.png" width="240" height="240" alt="Monero address QR code"></noscript>
<figcaption class="figure-caption"><em>Monero address QR code</em></figcaption>
</figure>
<h2 id="liberapay">Liberapay<a href="#liberapay" class="anchor" aria-hidden="true">#</a> </h2>
<script src="https://liberapay.com/realaravinth/widgets/button.js"></script>
<p><noscript><a href="https://liberapay.com/realaravinth/donate"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></noscript></p>
<p class="edit-page"><a href="https://github.com/mCaptcha/website/blob/master/content/donate/index.md"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>Edit this page on GitHub</a></p>
</main>
</div>
</div>
</div>
<footer class="footer text-muted">
<div class="container">
<div class="row">
<div class="col-lg-8 order-last order-lg-first">
<ul class="list-inline">
<li class="list-inline-item">Powered by <a href="https://gohugo.io/">Hugo</a>, and <a href="https://getdoks.org/">Doks</a></li>
</ul>
</div>
<div class="col-lg-8 order-first order-lg-last text-lg-end">
<ul class="list-inline">
<li class="list-inline-item"><a href="/about/">About</a></li>
<li class="list-inline-item"><a href="/donate">Donate</a></li>
<li class="list-inline-item"><a href="/privacy-policy/">Privacy</a></li>
<li class="list-inline-item"><a href="/security">Security</a></li>
<li class="list-inline-item"><a href="https://stats.uptimerobot.com/GK7VLFJnBl">Status</a></li>
<li class="list-inline-item"><a href="/thanks">Thanks</a></li>
</ul>
</div>
</div>
</div>
</footer>
<script src="/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity="sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin="anonymous" defer></script>
<script src="/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity="sha512-8ktuM9rHR3FHbdpn/pBa&#43;ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT&#43;wBnzHX/ZCxSCzYHNAAUwA==" crossorigin="anonymous" defer></script>
</body>
</html>
</code></pre><figure><img class="img-fluid lazyload blur-up" data-sizes=auto src=/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_20x0_resize_box_2.png data-srcset="/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_900x0_resize_box_2.png 900w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_800x0_resize_box_2.png 800w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_700x0_resize_box_2.png 700w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_600x0_resize_box_2.png 600w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_500x0_resize_box_2.png 500w" width=240 height=240 alt="Monero address QR code"><noscript><img class=img-fluid sizes=100vw srcset="/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_900x0_resize_box_2.png 900w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_800x0_resize_box_2.png 800w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_700x0_resize_box_2.png 700w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_600x0_resize_box_2.png 600w,/donate/mcptcha-donations-monero-address-qr_huda75cb0a97a0728b33b2d59d7a34dd33_7547_500x0_resize_box_2.png 500w" src=/donate/mcptcha-donations-monero-address-qr.png width=240 height=240 alt="Monero address QR code"></noscript><figcaption class=figure-caption><em>Monero address QR code</em></figcaption></figure><h2 id=liberapay>Liberapay<a href=#liberapay class=anchor aria-hidden=true>#</a></h2><script src=https://liberapay.com/realaravinth/widgets/button.js></script><p><noscript><a href=https://liberapay.com/realaravinth/donate><img alt="Donate using Liberapay" src=https://liberapay.com/assets/widgets/donate.svg></a></noscript></p><p class=edit-page><a href=https://git.batsense.net/mCaptcha/website/blob/master/content/donate/index.md><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-edit-2"><path d="M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z"/></svg>Edit this page on git.batsense.net</a></p></main></div></div></div><footer class="footer text-muted"><div class=container><div class=row><div class="col-lg-8 order-last order-lg-first"><ul class=list-inline><li class=list-inline-item>Powered by <a href=https://gohugo.io/>Hugo</a>, and <a href=https://getdoks.org/>Doks</a></li></ul></div><div class="col-lg-8 order-first order-lg-last text-lg-end"><ul class=list-inline><li class=list-inline-item><a href=/about/>About</a></li><li class=list-inline-item><a href=/donate>Donate</a></li><li class=list-inline-item><a href=/privacy-policy/>Privacy</a></li><li class=list-inline-item><a href=/security>Security</a></li><li class=list-inline-item><a href=https://stats.uptimerobot.com/GK7VLFJnBl>Status</a></li><li class=list-inline-item><a href=/thanks>Thanks</a></li></ul></div></div></div></footer><script src=/main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity="sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin=anonymous defer></script><script src=/index.min.9f6ca8d18a9feb4c8173940752baf80e8075b025ffbfcec12016beb0c2f8f794667102d45eb9accca8c374b0dd7a69af667e0f20813fb4fb086e6cda5230e2d8.js integrity="sha512-n2yo0Yqf60yBc5QHUrr4DoB1sCX/v87BIBa+sML495RmcQLUXrmszKjDdLDdemmvZn4PIIE/tPsIbmzaUjDi2A==" crossorigin=anonymous defer></script></body></html>

Some files were not shown because too many files have changed in this diff Show more