ТЕХНОЛОГИЯ (от греч. искусство, мастерство, умение и греч. изучение) - совокупность методов и инструментов для достижения желаемого результата; метод преобразования данного в необходимое; способ производства. Технология - применение любого научного знания для решения практических задач. Технология включает в себе методы, приёмы, режим работы, последовательность операций и процедур, она тесно связана с применяемыми средствами, оборудованием, инструментами, используемыми материалами. Технология - реальное (практическое) разрешение конкретной научно-технической, производственно-хозяйственной и социально-политической задачи. (Некрасов С. И., Некрасова Н. А. Философия науки и техники: тематический словарь. — Орёл: ОГУ. 2010.)
Курс “Обзор технологии блокчейн”
Оспанов Р.М.
Данный курс посвящен технологии блокчейн. Курс нацелен дать общее представление об этой технологии и адресован всем желающим на высоком уровне понять, как работает технология блокчейн и для чего её можно использовать.
В настоящее время наблюдается достаточно высокого уровня ажиотаж вокруг вопроса использования блокчейна, но эта технология не достаточно хорошо изучена. Блокчейн не является неким волшебством, магией, которая поможет решить все проблемы. Как и со всеми новыми технологиями существует тенденция стремления применять ее ко всему, что можно представить. В данном курсе предпринимается попытка передать слушателям высокоуровневое понимание технологии блокчейн, достаточное для начала эффективного применения.
Программа курса
(каждая тема рассчитана минимально на 1 час,
таким образом минимальная продолжительность курса 15 часов)
1.Архитектура блокчейн.
1.1. Введение. История вопроса. Интернет. Криптография. Cypherpunk (Шифропанки). Задачи. David Chaum и DigiCash. Wei Dai и b-money. Nick Szabo и Bitgold. Nick Szabo и smart contracts. Stuart Haber, W.Scott Stornetta и timestamp server. Adam Back и hashcash. Leslie Lamport и Paxos. Merkle Tree. Satoshi Nakamoto и Bitcoin. Классификация технологии блокчейн. Составляющие элементы технологии блокчейн.
1.2. Криптографические хэш-функции. Определение криптографической хеш-функции. Свойства. Классификация. Схемы криптографических хеш-функций. KDF. Примеры. Применение. Хеш указатели. Block chain. Merkle Tree.
1.3. Алгоритмы асимметричной криптографии. Асимметричная криптография. Цифровые подписи. Свойства. Elliptic Curve Digital Signature Algorithm (ECDSA). Использование закрытых и открытых ключей.
1.4. Транзакции. Адреса. Реестры. Транзакция. Информация, содержащаяся в транзакции. Metadata. Amount. Inputs. Outputs. ID/Hash. Адрес пользователя. Формирование адреса. Хранилище закрытых ключей. Кошелек. Реестр транзакций. Централизованные реестры. Распределенные реестры.
1.5. Блоки. Цепочки блоков. Пул транзакций. Блоки транзакций. Создание блоков. Поля данных блока. Номер блока. Текущее значение хэша блока. Предыдущее значение хэша блока. Хэш корня дерева Меркля. Временная метка (timestamp). Размер блока. Значение nonce. Список транзакций, включенных в блок. Цепочки блоков.
2. Алгоритмы консенсуса.
2.1. Задачи консенсуса. Консенсус. Протокол соглашения (agreement protocol). Задачи соглашения. Задача византийского соглашения (Byzantine agreement problem). Задача консенсуса (consensus problem). Задача интерактивной согласованности (interactive consistency problem). Протокол византийского соглашения (Byzantine agreement protocol). Протокол консенсуса (consensus protocol). Протокол интерактивной согласованности (interactive consistency protocol).
2.2. Алгоритм доказательства работы (Proof-of-Work). Описание алгоритма.
2.3. Алгоритм доказательства доли (Proof-of-Stake). Описание алгоритма.
2.4. Модификации алгоритмов консенсуса. Reusable-Proofs-of-Work (RPoW). Delegated Proof-of-Stake (DPoS). Leased Proof of Stake (LPoS). Proof of Importance (Pol). Proof of Activity (POA). Proof of Capacity (PoC) (Proof-of-space). Proof of Burn (PoB). Ouroboros Proof-of-stake (PoS). Proof of Research.
2.5. Обзор других алгоритмов консенсуса. Byzantine Fault Tolerance (BFT). Proof of Elapsed Time (PoET). Simplified Byzantine Fault Tolerance (SBFT). Delegated Byzantine Fault Tolerance (DBFT). Directed Acyclic Graphs (DAG). Proof of Weight (PoWeight). Proof-of-Authority (PoAuthority).
3. Разное.
3.1. Форкинг. Форки. Софтфорк (soft fork). Хардфорк (hard fork). Примеры. Замена криптографических алгоритмов. Квантовые компьютеры и пост-квантовая криптография.
3.2. Смарт-контракты. Смарт-контракт. Принципы работы. Примеры. Ethereum.
3.3. Виды блокчейна. Permissionless Blockchain (открытый блокчейн). Permissioned Blockchain (закрытый блокчейн). Public blockchains. Consortium blockchains. Fully private blockchains. Permissioned private shared ledgers. Permissioned public shared ledgers. Unpermissioned public shared ledgers.
3.4. Платформы блокчейн. Криптовалюты. Bitcoin. Bitcoin Cash. Litecoin. Ethereum. Ethereum Classic. Dash. Ripple. Hyperledger. MultiChain. Waves. Nxt. NEM. NEO.
3.5. Возможности технологии блокчейн. Возможности применения технологии блокчейн. Ограничения возможности применения. Ошибочные представления о возможностях применения. Возможные сферы применения. Блок-схема для определения необходимости применения технологии блокчейн.