Тимур Машнин - Введение в технологию Блокчейн

Введение в технологию Блокчейн
Название: Введение в технологию Блокчейн
Автор:
Жанры: Интернет | Компьютерная справочная литература | Книги о компьютерах
Серии: Нет данных
ISBN: Нет данных
Год: 2021
О чем книга "Введение в технологию Блокчейн"

Эта книга познакомит вас с технологией блокчейн, которая позволяет осуществлять передачу и хранение цифровых активов децентрализованным способом. Вы получите понимание и знание базовых концепций технологии блокчейн, познакомитесь с методами разработки приложений для блокчейн сетей. Эта книга объясняет основные компоненты блокчейна, такие как транзакция, блок, заголовок блока и цепочка блоков, операции блокчейна, такие как верификация, валидация и достижение консенсуса, а также алгоритмы, лежащие в основе блокчейна.

Бесплатно читать онлайн Введение в технологию Блокчейн


Введение в криптографию и криптовалюты

Начнем мы свое обсуждение с криптографических хеш-функций. Мы поговорим о том, что они собой представляют, и каковы их свойства. А потом мы обсудим их приложения.

Итак, криптографическая хэш-функция является математической функцией. И она обладает рядом свойств.



Прежде всего, хеш-функция может принимать любую строку любого размера как входной параметр. И хеш-функция производит вывод строки фиксированного размера, мы будем использовать 256 бит, потому что это делает биткойн.

И хеш-функция должна быть эффективно вычисляемой, обрабатывая заданную строку за разумный промежуток времени.

Также хэш-функция должна быть криптографически безопасна.

В частности, функция не должна иметь коллизий или конфликтов, она должна иметь свойство скрытия, и она должна быть головоломкой.

Первое свойство, которое нам нужно иметь для криптографической хеш-функции это то, что она не содержит конфликтов.



И это означает, что нельзя найти две разные строки с одинаковой хэш-функцией.

Теоретически коллизии существуют, так как на вход вы берете строку любой длины, а на выходе получаете строку 256 бит.

Вопрос в том, могут ли эти коллизии быть найденными обычными людьми, использующими обычные компьютеры?

С точки зрения вероятности, если взять 2 в 130 степени случайно выбранных входных строк, то с вероятностью 99.8 %, по крайней мере, две из них будут конфликтовать, независимо от используемой хэш функции.

Но, конечно, проблема в том, что вы должны вычислить хэш функцию 2 в 130 степени раз.

И это, конечно, астрономическое число.

Не существует хеш функции, для которой было бы доказано, что она свободна от конфликтов.

Просто эти конфликты трудно найти, и мы принимаем то, что мы используем хэш функцию, свободную от конфликтов.

Если мы можем предположить, что у нас есть хеш-функция, свободная от коллизий, тогда мы можем использовать результаты этой хэш-функции как дайджест сообщений.

И я имею в виду следующее.

Если мы знаем, что x и y имеют одинаковый хеш, тогда можно с уверенностью предположить, что x и y одинаковы. И это позволяет нам использовать хэши как своего рода дайджест сообщений.

Предположим, например, что у нас есть большой файл.

И мы хотели бы уметь распознавать, будет ли другой файл таким же, как этот файл.

Один из способов сделать это, это сохранить весь большой файл. И затем, когда мы получим другой файл, просто сравнить их.

Но поскольку у нас есть хэш функция и хэши файлов, которые, как мы считаем, свободны от конфликтов, более эффективно просто запомнить хэш исходного файла.

Затем, если кто-то показывает нам новый файл и утверждает, что это то же самое, мы можем вычислить хэш этого нового файла и сравнить хеши.

Если хеши одинаковы, мы делаем вывод, что файлы одинаковые.

И это дает нам очень эффективный способ запомнить то, что мы видели раньше, так как хэш невелик, это всего лишь 256 бит, в то время как исходный файл может быть очень большим.

Второе свойство, которое мы хотим от хэш-функции, состоит в том, что она является скрывающей.

Если у нас есть результат хэш-функции, тогда нет никакого способа определить, что из себя представляет вход хэш функции.

Это работает, когда вход хэш функции представляет собой огромный набор различных вариантов, так что нельзя простым перебором, вычисляя хэши, найти соответствие хэша и определенного входа.

Если же у нас набор входных значений небольшой, мы можем решить эту проблему с помощью соединения нашего входного значения со значением, которое было выбрано из очень большого набора значений.



Таким образом, хэш функция H (r | x) означает взять все биты r и поместить после них все биты x.

Если r – случайное значение, выбранное из широкого распределения, то, учитывая H (r | x), невозможно найти x.

Таким образом хэш r соединенного с x, будет скрывать x.

Теперь давайте посмотрим на применение этого скрывающего свойства.

Предположим, что мы берем число, заворачиваем его в конверт, и помещаем его на стол, где каждый может увидеть конверт. Но пока вы не открыли конверт, это число является секретом.

Позже вы можете открыть конверт и выдать значение.

Мы хотим сделать это в цифровом смысле. Например, вы можете передать сообщение.

И эта передача выдаст два значения, com и key.

Подумайте о com как о конверте, который вы собираетесь положить на стол, и ключе как о секретном ключе для разблокировки конверта.

Затем вы позволяете кому-то проверять, учитывая com, key и сообщение, что этот конверт, ключ и сообщение действительно идут вместе.

И эта проверка вернет истину или ложь.

