Криптовалюты33222
Капитал. рынка$ 3.15T+0.19%
Объём 24ч$ 81.91B+3.00%
ДоминацияBTC61.77%+0.29%ETH7.01%-1.18%
ETH Gas2.92 Gwei
Cryptorank
ГлавнаяНовостиТемпография:...

Темпография: что это, зачем и кому нужно

Темпография: что это, зачем и кому нужно

Введение

Если коротко, темпография — это совокупность методов защиты и нападения на децентрализованные и/или распределенные сети (далее — ДРС) нового поколения с консенсусом, навроде блокчейн-решений или DAGs, основанных на использовании временных аномалий. Возможно, не все очевидно даже после определения: и это — нормально, так как темпографии от силы три-четыре года, а те способы и приемы, которые лежат в основании, недалеко ушли: быть может, отсчет стоит начать с середины 1970-х. 

Поэтому самое время разобраться. И начну с очевидного — с примеров.

Примеры темпографии

Представьте себе для начала следующие ситуации:

  • нулевое время, то есть время, которое остановилось; 

  • инвертированное время, то есть время, которое пошло задом наперед;

  • параллельное время, то есть такое, которое как-то появилось вне основного… 

Кажется, что все это фантастика? Игра фантазии? Нет, это реальность ДРС. 

Нулевое время

Им прославилась Solana. В этой сети, помимо прочего, есть часть алгоритма консенсуса под кодовым названием PoH (подробнее читаем в White paper). Для нас важно, что Solana работает как со стандартным, глобальным, временем, так и с локальным. И локальное, в свою очередь, не раз отклонялось от глобального. Пример: «проблема (была) вызвана увеличением периода, которое требуется валидатору, чтобы отправить блок в сеть (slot time)». 

Solana прославилась тем, что с 2021 года стала все чаще и чаще уходить на обед: эту проблему я рассматривал в одной из предыдущих статей. Но что происходит в это время со временем? С тем самым локальным временем, которое есть не только у Соланы, но и у сети Биткоина, Эфириума и многих других подобных? Оно останавливается. До какого момента? Как правило, до нахождения так называемого социального консенсуса. 

Поэтому нулевое время — не фантазия, но реальность. Внутри ДРС. Использовать его можно как во благо, так и во зло:

  • Во зло, например, совместив с любой разновидностью атаки Сивиллы: пока сеть находится «в отключенном состоянии», а держатели нод договариваются между собой, мало что стоит между рядовым пользователем и подложными транзакциями; 

  • Во благо, например, если нулевое (локальное) время одной сети является основанием для создания генезис-блока другой сети. 

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

Инвертированное время

У этого времени есть несколько подсостояний:

  • Скажем, если говорим о взломе Binance Hub, то время сначала остановилось и стало, соответственно, нулевым внутри системы, а потом было перезапущено и вернулось назад на несколько блоков. То есть произошла параллелизация настоящего через возврат к точке останова в прошлом. Нечто подобное было и в тестнете Harmony после взлома их моста. То есть инверсия заключается в том, что блоки идут в прямой последовательности (высота не нарушается), но целостность цепи нарушается из-за удаления ряда из них до определенной величины.

  • Второй подход инвертированного времени иной: он свойственен, например, сети Биткоина: блок Х+1 появляется в основной цепи раньше, чем блок Х. Почему это возможно? Потому что расхождение при синхронизации между нодами может составлять до двух полновесных часов и наследуется аж с эпохи Сатоши: «Временная метка (timestamp) считается действительной, если она больше чем медианная временная метка предыдущих 11 блоков, и меньше, чем время с поправкой на сеть (+ 2 часа). „Время с поправкой на сеть“ — медиана временных меток, возвращенных всеми узлами, подключенными к сети».

  • Наконец, третий подход временной инверсии. Создается блокчейн, где задан блок, скажем 1 000 000 000, а дальше идет обратный отсчет. То есть потом будет блок 999 999 999, потом 999 999 998 и так далее. Вплоть до анти-генезис блока: 0 (нулевого блока). 

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

