Основы блокчейна: вводный курс для начинающих в 25 небольших главах

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Author(s): Даниэль Дрешер
Publisher: ДМК Пресс
Year: 2018

Language: Russian
Pages: 314
City: Москва

1
978-5-97060-591-2_Основы блокчейна
layers_and_aspects
func_nonfunc_aspects
integrity
software_architecture
mixing_centr_and_distr_sys
music_industry
ownership_proof
double_spending_problem_solution
hash_reference
sensitive_nonchanged_data
hash_puzzle_example
public_key_private_key
blockchain_data_structure
add_new_transaction
correct_data_change
aristocratic_family
create_new_block
multichoice_tests
competition
blockchain_algorithm_scheme
dishonest_behavior
beaten_paths
longest_chain_criterion
heaviest_chain_criterion
eventual_consistency
bakery
blockchain_review
ownership_logic
transaction_security
transaction_procession_logic
storage_logic
blockchain_technology_suite
security_model
analysis_blockchain
consensus
transactions
Об авторе
О техническом рецензенте
Предисловие
Часть I
Терминология и основы технологии
Глава 1
Понимание уровней и аспектов
Метафора
Уровни программной системы
Сопоставление приложения и его реализации
Разделение на функциональные и нефункциональные аспекты
Одновременное изучение двух уровней
Целостность
Перспектива
Резюме
Глава 2
Более подробная картина
Метафора
Платежная система
Два типа архитектуры программного обеспечения
Преимущества распределенных систем
Более высокая вычислительная мощность
Снижение стоимости (накладных расходов, издержек)
Более высокая надежность
Возможность естественного роста
Недостатки распределенных систем
Издержки на координацию работы
Издержки на организацию обмена информацией
Зависимость от сетевой среды
Более высокая сложность программного обеспечения
Проблемы безопасности
Распределенные пиринговые системы
Объединение централизованных и распределенных систем
Идентификация распределенных систем
Цель технологии блокчейна
Перспектива
Резюме
Глава 3
Определение потенциальных возможностей
Метафора
Как пиринговая система изменила целую отрасль промышленности
Потенциальные возможности пиринговых систем
Терминология и связь с технологией блокчейна
Определение пиринговой системы
Архитектура пиринговых систем
Связь между пиринговыми системами и технологией блокчейна
Потенциальные возможности технологии блокчейна
Перспектива
Резюме
Часть II
Зачем нужна технология блокчейна
Глава 4
Исследование основной задачи
Метафора
Обеспечение доверительности и целостности в пиринговых системах
Угрозы целостности в пиринговых системах
Технические отказы (сбои)
Злоумышленники-партнеры в системе
Главная задача, решаемая технологией блокчейна
Перспектива
Резюме
Глава 5
Однозначное определение термина
Определение термина
Структура данных
Алгоритм
Набор (стек) технологий
Гипероним (обобщающее понятие) для полностью распределенных пиринговых систем с общей прикладной областью
Использование термина блокчейн в данной книге
Предварительное определение термина
Роль управления правом владения
Область применения блокчейна, рассматриваемая в данной книге
Перспектива
Резюме
Глава 6
Понимание сущности права владения собственностью
Метафора
Право владения и доказательства
Основания права владения
Небольшое отступление, касающееся безопасности
Идентификация
Аутентификация
Авторизация
Цели и свойства регистра
Право владения и блокчейн
Перспектива
Резюме
Глава 7
Двойное расходование
Метафора
Проблема двойного расходования
Уточнение термина
Двойное расходование как проблема копирования цифровой продукции
Двойное расходование как проблема распределенной пиринговой системы реестров
Двойное расходование как пример нарушения целостности в полностью распределенных пиринговых системах
Как решить проблему двойного расходования
Решение проблемы двойного расходования как проблемы копирования цифровой продукции
Решение проблемы двойного расходования как проблемы в распределенных пиринговых системах реестров
Решение проблемы двойного расходования как примера нарушения целостности распределенных пиринговых систем
Использование термина двойное расходование в этой книге
Перспектива
Резюме
Часть III
Как работает блокчейн
Глава 8
Проектирование блокчейна
Цель
Исходный пункт
План проектирования и разработки
Задача 1: описание права владения
Задача 2: защита права владения
Задача 3: хранение данных транзакций
Задача 4: подготовка реестров к распространению в ненадежной среде
Задача 5: распространение реестров
Задача 6: добавление новых транзакций в реестры
Задача 7: определение, в каких реестрах представлены правильные данные
Перспектива
Резюме
Глава 9
Документирование права владения
Метафора
Цель
Главная задача
Основная идея
Краткое отступление по поводу инвентаризационной ведомости и данных транзакции
Как это работает
Описание передачи права владения
Обслуживание хронологии актов передачи прав
Почему это работает
Важность упорядоченности
Целостность хронологии транзакций
Формальная корректность
Семантическая (смысловая) корректность
Авторизация
Перспектива
Резюме
Глава 10
Хэширование данных
Метафора
Цель
Как это работает
Быстрая генерация хэш-значений для любого типа данных
Детерминированность
Обеспечение псевдослучайности хэш-значений
Односторонние функции
Устойчивость к коллизиям
Проверка на практике
Шаблоны хэширования данных
Независимое хэширование
Повторяющееся хэширование
Комбинированное хэширование
Последовательное хэширование
Иерархическое хэширование
Перспектива
Резюме
Глава 11
Хэширование на практике
Сравнение данных
Цель
Основная идея
Как это работает
Почему это работает
Обнаружение изменений в данных
Цель
Основная идея
Как это работает
Почему это работает
Обращение к данным, которые не должны изменяться
Цель
Основная идея
Как это работает
Схематическое описание
Почему это работает
Хранение данных, которые не должны изменяться
Цель
Основная идея
Как это работает
Цепочка
Дерево
Почему это работает
Выполнение долговременных вычислений
Цель
Основная идея
Как это работает
Практический пример
Уровень сложности
Почему это работает
Использование хэширования в блокчейне
Перспектива
Резюме
Глава 12
Идентификация и защита учетных записей пользователей
Метафора
Цель
Главная задача
Основная идея
Краткий обзор криптографии
Основная задача криптографии
Терминология [37]
Симметричная криптография
Асимметричная криптография
Асимметричная криптография на практике
Создание и распространение ключей
Использование ключей
От открытого ключа к закрытому ключу
От закрытого ключа к открытому ключу
Асимметричная криптография в технологии блокчейна
Идентификация учетных записей
Авторизация транзакций
Перспектива
Резюме
Глава 13
Авторизация транзакций
Метафора
Цель
Главная задача
Идея
Краткий обзор цифровых подписей
Создание цифровой подписи
Проверка данных с использованием цифровой подписи
Выявление факта мошенничества с использованием цифровой подписи
Как это работает
Цифровая подпись транзакции
Проверка (верификация) транзакции
Почему это работает
Перспектива
Резюме
Глава 14
Хранение данных транзакций
Метафора
Цель
Главная задача
Идея
Преобразование обычной книги в структуру данных блокчейна
Исходная позиция: обычная книга
Преобразование 1: создание явной зависимости между страницами
Преобразование 2: отделение содержимого
Преобразование 3: замена номеров страниц
Преобразование 4: создание числовых ссылок
Преобразование 5: отказ от переплета книги
Цель достигнута: оценка результата
Структура данных блокчейна
Воображаемый элемент, состоящий из страницы упорядоченного каталога и соответствующей ему страницы содержимого
Упорядоченный каталог
Страницы содержимого
Числовые ссылки на страницы каталога
Числовые ссылки на содержимое
Хранение транзакций в структуре данных блокчейна
Перспектива
Резюме
Глава 15
Использование хранилища данных
Метафора
Добавление новых транзакций
Обнаружение изменений
Изменение содержимого данных транзакции
Изменение ссылки на дерево Меркле
Замена транзакции
Изменение корня дерева Меркле
Изменение ссылки на заголовок блока
Корректное изменение данных
Преднамеренные и непреднамеренные изменения
Перспектива
Резюме
Глава 16
Защита хранимых данных
Метафора
Цель
Главная задача
Идея
Краткий обзор свойства неизменяемости
Как это работает: общая схема
Обнаружение любых изменений
Принудительная перезапись всей хронологии при внутренних изменениях
Добавление данных чрезвычайно многозатратно с точки зрения вычислительных мощностей
Как это работает: подробности
Обязательность данных
Процесс создания нового блока
Правила проверки
Почему это работает
Накладные расходы при изменении структуры данных блокчейна
Хранилище неизменяемых данных в реальном мире
Перспектива
Резюме
Глава 17
Распространение хранилища данных в пиринговой системе
Метафора
Цель
Главная задача
Идея
Как это работает: общий обзор [32, 33]
Как это работает: подробности
Сохранение существующих соединений в работоспособном состоянии
Установление новых соединений
Распространение новой информации
Почему это работает
Перспектива
Резюме
Глава 18
Методы проверки и добавления транзакций
Метафора
Последствия
Цель
Главная задача
Идея
Как это работает: структурные элементы системы
Правила проверки
Правила проверки для данных транзакций
Правила проверки для заголовков блоков
Поощрение
Наказание
Конкуренция
Конкуренция по скорости
Конкуренция по качеству
Управление партнерами
Как это работает: общая схема
Как это работает: подробности
Почему это работает
Реакция на нечестное поведение
Перспектива
Резюме
Глава 19
Выбор хронологии транзакций
Метафора
Цель
Главная задача
Идея
Как это работает
Критерий самой длинной цепочки
Критерий самой затратной цепочки
Следствия выбора единственной цепочки
Блоки-«сироты»
Отмена поощрений
Уточнение права владения
Повторная обработка транзакций
Увеличение размера общего ствола
Сохранение общей целостности
Устойчивость против сторонних манипуляций
Опасности для схемы голосования
Важная роль хэш-головоломок
Почему это работает
Перспектива
Резюме
Глава 20
Плата за сохранение целостности
Метафора
Роль вознаграждений в блокчейн-системе
Воздействие на целостность системы
Воздействие на открытость системы
Воздействие на распределенную сущность системы
Воздействие на философию системы
Краткое отступление: появление криптографических валют
Перспектива
Резюме
Глава 21
Соединяем все элементы
Обзор концепций и технологий
Что такое блокчейн
Предназначение блокчейн-системы: функциональные аспекты уровня приложения
Уточнение и подтверждение права владения собственностью
Передача права владения собственностью
Свойства блокчейн-системы: нефункциональные аспекты
Высокая доступность
Защита от цензуры
Надежность
Открытость
Псевдоанонимность
Безопасность
Гибкость
Общая согласованность
Сохранение целостности
Внутренняя функциональность: функциональные аспекты уровня реализации
Логика прав владения собственностью
Защита транзакций
Логика обработки транзакций
Логика хранения
Пиринговая архитектура
Логика согласования
Повышаем уровень абстракции
Перспектива
Резюме
Часть IV
Ограничения и способы их преодоления
Глава 22
Обзор ограничений
Главная задача
Технические ограничения блокчейна
Недостаточная секретность
Модель защиты
Ограниченная масштабируемость
Высокий уровень накладных расходов
Скрытая централизация
Недостаточная гибкость
Критический размер
Нетехнические ограничения блокчейна
Недоверие с юридической точки зрения
Недоверие со стороны пользователей
Преодоление ограничений
Технические ограничения
Нетехнические ограничения
Перспектива
Резюме
Глава 23
Новая жизнь блокчейна
Метафора
Конфликтующие цели блокчейн-системы
Конфликт прозрачности (открытости) и секретности
Безопасность и скорость
Главные причины конфликтов
Разрешение конфликтов
Разрешение конфликта открытости и секретности
Разрешение конфликта безопасности и скорости
Четыре версии блокчейн-системы
Последствия
Пиринговая архитектура
Распределенная сущность
Главная цель
Немного пересмотрим определение главной задачи блокчейна
Использование термина блокчейн в оставшейся части книги
Перспектива
Резюме
Часть V
Практическое использование блокчейна, обзор и перспективы
Глава 24
Практическое применение технологии блокчейна
Метафора
Характеристики блокчейн-системы
Обобщенные шаблоны приложений
Подтверждение существования
Подтверждение несуществования
Подтверждение времени наступления какого-либо события
Подтверждение порядка следования
Подтверждение подлинности личности
Подтверждение авторства
Подтверждение права владения собственностью
Особые варианты использования
Анализ блокчейн-приложений
Выполнены ли требования к использованию блокчейн-системы?
Какой тип блокчейн-системы используется?
Каков размер добавленной стоимости при использовании полностью распределенной пиринговой системы?
Какова основная идея (замысел) данного приложения?
Какой бизнес-вариант используется?
Как реализована компенсация для партнеров за предоставление ресурсов рассматриваемой системе?
Перспектива
Резюме
Глава 25
Подводим итоги и двигаемся дальше
Метафора
Будущие направления разработок и альтернативные варианты
Минимальные технические усовершенствования и вариации
Улучшение масштабируемости
Концептуальное развитие
Права доступа
Секретность
Распределенный консенсус
Транзакции
Данные реестра
Структура данных
Основные перспективы технологии блокчейна
Устранение посредников
Автоматизация
Стандартизация
Ускорение процессов
Увеличение скорости обработки данных
Снижение стоимости
Смещение доверительных отношений в область технических протоколов и технологии
Формирование доверительного отношения к предметам потребления (товарам)
Более полная информированность о технологии
Вероятные недостатки
Недостаточная закрытость (секретность)
Отсутствие личной ответственности
Потеря рабочих мест
Возобновление посредничества
Перспективы на будущее
Небольшие проекты энтузиастов
Крупномасштабное коммерческое применение
Государственные (и муниципальные) проекты
Подводим итоги
Резюме
Список литературы
Предметный указатель
z