Мы помещаем сообщение в конверт и передаем сообщение.

И эта передача возвращает конверт и ключ, а затем мы публикуем конверт.

Позже, чтобы открыть конверт, мы должны опубликовать ключ.

И тогда кто-то может использовать этот конверт, ключ и сообщение, чтобы проверить валидность открытия конверта.

Таким образом невозможно будет подменить сообщение в конверте.



Чтобы реализовать эту схему, мы генерируем случайное значение 256 бит и назовем его ключом.

И тогда мы вернем хэш ключа, соединенного с сообщением.

Затем, кто-то может проверить целостность сообщения, вычислив хэш ключа и сообщения и сравнив это значение с переданным значением com.

сom – это хэш ключа, соединенного с msg.

И если есть этот хэш, по нему невозможно узнать само сообщение.

Это то самое свойство скрытия, о котором мы говорили раньше.

Ключ был выбран случайным 256-битным значением.



И поэтому свойство сокрытия означает, что, если мы возьмем сообщение, и поставим перед ним что-то, что было выбрано из очень большого распределения, как в данном случае случайное 256-битное значение, тогда невозможно найти сообщение, как исходя из самого хэша, так и простым перебором возможных сообщений.

Одновременно мы получаем и отсутствие конфликтов, используя такую схему.

Невозможно будет найти два разных сообщения с одинаковым таким хэшем.

Используя все эти свойства хэша, мы можем сделать приложение – поиск пазла, математическую задачу, которая требует больших вычислений.



Используя id из большого распределения, нужно найти x, чтобы хэш id и x попадал в заранее определенное распределение y.

Если мы хотим создать головоломку, которую трудно решить, мы можем сделать это таким образом, генерируя идентификаторы головоломок в случайном порядке.

И мы будем использовать это позже, когда мы поговорим о майнинге биткойнов.

Это своего рода вычислительная загадка, которую мы будем использовать.



Существует множество хэш функций, но функция, которую использует биткойн, это функция, которая называется SHA-256, и она работает следующим образом.

Она принимает сообщение, которое вы хешируете, и она разбивает его на блоки размером 512 бит.


С этой книгой читают
Сегодня книжный рынок предлагает огромный выбор литературы о работе в Интернете – как для начинающих пользователей, так и для профессионалов. Но есть ли книги об Интернете, которые были бы интересны пользователю со средним уровнем подготовки? Таких изданий на русском языке почти нет. Данная книга призвана восполнить этот пробел. В ней собраны сотни неочевидных трюков и хитрых приемов для работы в Интернете, описаны десятки полезнейших программ, д
Эта книга является одним из первых специализированных изданий, написанных отечественными авторами, которое посвящено обстоятельному анализу безопасности сети Internet. В книге предлагаются и подробно описываются механизмы реализации основных видов удаленных атак как на протоколы TCP/IP и инфраструктуру Сети, так и на многие популярные сетевые операционные системы и приложения.Особое внимание авторы уделили причинам возникновения и успеха удаленны
Владельцы брендов используют психологию как важный фактор при создании и продвижении брендов, т. к. бренд – это желание получить именно тот результат, который символизирует этот бренд, охватив при этом максимальное количество людей.Продвижение бренда, или оптимальная раскрутка бренда, включает рекламу в периодических изданиях, наружную рекламу, рекламу по радио и телевидению, рекламу в сети Интернет. При раскрутке нового бренда выделяется два спо
В процессе разработки пользовательского интерфейса необходимо учитывать, что интерфейс пользователя представляет собой часть программы, которая будет находиться у всех на виду. Однако некоторые программисты упускают этот момент и склонны оставлять дизайн интерфейса пользователя на «потом». Они делают это, считая реальным достоинством созданного приложения программный код, который и требует большего внимания. И как результат, часто возникающие нед
Проклятие Бабы Яги заставляет княжеского наследника искать невесту в другом мире. Чтобы стать князем, по традиции надо жениться на ведьме, и тогда уже, объединив людей и чародеев, бороться с черной нежитью, навалившейся на княжество. Мнением же избранной невесты никто не поинтересовался, а зря! Римма волею чародеев переносится в мир, полный магии, чародейства, интриг, неожиданных друзей и тайных врагов, – там всё не так, как кажется на первый взг
Я хочу надеяться, что наступит время и Бог обременит себя земными заботами. Первое, что он сделает – подпишет один Верховный Указ. По данному Указу будет отчерчена граница, которую переступать нельзя. Переступил – смерть. Безжалостная и неминуемая. Здесь и сейчас.
Эта прекрасная книга поэта-фронтовика Якова Лазаревича Акима состоит из трех разделов. В первом разделе – лучшие стихи для детей. Второй раздел – сказки в стихах «Песенка в лесу» и «Девочка и лев», по которым были созданы замечательные мультфильмы. Третий раздел – это необыкновенно увлекательная сказка «Учитель Так-Так и его разноцветная школа».Открывается книга предисловием критика Владимира Александрова.
Если вы устали плыть по течению и хотите изменить жизнь – начните прямо сейчас! Автор книги, известный психолог Константин Довлатов разработал уникальную методику, которая преобразит вашу жизнь, – «Духовную интеграционику».Методика запускает скрытые ресурсы и способности, благодаря которым вы начинаете принимать правильные решения, привлекать нужных людей, ваше самочувствие улучшается, все складывается удачно, как бы само собой. Изменения происхо