Работа с OpenSC: Разлика между версии

От Infonotary
Направо към навигацията Направо към търсенето
(Добавена информация как се изключва поддръжката на Bit4id от OpenSC.)
(Премахване на отделните команди за Mac OS X, те са необходими само при инсталация чрез SCA.)
Ред 5: Ред 5:
Може да проверите дали четеца и картата се разпознават със следните команди:
Може да проверите дали четеца и картата се разпознават със следните команди:


1) {{Шаблон:Console|opensc-tool -l}} ({{Шаблон:Console|/Library/OpenSC/bin/opensc-tool -l}} за Mac OS X) - тази команда ще покаже списък с всички включени в компютъра четци. Би трябвало да изведе нещо подобно:<pre>Readers known about:
1) {{Шаблон:Console|opensc-tool -l}} - тази команда ще покаже списък с всички включени в компютъра четци. Би трябвало да изведе нещо подобно:<pre>Readers known about:
Nr.    Driver    Name
Nr.    Driver    Name
0      pcsc      OMNIKEY CardMan 6121 0</pre>
0      pcsc      OMNIKEY CardMan 6121 0</pre>
2) {{Шаблон:Console|opensc-tool -n}} ({{Шаблон:Console|/Library/OpenSC/bin/opensc-tool -n}} за Mac OS X) - с тази команда можете да проверите дали картата ви се разпознава коректно. Ако всичко е наред би трябвало да се изпише „CardOS M4“. Ако получите грешка завършваща на „Failed to connect to card: Unresponsive card (correctly inserted?)“, най-вероятно картата ви е поставена наопаки в четеца.
2) {{Шаблон:Console|opensc-tool -n}} - с тази команда можете да проверите дали картата ви се разпознава коректно. Ако всичко е наред би трябвало да се изпише „CardOS M4“. Ако получите грешка завършваща на „Failed to connect to card: Unresponsive card (correctly inserted?)“, най-вероятно картата ви е поставена наопаки в четеца.


== Смяна на ПИН ==
== Смяна на ПИН ==


ПИН кодът на картата може да бъде сменен от Device Manager-a на Mozilla Firefox или със следната команда - {{Шаблон:Console|pkcs15-tool --change-pin}} ({{Шаблон:Console|/Library/OpenSC/bin/pkcs15-tool --change-pin}} за Mac OS X). За картите които се предлагат от Инфонотари ПИН-ът може да бъде с дължина от 4 до 16 символа, като може да съдържа произволна комбинация от букви и цифри.
ПИН кодът на картата може да бъде сменен от Device Manager-a на Mozilla Firefox или със следната команда - {{Шаблон:Console|pkcs15-tool --change-pin}}. За картите които се предлагат от Инфонотари ПИН-ът може да бъде с дължина от 4 до 16 символа, като може да съдържа произволна комбинация от букви и цифри.


== Разблокиране на ПИН ==
== Разблокиране на ПИН ==


В случай че Firefox  ви иска пина по няколко пъти последователно, то най-вероятно той е блокиран. Може да бъде разблокиран с командата {{Шаблон:Console|pkcs15-tool -u}} ({{Шаблон:Console|/Library/OpenSC/bin/pkcs15-tool -u}} за Mac OS X).
В случай че Firefox  ви иска пина по няколко пъти последователно, то най-вероятно той е блокиран. Може да бъде разблокиран с командата {{Шаблон:Console|pkcs15-tool -u}}.


== Смяна на АИН ==
== Смяна на АИН ==


АИН кода може да се смени със следната команда - {{Шаблон:Console|pkcs15-tool --change-pin -a ID}} ({{Шаблон:Console|/Library/OpenSC/bin/pkcs15-tool --change-pin -a ID}} за Mac OS X), където ID трябва да се смени с неговият идентификатор. Можете да го получите като изпълните
АИН кода може да се смени със следната команда - {{Шаблон:Console|pkcs15-tool --change-pin -a ID}}, където ID трябва да се смени с неговият идентификатор. Можете да го получите като изпълните
{{Шаблон:Console|pkcs15-tool --list-pins}} ({{Шаблон:Console|/Library/OpenSC/bin/pkcs15-tool --list-pins}} за Mac OS X). Част от изхода на командата изглежда така:
{{Шаблон:Console|pkcs15-tool --list-pins}}. Част от изхода на командата изглежда така:
<pre>PIN [SO-PIN]
<pre>PIN [SO-PIN]
Com. Flags: 0x3
Com. Flags: 0x3
Ред 32: Ред 32:
Path :</pre>
Path :</pre>
Идентификатора на АИН-a е текста който е изписан срещу ID в секцията „PIN
Идентификатора на АИН-a е текста който е изписан срещу ID в секцията „PIN
[SO-PIN]“. В този случай точната команда за смяна на АИН ще е {{Шаблон:Console|pkcs15-tool --change-pin -a 02}} ({{Шаблон:Console|/Library/OpenSC/bin/pkcs15-tool --change-pin -a 02}} за Mac OS X).
[SO-PIN]“. В този случай точната команда за смяна на АИН ще е {{Шаблон:Console|pkcs15-tool --change-pin -a 02}}.


