...
Нужен пакет opensc и библиотека rtpkcs11ecp (из драйверов или из комплекта разработчика)
...
Параметр -О дает нам список объектов, -l указывает, что нужен логин, а в --pin передаем пин-код
Code Block |
---|
MacBook-Kirill:~ m$ pkcs11-tool --module /Library/Aktiv\ Co/Rutoken\ ECP/lib/librtpkcs11ecp.dylib -O -l --pin 12345678
Using slot 0 with a present token (0x0)
Public Key Object; GOSTR3410
PARAMS OID: 06072a850302022301
VALUE: 5fe400ff43fb74a9093e60c075d7c1a261da0b7f106144a13b869fc22fb1034e
f43d02415eebb02b535c344de32a416b30229ec09b52d43c4ccd06cd2b2e9797
label:
ID: 011111
Usage: verify
Private Key Object; GOSTR3410
PARAMS OID: 06072a850302022301
label:
ID: 011111
Usage: sign, derive
Certificate Object; type = X.509 cert
label: Rutoken Plugin
ID: 011111 |
Например, мы считаем что “011111” это плохой ID и мы хотим его поменять
...
-e новый CKA_ID (нужно указывать в виде шестнадцатеричных чисел, 31 = это "1”)
Code Block |
---|
MacBook-Kirill:~ m$ pkcs11-tool --module /Library/Aktiv\ Co/Rutoken\ ECP/lib/librtpkcs11ecp.dylib -l --pin 12345678 -y cert -d "011111" -e "313233"
Using slot 0 with a present token (0x0)
Result:Certificate Object; type = X.509 cert
label: Rutoken Plugin
ID: 313233 |
Code Block |
---|
MacBook-Kirill:~ m$ pkcs11-tool --module /Library/Aktiv\ Co/Rutoken\ ECP/lib/librtpkcs11ecp.dylib -l --pin 12345678 -y privkey -d "011111" -e "313233"
Using slot 0 with a present token (0x0)
Result:Private Key Object; GOSTR3410
PARAMS OID: 06072a850302022301
label:
ID: 313233
Usage: sign, derive |
Code Block |
---|
MacBook-Kirill:~ m$ pkcs11-tool --module /Library/Aktiv\ Co/Rutoken\ ECP/lib/librtpkcs11ecp.dylib -l --pin 12345678 -y pubkey -d "011111" -e "313233"
Using slot 0 with a present token (0x0)
Result:Public Key Object; GOSTR3410
PARAMS OID: 06072a850302022301
VALUE: 5fe400ff43fb74a9093e60c075d7c1a261da0b7f106144a13b869fc22fb1034e
f43d02415eebb02b535c344de32a416b30229ec09b52d43c4ccd06cd2b2e9797
label:
ID: 313233
Usage: verify |
Теперь снова делаем просмотр объектов и убеждаемся что CKA_ID правильный и одинаковый у всех 3х объектов
Code Block |
---|
MacBook-Kirill:~ m$ pkcs11-tool --module /Library/Aktiv\ Co/Rutoken\ ECP/lib/librtpkcs11ecp.dylib -O -l --pin 12345678
Using slot 0 with a present token (0x0)
Public Key Object; GOSTR3410
PARAMS OID: 06072a850302022301
VALUE: 5fe400ff43fb74a9093e60c075d7c1a261da0b7f106144a13b869fc22fb1034e
f43d02415eebb02b535c344de32a416b30229ec09b52d43c4ccd06cd2b2e9797
label:
ID: 313233
Usage: verify
Private Key Object; GOSTR3410
PARAMS OID: 06072a850302022301
label:
ID: 313233
Usage: sign, derive
Certificate Object; type = X.509 cert
label: Rutoken Plugin
ID: 313233 |