А вот пример уже действующей хронокапсулы внутри сети Биткоин:

  • Представьте, что вы отправили транзакцию Биткоина в будущее, то есть она станет доступной на определенном блоке — стандартный механизм, встроенный в эту ДРС.

  • Так вы задаете первую часть временного периода. Затем, зная основные зоны воздействия на сеть Биткоина — халвинг (210 000 блоков), перерасчет сложности (2016 блоков) и так далее, — создаете блокчейн А, который ведет обратный отсчет и создает блоки, скажем, каждый час. Высчитываете, что за период отправки транзакции должно при нормальных условиях быть создано N блоков. Так получаете второе число заданного диапазона. Для примера я сделал эту тестовую страницу на ChatGPT. 

  • Наконец, рассчитываете погрешность и считаете, что транзакция в блокчейне Х (пусть — в Эфириуме) будет совершена только в том случае, если абсолютная разность (по модулю) между временем появления блока в блокчейне Биткоина и в блокчейне А составляет не более 48 часов. В любом ином случае транзакция будет ждать следующего периода. 

Зачем это нужно? Например, чтобы никто не мог получить некие активы раньше установленного времени: будь то наследство или принадлежащее некому ДАО цифровое имущество. При этом в стабильной сети, прямо сейчас, в начале мая 2023 года, транзакции в том же Биткоине стоят весьма не дешево, а из-за перегруженности мемпула время завершения может исчисляться сутками, а не часами. 

Но и это — еще не все. 

Параллельное время и эпоха интероперабельности 

Сегодня есть три способа добиться функциональной совместимости активов:

  1. Создать единую среду существования: будь то EVM-блокчейны или парачейны внутри Polkadot, хабы в Cosmos, сабчейны в Avalanche.

  2. Создать унифицированный инструментарий, существующий изначально в любой из взаимодействующих ДРС, скажем, (w) NFT.

  3. Создать систему оракулов, умеющих проверять начальные и конечные условия существования активов. 

При этом нет ни одного противоречия для того, чтобы соединить все способы в один. А самое интересное: все три и есть прямое подтверждение параллельного времени. Судите сами:

  1. Когда заходите на мост первого поколения и делаете обмен, то фактически морозите актив в одной сети (пусть будет ETH в сети Эфириума) и создаете его аналог в другой (пусть будет wETH в сети Polygon). Таким образом, важно не только, что актив заморожен в сети Эфира, но и что время для этого актива в ДРС с разрешенной степенью детализации расхождений одинаково: иначе как будем знать, что деньги вернулись через мост назад? Верно — никак; 

  2. В любом мультичейне по определению локализованное и локальное время — не одно и то же: локализованное — глобально для всего мультичейна, а локальное - локально исключительно для его части. 

Но какой во всем этом практический смысла? Тем более — здесь и сейчас? 

MEV-боты и их друзья во времени

Давайте начнем с примера, некогда обнародованного на Bits.media : «Будильник Эфириума позволяет пользователям сети заранее планировать будущие транзакции, определяя адрес получателя, сумму и желаемое время транзакции. Также пользователи должны заранее оплатить сборы за газ». Итак, там, где появляется нечто со словом «заранее» или его синонимами — это темпография. Но где же такое происходит постоянно? Верно: у MEV-ботов. 

Кто они такие? MEV — максимально извлекаемая стоимость (Maximal Extractable Value): «В теории определять включение транзакций в блок должны валидаторы, на практике это делают сёрчеры (searchers),

Читать материал на Bits.media

Читать больше

Суд Индии сравнил торговлю биткоином с подпольной системой денежных переводов

Суд Индии сравнил торговлю биткоином с подпольной системой денежных переводов

Суд рассматривал ходатайство об освобождении под залог, поданное жителем Индии Шайлеш...
Виталик Бутерин предложил упростить сеть Эфириума по примеру Биткоина

Виталик Бутерин предложил упростить сеть Эфириума по примеру Биткоина

