Page tree

Versions Compared

Key

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

Для отладки приложений использующих интерфейс PKCS#11 можно использовать утилиту PKCS11-SPY.

Это переработанная версия утилиты, входящей в проект OpenSC и отличается от нее поддержкой расширенного интерфейса. 

Утилита выводит лог PKCS#11 вызовов в формате текстового файла.

...

1. Подготовка файлов

Заменим оригинальную библиотеку на библиотеку-шпион, для этого:

1.  Загрузите архив - pkcs11-spy.zipЗагрузите архив с Рутокен SDK

2. Разархивируйте содержимое, утилита PKCS11-SPY находится в папке <sdk>\pkcs11\util\pkcs11-spy

3. Выберите версию ОС и разрядность в соответствии с разрядностью приложения

  • Рутокен Плагин использует 32х разрядную библиотеку PKCS#11
  • Драйверы Рутокен содержат обе библиотеки. Какая используется – зависит от битности разрядности отлаживаемого приложения.

...

  • для Рутокен Плагин - C:\Users\Имя_пользователя\AppData\Roaming\Aktiv Co\CryptoPlugin\4.4.1.0
  • для Драйверов Рутокен C:\Windows\System32\ или Cили C:\Windows\SysWOW64\

5. Переименуйте оригинальную библиотеку PKCS#11 (rtPKCS11ECP), например, в rtPKCS11ECP-orig

6. Скопируйте rtpkcs11-spy.dll(.dylib или .so) из разархивированной папки в папку с оригинальной библиотекой PKCS#11 (rtPKCS11ECP)

7. Переименуйте библиотеку-шпион, задав ей имя оригинальной библиотеки PKCS#11 (rtPKCS11ECP)

2. Настройка утилиты

Теперь укажем утилите путь до оригинальной библиотеки и путь, куда будет записываться лог-файл.

...

В реестре установить в строковый параметр HKLM\Software\Aktiv Co.\Rutoken\rtPKCS11-Spy\Module путь к оригинальной библиотеке PKCS#11 (rtPKCS11ECP-orig).

В реестре установить в строковый параметр HKLM\Software\Aktiv Co.\Rutoken\rtPKCS11-Spy\Output путь к лог файлу, в который будет записываться последовательность вызовов PKCS#11 функций.

...

В реестре установить в строковый параметр HKLM\Software\Aktiv Co.\Rutoken\rtPKCS11-Spy\Module путь к оригинальной библиотеке PKCS#11 (rtPKCS11ECP-orig).

В реестре установить в строковый параметр HKLM\Software\Aktiv Co.\Rutoken\rtPKCS11-Spy\Output путь к лог файлу, в который будет записываться последовательность вызовов PKCS#11 функций.

...

записать в системные переменные 

RT_PKCS11SPY - путь к оригинальной библиотеке PKCS#11 библиотеке PKCS#11 (rtPKCS11ECP-orig)

RT_PKCS11SPY_OUTPUT - путь к лог файлу, в который будет записываться последовательность вызовов PKCS#11 функций.

Например:

  • для

...

  • Linux
    RT_PKCS11SPY=/opt/aktivco/rutokenecp/lib/librtpkcs11ecp-orig.so

...


  • RT_PKCS11SPY_OUTPUT=/home/user/Desktop/logfile.txt

  • для Mac
    RT_PKCS11SPY=/Library/Aktiv\

...

  • Co/Rutoken\

...

  • ECP/lib/librtpkcs11ecp-orig.dylib

...


  • RT_PKCS11SPY_OUTPUT=/Users/user/Desktop/logfile.txt

3. Воспроизведение сценария

Выполните действия, которые необходимо залогировать. Если логи нужны для решения ошибки - выполните действия, которые приводят к этой ошибке.

Если требуется воспроизвести сценарий в браузере, перед воспроизведением ошибки, перезапустите браузер.


4. Файл логов

Убедитесь, что файл rtpkcs11-spy.log с логами создан по адресу, указанному во 2 пункте. 


5. Переименование библиотеки

Удалите библиотеку-шпион из папки с оригинальной библиотекой и переименуйте оригинальную библиотеку обратно.