Безопасность ICO контрактов весна 2018 — различия между версиями

Материал из SEWiki
Перейти к: навигация, поиск
(Практики)
(Домашнее задание от 02.03.2018)
Строка 33: Строка 33:
 
=== Домашнее задание от 02.03.2018 ===
 
=== Домашнее задание от 02.03.2018 ===
  
Находится в слайдах первой лекции.
+
Находится в слайдах первой лекции:
 +
 
 +
# Решить, как общаемся вне очных занятий (ответ - чат в Telegram)
 +
# Приватная сеть ([https://ethereum.stackexchange.com/a/3961 как преаллоцировать средства], [https://medium.com/mercuryprotocol/how-to-create-your-own-private-ethereum-blockchain-dad6af82fc9f описание genesis])
 +
## Развернуть приватную ноду Ethereum
 +
## Добавить вторую ноду к этой приватной сети
 +
# Подключить к mainnet'у
 +
# Опционально: запустить сеть на весь курс (есть одна [https://gist.github.com/LDVSOFT/9809fbdaaa7ed8a9e8334ddb6074ac94 от Димы Лапшина])
  
 
=== Домашнее задание от 16.03.2018 ===
 
=== Домашнее задание от 16.03.2018 ===

Версия 10:53, 29 марта 2018

Лекции

Преподаватель: Половьян Александр Игоревич (a.polovjan@gmail.com)

Есть чат в Телеграм для общения и оповещений (спрашивайте ссылку у коллег), называется "АУ: blockchain (весна 2018)".

Предполагаемая отчётность: зачёт, сложные домашки.

№ занятия Дата Лекция Комментарии
1 02.03.2018 ico180302.pdf
2 16.03.2018 ico180316.pdf
3 23.03.2018 ico180323.pdf

Практики

Домашнее задание от 02.03.2018

Находится в слайдах первой лекции:

  1. Решить, как общаемся вне очных занятий (ответ - чат в Telegram)
  2. Приватная сеть (как преаллоцировать средства, описание genesis)
    1. Развернуть приватную ноду Ethereum
    2. Добавить вторую ноду к этой приватной сети
  3. Подключить к mainnet'у
  4. Опционально: запустить сеть на весь курс (есть одна от Димы Лапшина)

Домашнее задание от 16.03.2018

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

Домашнее задание от 23.03.2018

  1. Написать смарт-контракт для связи двух смарт-контрактов SocialAccount с лекции
  2. Добавить ограничить вызовы методов для участников (где применимо)
  3. Валидировать все аргументы функций (где применимо)
  4. Добавить подтверждение социальной связи вторым участником
  5. В смарт-контракт SocialAccount реализовать метод AddFriend который будет добавлять друзей при помощи смарт-контракта SocialConnection
  6. Добавить Event’ы. Про ивенты можно читать тут: http://solidity.readthedocs.io/en/v0.4.21/contracts.html#events