Бутерин опубликовал статью, где изложил, каким образом можно изменить архитектуру Эфи...
ГлавнаяНовостиТемпография:...

Темпография: что это, зачем и кому нужно

Темпография: что это, зачем и кому нужно

Введение

Если коротко, темпография — это совокупность методов защиты и нападения на децентрализованные и/или распределенные сети (далее — ДРС) нового поколения с консенсусом, навроде блокчейн-решений или DAGs, основанных на использовании временных аномалий. Возможно, не все очевидно даже после определения: и это — нормально, так как темпографии от силы три-четыре года, а те способы и приемы, которые лежат в основании, недалеко ушли: быть может, отсчет стоит начать с середины 1970-х. 

Поэтому самое время разобраться. И начну с очевидного — с примеров.

Примеры темпографии

Представьте себе для начала следующие ситуации:

  • нулевое время, то есть время, которое остановилось; 

  • инвертированное время, то есть время, которое пошло задом наперед;

  • параллельное время, то есть такое, которое как-то появилось вне основного… 

Кажется, что все это фантастика? Игра фантазии? Нет, это реальность ДРС. 

Нулевое время

Им прославилась Solana. В этой сети, помимо прочего, есть часть алгоритма консенсуса под кодовым названием PoH (подробнее читаем в White paper). Для нас важно, что Solana работает как со стандартным, глобальным, временем, так и с локальным. И локальное, в свою очередь, не раз отклонялось от глобального. Пример: «проблема (была) вызвана увеличением периода, которое требуется валидатору, чтобы отправить блок в сеть (slot time)». 

Solana прославилась тем, что с 2021 года стала все чаще и чаще уходить на обед: эту проблему я рассматривал в одной из предыдущих статей. Но что происходит в это время со временем? С тем самым локальным временем, которое есть не только у Соланы, но и у сети Биткоина, Эфириума и многих других подобных? Оно останавливается. До какого момента? Как правило, до нахождения так называемого социального консенсуса. 

Поэтому нулевое время — не фантазия, но реальность. Внутри ДРС. Использовать его можно как во благо, так и во зло:

  • Во зло, например, совместив с любой разновидностью атаки Сивиллы: пока сеть находится «в отключенном состоянии», а держатели нод договариваются между собой, мало что стоит между рядовым пользователем и подложными транзакциями; 

  • Во благо, например, если нулевое (локальное) время одной сети является основанием для создания генезис-блока другой сети. 

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

Инвертированное время

У этого времени есть несколько подсостояний:

  • Скажем, если говорим о взломе Binance Hub, то время сначала остановилось и стало, соответственно, нулевым внутри системы, а потом было перезапущено и вернулось назад на несколько блоков. То есть произошла параллелизация настоящего через возврат к точке останова в прошлом. Нечто подобное было и в тестнете Harmony после взлома их моста. То есть инверсия заключается в том, что блоки идут в прямой последовательности (высота не нарушается), но целостность цепи нарушается из-за удаления ряда из них до определенной величины.

  • Второй подход инвертированного времени иной: он свойственен, например, сети Биткоина: блок Х+1 появляется в основной цепи раньше, чем блок Х. Почему это возможно? Потому что расхождение при синхронизации между нодами может составлять до двух полновесных часов и наследуется аж с эпохи Сатоши: «Временная метка (timestamp) считается действительной, если она больше чем медианная временная метка предыдущих 11 блоков, и меньше, чем время с поправкой на сеть (+ 2 часа). „Время с поправкой на сеть“ — медиана временных меток, возвращенных всеми узлами, подключенными к сети».

  • Наконец, третий подход временной инверсии. Создается блокчейн, где задан блок, скажем 1 000 000 000, а дальше идет обратный отсчет. То есть потом будет блок 999 999 999, потом 999 999 998 и так далее. Вплоть до анти-генезис блока: 0 (нулевого блока). 

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

