Проверка подлинности NFC - PullRequest
       58

Проверка подлинности NFC

0 голосов
/ 29 ноября 2018

Я получаю UID тега NFC, отправляя и получая APDU с карты.Хранение их в базе данных.При входе в систему я сравниваю идентификатор зарегистрированного пользователя с базой данных для аутентификации.Это работает, но это правильный способ аутентификации NFC в соответствии со стандартной политикой безопасности?Я немного сбит с толку, так как PKI включает обработку сертификатов и связывает пользователей открытыми ключами.

1 Ответ

0 голосов
/ 30 ноября 2018

Использование UID для аутентификации не очень хорошая идея, так как он доступен для чтения всем, и любой может скопировать его и использовать для программирования одной из карт, которая это позволяет.Некоторые бесконтактные устройства генерируют разные случайные UID каждый раз при включении питания.

Существует множество альтернатив, таких как два довольно упрощенных:

  • Используйте один изстандартные защищенные каналы (SCP02, SCP03) для выполнения считывателя карт с взаимной аутентификацией и последующей отправки идентификатора.Каждая карта должна быть снабжена набором симметричных ключей (3DES или AES в описанных выше случаях), а считыватель - средствами для их получения по уникальному идентификатору карты.

  • Используйте открытые и закрытые ключи.Например, вы можете сохранить закрытый ключ на карточке во время регистрации, а затем для аутентификации использовать его для подписания запроса, выданного читателем + некоторый идентификатор, связанный с открытым ключом в сертификате.

Вероятно, вы можете найти гораздо лучшие идеи, оглянувшись вокруг.Удачи!

...