Массовый открытый онлайн курс: Cloud-технологии: Блокчейн Инженерия

Кожанов Мурат
Кожанов Мурат
Информационно-коммуникационные технологии/Информатика
Класс:
10 класс
Раздел:
Компьютерные сети и информационная безопасность
Тема:

Массовый открытый онлайн курс: Cloud-технологии: Блокчейн Инженерия

27.10.2023
0
Скачать в PDF Скачать в WORD
Цели обучения (ссылка на учебную программу):
  • Ознакомление школьников старших курсов и студентов с детальной структурой и содержанием курса, включая изучение ключевых модулей и ожидаемых результатов.
  • Понимание связи между текущим уроком и общими целями программы, а также его вклада в достижение конечных образовательных результатов. 
Цели урока:
  • Глубокое погружение в принципы работы и архитектуру блокчейн-технологий.
  • Разработка навыков проектирования и создания децентрализованных приложений с акцентом на смарт-контракты.
Языковые цели:
  • Расширение словарного запаса школьников старших курсов и студентов за счет введения специализированных терминов и концепций блокчейна.
  • Улучшение навыков академического письма и говорения в контексте блокчейн-технологий.
Ожидаемый результат:
  • Школьники старших курсов и студенты смогут самостоятельно анализировать и оценивать блокчейн-проекты, а также предлагать улучшения и инновационные решения.
  • Реализация собственного смарт-контракта, отвечающего заданным техническим требованиям.
Критерии успеха:
  • Каждый школьник старшего курса и студент сможет представить и обосновать свой смарт-контракт, продемонстрировать его работу и безопасность.
  • Качественное выполнение практических заданий и активное участие в обсуждениях на уроке.
Привитие ценностей:
  • Формирование ответственного отношения к разработке технологий, которые могут иметь значительное социальное влияние.
  • Поддержка культуры инноваций и непрерывного обучения в области высоких технологий.
Навыки использования ИКТ:
  • Освоение передовых инструментов для разработки, тестирования и развертывания блокчейн-приложений.
  • Развитие умений работы с облачными сервисами и платформами, которые активно используются в блокчейн-разработке.
Межпредметная связь:
  • Интеграция знаний из области математики (алгоритмы и криптография), информатики (программирование и системный анализ) и экономики (цифровая экономика и финансовые модели).
  • Связь с юридическими аспектами использования блокчейн, в том числе вопросами интеллектуальной собственности и регулирования.
Предыдущие знания:
  • Знание основных концепций объектно-ориентированного программирования, а также понимание принципов работы современных операционных систем и баз данных.
  • Предварительное знакомство с основами финансов и экономики, что позволит лучше понять потенциальные приложения блокчейн-технологий.

Ход урока

Этапы урока Запланированная деятельность на уроке Ресурсы

Лекция 1-1

История блокчейн технологии и цифровых финансов - 1 часть

Ссылка на 1 лекцию

Лекция 1-2

История блокчейн технологии и цифровых финансов - 2 часть

Ссылка на 2 лекцию

Лекция 1-3

Введение в Блокчейн

Ссылка на 3 лекцию

Лекция 1-4

Merkle Root

Ссылка на 4 лекцию

Лекция 1-5

Распределенный Реестр & Прозрачность Блокчейна.

Ссылка на 5 лекцию

Лекция 1-6

Работа с тестовым Блокчейном

Ссылка на 6 лекцию

Практика 1

  • Cоздание кошелька Практика по второй лекции: Создать web3 кошелек: https://metamask.io/
  • Получить тестовые BNB: https://testnet.bnbchain.org/faucet-smart
  • Добавить сеть Binance Smart Chain Testnet в метамаск: https://chainlist.org/?testnets=true&search=97
  • Получить тестовые BNB: https://testnet.bnbchain.org/faucet-smart
  • Если первый кран не работает можно через: https://faucet.quicknode.com/binance-smart-chain/bnb-testnet
  • Создать второй аккаунт в метамаск (+ Create account): Отправить 0.1 BNB на второй аккаунт      

