ELI5

ELI5 · Часть 1 из 7

Что на самом деле значит «подтверждение существования»

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

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

Label 309 — это открытый стандарт, который решает эту задачу, причём решает её, ни разу не раскрывая саму вещь.

Отпечаток, а не файл

Первым делом Label 309 пропускает ваше содержимое через хеш-функцию — одностороннее вычисление, которое превращает файл любого размера в короткий код фиксированной длины. Стандарт использует хорошо известные хеши (SHA-256 или BLAKE2b-256); так или иначе результат — всего 32 байта. Считайте его цифровым отпечатком (хешем содержимого): он уникален именно для этого содержимого, и стоит измениться хотя бы одному символу, как отпечаток получится совершенно другим.

Полезным отпечаток делают две вещи:

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

Поэтому отпечаток можно опубликовать на весь мир, а само содержимое оставить при себе. В этом и состоит суть Label 309 — стандарт называет этот принцип приоритетом содержимого: хеш и есть само утверждение, а всё остальное — лишь заметки о нём.

Закрепляем во времени

Отпечаток попадает в транзакцию в блокчейне Cardano — публичном реестре, согласованную копию которого хранят тысячи независимых компьютеров. Label 309 помещает его на отдельную «полку» — под метку метаданных 309, которая во всей сети Cardano зарезервирована именно для записей о подтверждении существования.

Как только отпечаток записан, две вещи остаются верными навсегда: отпечаток на месте, и при нём — время блока, момент, в который сеть его согласовала. Сама запись никогда не несёт даты, введённой вами вручную; единственная отметка времени, которая что-то значит, — та, что сеть проставляет на блоке. Никто не вернётся назад, чтобы изменить её или выставить задним числом.

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

Доказать это потом

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

  1. это именно то содержимое, что стоит за тем отпечатком, и
  2. оно существовало не позднее времени того блока.

Ему не пришлось доверять ни вам, ни какому-либо серверу. Он сам проверил публичную цепочку. В этом и состоит вся идея Label 309: доказательство, которое может проверить кто угодно и которое никому не нужно принимать на веру.

Что оно доказывает, а что нет

Запись Label 309 доказывает, что именно это содержимое существовало к определённому времени блока — это верхняя граница, а не «создано в такой-то конкретный день». Сама по себе она не говорит, кто это сделал: авторство — отдельная необязательная подпись, которую вы можете добавить (см. Ваши ключи, простыми словами). И она никогда не раскрывает содержимое, если вы сами этого не захотите.