Дистанционно-ограниченные протоколы (англ. Distance-bounding protocols) — криптографический протоколы аутентификации, основанные на определении расстояния между взаимодействующими лицами. Впервые протокол был разработан Стефаном Брандсом (англ. Stefan Brands) и Дейвидом Чаумом (англ. David Chaum) в 1993 году[1].
Основная идея заключается в достоверности знаний доказывающего участника («Prover»), путем проверки подлинности этих знаний проверяющим участником («Verifier») и в необходимости, что доказывающий участник находится на расстоянии от проверяющего, не более определенного[2].
Данные протоколы позволяют предотвратить такие виды криптографических атак на RFID-системы, как: атака посредника; обман, выполненный мафией; обман, выполненный террористами; мошенничество с расстоянием[3].
Идея дистанционно-ограниченного протокола Брандсона-Чаума[1] основана на принципе «вызов-ответ». Пусть имеется два участника: - доказывающая сторона, которая доказывает свое знание секрета. - проверяющая сторона, которая проверяет подлинность этого секрета. Перед обменом сообщений, стороны и генерируют случайную последовательность -бит, и соответственно. Параметр является секретным параметром протокола. Данный протокол разбивается на две части:
Данный протокол предотвращает обман, выполненный мафией с вероятностью .[4]
При реализации протокола Брандсона-Чаума в случае когда, сторона знает через какое время придет следующий бит, ответный бит стороне может отослать заранее, тем самым, совершив мошенничество с расстоянием между участниками[1].
Один из вариантов предотвращении данного обмана, заключается в случайном изменении времени отправления бита стороной .
Другой вариант - это измененная версия протокола Брандсона-Чаума, предотвращающая сразу два вида мошенничества. Как и в основной версии, обе стороны генерируют случайную последовательность -бит. При мгновенных обменов битами сторона отсылает бит стороне , в свою очередь, сторона отсылает бит стороне . После обмена, сторона должна отправить биты с секретным ключом стороне по защищенному протоколу. Сторона проверяет равенство и после этого с помощью протокола идентификации проверяет достоверность секрета.
Недостаток протокола в том, что он не обрабатывает ошибки, связанные с потерей бита при обмене.[5]
В 2005 году Герхард Ханке(англ. Gerhard P. Hancke) и Маркус Кун(англ. Markus G. Kuhn)[2] предложили свою версию дистанционно-ограниченного протокола, широко применяемая в RFID-системах[6].
Пусть имеются две стороны: («RFID-reader») и («RFID-token»). Сторона генерирует случайным образом одноразовый ключ и отправляет стороне . Использовав псевдослучайную функцию(MAC или криптографическую хеш-функцию) обе стороны генерируют последовательность бит: ,где , a - секретный ключ, известный обеим сторонам.
После этого, начинается серия из мгновенных обменов битами между двумя сторонами: сгенерированное случайным образов стороной бит («отклик») отправляется стороне , при этом, если бит , то сторона отправляет в ответ бит , в противном случае, бит . Сторона же проверяет полученный бит на равенство со своим битом , а также для каждого вычисляет расстояние между и , и проверяет, чтобы , где , - время между обменом битами, - скорость света, - фиксированная величина.
Если сторону удовлетворяют условия, то обмен считается успешным.
Вероятность атаки выполненной мафией и обмана с расстоянием при использовании данного протокола равна .[4]
Также, на основе данного протокола, был создан протокол Ту-Пирамуту(англ. Tu-Piramuthu), который снижает вероятность успешной атаки до (для одного обмена битами).[7]
Недостатком протокола является потеря производительности при передаче подписанного сообщения, так как из-за возможности потери битов вследствие шума, сообщение нельзя послать через канал быстрого обмена битами.[5]
Для уменьшения вероятности мошенничества, на основе протокола Ханке-Куна, в 2008 году Ортиз Мунилья(англ. Ortiz Munilla) и Пейнадо(англ. Peinado)[8] создали свою версию дистанционно-ограниченного протокола. Главной особенностью протокола является возможность обнаружения атаки вовремя обмена битов[9]. Обмен битами разбивается на две категории:
Стороны и заранее договариваются, на какой итерации произойдет пустой отклик. Если во время пустого отклика, сторона получает бит или , то заключает, что протокол ненадежный.
Перед началом медленной фазы стороны разделяют секрет , получают секретный ключ протокола и псевдослучайную функцию , выдающую случайную последовательность бит размера , и устанавливают временной порог одиночного обмена битами .
Далее, в медленной фазе, стороны и после генерации одноразовых ключей и , соответственно, обмениваются этими ключами, для вычисления . Получившаяся последовательность -бит разбивается на последовательность размера бит, и по бит каждый. Бит устанавливает, какой отклик вовремя быстрой фазы будет пустым или полным: если , или , то - пустой отклик, в противном случае - полный отклик, где биты .
После этого, в быстрой фазе, происходит аналогичный обмен битами, с помощью последовательностей и , как и в протоколе Ханке-Куна. В конечном итоге, если сторона считает протокол надежным, то она отправляет стороне .
Вероятность успешной криптоатаки равна .[8]
Недостатком протокола является сложная реализация трех (физических) состояний протокола.[10]
В 2010 году Педро Перис-Лопес (исп. Pedro Peris-Lopez), Хулио Эрнандес-Кастро (исп. Julio C. Hernandez-Castro) и др. на основе протокола «Швейцарского-ножа» создали протокол Хитоми[11]. Протокол обеспечивает аутентификацию между считывателем и передатчиком и гарантирует конфиденциальность[12].
Протокол разбивается на 3 части: две медленные фазы - подготовительная и финальная; и быстрая фаза - быстрый обмен битами между считывателем (он же ) и передатчиком (он же ).
В ходе подготовительной фазы выбирает случайное число и отравляет его стороне . После этого, генерирует 3 случайных числа , , и вычисляет временные ключи и , где - псевдослучайная функция, зависящая от секретного ключа , а и два постоянных параметра. Далее, постоянный секретный ключ разделяется на два регистра и . И в завершении фазы, отправляет стороне числа , , .
Дальше наступает фаза из быстрых обменов битами: на итерации, генерирует случайный бит и отравляет , зафиксировав, при этом, время . Сторона получает бит , который может не равняться биту , из-за ошибок в канале связи или стороннего вмешательства. В ответ, отправляет бит , и незамедлительно, после получение бита , который не обязан равняться , сторона фиксирует время и вычисляет время .
В финальной фазе, отправляет сообщение и стороне , где - уникальный идентификатор передатчика. В конечном итоге, разбивает ошибки на три типа:
Если суммарное количество ошибок удовлетворяет начальным условиям стороны , и, в случае необходимости аутентификации, стороне удовлетворяет число , полученное от , то протокол является надежным для обмена.
Вероятность криптоатаки выполненной мафией или мошенничества с расстоянием .[4]
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .