...
Работа с виртуальным считывателем
Для спаривания создания пары с новым виртуальным считывателем необходимо вызвать функцию 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
...