• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Development of Smart Contracts and Applications for Distributed Registries

2019/2020
Academic Year
RUS
Instruction in Russian
5
ECTS credits
Course type:
Elective course
When:
2 year, 1, 2 module

Программа дисциплины

Аннотация

Настоящая программа учебной дисциплины устанавливает требования к образовательным результатам и результатам обучения студента, и определяет содержание и виды учебных занятий и отчетности. Программа предназначена для студентов направления подготовки 01.04.02 Прикладная математика и информатика, обучающихся по образовательной программе магистратуры Финансовые технологии и анализ данных.
Цель освоения дисциплины

Цель освоения дисциплины

  • Целями освоения дисциплины являются получение знаний о технологии распределенного реестра и языках программирования для реализации блокчейн-проектов, развитие понимания связи теоретических основ с решением практических задач.
Планируемые результаты обучения

Планируемые результаты обучения

  • знать предпосылки и историю возникновения технологии блокчейн
  • знать основы криптографии
  • уметь прописывать архитектуру блокчейн-проектов
  • владеть основными навыками для создания проектов с применением технологии блокчейн
  • знать специфику работы блокчейн-платформ Bitcoin, Etherium, Hyperledger
  • уметь анализировать необходимые технические решения для реализации
  • уметь создавать смарт-контракты
  • владеть языком программирования Solidity
  • владеть технологией̆ создания проектов на платформе Etherium
  • владеть спецификой̆ создания проектов на платформе HyperLedger
  • уметь оценивать смарт-контракты других проектов
  • уметь ставить задачи для разработки блокчейн-проектов
  • уметь генерить идеи проектов с применением технологии
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Вводный курс в технологию блокчейн и криптографию
    1.1. Введение в технологию блокчейн: основные термины и понятия, принципы работы технологии, иткиоин и альткоины, создание криптовалют, технический механизм работы криптовалют, ранзакции в сети. Децентрализация и централизация. Распределённый̆ консенсус. 1.2. Основы криптографии: хеширование, хеш-функции, цифровые подписи, мультиподписи. 1.3. Обзор рынка технологии блокчейн и платформ для разработки. Сферы применения технологии: осударственный сектор, финансовая сфера, бизнес. Генерация бизнес-идей для создания блокчей проектов.
  • Разработка на платформах Etherium, Bitcoin, Hyperledger и др
    2.1. Блокчейн биткоина: история создания, принципы работы, консенсус в биткоине, майнинг, виды так и угроз. 2.2. Введение в Ethereum и смарт-контракты. Сравнение с другими платформами: история создания платформы, сравнение блокчейна биткоина и Ethereum, понятия ETH и Gas, транзакции в Ethereum. Примеры простых контрактов. Токен-контракт. Применение блокчейна thereum 2.3. Изучение языка программирования Solidity и среды программирования. Синтаксис, простые типы данных, управление потоком выполнения кода. Составные типы данных, доступ к данным транзакции или блока, встроенные криптографические функции, модификаторы видимости, автоматические гетеры, View и pure функции, Fallback функции, обработка исключительных ситуаций. 2.4. Разработка смарт-контрактов на платформе Ethereum. Наследование контрактов. Создание контрактов и вызов методов других контрактов. Библиотеки функций. Ассемблерные вставки для оптимизации контрактов. ERC 20 Token. Расширенное использование узла Ethereum. 2.5. Разработка приложения на платформе Hyperledger: принципы работы платформы, модификация смарт-контрактов, настройка окружения.
  • Внедрение технологии блокчейн
    3.1. Создание пилотных проектов в крупных компаниях России. Примеры реализованных проектов в финансовой сфере.
Элементы контроля

Элементы контроля

  • неблокирующий Контрольная работа
    Тестирование не менее 20 вопросов.
  • неблокирующий Домашнее задание
    Задача на программирование.
  • блокирующий Проект
    Разработка прототипа. Презентация из 8 слайдов, устная защита.
Промежуточная аттестация

Промежуточная аттестация

  • Промежуточная аттестация (2 модуль)
    0.2 * Домашнее задание + 0.3 * Контрольная работа + 0.5 * Проект
Список литературы

Список литературы

Рекомендуемая основная литература

  • Осваиваем биткойн : программирование блокчейна, Антонопулос, А. М., 2018

Рекомендуемая дополнительная литература

  • Блокчейн. Разработка приложений : разработка децентрализованных приложений в реальном времени на платформе Ethereum, Прасти, Н., 2019