CryptoPro CSP → PKCS#11 ключ и сертификат Рутокен ЭЦП 2.0
После долгих махинаций с CSP, P12FromGostCSP и openssl мне удалось получить файлы с ключём и сертификатом, который понимает openssl -engine gost в моей системе.
Linux Host 4.2.0-27-generic #32~14.04.1-Ubuntu SMP Fri Jan 22 15:32:26 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
OpenSSL 1.0.1f 6 Jan 2014
ii opensc 0.13.0-3ubuntu4 amd64 Smart card utilities with support for PKCS#15 compatible cards
librtpkcs11ecp.so скачан с вашего сайта 4-го февраля. Токен отформатирован как указано на opensc wiki. После форматирования я ещё поменял метку через Панель управления. При форматировании через оную ни pkcs11-tool, ни pkcs15-tool ничего путного в токене не видят.
Собственно застрял я на записи ключа и сертификата в токен.
*************** OpenSC PKCS#11 spy *****************
Loaded: "/usr/lib/librtpkcs11ecp.so"
0: C_GetFunctionList
2016-02-09 23:35:29.829
Returned: 0 CKR_OK
1: C_Initialize
2016-02-09 23:35:29.829
[in] pInitArgs = (nil)
Returned: 0 CKR_OK
2: C_GetSlotList
2016-02-09 23:35:29.847
[in] tokenPresent = 0x0
[out] pSlotList:
Count is 15
[out] *pulCount = 0xf
Returned: 0 CKR_OK
3: C_GetSlotList
2016-02-09 23:35:29.847
[in] tokenPresent = 0x0
[out] pSlotList:
Slot 0
Slot 1
Slot 2
Slot 3
Slot 4
Slot 5
Slot 6
Slot 7
Slot 8
Slot 9
Slot 10
Slot 11
Slot 12
Slot 13
Slot 14
[out] *pulCount = 0xf
Returned: 0 CKR_OK
4: C_GetSlotInfo
2016-02-09 23:35:29.847
[in] slotID = 0x0
[out] pInfo:
slotDescription: 'Aktiv Rutoken ECP 00 00 '
' '
manufacturerID: ' '
hardwareVersion: 0.0
firmwareVersion: 0.0
flags: 7
CKF_TOKEN_PRESENT
CKF_REMOVABLE_DEVICE
CKF_HW_SLOT
Returned: 0 CKR_OK
5: C_OpenSession
2016-02-09 23:35:29.864
[in] slotID = 0x0
[in] flags = 0x6
pApplication=(nil)
Notify=(nil)
[out] *phSession = 0x1
Returned: 0 CKR_OK
6: C_GetTokenInfo
2016-02-09 23:35:29.875
[in] slotID = 0x0
[out] pInfo:
label: 'Skvortsov A.A. '
manufacturerID: 'Aktiv Co. '
model: 'Rutoken ECP '
serialNumber: '342c55a3 '
ulMaxSessionCount: 0
ulSessionCount: 1
ulMaxRwSessionCount: 0
ulRwSessionCount: 1
ulMaxPinLen: 32
ulMinPinLen: 4
ulTotalPublicMemory: 65536
ulFreePublicMemory: 57920
ulTotalPrivateMemory: 65536
ulFreePrivateMemory: 57920
hardwareVersion: 20.5
firmwareVersion: 23.2
time: ' '
flags: 40d
CKF_RNG
CKF_LOGIN_REQUIRED
CKF_USER_PIN_INITIALIZED
CKF_TOKEN_INITIALIZED
Returned: 0 CKR_OK
7: C_Login
2016-02-09 23:35:35.399
[in] hSession = 0x1
[in] userType = CKU_USER
[in] pPin[ulPinLen] 00000000008de210 / 8
00000000 DE AD BE EF DE AD BE EF PIN HERE
Returned: 0 CKR_OK
8: C_CreateObject
2016-02-09 23:35:35.414
[in] hSession = 0x1
[in] pTemplate[9]:
CKA_CLASS CKO_PRIVATE_KEY
CKA_TOKEN True
CKA_PRIVATE True
CKA_SENSITIVE True
CKA_LABEL 00007fffa77b6253 / 5
4345534E 50
C E S N P
CKA_ID 000000000061a0c0 / 1
00000000 10 .
CKA_KEY_TYPE CKK_GOSTR3410
CKA_GOSTR3410_PARAMS 00000000008de1d0 / 9
00000000 06 07 2A 85 03 02 02 24 00 ..*....$.
CKA_VALUE 00000000008e6410 / 32
00000000 DE AD BE EF DE AD BE EF DE AD BE EF DE AD BE EF ................
00000010 DE AD BE EF DE AD BE EF DE AD BE EF DE AD BE EF ................
Returned: 48 CKR_DEVICE_ERROR
9: C_Finalize
2016-02-09 23:35:36.009
Returned: 0 CKR_OK
При записи сертификата я получаю сообщение error: subject name too long, при том что я всего-навсего Александрович.
Обновление до opensc 0.15 из wily ничего (заметно) не изменило.
Что делать?