== Показване на съдържанието на карта ==
== Показване на съдържанието на карта ==


Със следната команда може да видите всички обекти на картата {{Шаблон:Console|pkcs15-tool -D}} ({{Шаблон:Console|/Library/OpenSC/bin/pkcs15-tool -D}} за Mac OS X).
Със следната команда може да видите всички обекти на картата {{Шаблон:Console|pkcs15-tool -D}}.


== Забраняване на OpenSC да работи с определена смарт карта ==
== Забраняване на OpenSC да работи с определена смарт карта ==
Ред 45: Ред 45:
driver = "вид-карта";
driver = "вид-карта";
}</pre>
}</pre>
Чрез командата {{Шаблон:Console|opensc-tool -a}} ({{Шаблон:Console|/Library/OpenSC/bin/opensc-tool -a}} за Mac OS X) може да получите ATR на картата. За вид-карта трябва да укажете драйвер различен от този с който работи смарт картата. Списък с всички поддържани драйвери за карти може да получите чрез командата {{Шаблон:Console|opensc-tool --list-drivers}} ({{Шаблон:Console|/Library/OpenSC/bin/opensc-tool --list-drivers}} за Mac OS X).
Чрез командата {{Шаблон:Console|opensc-tool -a}} може да получите ATR на картата. За вид-карта трябва да укажете драйвер различен от този с който работи смарт картата. Списък с всички поддържани драйвери за карти може да получите чрез командата {{Шаблон:Console|opensc-tool --list-drivers}}.


Например ако искате да изключите Bit4id картите, които не се поддържат добре от OpenSC 0.12, трябва да добавите следното в конфигурационният файл:
Например ако искате да изключите Bit4id картите, които не се поддържат добре от OpenSC 0.12, трябва да добавите следното в конфигурационният файл:
Ред 56: Ред 56:
== Тест за работоспособност ==
== Тест за работоспособност ==


За да проверите дали удостоверението ви за електронен подпис работи коректно може да ползвате следната команда - {{Шаблон:Console|pkcs11-tool -lt}} или {{Шаблон:Console|/Library/OpenSC/bin/pkcs11-tool -lt --slot 1}} за Mac OS X. Тази команда ще поиска да въведете ПИН-а на картата "Please enter User PIN:". Въведеният ПИН няма да се покаже на екрана дори и като звездички. Натиснете Enter за потвърждение. Би трябвало да получите изход подобен на този:
За да проверите дали удостоверението ви за електронен подпис работи коректно може да ползвате следната команда - {{Шаблон:Console|pkcs11-tool -lt}}. Тази команда ще поиска да въведете ПИН-а на картата "Please enter User PIN:". Въведеният ПИН няма да се покаже на екрана дори и като звездички. Натиснете Enter за потвърждение. Би трябвало да получите изход подобен на този:
<pre>
<pre>
Please enter User PIN:
Please enter User PIN:

Версия от 15:00, 8 юни 2011

В OpenSC няма програми с графичен интерфейс, така че всички операции се налага да се правят от терминал.

Проверка на инсталацията

Може да проверите дали четеца и картата се разпознават със следните команди:

1) opensc-tool -l - тази команда ще покаже списък с всички включени в компютъра четци. Би трябвало да изведе нещо подобно:

Readers known about:
Nr.    Driver     Name
0      pcsc       OMNIKEY CardMan 6121 0

2) opensc-tool -n - с тази команда можете да проверите дали картата ви се разпознава коректно. Ако всичко е наред би трябвало да се изпише „CardOS M4“. Ако получите грешка завършваща на „Failed to connect to card: Unresponsive card (correctly inserted?)“, най-вероятно картата ви е поставена наопаки в четеца.

Смяна на ПИН

ПИН кодът на картата може да бъде сменен от Device Manager-a на Mozilla Firefox или със следната команда - pkcs15-tool --change-pin. За картите които се предлагат от Инфонотари ПИН-ът може да бъде с дължина от 4 до 16 символа, като може да съдържа произволна комбинация от букви и цифри.

Разблокиране на ПИН

