{"id":734,"title":"\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u044b \u043b\u0438 \u0440\u043e\u043c\u0430\u043d\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0441\u043c\u043e\u0441\u0435","url":"\/redirect?component=advertising&id=734&url=https:\/\/vc.ru\/promo\/259126-open-talk&hash=fec332d96351537fb9302c3be12200b6afa110f6576560c55c0b83e05d1505b7","isPaidAndBannersEnabled":false}

Самое понятное объяснение принципа работы блокчейна Статьи редакции

Действующие лица: Коля, Вася, таджики и Люда (в эпизодах).

Фото stivoberlin, Flickr

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

Однако объяснить то, как работает блокчейн (и сам биткоин), до сих пор непросто. На «Лепрозории» попытались в очередной раз показать на пальцах принцип работы блокчейна, и, кажется, у пользователя sleep получилось сделать это максимально наглядно — в виде истории о Коле, ведущем дневник, и Васе, который этот дневник пытается подделать.

Блокчейн — это дневник, который почти невозможно подделать

Коля решил вести дневник. Для этого он завёл тетрадку и начал писать там строчки вроде таких:

1. Купил хлеба2. Позвонил Геннадию…132. Дал Васе в долг 100 рублей133. Трахал Люду134. Покакал

Он очень старался вести дневник честно, и если у него с кем-то возникал спор о чём-то, что произошло раньше, он доставал его и тыкал всем носом в свои записи. Однажды Коля сильно поспорил с Васей на тему того, давал ли он Васе в долг 100 рублей или нет. В момент спора у Коли не было с собой дневника, но он обещал завтра же принести и всё показать Васе.

Вася решил не искушать судьбу, пробрался к Коле в дом, нашёл дневник, долистал до строчки 132 и заменил её на «Трахал Олю». На следующий день Коля достал дневник, долго искал в нём запись про долг Васе, не нашёл и пришел извиняться.

Прошёл год, Васю замучила совесть, и он признался во всём Коле. Коля простил друга, но решил на будущее использовать какую-нибудь более надёжную систему записи, которую нельзя было бы так просто подделывать.

Придумал он следующее. У себя в операционной системе «Линупс» он нашёл программу md5sum, которая брала любой текст и превращала его в хеш — 32 непонятные цифры. Как именно она это делала, Коля не понимал, но в целом казалось, что она выдавала полную белиберду. Например, если в программу ввести слово «привет», она в ответ выдаёт «8b4609d7e974702ff1451220c7ededcf». А если ввести, казалось бы, почти то же самое, но с лишним пробелом, то уже «69ab827825fdb876e709abd3d783dbb6».

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

0000 (начальный хеш, ограничимся для простоты четырьмя знаками)1. Купил хлеба4178 (хеш от 0000 и «Купил хлеба»)2. Позвонил Геннадию4234 (хеш от 4178 и «Позвонил Геннадию»)…4492132. Дал Васе в долг 100 рублей1010133. Трахал Люду 8204 (хеш от 1010 и «Трахал Люду»)

Если теперь какой-нибудь Вася захочет изменить строчку 132, изменится и хеш этой строчки (он будет не 1010, а чем-то другим). Это, в свою очередь, повлияет на хеш строчки «133. Трахал Люду» (он будет не 8204, а чем-то другим), и так далее до конца дневника. Теперь ради одной записи Васе придётся подменить весь дневник после неё, что сложно.

Прошло время, Коля открыл банк. Он всё так же писал в дневничок записи «дал в долг» и «взял в кредит», снабжая их хешами. Банк разросся, и однажды он дал в долг (уже новому) Васе миллион. Следующей ночью десять нанятых Васей за полмиллиона таджиков пробрались в комнату Коле, заменили запись «143313. Дал в долг Новому Васе 1000000» на «143313. Дал в долг Новому Васе 10» и по-быстрому пересчитали все хеши вплоть до конца дневника.

Чудом Коля обнаружил подмену и, раз такое дело, решил усложнить способ подделки дневника: «Теперь, — решил Коля, — я буду в конце каждой записи в скобочках добавлять какое–нибудь число („нонс“), а подбирать его буду так, чтобы каждый хеш заканчивался на два нуля». Единственный способ это сделать — тупо перебирать числа, пока не получится нужный хеш:

0000 (начальный хеш, ограничимся для простоты четырьмя знаками)1. Купил хлеба (22)4100 (хеш от 0000 и «Купил хлеба (22)», 22 было подобрано, чтобы хеш кончался на 00)2. Позвонил Геннадию (14)3100 (хеш от 4100 и «Позвонил Геннадию (14)»)…1300132. Дал Васе в долг 100 рублей (67)9900133. Трахал Люду (81)8200 (хеш от 9900 и «Трахал Люду (81)»)

Для создания каждой записи Коле теперь в среднем нужно будет перебрать порядка 50 чисел, что трудозатратно. Соответственно, если запись кто-то подменит, подделка её и всех последующих будет тоже в 50 раз сложнее, а это значит, что теперь Васе даже с таджиками не справиться.

