Две новые модели атак double-spending на биткойн-блокчейн

Две новые модели атак double-spending на биткойн-блокчейн

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

 

 

 

  1. Введение
  2. Две классические модели атаки double-spending
  3. Две новые модели атаки double-spending
  4. Выводы

Введение

  1. Распишем элементы, требуемые для успешной атаки типа double-spending:
  2. Атакующее лицо А запрашивает продукт или услугу у лица Б.
  3. Лицо А создает две биткойн-транзакции, одна из которых включает платежи за продукт или услугу, которую он требует от лица Б, а вторая платит ту же сумму самому атакующему.
  4. Далее атакующий будет транслировать транзакцию «от А к Б», а затем тайн начнет майнить блок, включающий оплату «от А к А». Как только атакующий успешно разберется с этим блоком, к нему будут добавлены дополнительные.
  5. Сторона Б (другими словами, жертва) предоставит услугу или продукт стороне А, то есть атакующему, увидев наличие транзакции, причем не обратив внимания, подтверждена она или нет.
  6. Стороне A может повезти, и атака удастся, если узлы, настроенные злоумышленниками, будут передавать все новые сформированные блоки в новую ветку таким образом, что мошенническая ветвь будет длиннее ветви, включающей действительную транзакцию.

Рисунок 1. Элементы успешной double-spending-атаки

Две классические модели атаки double-spending

Прежде чем вникать в новые модели, кратко рассмотрим основные элементы классических моделей обсуждаемой атаки. В свое время экспертами были описаны две модели double-spending -атаки. Чтобы лучше понять модели, мы зададим следующие параметры:

  • Величина q ∈ [0,1] представляет вероятность успеха узлов атакующего, учитывая, что они начали майнить одновременно с легитимными узлами.
  • Величина K ∈ N представляет собой пороговое значение количества подтверждений, необходимых для проверки транзакций, принадлежащих определенному блоку.
  • Величина T ∈ R>0 представляет собой время в секундах, необходимое узлам добычи для успешного создания блока.
  • Кроме того, мы будем использовать выражение N для указания функций, используемых исключительно в модели Накамото, а также выражение R, чтобы указать функции, используемые исключительно в модели атаки Розенфельда.

DSN (q,K) и DSR (q,K) представляют собой модели Накамото и Розенфельда соответственно, они используются для измерения вероятности успеха атакующего, учитывая, что он контролирует q процентов узлов сети, а величина K символизирует количество блоков, успешно добытых легитимными узлами.

Две новые модели атаки double-spending

В исследовательском документе, опубликованном недавно, описываются две модели атаки: «Обобщенная модель» и «Модель, основанная на времени».

Обобщенная модель

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

Потенциальный прогресс атакующего может быть представлен следующей функцией:

P (q, m, n, t)

Функция P представляет вероятность успеха злоумышленника в майнинге n блоков при условии, что легитимные узлы успешно добыли m-й блок (блок обработки). Добавленный параметр t представляет собой преимущество времени, служащее узлам злоумышленника для создания блока, содержащего мошенническую транзакцию.

Модель, основанная на времени

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

Это может быть представлено следующей функцией:

PT (q, m, n, t)

Функция показывает, что вероятность времени, требуемого узлам злоумышленника для майнинга n-го блока, в точности равна t секундам после времени, требуемого легитимным узлам для майнинга блока обработки (m-го блока).

Выводы

Здесь мы рассмотрели две новые модели атак double-spending, предложенные группой исследователей. Если первая представляет собой обобщенный вариант классической модели атаки Розенфельда, то вторая, основанная на времени, отличается от классических моделей Накамото и Розенфельда. Рекомендуется ознакомиться с документами, опубликованными экспертами.

Anti-Malware Яндекс ДзенПодписывайтесь на канал "Anti-Malware" в Telegram, чтобы первыми узнавать о новостях и наших эксклюзивных материалах по информационной безопасности.

RSS: Новые статьи на Anti-Malware.ru