All Projects → mCaptcha → mCaptcha

mCaptcha / mCaptcha

Licence: AGPL-3.0 license
A no-nonsense CAPTCHA system with seamless UX | Backend component

Programming Languages

rust
11053 projects
typescript
32286 projects
HTML
75241 projects
SCSS
7915 projects
shell
77523 projects
Makefile
30231 projects

Projects that are alternatives of or similar to mCaptcha

PoW-Shield
Project dedicated to fight Layer 7 DDoS with proof of work, featuring an additional WAF. Completed with full set of features and containerized for rapid and lightweight deployment.
Stars: ✭ 99 (-79.07%)
Mutual labels:  spam-protection, ddos-mitigation, proof-of-work, ddos-protection
epiphany
A pre-DDoS security assessment tool
Stars: ✭ 106 (-77.59%)
Mutual labels:  ddos-mitigation, ddos-protection
fugu
Fugu is simple, privacy-friendly, open-source and self-hostable product analytics. 🐡
Stars: ✭ 74 (-84.36%)
Mutual labels:  self-hosted, self-host
anti-ddos-lite
Anti-DDoS-Lite (Anti-Crawler app) is a small PHP app to protect your site against DDoS attack.
Stars: ✭ 96 (-79.7%)
Mutual labels:  ddos-mitigation, ddos-protection
ocr api server
使用ddddocr的最简api搭建项目,支持docker
Stars: ✭ 222 (-53.07%)
Mutual labels:  captcha
nettu-meet
Open source video conferencing system for tutors.
Stars: ✭ 1,878 (+297.04%)
Mutual labels:  self-hosted
tele-vdo-rider
Telegram bot to convert online videos to audio (mp3)
Stars: ✭ 17 (-96.41%)
Mutual labels:  self-hosted
certfico
App para geração e envio de certificados para eventos
Stars: ✭ 20 (-95.77%)
Mutual labels:  self-hosted
captcha-solver
Library and CLI for automating captcha verification across multiple providers.
Stars: ✭ 101 (-78.65%)
Mutual labels:  captcha
traefik-docker-ansible
🐳 🐹  This is an Ansible playbook to install multiple Web applications on a single Ubuntu server with Docker and Traefik.
Stars: ✭ 75 (-84.14%)
Mutual labels:  self-hosted
risso
A comment server written in Rust
Stars: ✭ 16 (-96.62%)
Mutual labels:  actix-web
ezbookkeeping
A lightweight personal bookkeeping app hosted by yourself.
Stars: ✭ 42 (-91.12%)
Mutual labels:  self-hosted
Shopixl
Open-source, self-hosted, Buycraft alternative
Stars: ✭ 17 (-96.41%)
Mutual labels:  self-hosted
tapedrive
[WIP] The selfhosted Podcast Archive
Stars: ✭ 28 (-94.08%)
Mutual labels:  self-hosted
JeChain
Node for JeChain - an experimental smart contract blockchain network
Stars: ✭ 177 (-62.58%)
Mutual labels:  proof-of-work
freecdn
A front-end CDN based on ServiceWorker
Stars: ✭ 850 (+79.7%)
Mutual labels:  ddos-mitigation
DDOS Detection
ddos attack detector using ML Algorithms
Stars: ✭ 38 (-91.97%)
Mutual labels:  ddos-protection
Collect
A server to collect & archive websites that also supports video downloads
Stars: ✭ 62 (-86.89%)
Mutual labels:  self-hosted
dashy
🚀 A self-hostable personal dashboard built for you. Includes status-checking, widgets, themes, icon packs, a UI editor and tons more!
Stars: ✭ 7,103 (+1401.69%)
Mutual labels:  self-hosted
mqtt-panel
Self hosted Web App panel for MQTT
Stars: ✭ 29 (-93.87%)
Mutual labels:  self-hosted
mcaptcha logo

mCaptcha

Proof of work based, privacy respecting CAPTCHA system with a kickass UX.

Documentation Build Docker dependency status codecov
AGPL License Chat

STATUS: ACTIVE DEVELOPMENT

Skip to demo

mCaptcha is a privacy respecting, free CAPTCHA system with a kickass UX. Your users no longer have to interact with ridiculous image-based CAPTCHA system, wasting precious mental bandwidth. Instead, your computer will do the work for you, see for yourself!

How does it work?

mCaptcha uses SHA256 based proof-of-work(PoW) to rate limit users.

When a user wants to do something on an mCaptcha-protected website,

  1. they will have to generate proof-of-work(a bunch of math that will takes time to compute) and submit it to mCaptcha.

  2. We'll validate the proof:

    • if validation is unsuccessful, they will be prevented from accessing their target website
    • if validation is successful, read on,
  3. They will be issued a token that they should submit along with their request/form submission to the target website.

  4. The target website should validate the user-submitted token with mCaptcha before processing the user's request.

The whole process is automated from the user's POV. All they have to do is click on a button to initiate the process.

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 2s 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 will have to do to respond to their request.

Why use mCaptcha?

  • Free software, privacy focused
  • Seamless UX - No more annoying CAPTCHAs!
  • No tracking: Our CAPTCHA routes are cookie free!
  • IP address independent: your users are behind a NAT? We got you covered!
  • Resistant to replay attacks: 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.

Demo

Client-side widget:

mCaptcha's UX is super silent, solving CAPTCHAs have never been more easier. One click and you are on your way. To observe mCaptcha in action, open dev tools and monitor console and network activity.

  1. Link to widget

  2. Video:

Demo servers are available at:

Core functionality is working but it's still very much work-in-progress. Since we don't have a stable release yet, hosted demo servers might be a few versions behind master. Please check footer for build commit.

Feel free to provide bogus information while signing up(project under development, database frequently wiped).

Self-hosted:

Clone the repo and run the following from the root of the repo:

git clone https://github.com/mCaptcha/mCaptcha.git
docker-compose up -d

After the containers are up, visit http://localhost:7000 and login with the default credentials:

  • username: aaronsw
  • password: password

It takes a while to build the image so please be patient :)

See DEPLOYMENT.md detailed alternate deployment methods.

Development:

See HACKING.md

Deployment:

See DEPLOYMENT.md

Configuration:

See CONFIGURATION.md

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].