Обман, выполненный мафией (англ. Mafia fraud attack) — один из способов злоупотребления доказательством с нулевым разглашением. Впервые данный метод был описан Иво Десмедтом (англ. Yvo Desmedt)[1]. Своё название способ получил благодаря высказыванию Ади Шамира[2], сделанному им во время обсуждения протокола идентификации с нулевым знанием Файга-Фиата-Шамира[3]:

Я могу ходить в принадлежащий мафии магазин хоть миллион раз подряд, а они все ещё не смогут выдать себя за меня.

Но на самом деле подобное мошенничество возможно.

Описание править

 
Описание Обмана, выполненного мафией

Пусть имеется 4 участника: A, B, C, D. Причём B и С сотрудничают между собой («принадлежат одной мафии»). А доказывает свою личность B, а С хочет выдать себя за A перед D. Обычно, мошенничество описывают следующей ситуацией: B владеет рестораном, принадлежащим мафии, С — также представитель мафии, D — ювелир. A и D не знают о предстоящем мошенничестве. В момент, когда A готов заплатить за обед и идентифицировать себя перед B, B извещает С о начале мошенничества. Это возможно, благодаря наличию радио-канала между ними. В это время, С выбирает бриллиант, который хочет купить, и D начинает идентифицировать личность С (а на самом деле A). С передаёт вопрос по протоколу B, а тот, в свою очередь, задаёт его А. Ответ передаётся в обратном порядке. Таким образом, А заплатит не только за обед, но и за дорогой бриллиант[4].

Как видно из вышеописанного, существуют определённые требования для подобного мошенничества. Например, моменты, когда А начинает доказывать свою личность перед B, а С — перед D должны быть точно синхронизированы[2].

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

Примеры применения править

  • Обман, выполненный мафией, широко применяется для атаки на RFID-системы. RFID-система (англ. Radio Frequency IDentification, радиочастотная идентификация) состоит из считывающего устройства (ридера) и транспондера (RFID-метки). Предположим, злоумышленник собирается получить несанкционированный доступ к автомобилю. Доступ обеспечивается посредством RFID (в данном случае транспондером будет бесконтактная карта). Злоумышленник, у которого есть поддельная карта («rogue card»), располагается рядом с автомобилем и устанавливает связь между своей картой и ридером RFID-системы автомобиля («legitimate reader»). В то же время сообщник, обладающий ещё одним считывающим устройством («rogue reader»), находится рядом с владельцем автомобиля и устанавливает соединение с картой легитимного владельца. Таким образом, тот из злоумышленников, кто обладает поддельной картой, передает сообщения, полученные от легитимного ридера, своему подельнику, который пересылает эти сообщения карте (транспондеру) владельца автомобиля. Ответ, полученный с легитимного транспондера, пересылается по той же цепи в обратном направлении и, в конечном итоге, доходит до ридера, установленного на автомобиле[6].
  • Mafia fraud attack также может применяться для атаки на систему радиолокационного опознавания «Свой-чужой» (IFF — Identification Friend or Foe). Многие IFF-системы используют способ аутентификации «вызов-ответ» («challenge — response authentication»). Например, два самолета W и B могут идентифицировать друг друга посредством IFF, в то время, как два вражеских самолета A1 и A2 пытаются выдать себя за «своих». В этом случае применяется схема, аналогичная схеме для атаки на RFID-системы. Например, W посылает запрос A1, для того чтобы он подтвердил свою личность, A1 пересылает сообщение A2, A2 в свою очередь отправляет этот запрос самолету B, который, являясь «своим» для W, отвечает верным сообщением. Данный ответ по тому же пути передается W. Таким образом, W и B будут считать «своими» A1 и A2 соответственно[7].

Способы предотвращения править

Дистанционно-ограниченные протоколы (Distance-bounding protocols) править

Техника предотвращения обмана, выполненного мафией, задействующая, так называемые, дистанционно-ограниченные протоколы («distance-bounding protocols»), впервые была приведена в работе Стефана Брандса (Stefan Brands) и Дэвида Чаума (David Chaum). Данная техника применяется, когда одной из взаимодействующих согласно некоторому криптографическому протоколу сторон необходимо знать, что другой участник находится на расстоянии, не более определенного. Например, если человек применяет электронный пропуск на входе в здание, система аутентификации должна определить, что человек находится от входа на расстоянии, не большем определенного. Согласно Брандсу и Чауму основной элемент дистанционно-ограниченного протокола прост. Он основывается на принципе «вызов-ответ». Происходит k мгновенных обменов битами («rapid bit exchanges») между участниками P и V, P («Prover») — тот, кто доказывает свое знание, V («Verifier») — тот, кто проверяет подлинность того, что доказывает P. Параметр k является секретным параметром протокола. Обмен битами является мгновенным в том смысле, что P после получения бита от V отправлет ответный бит незамедлительно[8].

Пример дистанционно-ограниченного протокола править

 
Описание протокола Ханке и Куна

