Смартконтракт наследства
Вступление
Я человек практичный и люблю создавать смартконтракты, чтобы они работали и были практический кому то нужны. Ну хотя бы одному из 100 ... В какой то момент подумал, что если написать смартконтракт наследства.
Требования
Для себя я определил несколько требования для такого смартконтракта:
- Должны быть возможность накапливать свои сбережения
- Возможность вывести эти сбережения в какой то момент
- После использования, смартконтракт желательно удалить, чтобы не засорять блокчейн эфира
Реализация
Смартконтракт состоит из двух классов. Первый это стандартный контракт, добавляющий владельца. Это нужно чтобы только владелец контракта смог снять деньги со счета, пополнения же принимаются с любых адресов. Это контракт уже давно написан и отлажен и был взят с репозитория zepplin., предварительно удалив все комментарии.
Второй контракт это как раз контракт наследования, он очень простой и в нем есть три функции. Конструктор - создает контракт, и получает единственный параметр, время в unix timestamp (время, когда деньги можно будет снять). Если Вы плохо понимаете что такое unix timestamp, тогда идите на сайт конвертора, выставляете дату в будущем и получаете одно большое число(например - 1538074044). Дату нужно обязательно указать в будущем, иначе создать смартконтракт не получится.
После создания смартконтракта вы получите адрес, и на этот адрес можно отсылать ваши сбережения.
Вторая функция - withdraw, используется для снятия средств и перевод на Ваш кошелек когда наступит час X.
Ну и в конце полный контракт наследования, его можно загрузить в тестовую сеть эфира и попробовать с ним поиграться.