Валидаторы (Validators) в Telegram Open Network

[email protected]

New member
Сообщения
14
Реакции
4
Чтобы стать валидатором надо отправить свои Gram в Masterchain TON на смарт-контракт глобального выборщика. Grams валидатора замораживаются на весь период его работы и еще гарантийный месяц. Эти Grams являются гарантией со стороны валидатора что он будет соблюдать протокол. На текущий момент смарт-контракт валидатора для основной сети TON всё ещё находится в разработке.


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

giffka

New member
Сообщения
15
Реакции
0
Может ли один и тот же валидатор выбираться несколько раз подряд?
 

F_F

Moderator
Команда форума
Сообщения
82
Реакции
29
Может ли один и тот же валидатор выбираться несколько раз подряд?
Да, но для этого у него должно быть достаточное количество грамм)
Например: Если для того, что бы пройти выборы и стать валидатором нужно 20к грамм, то что бы постоянно быть валидатором нужно 40к грамм) Если у нас будет меньше 40к грамм (но больше 20к), то мы сможем быть валидатором только через раз)
 

F_F

Moderator
Команда форума
Сообщения
82
Реакции
29
Кое какая полезная цитата для более глупокого понимания процесса работы валидатора:

Вчера @akhme и я попытались понять, почему до сих пор невозможно стать валидатором с 10k.
Насколько мы могли понять elector-code.fc, логика выборов такова:
  1. мы берем всех претендентов, у которых ставка выше минимальной (10к)
  2. отсортировать по ставке в порядке убывания
  3. если участников больше, чем максимальное количество валидаторов - отбросить хвост списка
  4. тогда:
цикл i от 1 до N (оставшееся количество участников)
а) взять первый элемент i из списка (все еще отсортированный в порядке убывания)
б) рассчитать эффективную ставку (true_stake в коде) с учетом max_factor. Таким образом, если человек поставил 100 тыс., Но max_factor равен 2,7, а минимальный участник в списке имеет 10 тыс., Тогда эффективная ставка будет минимальной (100 тыс., 2,7 * 10 тыс.) = 27 тыс.
в) рассчитать общую эффективную ставку всех участников i
Найдя таких i, у которых общая эффективная ставка максимальна - мы выбираем этих i участников в качестве валидаторов.

Таким образом, если у нас будет 9 кандидатов с 100k и фактором 2,7 и один участник с 10k, то этот участник не будет избран: без него эффективная ставка будет 900k, а с ним только 9 * 27k + 10k = 253k ,

Таким образом, пока случайность не введена в выборку валидаторов, мы призываем валидаторов либо уменьшить рабочую ставку, либо увеличить их max_factor до (its_stake / 10k).
161
 
Сверху