Одним из распространенных дистанционно-ограниченных протоколов является протокол Герхарда Ханке (Gerhard P. Hancke) и Маркуса Куна (Markus G. Kuhn) [9], широко применяемый в RFID-системах[10]. На первом этапе протокола P (Prover) и V (Verifier) обмениваются одноразовыми кодами, сгенерированными случайным образом (Nonce) (то есть P и V генерируют и передают последовательности бит   и   соответственно). Затем обе стороны вычисляют одинаковые битовые последовательности   и  , используя псевдослучайную функцию (обычно это MAC или Криптографическая хеш-функция), то есть  , здесь K — это секретный ключ, известный обеим сторонам. Далее производится серия из n мгновенных обменов битами между двумя сторонами. В каждом отдельно взятом обмене V отправляет бит   («вызов») доказывающей стороне P. Если этот бит равен 0, то P отправит в качестве ответного сообщения бит под номером i из последовательности  . Если же   равен 1, то ответным сообщением будет бит с номером i из последовательности  . В свою очередь после каждого обмена битами V проверяет все полученные сообщения на корректность, а также сравнивает время, прошедшее с момента отправки сообщения   до момента получения ответного бита, с некоторым установленным значением t. Если все полученные сообщения и времена корректны, то обмен считается успешным[11].

Для того чтобы осуществить атаку, злоумышленник встраивается в данную схему и до того, как V отправил сообщение  , угадывает соответствующий бит  , затем сразу передает его стороне P. Когда злоумышленник получает сообщение от P, то он сравнивает   и  . Если биты совпадают (вероятность совпадения равна 1/2), значит злоумышленник передаст корректное сообщение   проверяющей стороне V, в оставшейся половине случаев, когда биты не совпали, мошенник пробует угадать значение теперь уже   и передает его V. Таким образом, вероятность, что злоумышленник выдаст правильное значение   равна 3/4. Для n обменов битами получаем, что вероятность успешной атаки равна  [10].

C момента публикации работы Ханке и Куна было предложено несколько решений для увеличения эффективности протокола, например, Ту (Yu-Ju Tu) и Пирамуту (Selwyn Piramuthu) предложили свой дистанционно-ограниченный протокол, который задействует некоторые принципы протокола Ханке и Куна, но позволяет снизить вероятность успешной атаки до 9/16 (для одного обмена битами)[12].

Другие способы править

  1. Идентификация должна проходить в клетке Фарадея. Если в магазине ювелира будет клетка Фарадея, то мафиози не смогут обмениваться сообщениями[2].
  2. Иво Десмедт и Томас Бет (англ. Thomas Beth) предложили использовать точные часы. Если каждый этап протокола будет проходить за точный период времени, то Мафиози просто не успеют передавать сообщения друг другу. Стоит также учитывать, что сообщения между доказывающей и подтверждающей стороной передаются не мгновенно, а с некоторой задержкой. Эта задержка связана с тем, что скорость света не бесконечна, поэтому на передачу сообщений тратится время, равное  , где l — расстояние между сторонами, а с — скорость света[13].

Другие методы злоупотребления доказательством с нулевым разглашением править

Интересным расширением обмана, выполненного мафией, является атака типа «обман, выполненный террористами»[5]. В данном виде атаки злоумышленник A (adversary) и доказывающая сторона состоят в сговоре, то есть, доказывающий участник P является нечестным участником взаимодействия (dishonest prover). P использует помощь мошенника, чтобы доказать проверяющей стороне V, что находится поблизости. Злоумышленник не знает значение секретного ключа, которым обладает P. В этом нет ничего удивительного, так как обычно на практике, A — это малое устройство, обладающее некоторой вычислительной мощностью и памятью. Данное устройство должно быть расположено вблизи V (проверяющей стороны). Доказывающая сторона не имеет полного контроля над злоумышленником, таким образом, P не может доверить свой пароль устройству A. В противном случае, например, какой-нибудь другой мошенник может совершить атаку на устройство, завладеть секретным ключом, принадлежащим P, и выдать себя за P[14].

Основным способом предотвращения обмана, выполненного террористами, также является применение дистанционно-ограниченных протоколов. Однако избежать такой атаки поможет не любой дистанционно-ограниченный протокол, применимый в случае обмана, выполненного мафией. Например, протокол Ханке и Куна, упомянутый выше, является уязвимым для обмана террористов. Доказывающий участник протокола, находящийся далеко от проверяющей стороны V, может попросту передать злоумышленнику, расположенному вблизи от V, вычисленные последовательности   и  . Тогда мошенник сможет корректно отвечать на запросы проверяющего участника, укладываясь при этом во временные рамки. Стоит отметить, что даже обладая последовательностями бит   и  , злоумышленник не сможет в будущем выдавать себя за P, поскольку он не знает секретного ключа, а последовательности   и   являются одноразовыми[15]. Одним из известных дистанционно-ограниченных протоколов, применимых для предотвращения обмана, выполненного террористами, является, например, протокол Рэйда (Reid et al.’s protocol)[15].

Существует ещё несколько методов злоупотребления доказательством с нулевым разглашением, таких как обман с несколькими личностями и проблема гроссмейстера[16].

Примечания править

Литература править