
rta — zero-knowledge proof of a threshold
lat.rta由 rta.lat 发布官方发布者v0.1.0更新于 Nov 4, 2026
Prove a hidden value reached a threshold without revealing the value.
发布方自己的服务:Threshold
概览
远程 MCP 服务器,让助手列出阈值谓词,并验证隐藏数值达到某阈值的零知识证明,而不暴露该数值。
- 可以做什么
- 列出封闭的阈值谓词清单及其阈值,免费调用
- 验证隐藏数值达到某阈值的 Groth16 证明,只返回结论而不返回数值
- 对资源和提示列表请求返回空列表而非报错
- 适用场景
- 当助手需要核实余额、质押量、账户年龄或交易次数等是否达到某阈值,同时又不希望验证方看到具体数值时适用。
- 运行要求
- 远程 Streamable HTTP 端点 x402 付费,因此 verify_proof 需要具备支付能力的客户端。
安装
在 SourceWeft 中
- 打开 控制台中的 rta — zero-knowledge proof of a threshold,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
交给智能体安装
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/lat.rta%2Frta/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。其他 MCP 客户端
把它添加到你客户端的 mcpServers 配置中。
{
"mcpServers": {
"rta-zero-knowledge-proof-of-a-threshold": {
"type": "http",
"url": "https://rta.lat/mcp"
}
}
}README
RTA (ṚTA) — доказать факт, не раскрыв его
Почему так называется
Ṛta — центральное понятие ведической космологии: порядок, истина и правильное соответствие между действием и следствием.
Работа ZK-доказательства — это ровно Ṛta. Проверяющий не спрашивает
«похоже ли на правду». Он убеждается, что следствие следует из действия
по правилу, и никакого иного варианта не существует. Одно утверждение —
одна истина. В ведическом языке это называется словно: ṛta управляет тем,
что события идут в правильном порядке и дают правильный результат.
Правило именования: единый пантеон
Имена продуктов берутся из одного пантеона — ведического, потому что агент ИндрА ведический, система называется «Божественная канцелярия» и работа идёт в рамках карма-йоги. Смешивать пантеоны нельзя: греческая Ананке рядом с ведическим ИндрА — это как звать соседа по имени в чужом храме.
Отвергнуто с причинами, чтобы не предлагали заново:
- Гекате — по функции ближе всех (ключи от ворот, распутье, скрытое знание), но комплаенс-офицеру банка «Hecate» звучит как оккультизм. Это риск сделки, а не вкус.
- Варуна — в ведическом пантеоне и по смыслу сильнее (его петля́
настигает скрытое: «Ригведа» 1.24), но
Varuna Integrity Services— компания по аудиту безопасности. Прямая коллизия в нашей нише. - Агни — огонь-испытание, тоже ведический, но крипто-коллизия (AgniCash).
- Ананке — греческая, нарушала единый пантеон.
- Hermes — нейтрально, но тяжёлый товарный знак.
- Janus — прямое столкновение: Janus Software / JanusSecurity, старая антивирусная компания. В безопасности путается.
- Nox / Nyx — только сокрытие, ничего о доказательстве.
Честная цена выбора: ṛta на слух читается как «ритах», непривычно.
Объяснять придётся нам, а не рынку. Смягчает то, что имя нейтральное —
ни оккультизма, ни религиозной нагрузки.
rta занят в npm. Для продукта, распространяемого через GitHub, это не
помеха; при выходе в реестры — область @mrpkk/rta.
Первый работающий модуль: настоящее ZK-доказательство Groth16, собранное локально, без бюджета, без внешней церемонии и без платных сервисов.
Что уже работает
Схема доказывает одно утверждение: «возраст >= 18» — и не раскрывает ни возраст, ни дату рождения.
Итог испытаний: 12 ok, 0 FAIL (node build/test.js).
Почему «доказать нельзя» важнее «доказать можно»
Проверяющий видит только 723 байта и одно слово «верно». Он не может отличить 18 от 100 — публичные данные пусты. И он не может получить доказательство для 17 лет: ограничение невыполнимо, свидетельство не собирается, а значит ложь опровержима, а не просто недоказуема.
Как это устроено
Возраст раскладывается на 8 бит, и разность возраст − 18 тоже
раскладывается на 8 бит. Из равенства
сумма(биты разности) = возраст − 18 следует, что разность неотрицательна:
отрицательное число в двоичной записи из 8 неотрицательных бит не помещается.
Схема: circuits/age.circom. Сборка всех артефактов: build/setup.sh.
⚠️ Чего этот стенд НЕ делает
Что уже сделано и раньше здесь стояло неверно (исправлено 09.10.2026):
Нет приёма оплаты— приём оплаты есть. Подпись платежа проверяется локально через кодattest, и только затем идёт расчёт у facilitator. Ответ безsuccess: trueсчитается провалом: доказательство не выдаётся.Только предикат «возраст ≥ 18»— пять пороговых схем:balance_1000,balance_100000,stake_10000,account_age_180,tx_count_50. Фантомныйage-18убран: он был объявлен в/v1/predicates, но не был собираем.Нет защиты от повтора— nonce гасится при первом предъявлении, повтор даёт 409. Граница честная: хранилище в памяти, перезапуск его обнуляет.
Про powers of tau (аудит 17.10.2026). Прежняя формулировка «сгенерированы
с детерминированной энтропией» была неточной и исправлена. Начальный ptau
секрета не содержит вовсе: snarkjs powersoftau new пишет единичные элементы
(tau=1). В каждый вклад snarkjs подмешивает 64 байта crypto.randomFillSync
поверх строки энтропии, и эти байты нигде не записываются — восстановить
трапдоор из артефактов или журнала нельзя. Настоящее ограничение одно:
участник был один, и он физически мог сохранить случайность при генерации;
проверяется это людьми, не кодом. Для стенда достаточно, для продакшна нужна
церемония с участием независимых сторон.
Как собрать с нуля
HTTP-сервис
rta/http_api.py — сервер на localhost.
Проверка идёт до дорогой верификации: без действующего nonce повторное предъявление отбрасывается с 409, иначе клиент платил бы за каждый повтор. Неверное доказательство токен не гасит — право прийти с настоящим есть.
Испытаний 31, все зелёные. Бьют по настоящему сокету: маршрутизация, коды ответов и заголовки существуют только по сети.
⚠️ Известная проблема среды, не кода
Проверка Groth16 должна идти миллисекунды, а на этой машине идёт минутами
при почти нулевом процессорном времени — процесс не считает, а ждёт. Причина:
свободно ~445 МБ из 15,5 ГБ, snarkjs упирается в пул воркеров. Под strace
тот же вывод укладывается в 90 секунд.
Свой верификатор на чистом Python написан и отвергнут: уравнение не
сошлось, тест билинейности не проходит. Лежит в
experimental/groth16_verify_UNPROVEN.py с пометкой НЕ ДОВЕРЯТЬ. Сервер,
который молча отвергает верное доказательство, хуже сервера без проверки.
Требуется circom 2.2.3 (собран из исходников через cargo) и snarkjs.
npm-пакет [email protected] непригоден: его парсер теряет переводы строк и
не собирает ни одну схему. Проверено 07.10.2026.
Проверено первыми руками, а не по документации
circomиз npm — сломан (парсер).circomиз исходников через cargo — работает, 2.2.3.- CLI
snarkjs groth16 fullprove— сломан, читает zkey как JSON. Используется APIsnarkjs.groth16.fullProveнапрямую. - Требуется
powersoftau prepare phase2передgroth16 setup.
Каждая из этих ошибок стоила времени и ни одна не видна в документации.
ИССЛЕДОВАНИЕ-RTA-стенд-2026
Скриншоты
Последняя картинка сделана намеренно. Продукт о доверии, который прячет свои ограничения, перестаёт быть доверенным: достаточно одного покупателя, которому продали обещание без оговорок, чтобы репутация была потеряна.
Call it from your agent
ṚTA has no MCP endpoint yet — it is an HTTP service with x402 payments per call:
The verifier learns that the threshold is met and never learns the balance. An MCP wrapper is the next step (tracked in PROGRESS).
MCP server (Model Context Protocol)
ṚTA is an MCP server: it speaks the Model Context Protocol over Streamable HTTP (JSON-RPC 2.0) and exposes threshold proofs as MCP tools.
- MCP tools:
list_predicates— which thresholds can be proven (free, no payment);verify_proof— verify a Groth16 proof that a hidden value reached a threshold; paid per call over x402, like the HTTP endpoint.
- MCP resources / prompts: none exposed yet —
resources/listandprompts/listanswer with empty lists rather than an error, so directory scanners do not mark the server as broken. - Transport: Streamable HTTP at
https://rta.lat/mcp. The verifier learns the threshold is met and never learns the value.
Connect an MCP client
来源:README.md,提交 db6a783
工具
0版本历史
1- v0.1.0最新Oct 21, 2026
评分
已满足适用检查项的 85%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通必需25 分
- 已声明认证方式必需10 分
- 已列出工具必需15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
其他 Threshold 集成
Threshold
rentals.threshold官方发布者
Threshold 让助手搜索经过验证的独立度假房源、获取有约束力的报价、提交预订请求、与房东沟通并取消订单。

Invoice Matching Desk
由 GitHub 账号 Wxt-ai 发布
远程 MCP 端点,可让助手生成发票对账汇总。

Reconciliation Threshold Planner
由 GitHub 账号 Wxt-ai 发布
Reconciliation Threshold Planner 的托管 MCP 服务;无需登录;Streamable HTTP。

Reconciliation Threshold Planner
由 GitHub 账号 Wxt-ai 发布
Reconciliation Threshold Planner 的托管 MCP 服务;无需登录;Streamable HTTP。

Reconciliation Threshold Planner
由 GitHub 账号 Wxt-ai 发布
Reconciliation Threshold Planner 的托管 MCP 服务;无需登录;Streamable HTTP。