Магистратура
2019/2020
Разработка смарт-контрактов и приложений для распределенных реестров
Статус:
Курс по выбору (Финансовые технологии и анализ данных)
Направление:
01.04.02. Прикладная математика и информатика
Где читается:
Факультет компьютерных наук
Когда читается:
2-й курс, 1, 2 модуль
Формат изучения:
без онлайн-курса
Преподаватели:
Суворова Ольга Валерьевна
Прогр. обучения:
Финансовые технологии и анализ данных
Язык:
русский
Кредиты:
5
Контактные часы:
40
Программа дисциплины
Аннотация
Настоящая программа учебной дисциплины устанавливает требования к образовательным результатам и результатам обучения студента, и определяет содержание и виды учебных занятий и отчетности. Программа предназначена для студентов направления подготовки 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 слайдов, устная защита.