А вот пример уже действующей хронокапсулы внутри сети Биткоин:

  • Представьте, что вы отправили транзакцию Биткоина в будущее, то есть она станет доступной на определенном блоке — стандартный механизм, встроенный в эту ДРС.

  • Так вы задаете первую часть временного периода. Затем, зная основные зоны воздействия на сеть Биткоина — халвинг (210 000 блоков), перерасчет сложности (2016 блоков) и так далее, — создаете блокчейн А, который ведет обратный отсчет и создает блоки, скажем, каждый час. Высчитываете, что за период отправки транзакции должно при нормальных условиях быть создано N блоков. Так получаете второе число заданного диапазона. Для примера я сделал эту тестовую страницу на ChatGPT. 

  • Наконец, рассчитываете погрешность и считаете, что транзакция в блокчейне Х (пусть — в Эфириуме) будет совершена только в том случае, если абсолютная разность (по модулю) между временем появления блока в блокчейне Биткоина и в блокчейне А составляет не более 48 часов. В любом ином случае транзакция будет ждать следующего периода. 

Зачем это нужно? Например, чтобы никто не мог получить некие активы раньше установленного времени: будь то наследство или принадлежащее некому ДАО цифровое имущество. При этом в стабильной сети, прямо сейчас, в начале мая 2023 года, транзакции в том же Биткоине стоят весьма не дешево, а из-за перегруженности мемпула время завершения может исчисляться сутками, а не часами. 

Но и это — еще не все. 

Параллельное время и эпоха интероперабельности 

Сегодня есть три способа добиться функциональной совместимости активов:

  1. Создать единую среду существования: будь то EVM-блокчейны или парачейны внутри Polkadot, хабы в Cosmos, сабчейны в Avalanche.

  2. Создать унифицированный инструментарий, существующий изначально в любой из взаимодействующих ДРС, скажем, (w) NFT.

  3. Создать систему оракулов, умеющих проверять начальные и конечные условия существования активов. 

При этом нет ни одного противоречия для того, чтобы соединить все способы в один. А самое интересное: все три и есть прямое подтверждение параллельного времени. Судите сами:

  1. Когда заходите на мост первого поколения и делаете обмен, то фактически морозите актив в одной сети (пусть будет ETH в сети Эфириума) и создаете его аналог в другой (пусть будет wETH в сети Polygon). Таким образом, важно не только, что актив заморожен в сети Эфира, но и что время для этого актива в ДРС с разрешенной степенью детализации расхождений одинаково: иначе как будем знать, что деньги вернулись через мост назад? Верно — никак; 

  2. В любом мультичейне по определению локализованное и локальное время — не одно и то же: локализованное — глобально для всего мультичейна, а локальное - локально исключительно для его части. 

Но какой во всем этом практический смысла? Тем более — здесь и сейчас? 

MEV-боты и их друзья во времени

Давайте начнем с примера, некогда обнародованного на Bits.media : «Будильник Эфириума позволяет пользователям сети заранее планировать будущие транзакции, определяя адрес получателя, сумму и желаемое время транзакции. Также пользователи должны заранее оплатить сборы за газ». Итак, там, где появляется нечто со словом «заранее» или его синонимами — это темпография. Но где же такое происходит постоянно? Верно: у MEV-ботов. 

Кто они такие? MEV — максимально извлекаемая стоимость (Maximal Extractable Value): «В теории определять включение транзакций в блок должны валидаторы, на практике это делают сёрчеры (searchers),

Читать материал на Bits.media

Читать больше

Суд Индии сравнил торговлю биткоином с подпольной системой денежных переводов

Суд Индии сравнил торговлю биткоином с подпольной системой денежных переводов

Суд рассматривал ходатайство об освобождении под залог, поданное жителем Индии Шайлеш...
Виталик Бутерин предложил упростить сеть Эфириума по примеру Биткоина

Виталик Бутерин предложил упростить сеть Эфириума по примеру Биткоина

Бутерин опубликовал статью, где изложил, каким образом можно изменить архитектуру Эфи...