Получите доступ к определенным функциям ADPU от cryptoApi или CAPICOM с помощью стороннего CSP.

Я безуспешно пытался последние 2 месяца, и я думаю, что пришло время спросить здесь.

У меня есть смарт-карта и CSP от моего клиента. У меня есть документы, описывающие команды APDU, которые я могу (и знаю, как) выполнять.

Мне нужно сохранить небольшие файлы (данные) на карту, такие как имя, адрес, фото и т. д. И позже сохранить сертификаты.

В документации я прочитал, что вы должны сделать внешнюю аутентификацию, чтобы позже использовать безопасный обмен сообщениями для доступа к файлам на карте. У меня есть ошибка где-то в алгоритме взаимной аутентификации (требуется вычисление MAC, DES, TRIPPLE DES и т. д., и я несколько недель пытался заставить его работать...) Я знаю, как делать все на карте, кроме функций, которые требуют взаимного аутентификация.

Я просмотрел функции, предоставляемые CSP, и не увидел там никакой внешней аутентификации. Единственное место, где я видел внешнюю аутентификацию не на уровне APDU, было в «Спецификации мини-драйвера смарт-карт Windows», где я вижу такие функции, как: CardAuthenticateEx. Но я не знаю, как их вызвать (в какой dll они находятся). Должны ли эти функции быть в CSP?

Неправильно ли использовать низкоуровневые команды APDU, если у меня есть CSP? Должен ли я вместо этого использовать CryptoAPI или CAPICOM? Если да, то как я могу выполнять внешнюю аутентификацию и использовать файлы, если нет (или я не могу найти) функций, которые записывали бы в файл. (опять же, все эти функции находятся в «Спецификации мини-драйвера Windows Smart Card».


person KrisHary    schedule 26.08.2010    source источник


Ответы (1)


Многие смарт-карты соответствуют спецификации глобальной платформы, которая (в зависимости от установленных на карте апплетов и их конфигурации) может потребовать подтверждения безопасности перед обменом данными с картой.

Если вам нужно записать файлы на карту, вы НЕ будете использовать CSP. CSP поддерживает криптографические взаимодействия на уровне ОС, перенаправляя определенные криптографические вызовы на процессор карты. Чтобы записать файл на карту, вы будете отправлять на карту APDU, которые выполняют следующие функции:

  • Авторизоваться с картой
  • (опционально) Выберите апплет/карточку, используя AID (идентификатор апплета)
  • Выберите каталог
  • Выберите файл
  • Записать данные в файл

Моя компания делает подключаемый модуль для браузеров IE и Firefox, который помогает в этом, он включает функции рукопожатия для глобальной платформы, и у нас есть форма «песочницы» на нашем сайте, которая позволяет вам тестировать свои сценарии для взаимодействия с картами.

Посетите https://cardboss.cometway.com для получения дополнительной информации.

person Damien    schedule 24.09.2010
comment
Уважаемый @Damien, не могли бы вы взглянуть на мой вопрос: stackoverflow.com/questions/32842718/ ? - person Hosein Aqajani; 01.12.2015