Одна из первых служб, предлагающих услуги заверения в блокчейне, – «Доказательство существования» («Proof of Existence»). Пользователи могут использовать эту веб-службу для хеширования произведений цифрового искусства, программ и других цифровых объектов, чтобы доказать свое авторство[120]
. Основатель службы Мануэль Араоз предложил идею подтверждения целостности документа посредством криптографического хеша, но первоначально была проблема с подтверждением даты создания документа, пока в блокчейне не появился надежный механизм добавления временных меток[121]. «Доказательство существования» позволяет подтвердить авторство документа, не раскрывая его содержимое, и удостоверить, что документ был создан в определенное время. На рис. 3–1 показан фрагмент списка цифровых объектов, зарегистрированных в этой службе.Рисунок 3–1.
Этот инструмент дает революционную возможность использовать блокчейн для доказательства существования и фиксирования точного содержимого документа или другого цифрового объекта в заданное время. Обеспечение конфиденциальности и неизменяемость связки данных и временной метки – отличное сочетание для решения широкого диапазона юридических и гражданских вопросов. Адвокаты, клиенты и государственные администраторы могут использовать функциональность блокчейна и этой службы для доказательства существования документов различного типа, включая завещания, договоры, доверенности, медицинские свидетельства, долговые расписки и т. д., не раскрывая содержимого документа. Временные метки блокчейна позволяют доказать, что документ (например, завещание), представленный суду, является именно тем документом, без изменений, хеш которого был внесен в блокчейн. Заверять можно любые документы и цифровые объекты. Разработчики могут создавать уникальные хеши для каждой версии кода, изобретатели могут доказать, что идея появилась у них в определенное время, авторы могут защищать свои работы.
«Доказательство существования» работает следующим образом: пользователь входит на сайт службы и перетаскивает документ (или другой файл) в поле с надписью: «Щелкните здесь или перетащите документ в это поле». Копия содержимого файла не загружается на сайт, криптографическая операция вычисления хеша выполняется на клиентской стороне. Алгоритм создает дайджест, короткую криптографическую строку, представляющую данные, обработанные функцией хеширования. Два дайджеста совпадут только в том случае, если в точности совпадают данные, использованные для их вычисления. Таким образом, хеш непосредственно зависит от содержимого документа. Криптографический хеш документа помещается в транзакцию, и, когда транзакция попадет в блок, временная метка блока станет временной меткой документа. Посредством хеша содержимое документа фиксируется в распределенном журнале записей. Если функция хеширования получит тот же документ, она выдаст тот же результат, подтверждающий, что документ не изменился. Если же документ был хоть немного изменен, новый хеш не совпадет с предыдущим. Так выполняется проверка документов[122]
.Одно из преимуществ служб аттестации – эффективность использования блокчейна. В распределенном журнале записей хранятся не исходные документы, а только их хеш, доступный при наличии закрытого ключа. Когда требуется доказать существование, проверяется хеш, и если он совпадает с исходным хешем, зарегистрированным в блокчейне, это значит, что документ не изменялся. Хеш не требуется превращать в исходный документ, да это и невозможно: вычисление хеша – односторонняя операция. Этап извлечения доказательства существования можно считать «службой верификации содержимого». Чтобы обеспечить долговечность доказательства, требуется постоянное наличие ключа цифрового объекта (хеш), зарегистрированного в распределенном журнале записей. Для этого необходимо удостовериться, что та блокчейн-система, где зарегистрирован документ, будет существовать и в будущем. Таким образом, желательно выбирать службу заверения, использующую стандартный блокчейн – такой, как распределенный журнал записей биткойна.