Максимально доступное объяснение дал пользователь Лепры по ником sleep.
" Блокчейн — это дневник, который почти невозможно подделать
Коля решил вести дневник. Для этого он завёл тетрадку и начал писать там строчки вроде таких:
Он очень старался вести дневник честно, и если у него с кем-то возникал спор о чём-то, что произошло раньше, он доставал его и тыкал всем носом в свои записи. Однажды Коля сильно поспорил с Васей на тему того, давал ли он Васе в долг 100 рублей или нет. В момент спора у Коли не было с собой дневника, но он обещал завтра же принести и всё показать Васе.
Вася решил не искушать судьбу, пробрался к Коле в дом, нашёл дневник, долистал до строчки 132 и заменил её на «Трахал Олю». На следующий день Коля достал дневник, долго искал в нём запись про долг Васе, не нашёл и пришел извиняться.
Прошёл год, Васю замучила совесть, и он признался во всём Коле. Коля простил друга, но решил на будущее использовать какую-нибудь более надёжную систему записи, которую нельзя было бы так просто подделывать.
Придумал он следующее. У себя в операционной системе «Линупс» он нашёл программу md5sum, которая брала любой текст и превращала его в хеш — 32 непонятные цифры. Как именно она это делала, Коля не понимал, но в целом казалось, что она выдавала полную белиберду. Например, если в программу ввести слово «привет», она в ответ выдаёт «8b4609d7e974702ff1451220c7ededcf». А если ввести, казалось бы, почти то же самое, но с лишним пробелом, то уже «69ab827825fdb876e709abd3d783dbb6».
Почесав тыковку, Коля придумал способ усложнить будущим Васям замену записей следующим образом: после каждой записи он вставлял хеш, который получался, если скормить программе текст записи и прошлый хеш. Новый дневник получался таким:
0000 (начальный хеш, ограничимся для простоты четырьмя знаками)
1. Купил хлеба
4178 (хеш от 0000 и «Купил хлеба»)
2. Позвонил Геннадию
4234 (хеш от 4178 и «Позвонил Геннадию»)
…
4492
132. Дал Васе в долг 100 рублей
1010
133. Трахал Люду
8204 (хеш от 1010 и «Трахал Люду»)
Если теперь какой-нибудь Вася захочет изменить строчку 132, изменится и хеш этой строчки (он будет не 1010, а чем-то другим). Это, в свою очередь, повлияет на хеш строчки «133. Трахал Люду» (он будет не 8204, а чем-то другим), и так далее до конца дневника. Теперь ради одной записи Васе придётся подменить весь дневник после неё, что сложно.
Прошло время, Коля открыл банк. Он всё так же писал в дневничок записи «дал в долг» и «взял в кредит», снабжая их хешами. Банк разросся, и однажды он дал в долг (уже новому) Васе миллион. Следующей ночью десять нанятых Васей за полмиллиона таджиков пробрались в комнату Коле, заменили запись «143313. Дал в долг Новому Васе 1000000» на «143313. Дал в долг Новому Васе 10» и по-быстрому пересчитали все хеши вплоть до конца дневника.
Чудом Коля обнаружил подмену и, раз такое дело, решил усложнить способ подделки дневника: «Теперь, — решил Коля, — я буду в конце каждой записи в скобочках добавлять какое–нибудь число („нонс“), а подбирать его буду так, чтобы каждый хеш заканчивался на два нуля». Единственный способ это сделать — тупо перебирать числа, пока не получится нужный хеш:
0000 (начальный хеш, ограничимся для простоты четырьмя знаками)
1. Купил хлеба (22)
4100 (хеш от 0000 и «Купил хлеба (22)», 22 было подобрано, чтобы хеш кончался на 00)
2. Позвонил Геннадию (14)
3100 (хеш от 4100 и «Позвонил Геннадию (14)»)
…
1300
132. Дал Васе в долг 100 рублей (67)
9900
133. Трахал Люду (81)
8200 (хеш от 9900 и «Трахал Люду (81)»)
Для создания каждой записи Коле теперь в среднем нужно будет перебрать порядка 50 чисел, что трудозатратно. Соответственно, если запись кто-то подменит, подделка её и всех последующих будет тоже в 50 раз сложнее, а это значит, что теперь Васе даже с таджиками не справиться.
Через какое–то время Коля взял себе партнёра и они стали оба вести дневничок. Для каждой новой записи оба одновременно начинали подбирать нонс и тот, кому первому удавалось найти подходящий, вносил запись. Так как вдвоём подбирать нонсы быстрее, Коля усложнил задачу и требовал, чтобы все хеши кончались уже на три нуля, а не на два.
Этот окончательный Колин дневничок по сути и есть настоящий блокчейн, только Колю с другом надо заменить на кучу соединённых по сети компьютеров, а вычисления хешей усложнить, чтобы даже компьютерам было тяжко.
Имея такой клёвый дневничок, можно строить разные интересные системы. Например, биткоин. Биткоин — это дневничок, где каждая запись имеет вид «Передать столько-то денег с кошелька Х на кошелёк У». Так как дневничок нельзя подделать и в нём хранится вся история переводов, в любой момент из него можно вычислить количество денег на каждом кошельке. Ну а чтобы в системе вообще были какие-то деньги, биткоин сделан так, что каждая запись в дневничке заканчивается словами «Произвести Z монет и перевести мне», где «мне» — это тот пользователь, кто первым «угадает» нонс, который обеспечит хеш с нужным количеством нулей в конце.
Поверх дневничка с некоторым количеством криптографии можно строить другие интересные системы. Например, можно делать записи в духе «Кто решит уравнение f(x) = 14, тот получает 10 монеток». Соответственно, первая запись в дневничке, где будет предоставлено решение, может автоматически считаться получателем монеток. Вокруг этой и схожих идей строятся так называемые «контракты».
Стоит помнить, что блокчейн — это не более чем надёжный распределённый дневничок. Никаких мировых проблем, помимо тех, которые можно решить дневничком, блокчейн нам не решит. А те проблемы, которые он решит, он решит ценой гигаватт энергии, которые сейчас тратятся на подбор «нонсов» — по-большому счёту, впустую.
я влюбился!
Ну вот более менее хорошо объяснено.
Технология. Возможность записать некую информацию, которая сохранится на массе независимых компьютеров сети, её нельзя будет исправить или отменить, она доступна другим пользователям и они могут её проверить.
Основа понимания термина «Блокчейн» лежит в его этимологии. Слово происходит из английского языка: от «block» — «блок», и «chain» — «цепь», в целом дословно переводится как «цепочка блоков». Другими словами, это такая база данных которая представляет собой непрерывную цепь, состоящую из множества блоков, которая одновременно хранится на всех устройствах в этой сети.
Технология блокчейн, простыми словами, предназначена для удобной и быстрой передачи цифровых ценностей.
Рассмотрим на примере. Блокчейн можно сравнить с неким дневником, который имеется у каждого пользователя сети, и каждый может вносить информацию, которая добавляется в хронологическом порядке. После добавления новых данных, они шифруются надежным способом и вводятся во все копии дневника. С этого момента информацию уже невозможно изменить или удалить. Особенность в том, что все страницы дневника (они же «блоки») хранятся абсолютно у всех участников и при попытке вырвать страницу или, наоборот, вставить новую где-то между, система обратится к множеству остальных копий этого дневника и выявит расхождение в структуре дневника (он же цепочка блоков).
Другими словами, информация в блокчейне представляется в виде цифровых записей, обладающих определенной ценностью. Записи группируются в блоки, а блоки, в свою очередь, формируют цепочку блоков. Каждый новый блок добавляется в строгой хронологической последовательности в конец цепи.
Подробнее о том, что такое блокчейн и где он используется, в блоге PayKassa.
К сожалению я не специалист, так что ответ может быть несколько неточным, зато возможно, он будет чуть более простым для восприятия.
Сам блокчейн - это журнал для записи фактов, буквально такая цепочка из блоков с записями, факты могут быть чем угодно, например - транзакции, как в блокчейне биткоина. Блоки используются для того, чтобы упорядочить факты и избежать путаницы. Каждая запись в блоке с помощью методов криптографии отсылает к предыдущему блоку.
Хранится такой журнал не на одном сервере и даже не на нескольких - его копия хранится у каждого члена одноранговой (P2P) сети, она децентрализована и состоит из равноправных узлов (нодов), в этой технологии нет ничего нового и возможно, вы уже используете такую, самый очевидный пример - торренты.
Таким образом информацию о прошедшей транзакции или любую другую невозможно подделать - основная сеть отвергнет блок с измененной информацией и произойдет форк - разветвление сети, то есть основная сеть продолжит существовать неизмененной, а новая, с неправильной информацией не получит поддержку от узлов основной.
Хотелось бы попытаться объяснить алгоритмы консенсуса и методы криптографии, использующиеся в блокчейне, но, боюсь я и в основном ответе допустил пару ошибок, но надеюсь, что общее понимание пришло)
Блокче́йн (англ. blockchain или block chain[1]) — выстроенная по определённым правилам непрерывная последовательная цепочка блоков (связный список), содержащих информацию. Чаще всего копии цепочек блоков хранятся на множестве разных компьютеров независимо друг от друга.
Само слово BlockChain всё и объясняет. Идеологически изначально это стопроцентно децентрализованная цепочка равнозначных единиц. С момента внедрения идеология не изменилась, но на практике всё несколько иначе. Подробнее, но по-простому объяснено здесь - https://vvvtv.ru/blokchein/ Можно прочитать, и всё станет понятно.