Разработка курса «Разработчик децентрализованных систем» | OTUS
⚡ Открываем подписку на курсы!
Проходите параллельно 3 онлайн-курса в месяц по цене одного.
Подробнее

Курсы

Программирование
Backend-разработчик на PHP Scala-разработчик Алгоритмы и структуры данных Backend-разработка на Kotlin Team Lead Разработчик Python. Базовый курс C# ASP.NET Core разработчик
-25%
iOS-разработчик. Базовый курс
-25%
Супер - интенсив по паттернам проектирования
-16%
Fullstack разработчик JavaScript
-18%
Android-разработчик. Продвинутый курс
-16%
Разработчик C++
-12%
Архитектор высоких нагрузок
-10%
PostgreSQL Framework Laravel Android-разработчик. Базовый курс AWS для разработчиков Cloud Solution Architecture Разработчик игр на Unity Архитектура и шаблоны проектирования Agile Project Manager в IT Интенсив «Оптимизация в Java» Супер - интенсив по Kubernetes
Специализации Курсы в разработке Подготовительные курсы
+7 499 938-92-02

Разработчик децентрализованных систем

Что даст вам этот курс
23
0
УГЛУБЛЕННЫЙ КУРС ПО BLOCKCHAIN-РАЗРАБОТКЕ И СОЗДАНИЮ СМАРТ-КОНТРАКТОВ(EOS, ETHEREUM).

Для кого этот курс:
Разработчиков, имеющих опыт разработки в других областях, интересующихся децентрализованными сетями и криптографическими протоколами.

После прохождения курса слушатели смогут:
  • проектировать и разрабатывать децентрализованные (serverless) приложения

  • писать и аудировать код для автоматизации сложных многосторонних сделок в публичных и корпоративных блокчейнах

  • разбираться в архитектурах и выбирать оптимальные имплементации децентрализованных протоколов

  • участвовать в исследованиях и разработке новых передовых продуктов на базе технологии распределенного реестра.

Требования к слушателям:
  • базовая подготовка по алгоритмам и структурам данных

  • опыт в одном из низкоуровневых языков: C, C++, Java, Assembler (подойдет академический курс, пройденный в институте)

  • понимание основ операционных систем и сетевых протоколов

  • навыки работы с Linux и системой контроля версий git

Плюсами будут:
  • опыт разработки на других языках (не frontend)

  • базовая подготовка по криптографии

  • умение работать с Node.js и языком JavaScript
