Guia de Instalação para distribuições Linux em geral
( para uso no Browser Firefox ) 

 
1. Introdução
 
 


Este documento mostra os passos necessários para instalação da leitora USB CCID PCSC SmartEpad (embora a maioria das leitoras compatíveis com os mesmo padrões devam requerer os mesmos passos para instalação) em sistemas GNU/Linux, através de contrução dos softwares a partir dos seus códigos fonte, para acesso de certificados pelo navegador Firefox.

Serão instalados os seguintes softwares:

  • Libpcsclite smartcard-reader integrating library;
  • The CCID USB driver ccid driver;
  • The opensc smartcard library.

Também são apresentadas informações sobre a instalação da ferramenta hid_light, que consiste num suporte de software para indicar presença e condições do cartão inserido na leitora.

As funcionalidades desta ferramenta são opcionais e nada influenciam nos trabalhos de acesso (leitura e gravação) de um cartão. Obviamente, esta ferramenta não encontrará condições de ambiente se a biblioteca libpcsclite e o driver CCID não forem corretamente instalados. 

Observações importantes sobre as versões destes pacotes:

 

  1. O driver CCID apresenta suporte ao SmartEpad desde sua versão 1.0.0.
  2. É necessária uma atenção especial quanto à “libpcsclite” porque existem duas condições a serem satisfeitas:
  • que seja da versão 1.3.0 or mais recente e
  • que seja compatível com a versão do driver de CCID.
  1. A versão da biblioteca opensc aqui utilizada será a 0.10.1 ou mais recente, porém, esta é independente das duas primeiras citadas. 
     

 

 
 
2. Pré-requisitos
 
 


2.1 Básico

Antes de iniciar a instalação, é preciso garantir que o sistema apresente: 

1. Suporte à USB: 

Sugere-se que o pacote de ferramentas “usbutils” esteja rodando. Atualmente, quase todas distribuições a usuários finais fornecem este pacote e isto pode ser facilmente verificado aplicando-se o comando “lsusb” que, estando com o SmartEpad conectado, deverá apresentar o seguinte resultado: 

$ lsusb

Bus 004 Device 001: ID 0000:0000

Bus 002 Device 003: ID 09be:0002 MySmart.Com   (#1)

Bus 002 Device 001: ID 0000:0000

Bus 003 Device 001: ID 0000:0000

Bus 001 Device 001: ID 0000:0000 

Obs. #1 : a declaração “09be:0002 MySmart.Com” refere-se ao SmartEpad. 


2. Ambiente de “Building” em condições adequadas:

é necessário que se tenha instalado um ambiente com recursos equivalentes aos do pacote “build-essential” do sistema Debian.  


3. Biblioteca “libusb”:

é necessário que se tenha instalada no sistema uma biblioteca, inclusive com os arquivos headers para desenvolvimento, com recursos equivalentes aos do pacote “libusb-dev” do sistema Debian.


2.1 Pré-requisitos – Parte Opcional 

Para que o suporte à indicação de presença e condições do cartão possa ser compilado e instalado, é necessário que dois itens sejam previamente verificados. 

1. É necessário que o suporte ao USB HID e HIDDEV estejam habilitados no kernel do seu sistema e também que os cabeçalhos do kernel estejam instalados.

É possível verificar isto através do arquivo de configuração do seu kernel (em geral /boot/config-versão-do-kernel), nas linhas: 

CONFIG_USB_HID=y

CONFIG_USB_HIDDEV=y 

2. É necessário pesquisar o “minor number” do SmartEpad.

No caso de não haver outro dispositivo HID no sistema, o “minor number” atribuído ao

SmartEpad será 96; isto porque tal número é gerado a partir da fórmula

minor_number = 96 + número_do_dispositivo, sendo que ao primeiro dispositivo é atribuído zero como número_do_dispositivo. 

Para tal pesquisa, é necessário averiguar se há mais dispositivos USB HID instalados e qual entrada /dev lhe está associada.

Dispositivos USB HID usando HIDDEV não são tão comuns e a maioria dos usuários não deve ter problemas com isto. Em geral, mouses e teclados não usam HIDDEV e sim HIDINPUT. Dispositivos que usam HIDDEV são em geral no-breaks e alguns tipos de monitores.

Pesquise por arquivos hiddev* no /dev (eles são normalmente encontrados em /dev/hiddev* , /dev/usb/hiddev* , /dev/usb/hid/hiddev* ).

Se há algum destes arquivos instalados, provavelmente há outro dispositivo HIDDEV no seu sistema; mas a ausência destes arquivos ainda não é a indicação definitiva da inexistência de dispositivos desta classe.

A única forma de garantir isto é verificando a documentação dos dispositivos. 












 
 
3. Obtendo Softwares
 
 
4. Compilando
 
 
5. Testes