Использование Биткойна для регистрации документов

DeedBooksНесколько разработчиков сейчас работают над программным обеспечением, позволяющим использовать цепочку блоков Биткойна для регистрации сигнатур произвольных документов.

Эта идея существует довольно давно и называется «окрашенными монетами» (Colored Coins), но лишь немногие понимают ее важность. Возможно, и вы не до конца понимаете, что представляет из себя Биткойн на самом деле. Его использование в качестве валюты позволяет окупить и даже сделать прибыльным дорогостоящий майнинг, но это не самое главное. Главное то, что любая группа незнакомых друг с другом пользователей получает децентрализованную систему для заключения сделок. Если биткойны используются в качестве валюты, то эта система подтверждает транзакции. Нас не волнует, откуда к нам попадают доллары, но мы должны знать, примет ли их в качестве оплаты тот, с кем мы захотим рассчитаться. Так же и Биткойн позволяет определить, какие транзакции будут признаны другими участниками.

Но и это далеко не все. Цепочка блоков необратима и неуничтожима. Она содержит отметки времени. Любой человек на планете может быть уверен, что его версия цепочки блоков в точности совпадает с любой другой (если только правительство его страны не отключило Интернет, никому не сообщив об этом). Таким образом, если вы оставите сигнатуру какого-либо блока данных в цепочке блоков, любой пользователь сможет впоследствии убедиться, что этот блок был сформирован в определенное время в прошлом. Этим блоком данных может быть произведение искусства (например, чтобы защитить от кражи вашу мелодию), пакет контрактов (чтобы доказать, что у вас действительно были определенные деловые отношения), регистрация торговой марки или имени («я первым зарегистрировал это имя») или иной объект, позволяющий определить правообладателя.

Цепочка блоков не является дешевым или удобным местом для хранения больших объемов необработанных данных, однако благодаря криптографическим хэш-функциям (SHA, RIPEMD и т. п.) мы можем хранить в ней только компактную сигнатуру, а сами данные держать в другом месте. Существует лишь ничтожно малая вероятность того, что определенная сигнатура появится случайно или не будет однозначно определять конкретную версию документа.

Итак, как же сохранить сигнатуру в цепочке блоков? Я могу предложить три способа. Уверен, что вы сможете найти и другие.

Первый способ самый простой. Поскольку биткойн-адрес представляет собой хэш открытого ключа (RIPEMD160 или SHA256), почему бы не использовать хэш документа в качестве адреса и просто не отправить на него какую-то сумму? Такой вариант использования уже неоднократно предлагался (его очень легко реализовать), однако его неприятным следствием является безвозвратная потеря отправленных денег. Так как ваш документ не будет настоящим открытым ключом, вы никогда не найдете секретный ключ, чтобы получить доступ к монетам. При текущем курсе, минимальная возможная сумма (0,00000001 BTC) не столь существенна, но сам принцип «сжигания» денег никак нельзя назвать элегантным. Кроме того, при этом увеличивается количество «неистраченных монет» («неистраченных выходов транзакций» (UTXO), о которых мы поговорим позже), которое увеличивает размер базы данных транзакций. Чтобы предотвратить «раздувание» базы данных, некоторые майнеры не будут обрабатывать транзакции с такими мизерными суммами. Это приведет к увеличению задержек, и некоторые фанаты Биткойна невзлюбят вас по многим причинам (хотя в принципе это не их дело). Чтобы все были довольны, нужно попробовать что-нибудь получше. (Эту схему можно слегка модифицировать: при отправке мелкой суммы можно указать нулевое значение выхода, чтобы майнер получил в качестве комиссии всю сумму. Однако даже нулевые выходы технически могут быть потрачены, так что это не решает проблему «раздувания»).

