bcrypto / btok

Cryptographic tokens
4 stars 4 forks source link

Не предусмотрен статус 63CX для PUK при инициализации BPACE #80

Closed andrewkostevich closed 5 years ago

andrewkostevich commented 5 years ago

12.2.16 Инициализация протокола BPACE SW1||SW2 9000: протокол инициализирован успешно, число возможных попыток аутентификации равно максимальному значению 63CX: протокол инициализирован успешно, осталось X попыток аутентификации и число попыток меньше максимального 6983: ошибка, пароль заблокирован 6984: ошибка, пароль деактивирован 6985: ошибка, пароль приостановлен Другое: см. таблицу В.1

Последние 4 статуса ответа (кроме 9000) относятся только к паролю PIN. При ста тусах 6983, 6984 для разблокировки или активации PIN требуется выполнить BPACE с паролем PUK. При статусе 6985 для возобновления PIN требуется выполнить BPACE с паролем CAN.

Предупреждение "63CX" должно выдаваться при аутентификации по PIN, но не по PUK. В таком случае у пользователя нет информации насчет количества оставшихся попыток ввода PUK при заблокированном PIN. Количество оставшихся попыток пользователь может получить только выполнив шаги протокола BPACE и использовав одну попытку.

12.2.7 Выполнение шагов протокола BPACE SW1||SW2 9000: протокол (шаг) выполнен успешно 63CX: протокол (шаг) выполнен с ошибкой из-за неверного пароля, осталось X попыток аутентификации 6983: ошибка, пароль заблокирован 6984: ошибка, пароль деактивирован 6985: ошибка, пароль приостановлен Другое: см. таблицу В.1

Статус 63CX относится ко всем паролям. Для CAN число X всегда равняется 1. Для PIN значение X = 1 означает приостановку пароля, а значение X = 0 — его блокировку. Для PUK число X равняется 9. Исключение составляет случай, когда неверный PUK последовательно предъявляется несколько раз при заблокированном PIN. В этом случае X уменьшается вплоть до 0, и при достижении нулевого значения PIN блокируется навсегда.

П. 12.2.6 нужно сформулировать с учетом формулировки из п. 12.2.7

agievich commented 5 years ago

Число попыток ввода PUK неограниченно (см. п. 6.3). Поэтому код 63CX к PUK относиться не может. Число оставшихся попыток ввода PUK относится только к ситуации с заблокированным PIN, что и обыграно в 12.2.7.

Отмечу, что информирование о состоянии PIN/PUK/CAN в BTOK намного детальнее чем в европейских стандартах. Дальнейшая детализация представляется излишней.

Вопрос информирования был обсужден достаточно давно (см. #77). Возражений не было. Сейчас опять к вопросу возвращаемся. Считаю, что нужно внимательнее относиться к обсуждению.