EveryInfra

ALTCHA

ALTCHAALTCHA工作量证明(开源,MIT)一个窄条组件,通常显示一个复选框和一条进度。浏览器在后台算一小段工作量证明,算完自动打勾。没有图片题。

正在查询可用性…$1.53 / 1K 次按成功计费,失败退款

接口规格

项目
typealtcha
必填参数
可选参数challengechallenge_urlwebsite_url
返回一个 token 字符串solution.token
怎么用这个解填回表单的 `altcha` 字段
价格$1.53 / 1K 次 —— 按成功计费,没解出来退款
厂商文档ALTCHA 官方文档

参数去页面哪里取

下面全部是可以直接照做的定位方法 —— DOM 属性名、JS 全局变量名、script 上的 query 参数。

没有必填参数(我们这条只要 type)。但你需要知道页面上长什么样才能确认它是 ALTCHA:

组件是一个自定义元素

<altcha-widget auto="off" challenge="https://api.example.com/challenge"
  name="altcha" type="checkbox" workers="4"></altcha-widget>

一行确认:!!document.querySelector('altcha-widget')

⚠⚠ 版本差异,这是最容易踩的一处

· v3:挑战地址在 `challenge` 属性里。
· v1 / v2:属性名是 `challengeurl` / challengejson(v3 文档里这两个名字已经不存在)。

看到哪个属性名就知道站点用的是哪一代 —— 照 v3 文档去找 challengeurl 会找不到。

回填字段

隐藏 input 的 name 由 `name` 属性决定,默认 `altcha`。站点可以改,也可以配成用 cookie 传 payload,所以回填前先看那个属性。

调用示例

一个端点解全部验证码类型 —— 换一种验证码只改 type 这一个字段。

请求
curl -X POST https://api.everyinfra.com/api/v1/captcha \  -H "Authorization: Bearer omg_你的KEY" \  -H "Content-Type: application/json" \  -d '{"type":"altcha"}'
响应
{  "solution": {    "token": "…"  },  "billing": { "charged": true, "credits": 110 }}

怎么确认目标站用的就是它

开源的工作量证明方案(许可证 MIT):浏览器算一段谜题,结果作为 payload 放进表单的隐藏 input,服务端验证。因为完全开源且可自托管,欧洲隐私敏感的站点用得多。

容易搞混的

Friendly CaptchaAnubis 最容易混,三者都是工作量证明。判据看 DOM:ALTCHA 是 <altcha-widget> 自定义元素;Friendly Captcha 是带 frc-captcha 类的 div(字段 frc-captcha-response);Anubis 是整站前面的网关、页面上有 #anubis_challenge 的 JSON script 标签。

去看 Friendly Captcha 那一条 →

常见部署场景

已知的坑

v3 的属性叫 `challenge`,v1/v2 叫 `challengeurl` —— 版本不同属性名不同,按一份文档去找另一版必然落空。

回填字段名可以被站点改掉:默认 altcha,但 name 属性一设就变;还有一种配置走 cookie 而不是隐藏 input。

严格 CSP 场景下站点会用 altcha/external 那个入口(不含内置 worker),页面结构略有不同。

整套 MIT 开源且常被自托管 —— 挑战地址可能在站点自己的域下,别按第三方域名去找。

challengechallenge_url 至少传一个

它是自托管的工作量证明式验证码,常见于注重隐私的欧洲站点

常见问题

ALTCHA 要传哪些参数?

没有必填参数,type 传 altcha 即可。

解出来的东西怎么用?

返回一个 token 字符串,取 solution.token。填回表单的 altcha 字段

challengejson 要去页面的哪里找?

重点找 challengejson、challengeurl、altcha。本页「参数去页面哪里取」一节写了全部位置与取法,含可直接粘进控制台的一行命令。

怎么确认目标站用的就是 ALTCHA?

Friendly CaptchaAnubis 最容易混,三者都是工作量证明。判据看 DOM:ALTCHA 是 <altcha-widget> 自定义元素;Friendly Captcha 是带 frc-captcha 类的 div(字段 frc-captcha-response);Anubis 是整站前面的网关、页面上有 #anubis_challenge 的 JSON script 标签。

有什么容易踩的坑?

v3 的属性叫 `challenge`,v1/v2 叫 `challengeurl` —— 版本不同属性名不同,按一份文档去找另一版必然落空。

多少钱一次,失败扣不扣?

$1.53 / 1K 次。按成功计费 —— 没解出来一律退款,所以失败不花钱。账单按次记,标价按每千次是为了让量级读得出来。

开始接入

一个端点覆盖全部验证码类型,按成功计费,失败与空结果一律退款。