Skip to content

Latest commit

 

History

History
34 lines (29 loc) · 2.71 KB

README.md

File metadata and controls

34 lines (29 loc) · 2.71 KB

technopark-task-2

Задание 2 к курсу "Разработчик криптографических протоколов и децентрализованных систем" Технопарка

Задание:

просмотреть код контрактов заданного преподавателем проекта, найти место, реализующее определенную логику и привести diff, изменяющий поведение смарт-контракта:

  • MultiSigWallet.sol - сделать, чтобы с баланса multisig-контракта за одну транзакцию не могло бы уйти больше, чем 66 ETH
  • ERC20.sol - сделать, чтобы токен не мог быть transferred по субботам
  • DividendToken.sol - сделать чтобы платеж в ETH принимался только специальной функцией, принимающей помимо ETH еще комментарий к платежу (bytes[32]). Простая отправка ETH в контракт запрещена

Делайте форк репозитария. Изменяйте код. Плюсом будет, если разберетесь, как дублировать репу, сделав ее приватной, а не публичный форк.

Дублировать репу и сделать приватной:

  1. git clone --bare https://github.com/mixbytes/technopark-task-2.git
  2. cd technopark-task-2.git/
  3. В гитхабе создайте новый приватный репозитарий и скопируйте его ссылку.
  4. git push --mirror <ссылка на новую репу>
  5. Старый репозитарий можно удалить: cd .. && rm -rf technopark-task-2.git/
  6. Склонируйте свою новую репу: git clone <ссылка на новую репу>
  7. cd <новая репа>

После этих шагов получайте diff 2-м способом.

Достать diff репозитория можно 2 способами:

  1. Изменяйте код и до коммита выполните git diff, чтобы достать все изменения файлов.
  2. После коммитов можно получить все различия с форка и оригинальной репы следующим образом:
git remote add original https://github.com/mixbytes/technopark-task-2.git
git fetch original
git diff HEAD original/main

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