— Что такое блок?

Это фрагмент цепочки Bitcoin, удовлетворяющий особым требованиям сети. Успешное нахождение блока означает, что пул получает награду, которую распределяет между пользователями.

— Что это за вкладка «Выплаты»? Выплаты кому и зачем?

Это список последних 50 транзакций и итоговых сумм, которые пул отправил при обработке платежей своим пользователям. Если хотите увидеть более подробную информацию, то посмотрите статистику по соответствующему аккаунту. Это можно сделать введя адрес bitcoin в форме на главной странице, либо кликнув по нужному адресу в списке активных пользователей.

— Как просиходят начисления?

В используемой системе начислений мы в реальном времени оплачиваем каждое полученное от пользователей решение, этот подход называется Pay-Per-Share (PPS).

— Что произойдет, если ввести синтаксически некорректный bitcoin адрес в качестве имени пользователя?

Решения, отправленные от имени такого пользователя, считаются добровольными пожертвованиями пулу. Они засчитываются как работа аккаунта 14R2r9FkyDmyxGB9xUVwVLdgsX9YfdVamk.

— Я запустил майнер и он работает уже некоторое время, но я не вижу выплат. Это нормально? Если да, то почему?

Это нормально, выплаты происходят автоматически по достижении порогового баланса.

— Ваш код будет открыт для сообщества как у всех децентрализованных проектов?

Да

— На каком стеке написан пул?

NodeJS и C++

— Как проводился аудит безопастности? Есть ли уже сертификаты от аудиторов?

На данный момент никак не производится централизованно, этим занимается пара добровольцев. Большего пока не требуется, в виду того что мы используем архитектурные и инфраструктурные решения, исключающие множество возможных ошибок как класс.

— Были ли проведены перформанс испытания и стресс тесты на отказ устойчивости сети, можно посмотреть на результаты?

  • Сеть из 8 узлов устойчиво обрабатывала от 1 до 20 решений в минуту
  • По итогам испытаний, продолжавшихся месяц, получена оценка темпа роста цепочки ~90 гигабайт данных в год.
  • Производительность при синхронизации нового узла, при отсутствии упора в сетевую инфраструктуру, позволяет синхронизировать новый узел в течение 3.5 часов.

Согласно этим результатам, ограничителем будет являться физическая пропускная способность линий передачи данных между узлами, а не само программное обеспечение или аппаратные ресурсы узла.

— Уже существует децентрализованный пул P2Pool, чем ваш проект отличается в техническом и экономическом плане?

Отличается тем, что проектом P2Pool невозможно пользоваться в реальных условиях. Если надо перечислить причины этого, то будет долго, но по сути P2Pool не является рабочим решением, это proof-of-concept и не более того.

— Какое оборудование требуется для майнинга?

Любое оборудование, поддерживающее stratum протокол. Для использования прямых выплат через coinbase транзакцию, требуется оборудование, не имеющее ограничений на размер coinbase транзакции. Если прямые выплаты не требуются, то оборудование с такими ограничениями тоже можно использовать.

— Как построена защита от ddos?

Принцип «от количества к качеству». При большом количестве узлов такие атаки на сеть становятся либо технически малореализуемыми, либо экономически неэффективными.

— Какой принцип реализованной вами p2p-сети, какая ее архитектура?

Обычная peer-to-peer сеть с прямым обменом данными между участниками.

— Какова роль мастер нод и как реализована защита от скама этих нод?

Мастер нод в сети не существует, это упрощение концепции. Есть узлы, у которых есть право на генерацию шаблонов для новых блоков, их роль заключается в проверке корректности транзакций, которые будут включены в новый блок пула. Какой-либо финансовой роли у них нет, а принуждение к честности осуществляется путём отзыва сертификата узла, осуществляемого в случае неблагонадежного поведения. Сертификат или отзыв сертификата узла подписывается нами, как мейнтейнерами проекта, и рассылается по p2p сети в виде широковещательного сообщения.

— Можно подробнее описать как работает калькулятор PPLNS?

Так же, как он работает на централизованных пулах. Берётся выборка решений за запрошенный период, и делается расчёт распределения награды по ней, простой пропорцией.

— По описанию не совсем понятно как происходит распределение роли в сети и синхронизация? Для этого используется ещё один слой блокчейна? Можно пояснить дополнительно?

Никаких дополнительных слоев нет. Блокчейн пула один, и майнится посредством совместного майнинга при поиске блоков валюты, на которой пул работает. В этом плане принцип аналогичен P2Pool, с небольшими отличиями.

Если владелец нового узла желает стать генераторном шаблонов, то он может прислать запрос на сертификат к мейнтейнерам проекта.

При подписании запроса все узлы узнают о новом статусе запросившего автоматически, реконфигурации или перезапуска ПО не требуется.