Интеграция с Mysterium Network
Конкретная ситуация: вы строите приложение, которому нужен децентрализованный VPN или residential proxy — без единого провайдера, без KYC на пользователей, с оплатой в крипте. Например, вам нужно собрать данные с сайтов, которые блокируют дата-центровые IP, или обеспечить приватность для пользователей мобильного приложения без сбора личных данных. Mysterium Network — это p2p сеть из ~13 000 нод, работающая на Proof-of-Traffic. Каждый участник может продавать неиспользуемый трафик за MYST токены. Для разработчика задача не в том, чтобы «подключиться к VPN», а в том, чтобы встроить Mysterium в своё приложение как программируемый транспортный слой.
Мы занимаемся интеграцией децентрализованных сетей более пяти лет и реализовали свыше 50 проектов, несколько — именно на Mysterium. В одном из кейсов клиент сэкономил до 90% от привычных расценок на residential proxy.
Как Mysterium обрабатывает платежи?
Mysterium использует payment channels через Hermes контракт на Polygon. Это off-chain micropayments с периодическим settlement. Программное пополнение — прямой transfer MYST через ethers.js. Ниже пример создания платежного канала:
const channelAddress = await api.paymentOrderGetChannelAddress(identity.id);
const order = await api.paymentOrderCreate(identity.id, {
mystAmount: "10.0",
payCurrency: "USD",
gateway: "coingate",
country: "US",
callerData: "{}",
});
console.log("Payment URL:", order.publicGatewayData.paymentUrl);
Wireguard — транспортный протокол, на котором построена сеть Mysterium. Он обеспечивает минимальную задержку и высокую пропускную способность.
Архитектура Mysterium: что под капотом
Mysterium работает поверх нескольких протоколов. Вот их сравнение:
| Протокол | Назначение | Когда использовать |
|---|---|---|
| Wireguard | Основной VPN (UDP, быстрый) | Высокая пропускная способность, современные клиенты |
| OpenVPN | Legacy, совместимость | Старые устройства, специфичные конфигурации |
| NATS | Discovery и signaling | Поиск нод, передача сигналов |
| Hermes | Payment settlement на Polygon | Офчейн-микроплатежи |
Ключевой компонент для разработчика — SDK mysterium-vpn-js (TypeScript) и REST API ноды (tequilapi).
Как подключиться через SDK?
SDK позволяет управлять нодой и сессиями программно. Пример базового запуска:
import { TequilapiClientFactory, NodeHttpTransport } from "mysterium-vpn-js";
const factory = new TequilapiClientFactory(
"http://127.0.0.1:4050",
5000
);
const api = factory.build(NodeHttpTransport());
const nodeInfo = await api.healthCheck();
console.log("Node version:", nodeInfo.version);
const proposals = await api.findProposals({
serviceType: "wireguard",
qualityMin: 0.9,
locationCountry: "DE",
}); Создание, управление и мониторинг сессии
const identities = await api.identityList();
if (identities.length === 0) {
const identity = await api.identityCreate("your_passphrase");
await api.identityRegister(identity.id, { token: undefined });
}
const identity = identities[0];
const status = await api.identityStatus(identity.id);
if (status.registrationStatus !== "Registered") {
throw new Error("Identity not registered");
}
const connection = await api.connectionCreate({
consumerId: identity.id,
providerId: proposals[0].providerId,
serviceType: "wireguard",
connectOptions: { dnsOption: "auto" }
});
console.log("Session ID:", connection.sessionId);
const stats = await api.connectionStatistics();
console.log({
bytesSent: stats.bytesSent,
bytesReceived: stats.bytesReceived,
tokensSpent: stats.tokensSpent,
duration: stats.duration
});
const location = await api.connectionLocation();
console.log("Exit IP:", location.ip, "Country:", location.country);
await api.connectionCancel(); Почему стоит использовать собственный Discovery?
По умолчанию Mysterium node использует централизованный Discovery сервис Mysterium Foundation. Для enterprise или закрытой сети нужен self-hosted NATS:
version: '3.8'
services:
nats:
image: nats:2.9-alpine
ports:
- "4222:4222"
- "8222:8222"
command: "--jetstream --cluster_name mysterium-private"
discovery:
image: mysteriumnetwork/discovery:latest
environment:
- NATS_URL=nats://nats:4222
- BROKER_ADDRESS=nats://nats:4222
depends_on:
- natsНоды конфигурируются с --discovery.address, указывающим на ваш NATS. Это даёт полный контроль над списком провайдеров и качеством соединений.
Частые ошибки: отсутствие fallback
Mysterium не гарантирует стабильную пропускную способность. Для критически важных приложений закладывайте fallback-провайдера. Мы реализуем логику переключения по времени отклика и ошибкам. Тестирование на этапе интеграции выявляет до 30% нод с низкой производительностью — их исключаем из пула.
Сравнение стоимости: Mysterium vs традиционные residential proxy
| Параметр | Mysterium | Oxylabs/Brightdata |
|---|---|---|
| Цена за GB | до 90% дешевле | высокая |
| KYC | Не требуется | Требуется |
| Пропускная способность | 10–100 Mbps | 100–1000 Mbps |
| Доступные геолокации | ~130 стран | ~150 стран |
Mysterium в разы дешевле традиционных residential proxy, что даёт существенную экономию при масштабном scraping.
Типичные сценарии применения
- Decentralized proxy для web scraping — вместо rotating residential proxy используете Mysterium. Надёжность варьируется, поэтому мы закладываем fallback.
- Privacy-preserving API вызовы — мобильное приложение скрывает IP пользователя через Mysterium.
- Geo-distributed тестирование — тестирование из разных геолокаций без аренды VPS.
Ограничения: Mysterium не даёт гарантий bandwidth или uptime. Для latency-sensitive приложений нужен fallback. Наша интеграция предусматривает логику переключения провайдеров.
Что мы сделаем в рамках интеграции: deliverables
- Модуль интеграции SDK Mysterium в ваш код (TypeScript/JavaScript).
- Настройка и запуск тестовой ноды с платежным каналом на Polygon.
- Реализация self-hosted Discovery на NATS (опционально).
- Автоматическое пополнение баланса MYST и мониторинг расходов.
- Документация по API, конфигурации и troubleshooting.
- Обучение команды (2–3 часа воркшопа).
- Поддержка в течение месяца после релиза.
Как мы помогаем с интеграцией: пошаговый алгоритм
- Анализируем ваш сценарий и архитектуру.
- Настраиваем и запускаем тестовую ноду Mysterium.
- Интегрируем SDK в ваше приложение.
- Реализуем платежный слой через Polygon (MYST баланс, пополнение, мониторинг).
- Опционально: развертываем собственный Discovery сервис (NATS).
- Готовим документацию по эксплуатации и troubleshooting.
- Оказываем поддержку после релиза.
За типовую интеграцию берёмся от 2 недель, полный кастом — до 10 недель. Получите консультацию — свяжитесь с нами, чтобы обсудить ваш проект и оценить объём работ.







