From 4bea62056e2e619151df0f3f67647d85865df4ff Mon Sep 17 00:00:00 2001 From: Aravinth Manivannan Date: Sat, 21 Oct 2023 16:48:55 +0530 Subject: [PATCH] feat: publish mcaptcha-net blog --- content/blog/10-20-mcaptcha-net/index.md | 66 ++++++++++++------ .../installation-level-opt-in.png | Bin 0 -> 53366 bytes 2 files changed, 44 insertions(+), 22 deletions(-) create mode 100644 content/blog/10-20-mcaptcha-net/installation-level-opt-in.png diff --git a/content/blog/10-20-mcaptcha-net/index.md b/content/blog/10-20-mcaptcha-net/index.md index 5c303f1..69cdf39 100644 --- a/content/blog/10-20-mcaptcha-net/index.md +++ b/content/blog/10-20-mcaptcha-net/index.md @@ -1,32 +1,47 @@ --- -title: "mCaptcha net" +title: "Introducing mCaptcha net" description: "A network of mCaptcha instances sharing PoW stats to make mCaptcha more efficient and accessible" -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?" date: 2023-10-19 lastmod: 2023-10-19 -draft: true +draft: false weight: 50 images: ["icon.png"] contributors: ["Aravinth Manivannan"] --- -mCaptcha requires the webmaster to provide [difficulty -factor](docs/terminology/difficulty-factor/) configurations to offer -effective protection. Choosing difficulty factors that work for everyone is a hard task -because it isn't possible to accurately predict the kind of visitors -have. But what if had a system that will improve [mCaptcha -installations](/docs/introduction/installing-captcha/) -based on performance of it users? Enter mCaptcha net! +mCaptcha uses a Proof-of-Work (PoW) based algorithm to offer +Denial-of-Service protection, because of [its excellent accessibility +characteristics](https://www.w3.org/TR/turingtest/#proof-of-work). PoW +within mCaptcha is configuration --- webmasters can configure +[difficulty factors](/docs/terminology/difficulty-factor) for their +installations, which determines waiting time for visitors. But PoW can +become inaccessible if webmasters choose a very high difficulty factor. +So they have to maintain a balance which imposes sufficient load on DDoS +attackers while also being accessible to common folk. + +{{< alert icon="⭐" text=" mCaptcha installation: integration of the mCaptcha widget to a service." >}} + +To help webmasters correctly configure difficult factors, we are +building a feedback loop which would gather performance statistics from +voluntary mCaptcha installations and make them available to other +mCaptcha installations. The performance statistics can be used by all +mCaptcha instances to automatically optimize an installation. We are +calling this the mCaptcha net. + +## Participation is optional + +Participation in the mCaptcha net is disabled by default and is +optional as it has privacy implications: it will reveal the +existence of an mCaptcha instance. The admins of mCaptcha instances can choose to upload truly anonymous -Proof-of-Work (PoW) statistics to -[mCaptcha/survey](https://git.batsense.net/mCaptcha/survey) instances, -which other mCaptcha instances can then use to automatically optimize -the installations that they hsot. +PoW performance statistics to a number of [mCaptcha/survey](https://git.batsense.net/mCaptcha/survey) instances. +The data uploaded is public and so is accessible to all mCaptcha +instances. -NOTE: This system is opt-in, webmasters must consent to publishing -for the performance statistics from their mCaptcha installation to be -uploaded. +We also offer opt-in controls at installation level: + +{{% img src="installation-level-opt-in.png" alt="A screenshot of the 'add sitekey' form on the mCaptcha dashboard with a checkbox for anonymously publishing performance statistics. It is not checked by default." caption="Add sitekey form on the mCaptcha dashboard with a checkbox for anonymously publishing performance statistics. It is not checked by default." %}} ## Ensuring anonymity @@ -42,10 +57,17 @@ mCaptcha doesn't fingerprint its users. Performance parameters include: "worker_type":"wasm" ``` -This doesn't include the usual fingerprinting parameters like User-Agent, -cookies, and IP address. Additionally, we use a psuedo ID within -mCaptcha to avoid. We also use psuedo IDs within mCaptcha to prevent the -underlying mCaptcha installation from being exposing. +This doesn't include the usual fingerprinting parameters like +User-Agent, cookies, and IP address. Additionally, we use pseudo IDs +at both mCaptcha/mCaptcha and mCaptcha/survey to avoid exposing installations. +{{% img src="working-rpc.png" alt="A screenshot of a tmux window with logs of mCaptcha/mCaptcha and mCapctha/survey showing both of them talking to eachother" caption="mCaptcha/mCaptcha uploading performance statistics to a mCaptcha/survey instance" %}} -{{% img src="working-rpc.png" alt="A screenshot of a tmux window with logs of mCaptcha/mCaptcha and mCaptha/survey showing both of them talking to eachother" caption="mCaptha uploading performance statistics to a survey instanc3" %}} +## Status + +We now have performance statistics uploads to mCaptcha/survey instances +working. Pull request [mCaptcha/mCaptcha#92](https://github.com/mCaptcha/mCaptcha/pull/92) +added abilities to mCaptcha to upload statistics to mCaptcha/survey instances and +[mCaptcha/survey#40](https://git.batsense.net/mCaptcha/survey/pulls/17) enable survey to process the uploaded data. We will soon build a +self-tuning algorithm within mCaptcha to use this data and optimize +installations automatically. diff --git a/content/blog/10-20-mcaptcha-net/installation-level-opt-in.png b/content/blog/10-20-mcaptcha-net/installation-level-opt-in.png new file mode 100644 index 0000000000000000000000000000000000000000..8887c5608f4661a90a0b796cdc62133c4e90a1e8 GIT binary patch literal 53366 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�)#)+VDE7Q@n0e5#pS-Ei+~YVCQY0X1mxM5 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