Программа обучения
Модуль 1
Криптография
Модуль 2
Peer-to-peer (p2p) сети
Модуль 3
Bitcoin и блокчейны, построенные на базе консенсусов типа proof-of-work (PoW)
Модуль 4
Блокчейны, построенные на базе других алгоритмов консенсуса
Модуль 5
Архитектура блокчейнов
Модуль 6
Эксплуатация и тестирование блокчейн-сетей, обзор сопровождающего ПО
Модуль 7
Смарт-контракты
Модуль 8
Практическая блокчейн-разработка: Ethereum
Модуль 9
Практическая блокчейн-разработка: EOS
Модуль 10
Практическая блокчейн-разработка: Hyperledger Sawtooth или Parity Substrate
Модуль 11
Практическая блокчейн-разработка: курсовая работа
Криптография
Оценить модуль
3
0
Тема 1: Симметричные и асимметричные криптосистемы
Оценить занятие
0
0
Тема 2: Критерии качества шифров, рассеивание и перемешивание информации, концепция абсолютно стойкого шифра, одноразовый блокнот, внутреннее устройство алгоритмов шифрования, сеть Фейстеля, SP-сеть, примеры алгоритмов: ГОСТ-28147-89 и AES
Оценить занятие
0
0
Тема 3: Режимы симметричного блочного шифрования, организация детерминированных цепочек блоков, генераторы псевдо-случайных чисел, гаммирование, поточные шифры
Оценить занятие
0
0
Тема 4: Криптографическое хеширование, современные стандарты: SHA-256, Keccak, Blake2, требования к безопасности и атаки на алгоритмы
Оценить занятие
0
0
Тема 5: Односторонние функции, алгоритм выработки общего секретного ключа Диффи-Хеллмана
Оценить занятие
0
0
Тема 6: PKI, секретная передача информации, схема электронной подписи основные ассиметричные криптосистемы: RSA, ECC, длины ключей
Оценить занятие
0
0
Тема 7: Практические аспекты криптографии, реализации протоколов, криптографическая безопасность, атаки man-in-the-middle, системы сертификатов, клептографические атаки
Оценить занятие
0
0
Тема 8: Threshold-протоколы, BLS-подписи, протокол разделения секрета Фиата-Шамира, протокол подбрасывания монеты и другие важные для децентрализованных систем протоколы
Оценить занятие
0
0
Тема 9: Zero-knowledge протоколы, свойства: soundness, completeness, zero-knowledge. Протоколы знания секретной экспоненты, pairings на эллиптических кривых, кольцевые подписи, multi-party computations. Succinct proofs, zkSNARKS/STARKS
Оценить занятие
0
0
Peer-to-peer (p2p) сети
Оценить модуль
2
0
Тема 1: Историческая справка: p2p networks, (eDonkey, KaZaaa, BitTorrent), mixed networks (TOR, i2p), блокчейны
Оценить занятие
0
0
Тема 2: Общая схема работы децентрализованной сети, сообщения, маршруты, DHT (Distributed Hash Table)
Оценить занятие
0
0
Тема 3: Протокол Kademlia, метрики расстояния
Оценить занятие
0
0
Тема 4: IPFS и проблемы distributed storage
Оценить занятие
0
0
Тема 5: p2p сеть, как транспорт для работы в децентрализованных сетях
Оценить занятие
0
0
Bitcoin и блокчейны, построенные на базе консенсусов типа proof-of-work (PoW)
Оценить модуль
2
0
Тема 1: Bitcoin, схема работы сети, алгоритм работы ноды, целостность блоков и работа с цепочкой
Оценить занятие
0
0
Тема 2: Bitcoin, структура блока. Требования к хешам блоков, сложность сети, nonce, майнинг
Оценить занятие
0
0
Тема 3: Bitcoin, структура транзакции, модель UTXO based consensus networks модель передачи value, комиссия сети, Bitcoin Script, передача владения
Оценить занятие
0
0
Тема 4: Атаки на консенсус PoW сети: double spend, атака 51%, проблемы холодного старта
Оценить занятие
0
0
Тема 5: Bitcoin, Litecoin, Ethereum, Monero, требования к алгоритмам хеширования и их развитие, рассмотрение популярных PoW алгоритмов: SHA-256, Scrypt, Ethash, X11
Оценить занятие
0
0
Тема 6: Интересные реализации proof-of-work консенсусов, использующих другие варианты “work”: PrimeCoin, Storj, Filecoin
Оценить занятие
0
0
Блокчейны, построенные на базе других алгоритмов консенсуса
Оценить модуль
2
0
Тема 1: Задача византийских генералов, базовые примитивы для построения BFT консенсусов
Оценить занятие
0
0
Тема 2: Консенсусы типа proof-of-authority (PoA), безопасность и производительность PoA алгоритмов, требования к safety и liveness, алгоритм Practical BFT
Оценить занятие
0
0
Тема 3: Валидаторы, орагнизация governance сетей, тестовые и приватные блокчейны
Оценить занятие
0
0
Тема 4: Консенсус типа proof-of-stake (PoS), наивный PoS, атаки nothing-at-stake, long-distance, консенсусы типа Delegated Proof Of Stake (DPoS)
Оценить занятие
0
0
Тема 5: Экономическая безопасность консенсусов типа proof-of-stake (PoS), slashing, sybil атаки, атаки большим стейком, механизмы защиты
Оценить занятие
0
0
Тема 6: Примеры реальных алгоритмов типа proof-of-stake (PoS): рассмотрение вариантов DPoS в POA Ethereum, EOS, TON, Cosmos, Tezos
Оценить занятие
0
0
Архитектура блокчейнов
Оценить модуль
2
0
Тема 1: Ограничения блокчейн-сетей: число валидаторов, время процессинга транзакций, tradeoffs speed/security
Оценить занятие
0
0
Тема 2: Масштабирование блокчейнов: шардинг, многоуровневые архитектуры, архитектуры проектов Polkadot, Cosmos, Telegram Open Network, Ethereum 2.0
Оценить занятие
0
0
Тема 3: Succinct proofs и zkSNARKS/STARKS для масштабирования блокчейнов, rollups
Оценить занятие
0
0
Эксплуатация и тестирование блокчейн-сетей, обзор сопровождающего ПО
Оценить модуль
2
0
Тема 1: Обзор существующих сетей и особенности инфраструктуры: Ethereum, EOS, POA Network, DAOBet
Оценить занятие
0
0
Тема 2: Описание типового ПО сопровождающего блокчейны. Обозреватели блоков, рассмотрение Etherscan, BlockScout, основные компоненты обозревателя блоков, обзор кода.
Оценить занятие
0
0
Тема 3: Криптовалютные кошельки, обзор решений: Electrum(Bitcoin), Metamask (Ethereum), TrustWallet(Ethereum), Scatter(EOS), клиентский код для Hyperledger Sawtooth
Оценить занятие
0
0
Тема 4: Запуск и эксплуатация блокчейнов, проблемы тестирования производительности и устойчивости блокчейн-сетей, метрики мониторинга.
Оценить занятие
0
0
Тема 5: Инструменты для развертывания блокчейн-сетей, обзор инструментов для тестирования блокчейнов: Hyperledger Caliper, MixBytes Tank
Оценить занятие
0
0
Смарт-контракты
Оценить модуль
2
0
Тема 1: Исполнение кода в консенсусе: детерминизм, безопасность, особенности виртуальной машины, модели аккаунтов, балансов
Оценить занятие
0
0
Тема 2: Смарт-контракты: понятие, принципы работы, основные свойства, организация среды исполнения
Оценить занятие
0
0
Тема 3: Смарт-контракты Ethereum: cхема работы, виртуальная машина EVM, концепция газа, окружение контракта, storage, вызовы других контрактов и библиотек
Оценить занятие
0
0
Тема 4: Смарт-контракты EOS: cхема работы, WebAssembly для контрактов, концепция ресурсов, storage
Оценить занятие
0
0
Тема 5: Runtime код Parity Substrate и Application Cosmos: принципы построения блокчейн-фреймворков
Оценить занятие
0
0
Тема 6: Безопасность систем смарт-контрактов: front-running, арифметические переполнения, типовые уязвимости кода контрактов и инфраструктуры, примеры атак, методики аудита кода
Оценить занятие
0
0
Тема 7: Средства автоматизированного аудита кода: Mythril, Slither, примеры аудитов и реальных ошибок
Оценить занятие
0
0
Тема 8: Типовые паттерны разработки смарт-контрактов: оракулы, голосования, commit-reveal
Оценить занятие
0
0
Тема 9: Publicly verifiable Random Beacon и проблемы генерации случайных чисел в блокейнах. Использование random-based паттернов в консенсусах, арбитраже сделок, экономических протоколах на основе теории игр
Оценить занятие
0
0
Практическая блокчейн-разработка: Ethereum
Оценить модуль
1
0
Тема 1: Практическое занятие: запуск standalone блокчейна на базе Ethereum, запуск нод, обозревателя блоков BlockScout
Оценить занятие
0
0
Тема 2: Solidity и EVM: описание языка, основных типов, организации кода
Оценить занятие
0
0
Тема 3: Практическое занятие, Solidity: написание и запуск смарт-контракта и тестов к нему, развертывание тестового окружения, выкладка кода в блокчейн
Оценить занятие
0
0
Тема 4: Практическое занятие с примерами кода основных паттернов: token, oracle, multisig, voting. Запуск и использование хранилища файлов на базе IPFS и создание DApp, использующего загрузку файлов. Примеры использования этих паттернов в различных областях: финансы (DeFi), управления организацией (DAO), SSI (Self Sovereign Identity), игры, prediction markets, биржи и др.
Оценить занятие
0
0
Практическая блокчейн-разработка: EOS
Оценить модуль
2
0
Тема 1: Практическое занятие: C++, компиляция WebAssembly: написание и запуск смарт-контракта в сети EOS и тестов к нему, развертывание тестового окружения, выкладка в сеть
Оценить занятие
0
0
Практическая блокчейн-разработка: Hyperledger Sawtooth или Parity Substrate
Оценить модуль
1
0
Тема 1: Практическое занятие, C++/Python/Rust: конфигурирование и запуск своего блокчейна, разработка и запуск собственного протокола многосторонней сделки
Оценить занятие
0
0
Практическая блокчейн-разработка: курсовая работа
Предлагаемые темы выпускного проекта:
В течение курса - подбор индивидуального проекта, задачи, предлагаемые варианты:
полновесное тестирование одного из блокчейн решений с написанием статьи - отчета
проектирование и разработка системы смарт-контрактов для автоматизации многосторонних сделок в одном из блокчейнов
проектирование и разработка блокчейна для корпоративных задач
портирование системы контрактов из одного блокчейна в другой
тема, предложенная студентами по итогам обучения
Оценить модуль
2
0
Тема 1: Практическая работа
в течение курса - подбор индивидуального проекта, задачи, предлагаемые варианты:
полновесное тестирование одного из блокчейн решений с написанием статьи - отчета
проектирование и разработка системы смарт-контрактов для автоматизации многосторонних сделок в одном из блокчейнов
проектирование и разработка блокчейна для корпоративных задач
портирование системы контрактов из одного блокчейна в другой
тема, предложенная студентами по итогам обучения
Опрос по программе "Разработчик децентрализованных систем"

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

Вопрос №1 из 5
Выберите один вариант ответа
Интересна ли вам программа?
Вопрос №2 из 5
Выберите один вариант ответа
Есть ли у вас опыт в блокчейн-разработке
Вопрос №3 из 5
Выберите один или несколько вариантов ответа
На каком из языков программирования вы умеете программировать? (множественный выбор)
Вопрос №4 из 5
Можно ли вам задать доп вопросы? Если да, напишите телефон/телеграм.
Вопрос №5 из 5
Ваши пожелания и комментарии по программе курса

Оставьте хотя бы один ответ для участия в опросе