Как реализовать двухфакторную аутентификацию с использованием смарт-карт и считывателей смарт-карт через Интернет

Прежде всего, прошу прощения за мое незнание этой темы. (связанные с)

Что именно нужно для реализации такого процесса:

  1. Клиент заходит на сайт авторизации (example.com/login).
  2. Для входа клиент вводит свой идентификатор клиента. Кроме того, случайный (?) Код
    отображается для посетителя:
    251 221 555.

  3. Клиент забирает его считыватель смарт-карт, вставляет в него свою смарт-карту и нажимает кнопку «Войти», вводит код 251 221 555

  4. Затем клиент вводит свой PIN-код (в считыватель смарт-карт)
  5. Затем возвращается токен: 922 444 113
  6. Клиент использует возвращенный токен для входа на сайт.

Я думаю, что нужно:

  • Смарт-карта (с ПИН-кодом)
  • Считыватель смарт-карт (см. рисунок 1, 2)

Что мне интересно, так это как проверить подлинность возвращенного токена на веб-сайте, а также как вернуть токен в устройство чтения смарт-карт?
Каковы точные (или самые простые) шаги для реализации процесса, подобного описанному выше?

0

Решение

Самая простая реализация — хранить секретный ключ на смарт-карте и запускать шифрование или вычисление MAC-адреса по введенному номеру. Для этого для работы ПИН-кода необходимо ввести до введите номер.

Команды будут

  • ПРОВЕРЬТЕ (с помощью PIN-кода)
  • ВНУТРЕННИЙ АУТЕНТИКАТ (с введенным номером)
  • или ВЫПОЛНИТЬ ОПЕРАЦИЮ БЕЗОПАСНОСТИ в режиме Compute Cryptographic Checksum.

Для получения более подробной информации вы должны детально изучить ISO 7816 часть 4 (проверка и внутренняя авторизация) и 7816 часть 8 (выполнить проверку безопасности). Это предполагает так называемую собственную карту (в отличие от карты JavaCard).

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]