на 1 человека
Депозит - банковский продукт, позволяющий клиенту положить деньги на счет и, по истечении указанного времени, получить назад исходную сумму и определенный процент.
Задача заключается в реализации логики простого депозита в виде смарт-контракта Ethereum. При этом возврат и выплату процентов гарантирует логика смарт контракта, независимо от финансовой организации, предоставляющей услугу. Очевидное преимущество заключается в гарантии возврата денег и выплаты процентов, а также прозрачные условия договора, реализованные в коде.
В задаче есть 2 типа участников:
- банки, предоставляющие продукт
- клиенты, оформляющие вклад в банке (покупатели продукта)
Смарт контракт Bank:
- Инициализация контракта: задание процента депозита в аргументах конструктора
- Открытие счета депозита: openDepositAccount(<адрес клиента>, <срок - кол-во месяцев>, <сумма ether>)
  - Переводит указанную сумму ether с адреса клиента на адрес банка
  - делает запись о депозите в состоянии контракта
- Исполнение депозитов: executeDeposits() - функция вызывающаяся по расписанию раз в месяц,
  - осуществляет ежемесячную выплату процентов и суммы депозита в конце срока
  - так как сам контракт не может автоматически вызвать свой метод периодически, то это требуется делать извне третьей стороной.
На обсуждение: Как смарт контракт Bank может гарантировать возврат денег и выплату процентов?
  • Нет меток