Блокчейн-разработка [GeekBrains] [2020]
Введение в блокчейн — систему распределённого реестра
Расскажем об истории блокчейна, его развитии и основных продуктах. На практическом занятии вы получите опыт работы с блокчейном и попробуете воспользоваться криптографическими утилитами.
- История блокчейна, развитие технологии, основные продукты. Основы блокчейна: свойства, состояния, транзакции, блоки. Доверие к участникам сети.
- Практическое занятие Работа с GPG: создание пары ключей, подпись, шифрование. Подключение к тестнету BTC, создание кошелька, работа с эксплорером. Работа с тестнетом Ethereum
Понятие и история шифра, принцип Кирхгофа. Симметричное шифрование, шифр Вернама, поточные и блочные шифр.
- Хэш-функции: требования, принципы построения, примеры. Случайный оракул, подпись Лэмпорта, MAC, аутентифицированное шифрование. Защита хэш-функции и атаки на них.
- Шифрование с открытым ключом. Понятия группы, кольца, поля. Протокол шифрования RSA, протокол Диффи-Хеллмана, система Эль-Гамаля.
Архитектура узла сети блокчейн
- Организация транзакций в блоке, структура заголовка блока, лёгкие ноды.
- Адреса в Bitcoin и Ethereum.
- - Merkle Tree.
- - SegWit.
- P2P-сети: история, примеры, отличия от client-server. Проблемы адресации, bootstrapping P2P-клиента, announce vs request. Распространение информации в сети bitcoin, разница в распространении транзакций и блоков, дополнительные relay-сети, протоколы исключения некорректно работающих узлов.
- Практическое занятие: написание простейшей P2P-сети.
Протоколы консенсуса
- Протокол BFT — задача о византийских генералах. Обзор протоколов Paxos и Raft, масштабирование протоколов.
- Протоколы Proof-of-Work, майнинг, атака 51%. Препятствия децентрализации в PoW-системах: ASIC, пулы. Меры противодействия централизации. Масштабирование и пересчёт сложности майнинга, coin hopping.
- Стратегии майнинга: форки, эгоистичный майнинг, выборочное включение транзакций, объединённый майнинг.
- Проблемы PoW. Протоколы Proof-of-Stake. Атаки: nothing-at-stake, grinding attack. Пулы в PoS-системах.
- Другие варианты консенсуса: Delegated PoS, Proof-of-Space, Proof-of-Authority, Hashgraph.
- Блокчейн как абстрактный автомат.
- Стековая машина bitcoin, скрипты bitcoin и их ограничения
- Смарт-контракты Ethereum, их примеры и уязвимости.
- Газ в сети Ethereum: проблема останова, EVM. Solidity. Смарт-контракты сети EOS
- Практическое занятие. Написание смарт-контрактов Ethereum
- Практическое занятие. Написание смарт-контрактов EOS
- Кольцевые подписи, stealth-адреса, mix-in. Концепция «обязательств Педерсена», доказательства принадлежности интервалу. Анонимизация в Monero
- Криптовалюты Mimblewimble и Grin. Анонимизация в ZCash и представление о zk-SNARK
Расскажем, чем закрытые блокчейны отличаются от открытых, в каких случаях они полезны. Практика: работа с Hyperledger Fabric.
Масштабирование сетей блокчейн
- Оффчейн-протоколы. Lightning. Сайдчейны.
- Шардинг. Предполагаемые решения Ethereum 2.0, альтернативные решения.
- Кошельки и хранение ключей. Получение ключей из сид-фразы и иерархические детерминистские кошельки. Функционирование криптобирж. Устройство и проблемы смарт-контрактов, DAO, ICO, DeFi
- Правовые аспекты работы с блокчейном
Рассмотрим направления развития блокчейна, подведём итог по пройденному курсу.
Кому подойдет курс
Junior-разработчикам
Если вы занимаетесь разработкой и рассматриваете блокчейн как перспективное направление.
Технический стек: знание языка для бэкенд-разработки (Java/Python/Go или любой другой), TCP/IP, Git, работа с командной оболочкой.
Опытным разработчикам
У вас есть навыки системного администрирования или бэкенд-разработки, вы хотите узнать больше о блокчейне
Станьте блокчейн-разработчиком
Вы получите максимум пользы от курса, если владеете хотя бы одним языком для бэкенд-разработки, знакомы с Git, имеете представление о работе сети. Также желателен минимальный навык работы с командной оболочкой.
Актуальная программа
Мы обновляем программу ежегодно: проводим исследования и учитываем требования работодателей.
Практикующие преподаватели
Они работают в реальных рыночных условиях. На их опыте построена учебная программа.
Экспертиза Mail.ru Group
Мы анализируем развитие наших продуктов и делимся с вами накопленными знаниями.
Портфолио:
- Создание смарт-контрактов
- Проект на платформе Hyperledger Fabric
Продажник:
https://new.geekbrains.ru/blockchain
Скрытое содержимое. Для просмотра необходимо: быть среди одобренных пользователей.