Каждая функция подсчёта в ядре PoTB чистая: ни часов, ни аллокатора, ни платформозависимого поведения на всём пути от высоты блока до итогового веса узла. Именно это ограничение делает формулу достойной отдельного разбора — её можно воспроизвести в точности, любому, включая калькулятор, встроенный в главную страницу этого сайта.
Разберём четыре фактора по одному, а затем объясним, почему всё вместе — это произведение, а не сумма.
Почему умножение, а не сложение
Сумма поощряет специализацию. Влияние можно было бы купить, выжав один вход и забыв про остальные — работать вечно с нулевой корректностью или собрать аттестации из одного дата-центра. При умножении такого торга нет: ноль в любом факторе означает нулевой вес, а слабость в одном месте дисконтирует силу везде.
Пределы затем ограничивают, насколько деньги могут растянуть те факторы, которые временем не исправить.
/* Вся модель в четырёх строках — фиксированная точка Q32.32 */
al_q32 w = al_q32_min(tbs, AL_TBS_CAP);
w = al_q32_min(al_q32_mul(w, tgw), AL_Q32_ONE);
w = al_q32_mul(w, ndm);
w = al_q32_mul(w, cod);
TBS — время, которое нельзя перемотать
Time-Behavior Score — это ln(1 + d × c) по протокольным дням d и корректности c плюс слагаемое за лояльность после года. Логарифм делает тихую работу: первые дни значат много, дальнейшие — всё меньше, поэтому десятилетний узел доверенный, но не недосягаемый. Корректность входит множителем внутрь аргумента: год аптайма с корректностью 60% стоит меньше месяца при 100%.
Протокольные дни выводятся из высоты блока, а не из настенных часов. Два узла в разных полушариях считают один и тот же день по одной цепочке — потому оценка воспроизводима и этому разделу не нужна ни одна метка времени.
TGW — граф как свидетель
Trust Graph Weight запускает SybilRank по рёбрам аттестаций, а затем дисконтирует за временную концентрацию: аттестации, пришедшие пачкой, выглядят срежиссированными и оцениваются соответствующе. Раз в эпоху протокол составляет пару из узлов, между которыми нет ребра, и задаёт вопрос, на который честный оператор отвечает хорошо. Вызов существует потому, что граф, который вы контролируете полностью, не должен быть единственным свидетелем о вас.
NDM и COD — цена географии и корреляции
Сетевое разнообразие — мягкий множитель за разброс по автономным системам: сотня узлов за одним ASN оценивается как то, чем является. Подавление кластеров тоньше — слабые статистические признаки общего владения (похожие ритмы аптайма, соседние окна регистрации, частичное пересечение ASN) подавляют совокупный вес группы, поэтому спрятать один узел не спасёт его соседей.
Зачем нужны пределы
min(TBS, 10) и min(TGW, 1) — жёсткие потолки, а не ручки настройки. Первый говорит, что стаж насыщается; второй — что никакой граф, как бы он ни был построен, не перевесит половину модели «время и поведение». Вместе они выражают настоящее утверждение замысла: влияние сходится к тому, что зарабатывают долгая и корректная работа, — и уходит от всего, что покупается за один вечер.
Честные ограничения записаны там, где им место: на странице консенсуса и в спецификации. Отсутствие доминирования аргументировано, но не доказано, а граф и подавление кластеров — эвристики. Читайте эти разделы как продолжение этого текста.