Практика 2

  • Yellow paper, White paper Следующие ресурсы рекомендуются к прочтению чтобы больше узнать про работу блокчейна
  • Yellow paper ethereum: https://ethereum.github.io/yellowpaper/paper.pdf
  • White paper ethereum: https://ethereum.org/en/whitepaper/    

Лекция 2-1

Ключевые термины - Криптография в Блокчейне

Ссылка на 2-1 лекцию

Лекция 2-2

Симметричное и ассиметричное шифрование

Ссылка на 2-2 лекцию

Лекция 2-3

Криптографические хэш-функции

Ссылка на 2-3 лекцию

Лекция 2-4

Как работает Блокчейн

Ссылка на 2-4 лекцию

Лекция 2-5

Рабочий процесс Блокчейна. НОДы

Ссылка на 2-5 лекцию

Лекция 2-6

Блокчейн демо

Ссылка на 2-6 лекцию

Практика 3

  • Практика, криптография в блокчейн Работа с блокчейн обозревателем: https://testnet.bscscan.com/
  • Как создаются ключи в EVM (Ethereum Virtual Machine): https://chainstack.com/how-do-ethereum-and-solana-generate-public-and-private-keys/
  • Практика с симметричным шифром AES (Advanced Encryption Standard): https://aesencryption.net/

testnet.bscscan

Практика 2

  • Как создаются блоки в блокчейне: https://andersbrownworth.com/blockchain/

Ссылка

Лекция 3-1

Алгоритм консенсуса и майнинг блоков

Ссылка на 3-1 лекцию

Лекция 3-2

Алгоритм консенсуса

Ссылка на 3-2 лекцию

Лекция 3-3

Альтернативные варианты алгоритма консенсуса

Ссылка на 3-3 лекцию

Лекция 3-4

Валидаторы в BNB chain. Gas&fees

Ссылка на 3-4 лекцию

Лекция 3-5

Обозреватель блокчейна

Ссылка на 3-5 лекцию

Лекция 3-6

Разбор блока и транзакции

Ссылка на 3-6 лекцию

Практика 5

  • Практика по работе с обозревателем блокчейна
  • Обозреватель блокчейна: https://testnet.bscscan.com/ Разбор блока: https://testnet.bscscan.com/block/27656756
  • Разбор транзакции https://testnet.bscscan.com/tx/0x1cda85f1d473f46174dd121ff4ef2c34baba7d6235f698dfe6b93f67703a73bf
  • Взаимодействие с dApp: https://pancakeswap.finance/?chain=bscTestnet
  • Взаимодействие со смарт-контрактами, пример pancakeswap: https://testnet.bscscan.com/address/0xD99D1c33F9fC3444f8101754aBC46c52416550D1#contracts

Ссылка

Практика 6

  • Практика по работе c существующими приложениями
  • Обозреватель блокчейна: https://testnet.bscscan.com/
  • Взаимодействие с decentralized exchange: https://pancakeswap.finance/?chain=bscTestnet
  • Взаимодействие NFT marketplace: https://testnets.opensea.io/
  • Разбор различных видов подписей

Ссылка

Лекция 4-1

Понимание DLT, Bitcoin, Ethereum и BNB Chain.

Ссылка на 4-1 лекцию

Лекция 4-2

DLT в сравнении с традиционными базами данных

Ссылка на 4-2 лекцию

Лекция 4-3

Bitcoin и его тип реестра

Ссылка на 4-3 лекцию

Лекция 4-4

Ethereum и его тип реестра

Ссылка на 4-4 лекцию

Лекция 4-5

Ethereum как state machine

Ссылка на 4-5 лекцию

Лекция 4-6

Практика с существующими приложениями

Ссылка на 4-6 лекцию