Другой метод также заключается в использовании сигнатуры SHA256, но не в качестве адреса, а в качестве секретного ключа. На основании этого секретного ключа вы создаете открытый ключ и адрес, на который и отправляете некоторую сумму. Когда вы опубликуете свой документ, люди смогут вычислить секретный ключ и потратить монеты. Чтобы избежать этого, вы можете немного подождать и отправить их обратно на свой личный адрес, перед тем как опубликуете какую-либо информацию. Или можете использовать незначительную сумму, которую вам не жалко потерять, если кто-нибудь успеет забрать ее раньше. Таким образом, вы не создаете «пылевые» выходы, которые застрянут навсегда и будут раздражать других пользователей, и в то же время не делаете ничего сложного. Единственное неудобство состоит в том, что вам нужно немного подождать и провести вторую транзакцию, чтобы вернуть деньги. Кроме того, если вы будете выжидать недостаточно долго, вам придется заплатить комиссионный сбор, подтверждающий, что ваша транзакция не является спамом.

Третий способ немного сложнее, но для него потребуется только одна транзакция и не придется «сжигать» деньги. Выходами биткойн-транзакций являются простые скрипты – короткие последовательности операций, которые должны быть выполнены с определенными данными, чтобы монеты могли быть потрачены. Обычно скрипт очень простой: «проверить подпись для данного хэшированного открытого ключа», но он может быть и более сложным. Для формирования отметки времени можно использовать скрипт, позволяющий использовать одну из двух подписей. Это значит, что транзакцию сможет потратить тот, кто соответствует одному из двух условий. Такая транзакция будет содержать два адреса вместо одного, но для ее траты нужно будет использовать секретный ключ, соответствующий лишь одному из них. Один адрес будет создан из сигнатуры (так же, как в первом способе), а другой будет настоящим адресом, секретный ключ которого хранится в вашем кошельке. Этот способ позволяет не создавать дополнительные транзакции и использовать любое количество монет. Единственная проблема в том, что в настоящее время такая транзакция считается «нестандартной». Это значит, что лишь немногие клиенты будут передавать ее майнерам и не все майнеры включат ее в цепочку. Другими словами, понадобится больше времени, чем обычно, чтобы такая транзакция попала в цепочку блоков. Однако после того как она там окажется, каждый сможет увидеть и подтвердить ее.

Надеюсь, люди признают, что использование цепочки блоков для создания отметок времени – это не трюк, а одна из ее важнейших возможностей. И что эту возможность можно использовать, не причиняя неудобства другим пользователям.

Ссылки:

  1. Биткойн – это общедостуный журнал транзакций: https://news.ycombinator.com/item?id=5796935
  2. Средство для создания отметок времени btproof: https://news.ycombinator.com/item?id=5790382

Источник: Олег Андреев



Categories: Законы, Разработчикам, Технологии

Leave a Reply

5 Комментарий на "Использование Биткойна для регистрации документов"

Notify of
avatar
WSUatopin
Гость

Веб студия Uatopin — это компания людей, которые знают свое дело: создание сайта, оптимизация сайта, поддержка сайта и продвижение сайта в top10 ведущих Поисковых Систем Интернет.
На рынке Интернет-услуг более девяти лет. За это время, Мы приобрели постоянных клиентов, которые доверились Нашим профессионалам. Мы сделаем все возможное и даже невозможное, чтобы привести Вас или Вашу компанию к успеху.
Еще ни один из наших клиентов не был разочарован в поисковой оптимизации, как о способе привлечения целевой аудитории. Уже через несколько дней на Ваш сайт будут приходить целевые посетители. С каждым клиентом индивидуальный подход.

trackback
Блокчейн – ключ к революции в интеллектуальных правах | Bit•Новости

[…] пределами криптовалют — например, для регистрации документов. И вот еще один пример такого использования. […]

trackback
Биткойн может совершить революцию в бухгалтерском деле | Bit•Новости

[…] биткойна, является бухгалтерский учет. Мы уже писали о потенциале использования биткойн-подобных технологий для учета и регистрации. […]

trackback
Биткойн — это не просто валюта для спекулянтов | Bit•Новости

[…] и дешевыми, а также позволяющий реализовать надежную регистрацию и смену прав собственности, не только для валют, но и для других активов, товаров и […]

trackback
Криптомодель проведения честных выборов | Bit•Новости

[…] открывает целый кластер новых возможностей во всех областях человеческой деятельности. Особенно […]

wpDiscuz