Слайд 1Лекция №1 ВВЕДЕНИЕ В БЛОКЧЕЙН
Москва, 2020
Слайд 2Time Stamp Protocol
Time stamp protocol (протокол штампа времени) или TSP
— это криптографический протокол, позволяющий создавать доказательство факта существования электронного
документа на определённый момент времени.
«Штамп времени» (англ. time-stamp) — это документ, подписанный электронной подписью (ЭП). Этим документом «центр штампов времени» удостоверяет, что в определённый момент времени ему был предоставлен результат вычисления хеш-функции от содержимого документа, факт существования которого необходимо подтвердить. Результат вычисления хеш-функции и момент времени указываются в «штампе».
Слайд 4Блокчейн
Блокчейн - это распределенная база данных, которую контролирует группа индивидуумов
с целью обеспечения совместного хранения и доступа к ней.
Существуют различные
типы блокчейнов и блокчейн приложение
Блокчейн - представляет собой структуру данных для создания цифрового распределенного реестра и организацию совместного доступа к нему
Слайд 5Задача о византийских генералах
В составе войска древней Византии есть несколько
легионов, каждый из которых подчиняется своему генералу. Всеми военными действиями
руководит верховный главнокомандующий, который отдает приказы генералам. Любой из военачальников может перейти на сторону врага и желать поражения своему войску, в том числе сам главнокомандующий. В столь непростых условиях требуется выработка общей стратегии, которая позволит выиграть битву.
Все генералы получают приказы командующего, согласно которым они должны действовать одним из двух способов: идти в атаку или отступить. Далее события могут развиваться по нескольким сценариям:
1. если все честные генералы поведут свои легионы в атаку – Византия одержит победу (благоприятный исход);
2. если все честные генералы прикажут отступать – будут сохранены жизни легионеров (промежуточный исход);
3. если одни честные генералы пойдут вперед, а другие честные генералы дадут приказ к отступлению, исход будет неблагоприятным (враг уничтожит армию).
Слайд 6Задача о византийских генералах
Нужно учитывать и вариант, при котором верховный
главнокомандующий продался врагу и отдал генералам (всем или некоторым) преступные
приказы. Зная об этом, генералы могут отказаться выполнять приказ и начнут действовать по своему усмотрению. В этом случае вероятность благоприятного и даже промежуточного исхода весьма невелика. У всех участников сражения должна быть налажена связь для обмена информацией и принятия коллективных решений. Они должны избегать рисков, связанных с недоверием к центру и друг к другу.
Есть определенное число генералов – N. Их войска дислоцированы в горах и собираются атаковать противника в долине. M генералов из общего числа N перешли на сторону врага и хотят сорвать соглашение между верными генералами. Цель соглашения – узнать численность верных Византии легионов и легионов, возглавляемых генералами-перебежчиками. Соглашение очень важно, ведь для победы или как минимум согласованного отступления необходимо выработать общую стратегию.
Слайд 7Задача о византийских генералах
Предположим, что один из четырех генералов оказался
предателем (N = 4 , M = 1). Следовательно, трое
верных военачальников пошлют верные сведения о количестве своих легионеров, а в сообщениях предателя цифры могут быть какими угодно. Допустим, первый генерал сообщил, что в составе его легиона есть 1 тысяча воинов, у второго – 2 тысячи, у четвертого – 4 тысячи. Третий генерал (перебежчик) указал остальным случайно выбранные цифры x, y, z.
Из полученных данных каждый военачальник формирует свой вектор:
1-й вектор — 1,2,x,4;
2-й вектор — 1,2,y,4;
3-й вектор — 1,2,3,4;
4-й вектор — 1,2,z,4
Далее генералы передают векторы друг другу, при этом предатель повторно искажает информацию. В результате каждый получает четыре вектора, из которых формируется ядро:
Слайд 8Задача о византийских генералах
Слайд 10Блокчейн добавляет дополнительное измерение время.
Возможность поиска в реестре что когда
либо происходило.
- нельзя задним числом сто-то исправить, требуется рассудительные решения
-
третье отличие - это ценность, в инете информация обильна ненадежна подвержена разрушения
а в блокчейне - информация редка защищена от изменений и
перманента
Слайд 16КРИПТОВАЛЮТА
Электронная цифровая подпись на основе RSA ЭЦП на основе алгоритма
RSA заключается в следующем:
• отправитель А подвергает документ хэшированию с
помощью однонаправленной хэш-функции;
• отправитель А шифрует вычисленное хэш-значение своим личным ключом, тем самым ставя под документом свою подпись;
Слайд 17КРИПТОВАЛЮТА
хэш-значение в зашифрованном виде вместе с документом отправляется получателю;
• получатель
В самостоятельно вычисляет хэш-значение документа, а также расшифровывает хэш-значение, присланное
ему отправителем, с использованием открытого ключа отправителя. Если два полученных хэш-значе- ния совпадают, то подпись отправителя под документом вер
Слайд 19
Адрес - то место, куда вам
отправляют то или иное количество
криптовалюты.
По адресу можно однозначно
идентифицировать пользователя. Доступ к одному адресу есть
только
у одного пользователя (в основном) АДРЕС
Слайд 20
Специальное устройство,
конструкция и архитектура которого предназначена для определенной цели.
В случае
блокчейна - устройство сделанное специально для майнинга.
ASIC - одна из
причин первого роста стоимости альткоинов
ASIC
Слайд 21
Составная часть блокчейна, в которой хранится некоторое
количество транзакций и
метаинформация, такая
как: адрес того, кто смайнил этот блок, хэш этого блока
и так далее.
Блокчейн состоит из блоков. BLOCK
Слайд 22
Приложение, обычно
браузерное, использующееся для просмотра содержимого блоков и информации о
транзакциях.
Для Ethereum - Etherscan
BLOCK
EXPLORER
Слайд 23
Вознаграждение, которое
майнер получает за подбор
подпись блока.
На ранних этапах развития любой
криптовалюты - главная
мотивация для майнеров.
BLOCK REWARD
Слайд 24
Процесс включения транзакции в состав
найденного блока называется подтверждением транзакции. Включение
в 1 блок = 1
подтверждение, когда таких подтверждений набирается N
и выше транзакция считается подтвержденной.
CONFIRMATION
Слайд 25
Приложение, исходный код который исполняется на нодах в блокчейне.
Любой смарт-контракт
написанный
для Ethereum - DApp
DAPP
Слайд 26
Децентрализованное
приложение, которое
регулирует правоотношения между его участниками.
DAO - всегда DApp
DApp -
далеко не всегда DAO DAO
Слайд 27
То, с какой вероятностью и с какой приблизительной сложностью будет
выполнена операция подтверждения следующего блока.
С ростом числа блоков сложность нахождения
новых, как правило, увеличивается
СЛОЖНОСТЬ
Слайд 28
Механизм верификации
личности и аутентификации, позволяющий гарантировать, что транзакции с вашего
адреса будет проводиться только вами.
ЦИФРОВАЯ ПОДПИСЬ
Слайд 29
Процесс подбора красивого хэша (в случае, например BitCoin и Ethereum)
Проведение
вычислительных
операций для того, чтобы
подтвердить свое право на подпись блока.
MINING
Слайд 30
Способ аутентификации, который требует более одной подписи для отправки транзакций
с адреса
MULTI-
SIGNATURE
Слайд 31
Сервис для получения off-chain данных из сети Ethereum.
ORACLES
Слайд 32
Ключ, использующийся для подписи транзакций с определенного адреса
PRIVATE KEY
Слайд 33
Комиссия за транзакцию. В Ethereum комиссия за
транзакцию называется газом.
TRANSACTION
FEE
Слайд 34
Место хранения приватных ключей.
В самом простом случае - текстовый файл
с приватным ключом.
Обычно - десктопное или мобильное приложение, с помощью
которого можно отправлять транзакции
WALLET