УЕП (UES) от Infonotary на Fedora 16 и Firefox 7/8

От дълго време се каня да си извадя електронен подпис, но все го отлагах. Напоследък обаче се стигна до момент, в който това стана наложително. Понеже естествено, ще го ползвам под Linux направих кратко проучване първо онлайн, а след това и сред познати. Имаше положителни мнения както за Инфонотари, така и за Банксервиз. Аз се спрях на първите по две причини – на пръв поглед по-добрата документация, и нещо доста по-тривиално, по-големият брой офиси на Инфонотари, в случая имаше такъв точно срещу моя офис.

От това, което прочетох се надявах да ми се падне Omnikey четец, но в избраният от мен офис на ЦКБ такива нямаше – единствената опция беше ACS. Понеже напоследък съм мързелив, а и ми трябваше спешно рискувах и го взех. Последното след попълването на един тон документация от момичето в офиса, което беше леко неориентирано, изглежда нямаше кой знае какъв опит с издаване на сертификати, но с малко помощ от приятели (с цената от две телефонни обаждания) все пак се справи.

И така, за мен остана да изчакам края на работния ден, да се прибера и да видя какво ще се получи. Ами смело мога да заявя, че четецът работи out of the box с ccid драйверът по подразбиране.

pcscd сървисът е стартиран:

[Nick@Pegasus ~]$ systemctl status pcscd.service
pcscd.service - PC/SC Smart Card Daemon
Loaded: loaded (/lib/systemd/system/pcscd.service; disabled)
Active: active (running) since Tue, 22 Nov 2011 20:56:10 +0200; 2h 9min ago
Main PID: 8758 (pcscd)
CGroup: name=systemd:/system/pcscd.service
└ 8758 /usr/sbin/pcscd -f

Исталирани са следните пакети:

[Nick@Pegasus ~]$ yum list pcsc-*
Installed Packages
pcsc-lite.x86_64                        1.7.4-6.fc16                  @fedora
pcsc-lite-ccid.x86_64                   1.4.5-1.fc16                  @fedora
pcsc-lite-devel.x86_64                  1.7.4-6.fc16                  @fedora
pcsc-lite-libs.x86_64                   1.7.4-6.fc16                  @fedora
[Nick@Pegasus ~]$ yum whatprovides pcsc-lite
pcsc-lite-1.7.4-6.fc16.x86_64 : PC/SC Lite smart card framework and applications
Repo        : fedora
[Nick@Pegasus ~]$ yum whatprovides pcsc-lite-ccid
pcsc-lite-ccid-1.4.5-1.fc16.x86_64 : Generic USB CCID smart card reader driver
Repo        : fedora

Ето и как се разпознава самият четец (dmesg output):

[787202.753102] usb 1-1.5.4: new full speed USB device number 13 using ehci_hcd
[787202.841264] usb 1-1.5.4: New USB device found, idVendor=072f, idProduct=90cc
[787202.841267] usb 1-1.5.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[787202.841269] usb 1-1.5.4: Product: CCID USB Reader
[787202.841270] usb 1-1.5.4: Manufacturer: ACS
[789782.064529] usb 1-1.5.4: USB disconnect, device number 13

И малко по-подробно (lsusb -vd):

lsusb -vd 072f:90cc
 
Bus 001 Device 015: ID 072f:90cc Advanced Card Systems, Ltd ACR38 SmartCard Reader
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x072f Advanced Card Systems, Ltd
  idProduct          0x90cc ACR38 SmartCard Reader
  bcdDevice            1.00
  iManufacturer           1 ACS
  iProduct                2 CCID USB Reader
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           93
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass        11 Chip/SmartCard
      bInterfaceSubClass      0
      bInterfaceProtocol      0
      iInterface              0
      ChipCard Interface Descriptor:
        bLength                54
        bDescriptorType        33
        bcdCCID              1.00
        nMaxSlotIndex           0
        bVoltageSupport         7  5.0V 3.0V 1.8V
        dwProtocols             3  T=0 T=1
        dwDefaultClock       4000
        dwMaxiumumClock      4000
        bNumClockSupported      0
        dwDataRate          10752 bps
        dwMaxDataRate      344100 bps
        bNumDataRatesSupp.      0
        dwMaxIFSD             247
        dwSyncProtocols  00000000
        dwMechanical     00000000
        dwFeatures       00010030
          Auto clock change
          Auto baud rate change
          TPDU level exchange
        dwMaxCCIDMsgLen       271
        bClassGetResponse      00
        bClassEnvelope         00
        wlcdLayout           none
        bPINSupport             0
        bMaxCCIDBusySlots       1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              16
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Status:     0x0000
  (Bus Powered)

Моделът на картата ми е T&S DS/2048 (L), което налага инсталирането на два допълнителни пакета от хранилището на Инфонотари, a именно – bit4id-ipki и infonotary-scardmanager.

Остава само настройката на browser-а, който в случая е firefox. Сертификатът може да се инсталира директно от линка изпратен от Инфонотари чрез e-mail, а за улеснение на конфигурацията може да се добави следният firefox add-on – InfoNotary Configurator for Mozilla, . Ако при отварянето на тестовият линк (тестът може да бъде направен и от Preferences –> Signature Test на добавката на Инфонотари), отговорът е Data Accepted, то всичко е наред и можем да подписваме на воля.

Допълнителна информация:

Загубих доста време да разбера какъв е точният модел на четеца. Както може да се види от output-а по-горе то се разпознава като ACR38. На капачето му обаче е изписано ACR38T, а според една от техническите спецификации на сайта на производителя, а и според външният му вид, то това е ACR38DT. Според същата спецификация, въпросният четец работи с ccid, само ако е с firmware 1.12, и явно моят е такъв. В противен случай вероятно ще се наложи инсталирането на vendor драйверите.

Ето как изглежда на практика:

Полезни линкове (дадени са и в текста по-горе):

  1. Използване на квалифициран електронен подпис в Mozilla Firefox за Linux
  2. Използване на хранилищата на InfoNotary
  3. InfoNotary Configurator for Mozilla
  4. Инсталация на драйвери за четец и смарт карта в Linux

Умишлено не посочвам линк към „Инсталация на драйвери за четец и смарт карта в Linux“. Въпреки, че статията е относително актуална, то в нея има някои неточности, които могат да доведат до объркване. Освен това е и доста Ubuntu ориентирана. Но това, не е кой знае какъв проблем, освен че имената на пакетите във Fedora са други.  Проблемът е друг, че по начинът, по който е написан краят на статията, може да се остане с впечатлението, че е нужно да се инсталира и OpenSC. Това не е необходимо! OpenSC, въпреки че разпознава правилно четеца, зарежда и използва CNS драйвера. Освен това, ACS липсва от списъкa с поддържаният от проекта хардуер, но пък е споменат в списъкът с поддържани устройства от CCID.

И така в резюме: ACS ACR38DT от Инфонотари работи под Fedora 16 с Firefox 7, без да е необходимо да се инсталират допълните драйвери за картовия четец.

Рдакция /24.11.2011/: Статията във wiki-то на Инфонотари е редактирана, и е доста по-точна в момента. Така че включвам и линк-а към нея.

Leave a Reply





Stop ACTA