Blockchain: Body of Knowledge

Основы криптографии

  • Современные криптосистемы
  • Машинное представление данных
  • Симметричные криптосистемы
  • Внутреннее устройство современных блочных и поточных симметричных шифров
  • Режимы работы блочных шифров
  • Генерация псевдо-случайных последовательностей
  • Целостность данных и контрольные суммы
  • Криптографическое хеширование
  • Схемы аутентификации и хранение паролей
  • Ассиметричные криптосистемы
  • Публичные и секретные ключи
  • Схема выработки общего секретного ключа
  • Схема секретной передачи информации
  • Схема электронной подписи
  • Атаки типа man-in-the-middle и система сертификатов
  • Примеры применения ассиметричных протоколов
  • HTTPS, цифровая подпись и водяные знаки
  • TOR и mixed networks
  • Слепая электронная подпись
  • Тайное голосование и протокол подбрасывания монеты

Блокчейн и алгоритмы консенсуса

  • Определения блокчейна
  • Блоки, механизмы сцепления блоков и целостность цепочки
  • Основные моменты алгоритма Bitcoin
  • Адреса и транзакции
  • Структура блока
  • Требования сложности и схема работы майнингового алгоритма
  • Понятие консенсуса
  • Детали консенсуса Proof Of Work
  • Аспекты безопасности проведение транзакций, экономическая безопасность платежной сети Bitcoin
  • Атака double spend и атака 51%, стратегии майнинговых пулов и стабильность работы сети
  • Задача византийских генералов и другие виды консенсуса
  • «Proof of Stake» и «Delegated Proof of Stake»
  • Движок graphene и проекты на его основе
  • Примеры сложной внутренней экономики проекта, вопросы децентрализации
  • «Proof of Storage» и децентрализованное хранение
  • «Proof of Compute» и туманные вычисления
  • «Proof of Everything» и переход к построению виртуальной машины на блокчейне

Механика биткоина

  • Транзакции в биткоин
  • Скрипты в биткоин
  • Приложения
  • Блоки
  • Сеть биткоин
  • Bitcoin как платформа
  • Ограничения сети и проблемы
  • Скриптовый язык в Bitcoin
  • Использование криптовалют в реальной жизни. Концепция «сам себе банк»
  • Использование различных типов кошельков
  • Процессинг, биржи и трейдинг криптовалют
  • «Холодное» и «горячее» хранение
  • Как безопасно хранить криптовалюты
  • Безопасность: различные виды атак и способы противодействия
  • Анонимность и псевдо-анонимность, возможность деанонимизации пользователей криптовалют
  • Миксование - как способ полной анонимности
  • Tor, Zcoin и Zcash
  • Майнинг в сети Bitcoin

Основы Ethereum

  • Ethereum и его особенности
  • Cмарт-контракты, внутреннее устройство
  • Примеры использования смарт-контрактов и схема работы сети Ethereum
  • Другие проекты
  • Создание токенов и собственной валюты
  • Создание DAO (децентрализованной автономной организации) и распределение акций/токенов среди учредителей
  • Установка и использование Geth
  • Установка и использование Parity
  • Установка и использование Mist

Типовые смарт-контракты на Ethereum - примеры применения

  • Брокерские
  • Обменные
  • Кошельки хард и софт
  • Микротранзакции
  • Надзор и контроль
  • Инвестиции
  • Мерчанты
  • Финансовые данные
  • Трейдинг
  • Платежи
  • Страховка
  • Банки
  • Денежные сервисы

Основы Solidity

  • Синтаксис языка
  • Принципы проектирования умных контрактов
  • Передача собственности
  • Функции чтения (не нужен газ)
  • Функции транзакций (нужен газ)
  • События
  • Приложение в Multichain
  • Базовая модель в Remix
  • Усложнение и Truffle Framework
  • Расчет газа на выполнение операций

Безопасность и тестирование смарт-контрактов

  • Внешние вызовы
  • Использование assert() и require()
  • Округление при делении целых чисел
  • Принудительная транзакция
  • Создание контрактов с ненулевым балансом
  • Публичность on-chain и off-chain
  • Be aware of the tradeoffs between abstract contracts and interfaces
  • Контракты 2-party и N-party
  • Keep fallback functions simple
  • Explicitly mark visibility in functions and state variables
  • Lock pragmas to specific compiler version
  • Деление на ноль
  • Разница функций и событий
  • Известные атаки
  • Race Conditions
  • Reentrancy
  • Cross-function
  • Pitfalls
  • Transaction-Ordering Dependence (TOD) / Front Running
  • Timestamp Dependence
  • Integer Overflow and Underflow
  • DoS with (Unexpected) revert
  • DoS with Block Gas Limit
  • Call Depth Attack

Создание децентрализованных приложений

  • Тест в сетях Rinkeby и Ropsten
  • Деплой через Remix и MetaMask
  • Web3.js и решения для front-end
  • Выпуск токенов
  • Стандарт ERC-20
  • Прописывание свойств токена
  • Кодирование токена
  • Выпуск токена

Создание dApp

  • Обзор возможных dApps
  • Архитектура dApp
  • Ethereum API
  • Среда тестирования
  • Лучшие практики

Работа с другими блокчейнами

  • Работа с другими типами блокчейнов Graphene (Bitshares)
  • Waves
  • Open Ledger

Дополнительные темы

  • Sidechain, Off-chain
  • Микроплатежи и Lightning Networks
  • Квантовая криптография
  • Segwit, агрегированные подписи
  • Токенизация активов, цифровые активы и умная собственность
  • ru/blockchain.txt
  • Последние изменения: 2020/01/28 23:49
  • (внешнее изменение)