Таймчейн: эволюция смарт-контрактов с использованием замков времени (Time-Lock)

725_aHR0cDovL2NvaW50ZWxlZ3JhcGguY29tL3N0b3JhZ2UvdXBsb2Fkcy92aWV3L2FiNTNkNGVhNzAzZGUyZTE3ZjA3OTljNmQ1MTFiNDEzLnBuZw==

Мэтью Робертс (Matthew Roberts) и Элиас Снаер Эйнарсон (Elías Snær Einarsson), два разработчика в сфере криптографии, недавно предложили и опубликовали новую технологию, известную как таймчейн.

Не вдаваясь в детали, timechain — это цепочка ключей, которая может быть использована кем угодно, чтобы зашифровать любую информацию в определенный период времени. Субъекты, создающие и обслуживающие цепочку имеют ряд преимуществ, а следовательно систему можно рассматривать как децентрализованную автономную компанию (ДАК).

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

Но можно связать криптографию, науку о секретах, со временем?

Криптография и время

Вычислительные машины, несмотря на то, что они быстрее людей, требуют процессорного времени для совершения действий. Результаты более сложных процессов требуют более сложных вычислений, которые, очевидно, требуют большего времени. Хорошим примером служит добыча биткойнов, где требуется приблизительно 10 минут, чтобы решить головоломку встроить очередной блок транзакций в цепочку (блокчейн).

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

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

Следовательно, теперь мы можем считать нашу информацию закрытой на «временной замок» (time-locked). Время, которое требуется, чтобы закрыть информацию это и есть время, которое необходимо для генерации выходной информации заново. В этом заключается основа концепции time-lock шифрования, которая была предложена в 1996 году Риверстом и Шамиром (двумя хорошо известными картографами всех времен).

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

Итак весь вопрос в том, кто будет осуществлять этот продолжительный процесс?

Обслуживание цепочек времени

Цепочка времени (таймчейн) включает в себе процесс, в котором любой может принимать участие, точно также как при майнинге, и создавать цепочки из “заклеймённых” ключей приблизительно каждые пять минут. Вознаграждением для такого участника будет оплата тех, кто станет этим сервисом пользоваться.

CoinTelegraph поинтересовался у Мэтью Робертса, кто первоначально будет обслуживать цепочку времени и какие проблемы это поможет решить поначалу. Вот его ответ:

Начнем с того, что мы существуем. Мы строим цепочки времени, чтобы решить спецефическую проблему умных договоров (смарт контрактов) – так называемую пластичность транзакций. Пластичность влияет на механизмы возврата в смарт контрактах и для того, чтобы решить её, вам необходима доверенная третья сторона, которая хранит приватные ключи. Timechain позволяет нам обеспечить функции возврата для наших смарт контрактов (или чьих-то еще), которые не могут быть взломаны благодаря тому, как именно работает этот сервис.

Но как мы можем быть уверены, что создатели уничтожили выходы, а не сохранили их? Ведь нет гарантий, что те, кто генерировал выходные данные, используя хэш функции, удалят их. Робертс ответил:

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

Робертс продолжил, упомянув еще несколько других проблем с текущей версией публикации: “С таймчейном есть еще несколько проблем, которые будут решены во второй версии публикации, такие как двойные траты финансового поощрения и наша спорная идея насчёт блокчейна. Не слишком большие проблемы, от нас всего лишь потребуется привязать вознаграждение за использование цепочки и дать возможность первому, кто его получит, скрыть награду на время около 10 минут, чтобы никто другой уже не смог впоследствии заявить о своём праве на него.”

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

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

По материалам CoinTelegraph



Categories: Теория, Технологии

Tags: , ,

5 replies

  1. “Риверстом и Шамиром (двумя хорошо известными картографами всех времен)”
    Карты они чтоль рисовали и таким образом дошли до изобретения криптоалгоритмов?

    “Если кто-то хочет частично сохранить цепочку времени себе — он может, но это нарушает безопасность использования таймчейна”
    Гениально. Т.е. он хочет сказать “так можно, но… но это же нечестно, ребята”. Нет слов.

    А вобще, то ли статья переведена кривовато, то ли идея яйца выеденного не стоит, то ли и то, и другое. Вобщем сумбурненько.

  2. А может есть смысл сделать распределенный децентрализованный эталон времени

  3. Интересненько, т.е. типа я смогу оставить завещание, которое будет открыто в 2185м году. Или сделать ставку сегодня на событие в будущем…
    Надо было начать с примеров вообще-то

    • Не сможете. На длинных отрезках времени это не работает, поскольку нельзя предсказать темпы роста скорости вычислений. Да и вообще, по описанным в статье принципам невозможно задать стабильную задержку. С ростом скорости вычислений изначально заданное время задержки неизбежно будет дрейфовать в сторону уменьшения.

Поделитесь своими мыслями

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s