explaingit

negt-dev/funcaptcha-solve-rsa

Analysis updated 2026-05-18

47GoAudience · developerComplexity · 5/5LicenseSetup · moderate

TLDR

An archived, educational Go project that automated solving Arkose Labs' FunCaptcha puzzle challenge by mimicking a browser and answering the images.

Mindmap

mindmap
  root((FunCaptcha solver))
    What it does
      Mimics browser
      Solves puzzle waves
      Returns token
    Tech stack
      Go
      TLS JA3
      HTTP3
    Use cases
      Security research
      Anti-bot study
    Audience
      Developers
      Researchers
    Status
      Archived
      Educational only

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Study how anti-bot browser fingerprinting and challenge flows are built.

USE CASE 2

Learn how proof-of-work puzzles are structured and solved programmatically.

USE CASE 3

Examine how obfuscated JavaScript keys can be recovered and reused in another language.

What is it built with?

GoTLS/JA3HTTP/3

How does it compare?

negt-dev/funcaptcha-solve-rsarockorager/comviewdsthakurrawat/backend-from-first-principle
Stars474746
LanguageGoGoGo
Setup difficultymoderateeasyeasy
Complexity5/52/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires an API key from an external image-recognition provider to answer the puzzle images.

MIT license: use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

This project is the decompiled source code for a service that automatically solves FunCaptcha, the visual puzzle challenge made by Arkose Labs and used by many websites to tell humans apart from bots. The author describes it as archived and educational only, noting that it once worked but is no longer operational. The program is written in Go and compiles to a single file with no extra runtime dependencies aside from an outside image recognition service it calls on to read the visual puzzle images. It works by copying the fingerprint of a real web browser, including its TLS and JA3 network signature, so requests look like they are coming from an actual person using Chrome or another common browser. It encrypts data the same way the official JavaScript client does, walks through the same multi step process Arkose uses to issue a challenge, and answers the picture based puzzle waves using its recognition provider before returning a completed token. Inside, the code is split into clear pieces. One part handles the web server and task queue. Another manages the solving steps themselves, including reading the obfuscated site script to recover an encryption key. A separate piece handles proof of work puzzles that some challenges require, either solving them locally or handing them back to whoever is using the service. Other folders manage the browser fingerprint details and the network transport layer, including newer HTTP/3 support. Setting it up means building the Go binary and running it with an API key for the chosen image recognition provider, after which it exposes simple web addresses for starting a solve, checking on it, and handling proof of work steps. The README documents every file and its job in detail, which is unusually thorough for a project of this kind. Because it is marked archived, expect that it may no longer work against the current version of the anti bot service it targets.

Copy-paste prompts

Prompt 1
Explain how the TLS/JA3 fingerprinting in this Go project mimics a real browser.
Prompt 2
Walk me through the proof-of-work solving logic in the pow package.
Prompt 3
Summarize how the RSA key extraction from api.js works in this codebase.
Prompt 4
What would need to change in this project if the target service updated its challenge format?

Frequently asked questions

What is funcaptcha-solve-rsa?

An archived, educational Go project that automated solving Arkose Labs' FunCaptcha puzzle challenge by mimicking a browser and answering the images.

What language is funcaptcha-solve-rsa written in?

Mainly Go. The stack also includes Go, TLS/JA3, HTTP/3.

What license does funcaptcha-solve-rsa use?

MIT license: use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is funcaptcha-solve-rsa to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is funcaptcha-solve-rsa for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.