Рейтинг:3

Зачем проверять точку в бесконечности во время проверки ECDSA?

флаг kr

Стандарт ECDSA требует, чтобы во время проверки мы проверяли, не приводит ли промежуточный расчет к точке в бесконечности (см. Шаг 5 в этом обзоре). Википедия ). Но Почему мы проверяем это? То есть, как вы, как злоумышленник, фактически инициируете это событие, не зная закрытого ключа?

В приведенном выше я предполагаю, что все остальные проверки ECDSA на месте ($r,s \in [1,n-1]$, публичный ключ на кривой и так далее...)

Рейтинг:3
флаг ng

Действительно, спецификация отраслевого стандарта ECDSA имеет шаг (5), требующий отклонения подписи, если встречается точка в бесконечности.

Это состояние может произойти по крайней мере

  1. Если владелец закрытого ключа сгенерировал подходящую (недействительную) подпись, $r=-e\,q_u^{-1}\bmod n$ или что-то на эту тему. Конечно, это раскрывает закрытый ключ, и (таким образом) злоумышленник, не владеющий закрытым ключом, не может умышленно сгенерировать такую ​​подходящую подпись.
  2. Случайно для случайного входа в проверку подписи. Правда, вероятность настолько мала, что ее можно сбрасывать со счетов, но тогда удачи убедить в этом некоторых обладателей штампа.
  3. Из-за какой-то ошибки реализации программного обеспечения или ошибки выполнения в 5 или более ранних версиях, случайно или по инжекция неисправности.

Обнаружено, что все, что может пойти не так в море, рано или поздно идет не так.
Альфред Холт, в 1877-78 гг. Протоколы Института инженеров-строителей, изданные в Лондоне.

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

При стандартном (и обычно верном) предположении, что сообщение, подпись и открытый ключ являются общедоступными, риск утечки по сторонним каналам (по времени или DPA) отсутствует.

Maarten Bodewes avatar
флаг in
Можно возразить, что это глубокая защита. Всегда несколько спорно проверять значение, которое в принципе не может быть ошибочным с высокой степенью уверенности, но которое предполагает совершенную систему.
R.. GitHub STOP HELPING ICE avatar
флаг cn
Я до сих пор плохо понимаю, зачем проверять исключительный случай, который может произойти только случайно с неверными данными с вероятностью, равной или меньшей, чем вероятность того, что злоумышленник угадает действительную подпись или угадает закрытый ключ.
fgrieu avatar
флаг ng
@R..GitHubSTOPHELPINGICE: как насчет причины 3? Кроме того, как насчет: это предписано и подлежит тестированию, поэтому будет проверено, и, возможно, мы не хотели бы объяснять человеку с резиновым штампом, что да, эта тестовая подпись вызвала какой-то сбой, требующий сброса, потому что извлечение координаты X точки в infinity вызвало исключение с новым выпуском фреймворка ECC, когда предыдущий только что вернул ноль; но это была просто проверка, на самом деле, на поле так не бывает; suuuuure позвольте мне объяснить вам, это простая математика ...
R.. GitHub STOP HELPING ICE avatar
флаг cn
@fgrieu: я прочитал вопрос как вопрос, почему стандарт предписывает это, а не вопрос, почему разработчик будет следовать стандарту, как указано.

Ответить или комментировать

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