Практика 7

  • Понимание DLT, Bitcoin, Ethereum и BNB Chain Цель этого задания - углубить ваше понимание о распределенных технологиях (DLT) и три из самых известных криптовалют и блокчейн-платформ: Bitcoin, Ethereum и Binance Smart Chain (BNB Chain).
  • Задание 1: Основы DLT Исследуйте и напишите краткий отчет (около 300 слов) о том, что такое распределенная технология (DLT). Объясните, как работает DLT, включая концепции децентрализации, блокчейна и консенсуса. Приведите примеры использования DLT в реальной жизни.
  • Задание 2: Bitcoin и его Роль Опишите, что такое Bitcoin и как он работает. Расскажите об основных принципах его консенсус-механизма, децентрализации и майнинга. Объясните, как Bitcoin использовался и как он влияет на сферу финансов и экономику.
  • Задание 3: Ethereum и Децентрализованные Приложения Изучите Ethereum и его способность поддерживать смарт-контракты и децентрализованные приложения. Напишите о важных аспектах Ethereum, таких как EVM, токены ERC-20, и его влияние на развитие DeFi и других инноваций.
  • Задание 4: Binance Smart Chain и Применение Исследуйте Binance Smart Chain (BNB Chain) и опишите, какие особенности делают его уникальным. Расскажите о преимуществах и возможностях использования BNB Chain для различных сценариев, таких как создание смарт-контрактов, DeFi и децентрализованных приложений.
  • Задание 5: Сравнение и Анализ Сравните и проанализируйте Bitcoin, Ethereum и BNB Chain по следующим критериям: концепции, цели, технические характеристики, применение и будущие перспективы. Какие у них общие черты, а в чем различия? Какие преимущества и ограничения у каждой из них?
  • Заключение: Ваше исследование и анализ помогут углубить ваше понимание о DLT и криптовалютах, а также позволят рассмотреть разнообразные аспекты их влияния на современный мир. Данные знания будут полезны для понимания технологических и экономических трендов, связанных с блокчейном.

Лекция 5-1

Введение в смарт-контракты

Ссылка на 5-1 лекцию

Лекция 5-2

Введение в Solidity Часть 1

Ссылка на 5-2 лекцию

Лекция 5-3

Введение в Solidity Часть 2

Ссылка на 5-3 лекцию

Лекция 5-4

Введение в Solidity Часть 3

Ссылка на 5-4 лекцию

Лекция 5-5

Введение в Solidity Часть 4

Ссылка на 5-5 лекцию

Лекция 5-6

Введение в Solidity Часть 5

Ссылка на 5-6 лекцию

Практика 8

  • # Intro to smart-contracts Модификаторы доступа: https://docs.soliditylang.org/en/v0.8.17/cheatsheet.html#function-visibility-specifiers Документация solidity: https://docs.soliditylang.org/en/v0.8.19/
  • Практическое занятие:
  • Ознакомится со средой разработки для смарт-контрактов Remix: https://remix.ethereum.org/
  • 1 Написать смарт-контракт: // SPDX-License-Identifier: MIT pragma solidity ^0.8.18; contract Note { //Мы можем писать заметки а также читать наши заметки string myNote; //state variable (состояние переменная) //модификаторы доступа: private, internal, extarnal, public //Если public -> автоматический создается геттер функция //reference type (ссылочных типов) локальных переменных пишем memory function setNote(string memory _note) public { myNote = _note; } function getNote() public view returns (string memory) { //view = gasless (бесплатной) return myNote; } function pureNote(string memory _pureNote) public pure returns (string memory){ //pure вы даже не читаете state return _pureNote; } }
  • 2. Скомпилировать смарт-контракт
  • 3. Задеплоить контракт через “injected provider metamask” на bnb chain testnet (chain id 97) Взаимодействовать со смарт-контрактом
  • 4. Взаимодействовать со смарт-контрактом

remix.ethereum

Практика 9

Intro to Solidity Coin Flipper smart-contract // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; //мы можем выбрать орел и решка //смарт-контракт подбрасывает монету и определяет победили ли мы contract CoinFlipper{ uint8 option; //1 BNB = 10^9 gwei //1 BNB = 10^18 wei //0.0001 BNB = 100000 constructor() payable {} function coinFlip(uint8 _option) public payable returns (bool){ require(_option <2, "You can choose only 0 or 1"); require(address(this).balance >= msg.value*2, "Address do not have sufficient balance"); //require option = _option;//орел - 0 решка - 1 uint256 result = block.timestamp%2;//result = 0 или 1 if (result == _option){ payable(msg.sender).transfer(msg.value*2); return true; } else{ return false; } } receive() external payable { } }

Отзывы(0)