Через какое–то время Коля взял себе партнёра и они стали оба вести дневничок. Для каждой новой записи оба одновременно начинали подбирать нонс и тот, кому первому удавалось найти подходящий, вносил запись. Так как вдвоём подбирать нонсы быстрее, Коля усложнил задачу и требовал, чтобы все хеши кончались уже на три нуля, а не на два.

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

Блокчейн — это не более чем дневничок записей, который можно записывать совместно, и в котором де-факто невозможно подделать старые записи.

Имея такой клёвый дневничок, можно строить разные интересные системы. Например, биткоин. Биткоин — это дневничок, где каждая запись имеет вид «Передать столько-то денег с кошелька Х на кошелёк У». Так как дневничок нельзя подделать и в нём хранится вся история переводов, в любой момент из него можно вычислить количество денег на каждом кошельке. Ну а чтобы в системе вообще были какие-то деньги, биткоин сделан так, что каждая запись в дневничке заканчивается словами «Произвести Z монет и перевести мне», где «мне» — это тот пользователь, кто первым «угадает» нонс, который обеспечит хеш с нужным количеством нулей в конце.

Поверх дневничка с некоторым количеством криптографии можно строить другие интересные системы. Например, можно делать записи в духе «Кто решит уравнение f(x) = 14, тот получает 10 монеток». Соответственно, первая запись в дневничке, где будет предоставлено решение, может автоматически считаться получателем монеток. Вокруг этой и схожих идей строятся так называемые «контракты».

Стоит помнить, что блокчейн — это не более чем надёжный распределённый дневничок. Никаких мировых проблем, помимо тех, которые можно решить дневничком, блокчейн нам не решит. А те проблемы, которые он решит, он решит ценой гигаватт энергии, которые сейчас тратятся на подбор «нонсов» — по-большому счёту, впустую.

За наводку спасибо mortalezz.

{ "author_name": "Никита Лихачёв", "author_type": "self", "tags": ["\u043a\u0440\u0438\u043f\u0442\u043e\u0432\u0430\u043b\u044e\u0442\u044b","\u0437\u043e\u043b\u043e\u0442\u043e\u0439\u0444\u043e\u043d\u0434","\u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d"], "comments": 57, "likes": 256, "favorites": 108, "is_advertisement": false, "subsite_label": "news", "id": 41306, "is_wide": false, "is_ugc": true, "date": "Wed, 22 Feb 2017 12:17:00 +0300", "is_special": false }
0
57 комментариев
Популярные
По порядку
Написать комментарий...

Головной дым

41

я ваще подумал, Коля сразу заподозрит, что два перепихона подряд - это какое то палево, но у чувака явно нет проблем с самооценкой

неудивительно, что друзья кидают его на бабки

Ответить

Бесполезный бас

Алексей
5

два перепихона подряд - это какое то палев

ты там держись чтоль

Ответить

Головной дым

Бесполезный
1

смешно, но я же про разных баб))

Ответить

Бесполезный бас

Алексей
0

Я тоже

Ответить

Головной дым

Бесполе…
18

ух альфач в треде

Ответить

Бесполезный бас

Алексей
1

Сейчас я почтенный отец семейства.

А раньше чего только не бывало

Ответить

Головной дым

Бесполе…
6

ДАДА МЫ ЗНАЕМ

Ответить

Бесполезны

Алексей
0

Нуачетытогдаалеее

Ответить
2

хочу знать все подробности твоей жизни

не думал продать СТО и купить ТЖ?

Ответить

Бесполезны

Алексей
0

Нет.

Ответить
0

и правильно, он и так в принципе твой почти

Ответить

Бесполезны

Алексей
0

Нет

Ответить
0

ты не заставишь меня написать "пидора ответ", даже не старайся

Ответить

Бесполезны

Алексей
0

Да чет даже не думал об этом

Ответить

Медленный

Бесполе…
0

А раньше чего только не бывало

Ну без фотопруфов не считается

Ответить

Бесполезны

N/a
0

Довсеобщесмарфонная эпоха

Ответить

Ненужный дым

9

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

Ведь что сегодня из себя представляет биткоин? — это набор различных приложений и веб-сервисов. Лишь единицы пользователей будут выгружать весь пак блоков себе на компьютер и разбираться в этом. Подавляющая часть людей скачает первый попавшийся клиент-кошелек или зарегается на бирже, что одно и то же. При этом всю эту сложную криптографию и блоки берет на себя сам сервис-кошелек, не утруждая пользователя вниканием в детали. "Введи ID и жми отправить" — вот принцип работы большей части биткоин-сервисов сегодня.

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

Ответить

Плоский кавалер

BitPost
0

Комментарий удален по просьбе пользователя

Ответить

Ненужный дым

Kat
6

А по-вашему среднестатистический клиент перед тем как открыть счет в банке изучает финансовые показатели банков? Или их лендинги по каким-то другим принципам работают? Конечно нет)

Ответить

Плоский кавалер

BitPost
5

Комментарий удален по просьбе пользователя

Ответить

Головной дым

Kat
0

не знал, что ты с Украины
(не то чтобы это что то меняло, просто интересно)

Ответить

Плоский кавалер

Алексей
0

Комментарий удален по просьбе пользователя

