WeWin.RU

    • Зарегистрироваться
    • Войти
    • Поиск
    • Категории
    • Метки
    • Непрочитанные
    • Популярные
    • Пользователи
    • Группы

    Изменяемые и неизменяемые контракты

    Обсуждения и аналитика
    eth2bet смарт-контракты
    2
    8
    431
    Загружаем больше сообщений
    • Сначала старые
    • Сначала новые
    • По количеству голосов
    Ответить
    • Ответить, создав новую тему
    Авторизуйтесь, чтобы ответить
    Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
    • DimOK
      DimOK отредактировано

      Хочется узнать мнение публики по поводу неизменяемых параметров смарт-контракта.

      Вот нужны какие-то настройки: распределить прибыль между участниками, задать цену токенов, назначить взносы разнообразные. В принципе, особой разницы нет, так например плата за создание рынка может быть 0.01 эфира, может быть 1 эфир, для обоих значений можно найти свои позитивные стороны.

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

      А потом можно и просто новую версию контракта залить с измененными параметрами и на него тихонечко переехать, это неприятно, но не смертельно.

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

      А вы как думаете?

      1 ответ Последний ответ Ответить Цитировать 0
      • DimOK
        DimOK отредактировано

        Забавно голоса распределились.

        Криптопапики, видимо на опыте, голосуют за настраиваемый контракт.
        Криптопопаны топят за фиксированные условия.

        Очень интересно.

        1 ответ Последний ответ Ответить Цитировать 0
        • DimOK
          DimOK отредактировано

          А вот в книжках умных написано, что достоинство смарт-контракта - это его неизменяемость.
          Upgradeability is a bug, вот что пишут.
          Понятно, что будут баги, понятно, что будет необходимость новую версию запилить.
          Но в моей реализации можно просто запилить новую версию, обновить интерфейсы доступа и всё! Со старой спокойно все выводят средства/токены и начинают пользоваться новой. Или продолжают пользоваться старой, пожалуйста.

          1 ответ Последний ответ Ответить Цитировать 0
          • T
            T отредактировано

            Что в контракте допустимо изменять:

            1. Параметры, не влияющие на безопасность контракта;
            2. Параметры, не угрожающие средствам пользователей.

            Все параметры должны изменяться через контрак-прокладку "timelock-contract" задержкой в изменении параметров в 24+ часа.

            1 ответ Последний ответ Ответить Цитировать 0
            • DimOK
              DimOK отредактировано

              Ну, ваше решение настолько простое, насколько бесполезное.

              Размер комиссии изменять - это угрожает средствам пользователей или нет? А если задрать комиссию 100%, тогда никто не сможет ничего вывести.
              Изменять администратора, который может рассчитывать рынки - это влияет на безопасность конракта? А если это злоумышленники получили доступ к приватным ключам владельца и сейчас заскамят всех?

              Любой параметр можно поставить таким, что нормальная работа контракта будет невозможна. А смысла в задержке никакого нет, всё равно никто не отслеживает состояние и запросы, а если кто-то и отслеживает, то большинство всё равно просто жмёт кнопки.

              Поэтому тут либо мы пишем - контракт неизменяемый, не пользуемся прокси, просто загрузили код - он работает, обновили версию - все переехали целиком на новый, для этого продуманы пути миграции пользователей (фактически - возможность полностью выйти из проекта без потерь).
              Или мы пишем контракт с параметрами и контролем, но во-первых очень часто в новой версии понадобятся новые параметры и функционал, всего не учесть, всё равно надо будет переезжать, во-вторых - придется полагаться на добрую волю администратора контракта.

              Я понимаю, что люди - стадо баранов (а ещё ленюсь реализовывать функционал) - поэтому будем контракты неизменяемые делать.

              T 2 ответов Последний ответ Ответить Цитировать 0
              • T
                T @DimOK отредактировано T

                Пользователь @dimok написал в Изменяемые и неизменяемые контракты:

                Размер комиссии изменять - это угрожает средствам пользователей или нет? А если задрать комиссию 100%, тогда никто не сможет ничего вывести.

                Параметры размера устанавливаемой комиссии должны быть ограничены, очевидно.

                Пользователь @dimok написал в Изменяемые и неизменяемые контракты:

                Изменять администратора, который может рассчитывать рынки - это влияет на безопасность конракта? А если это злоумышленники получили доступ к приватным ключам владельца и сейчас заскамят всех?

                Для этого и нужен таймлок.

                Пользователь @dimok написал в Изменяемые и неизменяемые контракты:

                Любой параметр можно поставить таким, что нормальная работа контракта будет невозможна.

                Ненормальная работа не равно опасность средств пользователей.

                Пользователь @dimok написал в Изменяемые и неизменяемые контракты:

                А смысла в задержке никакого нет, всё равно никто не отслеживает состояние и запросы, а если кто-то и отслеживает, то большинство всё равно просто жмёт кнопки.

                Это вы откуда знаете, что не отслеживают? А что если я вам скажу, что отслеживают и что к вам деньги без таймлока никто не понесет, кроме фанатов с форума?

                1 ответ Последний ответ Ответить Цитировать 0
                • T
                  T @DimOK отредактировано

                  Пользователь @dimok написал в Изменяемые и неизменяемые контракты:

                  придется полагаться на добрую волю администратора контракта.

                  Если полагаться на добрую волю администратора, то зачем вообще такой контракт и зачем блокчейн?

                  1 ответ Последний ответ Ответить Цитировать 0
                  • DimOK
                    DimOK отредактировано DimOK

                    Если отслеживают, то увидят, что деньги на контракте полностью в безопасности, сколько положил - столько и снимешь, может быть даже больше. Так что всё в порядке.

                    Если полагаться на добрую волю администратора, то зачем вообще такой контракт и зачем блокчейн?

                    А я и говорю, не надо так, зальём без возможности обновления и норм.

                    1 ответ Последний ответ Ответить Цитировать 0
                    • 1 / 1
                    • Первое сообщение
                      Последнее сообщение