Как проверить, действительна ли смарт-карта? - PullRequest
0 голосов
/ 17 мая 2019

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

Я заметил некоторые efs, такие как card_certificate, но я не уверен, в какой структуре этот двоичный файл имеет.

1 Ответ

0 голосов
/ 17 мая 2019

Я не вижу значительных шансов на успех с подходом (насколько я понимаю) по следующим причинам:

  • Идентификаторы карт не обязательно являются уникальными.
  • Стандартным решением для подтверждения действительности смарт-карты является применение секретного ключа, содержащегося в карте, к случайному числу, к которому ранее был запрошен запрос, чтобы предотвратить простую атаку воспроизведения. Никакой статический обмен данными не достигнет этого.
  • Карты теряются; без двухфакторной авторизации потерянная карта становится угрозой безопасности.
  • На стороне сервера вам не на что положиться, кроме прибывающего потока байтов (который может исходить от карты или нет); если это не соответствует водонепроницаемой схеме безопасности, вся система будет легко взломана. Сертификаты X.509 являются сложными , но они должны быть выполнены, чтобы выполнить свое предназначение.
  • Внутренние знания могут быть необходимы для чтения чего-либо с карты.

Мое ожидание: без существенных ноу-хау наиболее вероятным результатом является система, использующая смарт-карты (?), Но достигающая достаточно низкого уровня безопасности.

...