Добрый день!
В ХФ 18 мы реализовали возможность устанавливливать новые голосуемые параметры. Ранее существующие в Стимит константы, управляющие механизмом делегирования СГ, вынесены в параметры, которые могут устанавливаться делегатами. Актуальное значение каждой константы вычисляется по медиане, как и другие голосуемые параметры. Список изменений и их описание представлено ниже.
Такое решение было принято после того, как пользователь @on1x предложил изменить множитель 30 в формуле account_creation_fee × 30 на значение 10. Мы упоминали это в прошлом посте.
Проанализировав разные варианты констант, мы пришли к выводу, что оптимальным будет не фиксация значения, а параметризация и выбор по медиане. Для вычисления медианы все выбранные делегатами значения будут отсортированы по возрастанию, и в качестве конечного значения будет выбрано то, что находится в середине отсортированного списка.
Например, делегаты выставили следующие значения голосуемого параметра (для упрощения ограничим количество значений до 11):
10 20 10 1 20 3 10 10 2 1 30
После сортировки:
1 1 2 3 10 10 10 10 20 20 30.
Медианный элемент (5) = 10
Голосуемые параметры.
Начиная с ХФ 18 меняется поведения операции witness_update. Она престаёт принимать голосуемые параметры (вернет ошибку) и служит только для изменения ключа и url делегата. Голосуемые параметры следует передавать, используя операцию chain_properties_update.
Для задания параметров добавлена операция chain_properties_update: chain_properties_update(account_name, props). Она подписывается ключом владельца (active) и на вход принимает имя аккаунта делегата и объект с параметрами.
Доступны параметры из прошлого ХФ:
- account_creation_fee,
- maximum_block_size,
- sbd_interest_rate
и добавлены новые голосуемые параметры (значения по умолчанию):
- uint32_t create_account_with_golos_modifier = 1;
- uint32_t create_account_delegation_ratio = 5;
- fc::microseconds create_account_delegation_time = 30 days;
- uint32_t min_delegation_multiplier = 10;
Описание:
min_delegation_multiplier — задаёт минимальное количество СГ, которое можно делегировать аккаунту. Минимум делегированной СГ равен account_creation_fee * min_delegation_multiplier. Попытка делегировать на аккаунт СГ меньше этого значения вернёт ошибку. Это же касается попыток оставить на аккаунте часть делегированной СГ, меньше допустимого минимума. Значение параметра должно быть больше нуля.
create_account_delegation_time — задаёт минимальный срок заморозки делегированной СГ при создании аккаунта с делегированием. СГ, делегированную при создания аккаунта, нельзя будет вернуть на делегировавший аккаунт раньше этого срока (но можно отозвать). Значение не может быть меньше 15 дней.
create_account_with_golos_modifier и create_account_delegation_ratio — задают минимум СГ, необходимый при создании аккаунта с делегированием, а именно create_account_with_golos_modifier - во сколько увеличивается стоимость создания аккаунта по сравнению с account_creation_fee, create_account_delegation_ratio - во сколько раз больше весит оплачиваемая часть относительно делегируемой. Оба значения должны быть больше нуля. Минимум определяется согласно формуле:
create_account_delegation_ratio * fee + delegation >= create_account_delegation_ratio * create_account_with_golos_modifier * account_creation_fee
где
fee — СГ, передаваемая новому аккаунту в GOLOS
delegation — СГ, делегируемая новому аккаунта
Новые параметры видны в ответе api-команды get_chain_properties.
В cli_wallet новые параметры добавлены в параметр props команды update_witness, которая использовалось ранее.
Если у вас возникнут вопросы по установке данных значений, то обращайтесь в наш технический чат телеграм.
Каналы коммуникации с Golos•Core
- https://t.me/goloscoretc (решение технических вопросов, связанных с работой блокчейн, нод, api и др.)
- https://t.me/golos_tools (решение вопросов по различным интерфейсам и дополнительным инструментам, создаваемым Golos•Core)
- https://t.me/goloscore_analytics (решение вопросов по работе экономики блокчейн, статистическим экономическим данным, аналитике данных)
- https://t.me/goloscoretech (новостной канал, с актуальной информацией от Golos•Core)
Мы будем очень рады, если вы поддержите делегата @goloscore. Заходите на страничку https://golos.io/~witnesses и проголосуйте за делегата Golos•Core
Спасибо за внимание и хорошего дня!
С уважением,
Команда Golos•Core @kotbegemot, @korpusenko, @andreypf, @epexa, @muhazokotuha, @timurku, @kaynarov, @zxcat, @mariadia
На самом деле для 11 параметров медианный элемент будет 6-м (если нумеровать с 1 а не с 0)
Зачем owner key использовать, почему не ограничиться активным? Данное изменение ухудшает безопасность, я против. @ropox @vik @t3ran13
по ключу согласен, слишком сильно. оунер вообще нигде не нужно использовать, это по факту блэк дор
Это опечатка, используется active-подпись
@goloscore, Поздравляю!
Ваш пост был упомянут в моем хит-параде в следующей категории:
Ваш пост поддержали следующие Инвесторы Сообщества "Добрый кит":
t3ran13, yurgent71, anatolich, graff0x, vladsm, chugoi, kanalex, aleos, makssib, rualev
Поэтому я тоже проголосовал за него!
Узнать подробности о сообществе можно тут:
Разрешите представиться - Кит Добрый
Правила
Инструкция по внесению Инвестиционного взноса
Вы тоже можете стать Инвестором и поддержать проект!!!
Если Вы хотите отказаться от поддержки Доброго Кита, то ответьте на этот комментарий командой "!нехочу"
dobryj.kit теперь стал Делегатом! Ваш голос важен для всего сообщества!!!
Поддержите нас:
Я не очень понимаю, зачем нужно было создавать 4ре новых параметра, при это три из них не прямые параметры, а мультипликаторы, при этом их минимальное значение нужно ещё высчитывать. Нафига козе баян, мы без этого умрем?
Всё правильно, меньше хардкода, больше голосуемых параметров.
Делать минимальную ставку за создание аккаунта тоже неправильно. Кто то напишет скрипт, создаст миллион аккаунтов, потому, что может. Как на битшарах насоздавали кучу никому не нужных койнов. Тут вон форк стимита недавно перестартовали, как раз потому. Потому имхо и надо лочить делегированную СГ, и задавать какой то болевой порог, что бы баланс был.
Если все параметры по нулям выставить, ничего хорошего это не принесет. Работа блокчейна не бесплатна. Как миниум делегаты платят за сервера, так и golos.io и @vik содержат полные ноды.
Ну и нужно когда то делать блокчейн гибче, почему не с этих параметров начать? Если что менять в софте, так то, что будет хорошо тестироваться. Вот как раз делегирование и создание акков через делегирование отличный платцдарм для обкатки.
Не понимаю, почему ты возмущаешгься честно говоря. Трудно выставить минимум?
так эти параметры чисто для делегатов а не комьюнити?? @zxcat
да, рулить сможет только топ делегатов
Пусть создают, это ничего не даст. Все эти акки будут неактивны из-за недостатка СГ.
Я могу создать на 70к СГ 35к полноценных аккаунтов, поработать с ними, просто насрать в блокчейне 200к комментариев и потом вывести СГ. Останутся пустые аккаунты и я при своих. А что выиграет от этого блокчейн?
так для этого такие параметры и хороши. как только дураки заводятся, мультипликаторы поднимаются и дураки уже не в состоянии создать 35к акков)
Именно
Ну, ты и сейчас можешь это сделать без всякого делегирования, и что? :)
Нужна наличка для создания. Я не смогу вывести СГ. Нужно иметь десятикратный размер СГ на аккаунте относительно creation fee, 10 СГ сейчас, что бы запустить вывод СГ. Вывод займет 13 недель против 15 дней с делегированием). То-есть я уже ограничен средствами, уже как миниум могу создасть в 10 раз меньше аккаунтов и требует уже какое то "стратегическое" планирование, что бы остаться как миниум при своих.
Потому я считаю, почему не сделать систему гибкой. Выставить миниум допустим сейчас, а потом если что, поднять параметры, без необходимости делать новый ХФ.
к мультипликаторам требование одно:
> 0
, высчитывать не надо.к
create_account_delegation_time
требование: не меньше 15 дней.вы можете не менять параметры, тогда выставятся значения по умолчанию.
а теперь разжевать для тупых как я можно? Тут очень много незнакомой многим терминологии, получается, теперь можно передавать кому-то свою СГ?
Пока нельзя передавать, планируют ввести эту фишку в новом ХФ 0.18 - он ещё не наступил.
спасибо, теперь понятно)
Мне так и не понятно,
что будет если никто из делегатов не установит эти параметры, создание аккаунта с делегированием не будет работать или будут какие то параметры по умолчанию браться?
Нужно какое то минимальное число делегатов, что бы параметр вступил в силу? Что бы избежать манипуляций к примеру.
Мне вообще практически ничего не понятно из данного поста)
Походу тут что-то про передачу кому-то СГ
Да, про передачу СГ и ещё какие-то штуки) но много чего не очень понятно, это скорее для делегатов пост.
Установятся значения по умолчанию:
Во время реплея с ХФ•18 операция
witness_update
сохраняет в базу и новые параметры (по умолчанию), поэтому на момент перехода у всех делегатов они будут выставлены. То есть в момент перехода на ХФ•18 всё работает как будто параметры не голосуемые, а заданы константой. Потом делегаты меняют значения на желаемые.На счёт манипуляций — не так давно делегаты поменяли значение
account_creation_fee
, уменьшив с 3 GOLOS до 1. В новых параметрах механизм такой же.только для смены параметров оунер ключь - это уже слишком)
ОК, понял. Наверное так тоже будет работать.
и есть ли у параметров время жизни?
тем кто не ставит добровольно можно принудительно ставить медианное через 15 дней простоя. ибо нефиг вредить системе. а таких хватает, и с чьей легкой руки, все знаем)
это не фиды, зачем их обновлять. Я, вообще, не понимаю зачем они нужны. Поставить надо минимум и пусть регистратор сам решает как ему аккаунты создавать.
Нужны они. это очень удобно и системы может быстро реагировать на хаки. но если делегаты калечи которые забыли про голос, то может и в минус быть)
Речь идет о механизме голосования за параметры как таковом.
Если не проголосовал, то будет браться значение по дефолту, видимо.
Отказаться от делегированной силы можно будет? Можно будет запретить делегировать силу на свой аккаунт?
Если ответ отрицательный, то я прошу сделать возможным отказ от конкретной делегированной силы и возможность на полный запрет на делегирование силы на свой аккаунт.
Кто же от подарков добровольно отказывается? )
Это не подарок - это эксплуатация, так есть ответ на мой вопрос? На стимите насколько я понимаю (могу ошибаться), отказаться нельзя, к сожалению...
А для лингвистов у вас есть объяснение?
Эксплуатация это извлечение прибыли из чего-то/кого-то или использование чего-то/кого-то в своих целях.
Я совершенно не понимаю, как в этой истории вас используют?
"Эксплуатация это извлечение прибыли из чего-то/кого-то или использование чего-то/кого-то в своих целях." - а вы не видите прямого использования? Ну попробуйте если вам делегируют СГ проголосовать за кого-либо без неё, только своей СГ.
Своих 10 сг + делегировали 90 сг. Всего 100 сг. Голосуем 10% т е только своими 10 сг и все дела. Какой может быть вред от голосования большей сг? Дать апнутому больше заработать. Страхование от халявы. lol
"Голосуем 10% т е только своими 10 сг и все дела." - разумеется нет, вы будет голосовать 10% общей СГ, своей и делегированной, это во первых, а во вторых мне совершенно не нужно неудобство в плане подстраивания процентов из-за делегированной СГ.
Если имплементация такая же, как на стимите, то отказаться нельзя будет. Отличие насколько я знаю, у делегирующего voting_power должна быть больше, чем у получателя. Как я понял
Очень жаль.
Наврал, там можно делегировать только актуальный процент (voting_power %) СГ. если СГ 100 и voting_power 90% к примеру, то делегировать можно 90 СГ максимум. Прикольно
В каком смысле эксплуатация? С вас же не будет взиматься плата за делегированную силу
Я даже не знаю, что вам сказать, у меня нет объяснения для технарей.
Ну человеческим языком же можно объяснить. Допустим мне делегировали 100СГ и все пропало потому, что ...
Я как вижу, для получателя только плюс. Никто, с него ничего не требует на уровне блокчейна. Как это можно эксплуатировать, не знаю. Только если в реале будут требовать бабло за делегированную СГ угрожая ножиком, Или спать не сможете спокойно получив неожиданно СГ.
"и все пропало потому, что ..." - у вас всё хорошо, но не надо думать, что все хотят стать официантами. Я объяснил вам человеческим языком.
тут я совсем потерялся.
Такой возможности нет. А зачем? От перевода вам средств вы тоже не можете отказаться, но это же не мешает.
Вам не надо, не отказывайтесь, я хотел бы иметь такую возможность, для многих это может быть важным. Отсутствие отказа от перевода средств не считаю достижением, такая возможность тоже должна быть.
Ну так объясните, зачем оно нужно и важно для многих. С такой формулировкой вряд ли делегаты проголосуют за эту фичу и следовательно вряд ли она появится.
У меня нет для вас объяснения, кроме того, что я привёл выше в комментах. Ну не проголосуют, так не проголосуют, я каждого делегата нянчить не намерен.