Ответить

Головной дым

Kat
2

упустил наверное

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

(хотя скорее именно поэтому они наверное и становятся их клиентами)

Ответить
2

Комментарий удален по просьбе пользователя

Ответить

Головной

Kat
0

вот щас стыдно было

Ответить

Предвыборный

Kat
0

На аватарке у тебя оселедець не видно прост, поэтому люди предполагают defaultCountry.

Ответить

Головной

Alex
0

сегодня я выучил новое слово!

Ответить

Ненужный дым

Kat
0

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

Ответить

Предвыборный

BitPost
2

скачает первый попавшийся клиент-кошелек или зарегается на бирже, что одно и то же

Это - не одно и то же, и это вещь которую стоит объяснять среднему юзеру.

Кошелёк установленный на твоём железе (телефон, лаптоп и тд) - это твой кэш которым ты владеешь полностью и безраздельно.

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

Ответить

Ненужный дым

Alex
2

Кошелёк установленный на твоём железе (телефон, лаптоп и тд) - это твой кэш которым ты владеешь полностью и безраздельно.

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

Ответить

Престижный историк

BitPost
–2

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

Ответить

Предвыборный химик

Никита
3

Подавляющее большинство этих приложений - не будут.

Ответить

Предвыборный химик

Никита
3

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

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

Для Андроида я рекомендую использовать Bitcoin Wallet https://play.google.com/store/apps/details?id=de.schildbach.wallet, его написали люди которым я доверяю как специалистам в этой области.

Ответить

Ненужный дым

Никита
0

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

Ответить

Предвыборный

BitPost
1

Это описание работы приложения внешнего сервиса. Дефолтной рекомендацией должен быть SPV кошелёк.

Ответить

Свойственный томагавк_два

6

133. Трахал Люду
134. Покакал

- им пора расстяться

Ответить

Долгий фитиль

Денис
19

Записи начинающего микроблогера

Ответить

Слабый хичхакер

4

Все равно не понял.

Ответить

Крупный Артем

levshaazz
17

Короче шифр, который хуй сломаешь
Понятней?

Ответить

Слабый хичхакер

kavabanger
12

А, ну теперь-то.

Ответить

Противоположный ящик

kavabanger
0

тут не все так однозначно

Ответить

Отчаянный фонарь

kavabanger
0

Хуй сломаешь и почти невозможно разные вещи.

Ответить

Крупный Артем

Дмитрий
7

Если бы я написал "сложно сломать" то потерял бы в экспрессивности. А я очень, очень экспресивный

Ответить

Отчаянный фонарь

kavaban…
0

Экспрессивный хуй!

Ответить

Крупный Артем

Дмитрий
0

И чо?

Ответить

Отчаянный фонарь

kavaban…
0

И веселье! :) 🍾🍷🍸🍹🍺🍻

Ответить
1

Это завсегда, тут я как Ивахнов

Ответить

Отчаянный

kavaban…
1

Ну, поехали!

Ответить

Плоский кавалер

4

Комментарий удален по просьбе пользователя

Ответить

Олимпийский спрей

Kat
20
Ответить

Плоский кавалер

Евгений
2

Комментарий удален по просьбе пользователя

Ответить

Жестокий Кирилл

0

Следующей ночью десять нанятых Васей за полмиллиона таджиков

А че не русских?

Ответить

Предвыборный химик

hyposlasher
4

Потому что русские за 500 рублей работать не захотят, а за полмиллиона пойдут бухать и работать не смогут.

Ответить

Жестокий Кирилл

Alex
0

Убедил

Ответить

Ракетный якорь

0

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

Ответить

Предвыборный химик

sf
3

Следить можно (если не прячутся), стричь сложнее.
Инфляцию не подкрутить, процентной ставкой не поиграть, конские комиссии не собрать, курс не опустить, и даже счета заблокировать нельзя, только отследить, да и то не всегда.

Ответить

Примитивный космос

–2

Комментарий удален по просьбе пользователя

Ответить
Читать все 57 комментариев
Обсуждаемое
Twitter
Новости
Руслан Усачев объявил об отъезде из России по политическим причинам
Блогер собирается «путешествовать по миру, пока не найдёт новый дом».
Новости
Все рестораны Москвы переводят на «бесковидный» режим: пускать будут привитых, переболевших и с отрицательным тестом
Попасть в заведение можно будет только по QR-коду — никаких бумажных справок.
Популярное за три дня
Новости
Руслан Усачев объявил об отъезде из России по политическим причинам
Блогер собирается «путешествовать по миру, пока не найдёт новый дом».
Наука
Астрономы заявили о вращении самых крупных объектов во вселенной — «волокон» с галактиками внутри
Длина каждого такого «волоса» составляет сотни миллионов световых лет, в одном из них находится и Млечный путь.
Интернет
В сеть попало БДСМ-видео кандидата в городской совет Нью-Йорка. Тот ответил: «Да, я БДСМ-щик, и что? Я горжусь этим»
В твиттере похвалили открытость кандидата и отметили: пока видео снято не на рабочем месте — в этом нет ничего плохого (в отличие от слива ролика в политических целях).
Комментарии
null