Почему create_account_with_golos_modifier
— мультипликатор, и почему нужен create_account_delegation_ratio
.
Тут немного сложнее, расскажу по шагам.
1
В ХФ появляется операция создание аккаунта с делегированием. Эта операция должна решать свою задачу — дать возможность регистраторам создавать новые аккаунты. При этом должно:
- уменьшиться оплата за регистрацию
- при этом настоящие активные пользователи не страдают
- ботнеты страдают
2
Чтобы уменьшить стоимость создания аккаунта, появляется возможность часть комиссии оплатить, а часть — делегировать и потом вернуть обратно регистратору.
Но такая схема без ограничений и мультипликаторов даёт возможность просто создавать бесплатные аккаунты, делать что-то с их помощью, и затем возвращать делегированную СГ. Ну или застолбить все имена.
То есть раньше за создание аккаунта надо было заплатить, а с новой операцией можно просто делегировать СГ. Поэтому вводится первое ограничение: account_creation_fee
оплачивается в любом случае. То есть этот параметр немного меняет свой изначальный смысл, и теперь это минимум, который надо оплатить при создании аккаунта с делегированием.
3
Чтобы создание аккаунта с делегированием имело смысл, полная стоимость создания должна стать больше. Поэтому account_creation_fee
умножается на create_account_with_golos_modifier
. Этот же множитель добавляется и в операцию создания аккаунта без делегирования.
4
То есть на этом этапе имеем следующую ситуацию:
- Есть операция создания аккаунта, стоит например 30×fee
- Есть операция создания аккаунта с делегированием, мы можем оплатить не менее 1×fee, а ещё 29×fee делегировать.
Вопрос: какой смысл в первой операции? Смысла нет — зачем платить, если можно делегировать и потом вернуть. Причём, заплатить можно мало, как и раньше, ботнеты не сильно страдают.
Поэтому вводится create_account_delegation_ratio
. Этот параметр задаёт, во сколько раз «вес» оплаченной части выше веса делегированной. То есть во сколько оплаченная часть ценнее делегированной.
Иными словами, если регистратор оплачивает создание аккаунта в GOLOS, то это стоит допустим fee×30.
А если хочешь заплатить меньше, а часть делегировать (и потом вернуть), то дай плюшку создаваемому аккаунту в виде повышенной СГ: fee×1 + 29×delegation×5 (или fee×2 + 28×delegation×5 итд)
Возможности ботнетов резко падают — ботнет получится намного меньше. Возможности регистраторов с большой СГ увеличиваются, можно зарегистрировать больше пользователей дешевле, при этом возможности новых пользователей не режутся, они получают достаточно СГ для старта.
Способа, как этого достичь с одним параметром я не знаю.
На счёт того, что create_account_with_golos_modifier
— мультипликатор — это проще, чем абсолютное значение. Потому что для выставления адекватного абсолютного значения всё равно придётся смотреть на account_creation_fee
@zxcat
А вот тут я не понял:
У нас уже есть account_creation_fee, это минимальная стоимость создания аккаунта как с делегированием, так и без делегирования. О каком 30×fee и 1×fee идет речь? Вводится какой-то ещё параметр, который удорожает обычную операцию регистрации без делегирования?
create_account_with_golos_modifier
влияет и на обычную регистрацию (создание аккаунта)