Go to file
2024-06-07 15:32:23 +05:30
.reuse feat: reuse init 2024-01-08 05:05:31 +05:30
examples feat: reuse init 2024-01-08 05:05:31 +05:30
LICENSES feat: reuse init 2024-01-08 05:05:31 +05:30
mcaptcha-pow-ffi fix(deps): update rust crate libc to v0.2.155 2024-06-04 08:02:35 +00:00
.gitignore feat: define Go interfaces to rust lib 2024-01-08 04:23:07 +05:30
.woodpecker.yml fix: CI runner img 2024-01-08 04:43:33 +05:30
go.mod feat: cleanup module, add examples and tests 2024-01-08 04:39:39 +05:30
go.sum feat: cleanup module, add examples and tests 2024-01-08 04:39:39 +05:30
gomcaptcha.go feat: reuse init 2024-01-08 05:05:31 +05:30
gomcaptcha_test.go feat: reuse init 2024-01-08 05:05:31 +05:30
Makefile feat: run go tests in CI 2024-01-08 04:41:18 +05:30
README.md feat: doc build deps and build process 2024-01-08 05:02:00 +05:30
renovate.json Add renovate.json 2024-06-04 07:34:58 +00:00

status-badge


gomcaptcha: Go library that implements mCaptcha PoW

Overview

Normal usage within mCaptcha ecosystem will look like this:

  1. mCaptcha server presents challenge parameters (difficulty_factor, salt, and challenge phrase)
  2. Visitor computes Proof-of-Work using parameters received
  3. Visitor submits Proof-of-Work to mCaptcha server and receives authorization token if Proof-of-Work is valid.
  4. Visitor submits Proof-of-Work to protected resource/server

This library implements step #2 from this process.

Dependencies

  1. Rust compiler: This library is a thin wrapper over mcaptcha-pow-ffi, which has to be compiled first before this library can be used.
  2. Go
  3. GNU Make

Compile Rust FFI library:

make rust.build

Run example:

make example

Usage

Please refer to example.