🏛 Architecture

Introduction

Algoz works on top of a 2/2 multisig. Anyone can copy-paste the building blocks from these docs and enable bot filtering instantly ✨

We currently only support Google reCaptcha but because of the architecture of the project we can easily plug in other services in the future too.

How it works

App Owner Side

  1. app owner uses the building blocks to write the contract
  2. Create Google ReCAPTCHA keys: you need to create your Google ReCAPTCHA keys, head over and sign up for an API key pair.
  3. Register for an app Request for an application_id on Discord (we are shipping an automated process soon 🤔)
  4. the API generates an authentication wallet for the app and sends the address back
  5. the app owner can send a small amount of funds to the authentication wallet to enable bot filtering

Note: You can also use Google ReCAPTCHA v3, which is the latest version of Google ReCAPTCHA.

User Side

With the help of the building blocks, wherever the user was calling a function and executing it, every call gets converted into a transaction proposal. Every user has their own miltisig on all Algoz-compatible contracts. If the user is interacting for the first time, a multisig has to be created with them. The multisigs are 2/2 and have the user's address and the app's authentication wallet as signers.

  1. the user calls a function as usual but with a multisig account
  2. instead of the function being executed normally, it generates a transaction proposal
  3. the user is then asked to complete the captcha and the proposal account id and the captcha response is sent to the backend
  4. captcha response is verified on the backend and if it matches, the app's authentication wallet is used to approve the transaction proposal and the function is executed