No description
Find a file
2023-10-23 18:54:44 +05:30
.github/workflows moved from mono repo 2021-03-09 15:51:11 +05:30
benches update deps and benchemark 2021-08-31 14:24:23 +05:30
docs/third-party feat: add NLnet funding details 2023-03-08 17:25:34 +05:30
scripts update deps and benchemark 2021-08-31 14:24:23 +05:30
src feat: update deps 2023-10-23 18:53:23 +05:30
.env.dev.sample feat: setup cross compilation 2023-10-23 18:54:44 +05:30
.gitignore feat: setup cross compilation 2023-10-23 18:54:44 +05:30
Cargo.lock feat: update deps 2023-10-23 18:53:23 +05:30
Cargo.toml feat: update deps 2023-10-23 18:53:23 +05:30
code_of_conduct.md added code_of_conduct.md 2021-05-02 18:13:29 +05:30
LICENSE.md moved from mono repo 2021-03-09 15:51:11 +05:30
Makefile feat: setup cross compilation 2023-10-23 18:54:44 +05:30
pack.sh feat: setup cross compilation 2023-10-23 18:54:44 +05:30
README.md feat: update readme to doc online mode 2023-08-13 13:35:10 +05:30

mCaptcha PoW CLI

mCaptcha - PoW based DoS protection

Documentation CI (Linux) dependency status
codecov

Usage

Modes:

  1. Offline: Computes PoW over given CAPTCHA parameters
  2. Online: CLI alternative for people using browsers without JavaScript support
CLI tool to solve mCaptcha

Usage: mcaptcha-cli <COMMAND>

Commands:
  offline  Compute PoW with offline parameters
  online   Compute PoW by fetching parameters from  CAPTCHA URL
  help     Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help
  -V, --version  Print version

Offline

Help menu:

Compute PoW with offline parameters

Usage: mcaptcha-cli offline --salt <SALT> --phrase <PHRASE> --difficulty-factor <DIFFICULTY_FACTOR>

Options:
  -s, --salt <SALT>                            Salt with which PoW should be computed
  -p, --phrase <PHRASE>                        Phrase over which PoW should be computed
  -d, --difficulty-factor <DIFFICULTY_FACTOR>  Difficulty Factor
  -h, --help                                   Print help

Example usage:

13:28 atm@lab cli ±|online|→ mcaptcha-cli offline -s $(rand 32) -p $(rand 32) -d 50000
difficulty: 50000
nonce: 90507
original phrase: f351f333d44b2c6b5bf7f033b065bbb8fb5e9dd153bd402e43ed04425f5a3859
result: 340276562956196291522979356090220150471

(where rand is this script)

Online

Fetches CAPTCHA parameters from CAPTCHA URL, computes PoW, validates against given mCaptcha server and returns authorization token

Help menu:

Compute PoW by fetching parameters from  CAPTCHA URL

Usage: mcaptcha-cli online --url <URL>

Options:
  -u, --url <URL>  URL of the CAPTCHA. Example:  https://example.org/widget?sitekey=foo
  -h, --help       Print help

Example usage:

13:32 atm@lab cli ±|online ✗|→ mcaptcha-cli online -u https://demo.mcaptcha.org/widget?sitekey=pHy0AktWyOKuxZDzFfoaewncWecCHo23
Authorization token: 3xleN26OctBuVu3X4t6CYyUjErhaxQvz

Funding

NLnet

NLnet NGIZero logo

2023 development is funded through the NGI0 Entrust Fund, via NLnet. Please see here for more details.