Если вы следите за техническими новостями, вы, вероятно, слышали много слухов о технологии блокчейн. На эту тему есть бесчисленное множество статей, начиная от того, как блокчейн изменит индустрию развлечений, и заканчивая тем, как блокчейн может убедить вас в том, что рыба, которой вы собираетесь полакомиться на ужин, происходит из устойчивого источника. Но что это за чертовщина?
Детали немного технические, но основная концепция - нет. Технология блокчейн основана на общей записи транзакций в одноранговой сети компьютеров. Каждый компьютер в сети имеет доступ к этой общей записи и использует специальное программное обеспечение для участия в процессе. Компьютеры в сети проверяют транзакции в порциях данных, называемых блоками. Как только компьютер проверяет транзакции (обычно решая сложную математическую задачу), сеть добавляет блок в конец цепочки других блоков. Эти блоки восходят к самым ранним транзакциям в системе в непрерывной цепочке.
Самой известной реализацией технологии блокчейна является криптовалюта биткойн. Человек (лица) под именем Сатоши Накамото предложил концепцию биткойна еще в 2008 году в документе, распространенном в списке рассылки по криптографии. Накамото хотел создать нецентрализованную цифровую валюту, которая не зависела бы от финансового учреждения, такого как банк. Но Накамото пришлось решить пару проблем: как можно гарантировать, что цифровую единицу валюты нельзя копировать бесконечно? Что помешает кому-то попытаться потратить один и тот же биткойн несколько раз? А без общей централизованной власти, как вы могли бы проверить подлинность транзакций?
Блокчейн дал ответ. Любая транзакция с использованием биткойнов станет частью этой цепочки. Люди будут выделять вычислительные ресурсы сети. Их компьютеры будут работать над сложными математическими задачами для проверки транзакций, что сводит на нет необходимость в централизованном банке или финансовом учреждении для выполнения этой роли. Сложность задач будет зависеть от количества вычислительной мощности в системе. Чем больше пользователей будет выделять вычислительную мощность для проверки транзакций, тем сложнее будут проблемы. Это сократит время, необходимое для проверки любого данного блока транзакций, примерно до 10 минут.
Но зачем вообще участвовать? Вычислительная мощность требует электричества, а это означало, что люди в этой сети выделяли ресурсы реального мира, которые стоили денег. Накамото предположил, что любой компьютер (или система компьютеров), который даст правильный ответ для проверки блока транзакций, получит вознаграждение в виде биткойнов. Таким образом, в обращение вошли новые биткойны, и у людей появилась причина заставить свои компьютеры работать. Процесс называется майнинг. Для получения дополнительной информации см. нашу исчерпывающую статью о том, как майнить dogecoin.
Тогда возникает вопрос сохранения подлинности транзакций и защиты от несанкционированного доступа. Одним из гениальных элементов блокчейна является то, что проверка каждой транзакции частично основана на том, что произошло раньше. Как только блок присоединяется к цепочке, он блокируется в сети, и все компьютеры, подключенные к сети, могут видеть блок. Если кто-то захочет изменить исторические записи транзакций, ему придется не только изменить блок, содержащий транзакцию, но и создать все блоки, которые следовали за ним, чтобы заменить существующий общий реестр. С вычислительной точки зрения это маловероятно, так как для этого мошеннику потребуется использовать не менее 51 процента всей вычислительной мощности системы.
Это непросто, но для нашего потенциального преступника становится еще хуже. Технология блокчейн имеет отказоустойчивость. Если несколько компьютеров предлагают решения для проверки блоков, система в целом будет использовать самую длинную цепочку блоков. Если более чем один компьютер предлагает правильное решение для проверки блока транзакций, проверенные блоки находятся в своего рода подвешенном состоянии, пока одна из этих машин или систем не найдет решение для следующего блока в серии. В этот момент система выбирает самую длинную цепочку блоков как правильную, и она становится частью общего реестра в сети.
Пример облегчит понимание. Представьте себе блокчейн, длина которого в настоящее время составляет 100 блоков. Потенциальный мошенник хочет потратить биткойны во второй раз. Ее первоначальная транзакция находится в блоке номер 70. Ей придется изменить блок 70, а затем построить блоки с 71 по 100. Но пока она это делает, остальная часть сети продолжает пыхтеть, проверяя транзакции и достраивая блок из 100. Длинная цепочка. Мошенник навсегда останется за системой, а это означает, что его версия блокчейна никогда не будет признана легитимной. Ей помешали.
Несмотря на то, что биткойны являются высококлассной реализацией блокчейна, любая деятельность, основанная на транзакциях, может воспользоваться этой стратегией. Вот почему так много разных отраслей говорят о технологии блокчейна, а некоторые заходят так далеко, что предполагают, что это следующее воплощение Интернета. Независимо от того, произойдет ли это, это определенно умная реализация распределенных вычислений.