Проблемы с импортом закрытого RSA ключа на Рутокен ЭЦП
Здравствуйте!
Я пытаюсь импортировать закрытый RSA ключ на Рутокен ЭЦП с помощью утилиты pkcs11-tool. Для этого используется следующая команда:
pkcs11-tool --module /home/user/rtSDK-30-12-2015/Libs/linux/x86_64/librtpkcs11ecp.so -l -y privkey -w ./private.der --id 67 --label Rutoken
Но затем происходит ошибка в функции C_CreateObject:
Using slot 0 with a present token (0x0)
Logging in to "Rutoken".
Please enter User PIN:
error: PKCS11 function C_CreateObject failed: rv = CKR_TEMPLATE_INCONSISTENT (0xd1)
Aborting.
Закрытый RSA ключ создаю с помощью следующих команд:
user@acs-ppo-14:~$ openssl genrsa -out private.pem 2048
Generating RSA private key, 2048 bit long modulus
............................................................................+++
...................+++
e is 65537 (0x10001)
user@acs-ppo-14:~$ openssl rsa -in private.pem -out private.der -outform DER
writing RSA key
user@acs-ppo-14:~$ dumpasn1 private.der
0 1186: SEQUENCE {
4 1: INTEGER 0
7 257: INTEGER
: 00 AD 58 B3 6D D8 AC 9E B0 F4 EB 15 45 9A BA 62
: 36 37 BE AA 20 A2 42 FB 8E FA 8A 3D 8F 12 7A 83
: 64 6F EB C2 90 33 13 C2 E9 B5 CF 69 B3 DC C4 E4
: 2E 8A DE 3C BB 2E 34 B5 3B 2E A0 B5 AF 53 A0 EF
: 2B 6C 5A 8D 6E 71 E0 3E 40 0A 3E 4B 14 DF 12 DE
: 68 98 C3 15 86 21 44 04 D0 B4 BB BA B1 37 C4 D2
: B0 6A B1 AF 9E 83 87 C7 A4 7C F8 49 E3 4E 50 AF
: 7C BA E4 57 B1 17 20 02 ED A8 FB 07 56 1F 59 19
: [ Another 129 bytes skipped ]
268 3: INTEGER 65537
273 256: INTEGER
: 08 20 20 49 05 DF 11 91 39 E9 CB 15 78 2B 44 6F
: 46 2D A9 CB DD CF 45 FB 6D C3 0D 1F A7 BE 16 6A
: 9E D4 6E 4A 54 1A 99 08 5B 7D 5D 77 10 E2 29 D0
: 04 B2 66 26 60 04 18 7A AD B4 DA CF 5D 1C 2E 19
: DA FA 63 A6 C9 AF B9 3B 47 3F A4 45 56 2F 8C 3D
: 5A EB CA 16 7F 78 B0 C1 17 B7 B5 08 99 94 A0 4B
: A4 B4 AF 86 BE A3 9E B8 17 23 8C 53 1B 58 AC E1
: 2B E1 88 3A C4 DA BB 48 68 A3 5B B4 AD C3 7F 72
: [ Another 128 bytes skipped ]
533 129: INTEGER
: 00 E7 04 0A 04 14 C9 8D 36 F1 1A 48 89 D5 DA 71
: 74 41 E9 CA 07 92 A5 3F 55 DB C0 F0 4F 13 CC DD
: 0F 1D EE 73 57 79 7E 82 68 AD C0 4B C3 6B E5 AB
: B0 ED 6F 4B C1 C4 27 07 8E ED 3B 41 DD CA 99 07
: 91 14 39 25 DE 4E F6 8B 88 24 B2 56 42 E6 AE 6A
: E8 67 78 8C 3D 64 F8 D4 B0 C0 48 42 C2 09 C6 EE
: 2D 80 28 D0 2F 84 4A F0 4B A4 DC 2B AB C1 E5 CE
: 95 A4 83 BA 9A 76 49 25 D5 53 97 14 90 88 31 55
: 7D
665 129: INTEGER
: 00 C0 18 03 EB D0 31 D9 2D E3 9C 32 07 E1 F6 71
: D2 DC 8B D8 CF 96 32 69 FC 6B 20 1F A7 2A E3 7F
: E1 5F FF C9 69 DC 76 3C 4B F7 10 EF A9 62 85 4F
: C5 6D 76 05 4D 98 D7 96 38 AC 57 F4 BC DF 73 52
: 82 D8 BA 10 88 1F B6 02 DC 99 10 73 45 C2 F1 F4
: 2B 75 1A 8D 35 FC F0 C1 B3 9E 0E F7 BF 6C 28 7B
: 1F F3 40 A7 06 52 CC 9C 1C AE 15 3B 93 B4 C2 D9
: 1B 0A 59 3A 95 E6 DD DE BE B1 F5 23 AD 76 17 F5
: A7
797 128: INTEGER
: 01 36 6C 37 09 44 E5 90 DC 43 1F 0E 5A 29 03 5F
: 70 D9 21 4E 58 DE B5 2E 66 30 E5 12 05 30 96 18
: 76 37 C2 33 3B 58 06 A7 36 02 44 63 8A 35 72 69
: 43 55 CA 38 02 27 92 4A 95 C4 31 DC 50 2B ED 76
: 3D 7C EF 4D F3 6C 27 DF 57 11 F8 91 F1 54 09 0B
: 9F 3F 6A BD 07 C2 A6 9B 26 E7 3A 32 7A 8A A8 C5
: 64 5E D2 78 ED 60 D7 52 0E 53 79 87 35 45 57 88
: 41 8C CF 75 F0 19 02 31 D4 76 7E 8D 23 A9 DE A1
928 128: INTEGER
: 23 B6 53 44 4B F8 78 7F E7 88 EA 64 3C C6 2C 73
: 1F 3D 80 99 57 3B 18 29 2D 61 53 81 28 A0 12 EE
: 3B 82 BA 57 4B FD 4F 48 70 2E 5D E0 07 C8 F1 03
: AB 4D FD BE 67 63 ED 31 AC 18 CE 0F 2F 1B A9 83
: 59 F7 7D 8B 51 19 ED 7E 45 96 A1 57 9E DE 8C 9E
: 67 AF 00 01 C1 7C A1 06 5B A4 3C BB 01 C8 A4 DB
: 53 C5 F9 47 5B AD 5E 78 96 84 AC 06 D1 DC 47 B0
: 97 43 EF 78 5E EB 70 B5 D3 2F D7 EA 2F C2 54 91
1059 128: INTEGER
: 06 03 35 FC 34 DB D7 5B B6 0B 14 C3 4C FD 2A 77
: 09 71 EA 50 54 55 70 79 FB F6 48 77 37 A7 81 65
: 79 1A F7 A7 35 1F B5 52 A3 17 DD 1C 99 DB 16 23
: 63 EF F5 9A 34 A7 93 E6 05 EA AC 22 35 AB EC C3
: 92 B2 E7 1C 9A C8 10 A7 A9 D5 F1 51 F8 1C 4D BE
: 4A 05 51 AD 9B 83 05 40 BB 05 90 45 E5 CD AE BD
: 17 CC 47 2F 21 EE C3 07 01 4A C4 91 1B 6B 9E C0
: A9 4E D4 DE 93 BE 94 8E 87 96 A6 C7 DA 33 FD 27
: }
0 warnings, 0 errors.
Операционная система Ubuntu 14.04. Для работы с токеном были установлены следующие пакеты: libccid pcscd libpcsclite1 opensc libengine-pkcs11-openssl.
При этом открытый ключ импортируется без проблем:
user@acs-ppo-14:~$ openssl rsa -in private.pem -pubout -outform DER -out public.der
writing RSA key
user@acs-ppo-14:~$ pkcs11-tool --module /home/user/rtSDK-30-12-2015/Libs/linux/x86_64/librtpkcs11ecp.so -l -y pubkey -w public.der --id 68 --label Rutoken
Using slot 0 with a present token (0x0)
Logging in to "Rutoken".
Please enter User PIN:
Created public key:
Public Key Object; RSA 2048 bits
label: Rutoken
ID: 68
Usage: encrypt, verify
Каким образом можно импортировать закрытый RSA ключ на Рутокен ЭЦП? С помощью каких утилит это можно сделать?