В случай че Firefox ви иска пина по няколко пъти последователно, то най-вероятно той е блокиран. Може да бъде разблокиран с командата pkcs15-tool -u.

Смяна на АИН

АИН кода може да се смени със следната команда - pkcs15-tool --change-pin -a ID, където ID трябва да се смени с неговият идентификатор. Можете да го получите като изпълните pkcs15-tool --list-pins. Част от изхода на командата изглежда така:

PIN [SO-PIN]
Com. Flags: 0x3
ID : 02
Flags : [0x99], case-sensitive, unblock-disabled, initialized, soPin
Length : min_len:4, max_len:16, stored_len:0
Pad char : 0x00
Reference : 130
Type : UTF-8
Path :

Идентификатора на АИН-a е текста който е изписан срещу ID в секцията „PIN [SO-PIN]“. В този случай точната команда за смяна на АИН ще е pkcs15-tool --change-pin -a 02.

Показване на съдържанието на карта

Със следната команда може да видите всички обекти на картата pkcs15-tool -D.

Забраняване на OpenSC да работи с определена смарт карта

Можете да изключите определен модел смарт карти от поддържаните от OpenSC като редактирате конфигурационният му файл. Трябва да добавите следното веднага след реда „app default {“:

	card_atr ATR {
		name = "примерно-име";
		driver = "вид-карта";
	}

Чрез командата opensc-tool -a може да получите ATR на картата. За вид-карта трябва да укажете драйвер различен от този с който работи смарт картата. Списък с всички поддържани драйвери за карти може да получите чрез командата opensc-tool --list-drivers.

Например ако искате да изключите Bit4id картите, които не се поддържат добре от OpenSC 0.12, трябва да добавите следното в конфигурационният файл:

	card_atr 3b:ff:18:00:ff:81:31:fe:55:00:6b:02:09:03:03:01:11:01:43:4e:53:11:31:80:8c {
		name = "Bit4id (disabled)";
		driver = "mcrd";
	}

В Linux конфигурационният файл се намира в /etc/opensc/opensc.conf или в /etc/opensc.conf. На Mac OS X файлът е /Library/OpenSC/etc/opensc.conf.

Тест за работоспособност

За да проверите дали удостоверението ви за електронен подпис работи коректно може да ползвате следната команда - pkcs11-tool -lt. Тази команда ще поиска да въведете ПИН-а на картата "Please enter User PIN:". Въведеният ПИН няма да се покаже на екрана дори и като звездички. Натиснете Enter за потвърждение. Би трябвало да получите изход подобен на този:

Please enter User PIN:
C_SeedRandom() and C_GenerateRandom():
  not implemented
Digests:
  all 4 digest functions seem to work
  MD5: OK
  SHA-1: OK
  RIPEMD160: OK
Signatures (currently only RSA signatures)
  testing key 0 (DDA8BB6F-86C2-48F7-B061-F2F4023ED8F2)
  all 4 signature functions seem to work
  testing signature mechanisms:
    RSA-X-509: OK
    RSA-PKCS: OK
    SHA1-RSA-PKCS: OK
    MD5-RSA-PKCS: OK
    RIPEMD160-RSA-PKCS: OK
Verify (currently only for RSA):
  testing key 0 (DDA8BB6F-86C2-48F7-B061-F2F4023ED8F2)
    RSA-X-509: OK
    RSA-PKCS: OK
    SHA1-RSA-PKCS: OK
    MD5-RSA-PKCS: OK
    RIPEMD160-RSA-PKCS: OK
Key unwrap (RSA)
  testing key 0 (DDA8BB6F-86C2-48F7-B061-F2F4023ED8F2)
    DES-CBC: OK
    DES-EDE3-CBC: OK
    BF-CBC: OK
    CAST5-CFB: OK
Decryption (RSA)
  testing key 0 (DDA8BB6F-86C2-48F7-B061-F2F4023ED8F2)
    RSA-X-509: OK
    RSA-PKCS: OK
Testing card detection
Please press return to continue, x to exit: x
Testing card detection using C_WaitForSlotEvent
Please press return to continue, x to exit: x
No errors 

Когато се появи това съобщение - "Please press return to continue, x to exit:" трябва да въведете "x" и да натиснете Enter. В случай че има някакъв проблем с четеца, картата или удостоверението командата ще приключи със съобщение "error:" и кратко описание на проблема. Например ако ви е блокиран ПИН-а ще получите съобщение "error: PKCS11 function C_Login failed: rv = CKR_PIN_LOCKED (0xa4)"., а ако е въведен погрешен ПИН съобщението ще е "error: PKCS11 function C_Login failed: rv = CKR_PIN_INCORRECT (0xa0)".