Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Работа с виртуальным считывателем

Для спаривания создания пары с новым виртуальным считывателем необходимо вызвать функцию NSString* generatePairingQR(void), она возвращает изображение QR-кода в виде base64 строки. Для спаривания этого необходимо отобразить QR-код на экране и считать его с помощью приложения Рутокен VCR.

Для получения списка спаренных сопряженных считывателей необходимо вызвать функцию NSArray* listPairedVCR(void).
Функция возвращает массив словарей, содержащих информацию о считывателях. Для каждого считывателя Рутокен VCR существует один сертификат, который хранится в keychain. Он необходим, чтобы удостовериться, что данные устройства (iPad и iPhone) спаренысопряжены.

Ключи словаря:

  • name - имя считывателя
  • cert - сертификат считывателя в виде BASE64-строки
  • fingerprint - SHA1-хеш от сертификата считывателя

Для отмены спаривания разрыва пары со считывателем необходимо вызвать функцию BOOL unpairVCR(NSData* vcrId).

Функция возвращает true, если спаривание отмененоразрыв произошёл успешно, и false в противном случае. В качестве параметра она принимает SHA1-хеш от сертификата считывателя, спаривание пару с которым котором необходимо отменитьразорвать.

Рекомендуемый порядок работы с VCR:

  • сгенерировать QR-код для спаривания создания пары с помощью функции generatePairingQR
  • осуществить спаривание сопряжение с VCR
  • получить список доступных считывателей с помощью функции SCardListReaders (для iPad будут отображаться доступные виртуальные считыватели)
  • вызов функции SCardConnect для нужного считывателя с параметром dwShareMode == SCARD_SHARE_DIRECT
  • вызов функции SCardControl с параметром RUTOKEN_CONTROL_CODE_START_NFC
  • работа с Рутокеном
  • вызов функции SCardControl с параметром RUTOKEN_CONTROL_CODE_STOP_NFC
  • вызов функции SCardDisconnect

...