Bitcoin Forum

Local => Идеи => Topic started by: scottsanderman12 on May 31, 2021, 09:18:18 PM



Title: Изменение смарт-контракта
Post by: scottsanderman12 on May 31, 2021, 09:18:18 PM
Вообщем такой вопрос - если все стороны действующего смарт-контракта хотят изменить условия, могут ли они отменить этот смарт-контракт с помощью мультиподписи, а потом создать новый смарт-контракт с обновленными условиями его выполнения?


Title: Re: Изменение смарт-контракта
Post by: dailyjuice on May 31, 2021, 10:56:23 PM
Теоретически это возможно, а практически это будет стоить невероятных усилий.


Title: Re: Изменение смарт-контракта
Post by: ~DefaultTrust on June 01, 2021, 09:41:29 AM
Вообщем такой вопрос - если все стороны действующего смарт-контракта хотят изменить условия, могут ли они отменить этот смарт-контракт с помощью мультиподписи, а потом создать новый смарт-контракт с обновленными условиями его выполнения?
Если эта возможность предусмотрена контрактом, то почему нет?


Title: Re: Изменение смарт-контракта
Post by: johhnyUA on June 04, 2021, 09:48:02 PM
Вообщем такой вопрос - если все стороны действующего смарт-контракта хотят изменить условия, могут ли они отменить этот смарт-контракт с помощью мультиподписи, а потом создать новый смарт-контракт с обновленными условиями его выполнения?

Скорее просто создать. Часто в смарт контрактах не предусмотрена функция их "пересоздания". В основном потому, что она может юзаться как уязвимость и отменяет основное их преимущество: иммутабельность (как и любой крипты).

Поэтмоу если все участники согласны, то происходит просто переход на новый смарт контракт и его имплементацию куда нужно.


Title: Re: Изменение смарт-контракта
Post by: oOVVVVVVVOo on June 06, 2021, 08:28:53 AM
Контракты очень многих монет просто скопированы или вообще сделаны по готовым ранее кем-то написанным исходникам, так что все зависит от добросовестности тех кто занимался этими вопросами на начальном этапе. Если эти вещи были продуманы скурпулезно то проблем никаких может не быть, если же в силу лени или отсутствия денег воспользовались результатами чьего-то труда выложенном бесплатно в нете, то там соответственно возможны впоследствии сложности.


Title: Re: Изменение смарт-контракта
Post by: stmar on June 06, 2021, 09:47:59 PM
Вам нужен proxy смарт контракт.
Когда старый контракт устаревает, уязвимость или требуется ввести новую функцию, тогда нужно обновлять/создавать новый смарт контракт. Вы вносите в proxy контракт адрес нового/обновленного контракта, т.е. в вашем dapp будет использоваться только адрес вашего proxy, в котором вы будете вносить обновления по необходимости.
В гугл масса инфы по proxy. На Цепелине хорошо расписано, задайте - openzeppelin proxy pattern.


Title: Re: Изменение смарт-контракта
Post by: Diflux on June 16, 2021, 09:05:14 AM
Пока не реализуют вменяемый инструмент для смарт-контрактов, все эти истории будут квестом.