Configuração para uso de Tokens e SmartCards no Linux
Informações Iniciais e pré-requisitos
O acesso aos certificados digitais armazenados em dispositivos SmartCard e Token é feito através da interface PKCS#11, utilizando o provider Sun PKCS#11. Por isso é necessária a instalação prévia da máquina virtual da Sun Microsystems (J2SE) versão 5.0 ou superior . Maiores informações sobre este provider podem ser encontradas no sítio da Sun Microsystems ( http://java.sun.com/j2se/1.5.0/docs/guide/security/p11guide.html ).
Instalação do Software do Smartcard/Token
Para que o Receitanet possa usar os certificados armazenados no smartcard/token, é necessário instalar seu driver , bem como a biblioteca que implementa a interface PKCS#11.
A maioria dos smartcards/tokens testados também exige como pré-requisito a instalação do middleware PCSC-lite. Maiores informações podem ser encontradas no sítio do projeto: http://pcsclite.alioth.debian.org/
A seguir, deve ser instalado o driver específico do smartcard/token. Este software é geralmente fornecido pelo fabricante.
Finalmente, é preciso instalar a(s) biblioteca(s) de implementação da interface PKCS#11 do smartcard/token. Este software também é geralmente fornecido pelo fabricante.
O projeto OpenSC inclui uma implementação genérica da interface PKCS#11, que funciona para vários modelos de smartcard/token. Maiores informações podem ser encontradas no sítio do projeto: http://www.opensc-project.org/
Observação: Para maiores detalhes sobre a instalação de modelos específicos de smartcard/token, é recomendável estudar a documentação fornecida com o produto ou disponível no sítio do fabricante.
Passo 1 - Identificar o diretório de configurações do Receitanet
Primeiramente, é preciso localizar o diretório de configurações do Receitanet. Na tela principal do programa clique no botão "Sobre..." . Será exibida uma tela semelhante à seguinte:
Neste exemplo, o diretório de configuração do Receitanet é " /home/usuario/.receitanet
".
Passo 2 - Criar um arquivo de configuração PKCS#11
Para que o provider possa ter acesso aos certificados, é preciso criar um arquivo com a extensão ".cfg" no diretório de configuração do Receitanet.
O arquivo de configuração deve definir duas variáveis:
- name : um identificador para o smartcard ou token
- library : caminho para o arquivo de biblioteca (extensão ".so") que implementa o PKCS#11 para o smartcard ou token.
Exemplo: Para o token eToken PRO USB da Aladdin, o arquivo de configuração poderia ter as duas linhas:
name=Aladdin_eTokenPRO/USB
library=/usr/lib/libetpkcs11.so
Observação: o conteúdo da variável name não pode conter espaços.
Passo 3 - Adicione o Diretório da Biblioteca PKCS#11 ao PATH
Para que o Receitanet possa usar os certificados armazenados no smartcard/token, pode ser necessário que o diretório contendo a biblioteca PKCS#11 do dispositivo seja adicionado à variável de ambiente " LD_LIBRARY_PATH ", dependendo do modelo do smartcard/token e da configuração de seu sistema operacional.
Observação: Alguns smartcards/tokens instalam a biblioteca PKCS#11 no diretório /usr/lib. Neste caso, não é necessário modificar a variável "LD_LIBRARY_PATH".
Usando os Certificados do Smartcard/Token no Receitanet
Para usar o certificado de um SmartCard/Token no Receitanet, antes de enviar a declaração, selecione a opção "Assinar a declaração digitalmente" . O programa tentará acessar os certificados armazenados no smartcard/token, utilizando as informações dos arquivos de configuração.
Para cada smartcard/token configurado, o Receitanet exibirá uma janela para que seja informada a senha do dispositivo (PIN) e mostrará a lista dos certificados encontrados. Na janela exibida, o nome do dispositivo será igual à variável name definida no arquivo de configuração.
Para assinar a declaração bastará, então, selecionar o certificado digital desejado e clicar no botão Assinar .