Infra - Linux

Leitor de impressão digital Futronic FS80 no Linux

Neste documento disponibilizo passo-a-passo como instalar o leitor de impressão digital modelo FS80 da Futronic. Este texto pode ser considerado outra fonte de informação sobre biometria em GNU/Linux, pois com o SDK da Futronic é possível criar aplicações de identificação, verificação e inclusive logon biométrico no Unix/Linux.

por Alessandro de Oliveira Faria



Informações gerais e requisitos

Este texto contém instruções passo-a-passo de como instalar o leitor de impressão digital modelo FS80 da Futronic. Portanto o mesmo pode ser considerado outra fonte de informação sobre biometria em GNU/Linux, pois com o SDK da Futronic é possível criar aplicações de identificação, verificação e inclusive logon biométrico no Unix/Linux.

Não posso deixar de agradecer o Sarmanho Rodrigues Alves por disponibilizar o sensor para teste e elaboração deste documento.

O leitor utilizado modelo FS80 utiliza um sensor ótico CCD que permite a captura da impressão digital em alta resolução, podendo assim ser utilizado em sistemas de segurança, controle de acesso, catracas, acesso à rede, confirmação de identidade, etc.

A sua interface do equipamento é USB versão 2.0, a janela de detecção possui 16 x 24 mm - 480 x 320 pixels (150 K), resolução de 508 dpi e tempo de processamento menor que 1s.

Vale a pena ressaltar que o ambiente utilizado para a elaboração deste documento foi o openSuSE 10.0 com o kernel 2.6.13-15.

O pacote é composto de 4 módulos:

Módulo do kernel (utilizado neste documento): Responsável pelo acesso ao hardware do scanner. Para efetuar o download, abaixo as opções disponíveis:

FreeBSD 4.x:
http://biomark.org.ru/distfiles/kernel/uscan_bfp-freebsd-4.x.tar.gz

FreeBSD 5.x:
http://biomark.org.ru/distfiles/kernel/uscan_bfp-freebsd-5.x.tar.gz

Linux Kernel 2.2.x:
http://biomark.org.ru/distfiles/kernel/uscanner-linux-2.2.x.tar.gz

Linux Kernel 2.4.x:
http://biomark.org.ru/distfiles/kernel/uscanner-linux-2.4.x.tar.gz

Linux Kernel 2.6.x:
http://biomark.org.ru/distfiles/kernel/uscanner-linux-2.6.x.tar.gz

BFPSDK Kit de desenvolvimento (utilizado neste documento): O BFPSDK (Biometric FingerPrint Software Development Kit) é um pacote composto de bibliotecas para o desenvolvimento de aplicações para identificar ou verificar usuários através da biometria digital com os sensores Fultronic FS80. Abaixo as opções disponíveis:

FreeBSD:
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-freebsd-4.7-i386-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-freebsd-4.9-i386-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-freebsd-4.10-i386-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-freebsd-4.11-i386-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-freebsd-5.3-i386-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-freebsd-5.4-i386-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-freebsd-6.0-i386-1.3.0.tar.gz

NetBSD:
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-netbsd-1.5.2-i386-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-netbsd-2.1-i386-1.3.0.tar.gz

OpenBSD:
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-openbsd-3.0-i386-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-openbsd-3.8-i386-1.3.0.tar.gz

Red Hat/Fedora Linux:
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-redhat-6.2-i586-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-redhat-9.0-i686-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-fedora-core2-i686-1.3.0.tar.gz

SuSE/OpenSuSE:
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-suse-6.3-i586-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-suse-7.3-i686-1.3.0.tar.gz
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-suse-10.0-i686-1.3.0.tar.gz

Debian:
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-debian-2.2-i586-1.3.0.tar.gz

Slackware:
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-slackware-10.2-i586-1.3.0.tar.gz

QNX:
http://biomark.org.ru/distfiles/bfpsdk/bfpsdk-qnx-6.2.1-x86pc-1.3.0.tar.gz

PAM_BFP - Módulo de login biométrico (não utilizado neste documento): O PAM_BFP é um módulo desenvolvido para efetuar o logon em sistemas Unix/Linux com com o leitor de impressão digital Futronic. Logo abaixo a imagem de um logon biométrico.



BFPSERVER - Módulo de login biométrico via rede (não utilizado neste documento): O PAM_BFP é um módulo desenvolvido para efetuar logon em sistemas Unix/Linux via rede com o leitor de impressão digital Futronic.

Instalação e visão geral

Após o download dos fontes do módulo do kernel, crie uma pasta e descompacte o pacote com o comando tar -zxvf:

$ mkdir kernel
$ cd kernel
$ tar -zxvf uscanner-linux-2.6.x.tar.gz

Makefile
build.txt
files.txt
uscanner.c
uscanner.h

Agora como root, utilize o comando make para compilar os fontes.

# make
make -C /usr/src/linux SUBDIRS=`pwd` modules
make[1]: Entering directory `/usr/src/linux-2.6.13-15"

WARNING: Symbol version dump /usr/src/linux-2.6.13-15/Module.symvers
is missing; modules will have no dependencies and modversions.

CC [M]/home/cabelo/linux/distfiles/kernel/uscanner.o
Building modules, stage 2.
MODPOST
CC/home/cabelo/kernel/uscanner.mod.o
LD [M]/home/cabelo/kernel/uscanner.ko
make[1]: Leaving directory `/usr/src/linux-2.6.13-15"

Use o comando mknod com o parâmetro "c 254 0" para criar o nó em /dev:

# mknod /dev/uscanner c 254 0

Defina os direitos referente ao acesso do dispositivo.

# chmod go+w /dev/uscanner

Insira o módulo do kernel:

# insmod uscanner.ko

Confira se o processo foi concluído com sucesso utilizando o comando dmesg:

# dmesg
USB FingerPrint device now attached to uscanner192
usbcore: registered new driver uscanner
usb 4-1: USB disconnect, address 3
USB FingerPrint Device #192 now disconnected
usb 4-3: new high speed USB device using ehci_hcd and address 4
USB FingerPrint device now attached to uscanner192

Neste etapa o módulo do kernel já está compilado e instanciado em memória.

Confira o vídeo de instalação do módulo do kernel logo abaixo ou no link: http://www.youtube.com/watch?v=Qo5CDTvAP-I.



Agora descompacte o SDK utilizando novamente o comando tar -zxvf conforme o exemplo abaixo:

$ tar -zxvf bfpsdk-suse-10.0-i686-1.3.0.tar.gz
bfpsdk-1.3.0/
bfpsdk-1.3.0/text-demo.c
bfpsdk-1.3.0/gtk-scan.mak
bfpsdk-1.3.0/bfpsdk.conf
bfpsdk-1.3.0/sample.c
bfpsdk-1.3.0/ncurses-demo
bfpsdk-1.3.0/bfpsdk.mak
bfpsdk-1.3.0/gtk-demo.c
bfpsdk-1.3.0/fp-on.png
bfpsdk-1.3.0/libbfpsdk.a
bfpsdk-1.3.0/sdk-rus-win.txt
bfpsdk-1.3.0/gtk-scan.c
bfpsdk-1.3.0/ncurses-demo.c
bfpsdk-1.3.0/gtk-demo.mak
bfpsdk-1.3.0/sample.mak
bfpsdk-1.3.0/gtk-demo
bfpsdk-1.3.0/gtk-scan
bfpsdk-1.3.0/text-demo
bfpsdk-1.3.0/text-demo.mak
bfpsdk-1.3.0/bfpsdk.4
bfpsdk-1.3.0/bfpsdk.h
bfpsdk-1.3.0/sample
bfpsdk-1.3.0/bfpsdk.so
bfpsdk-1.3.0/logo.png
bfpsdk-1.3.0/license.txt
bfpsdk-1.3.0/fp-off.png
bfpsdk-1.3.0/sdk-eng.txt
bfpsdk-1.3.0/sdk-rus.txt
bfpsdk-1.3.0/ncurses-demo.mak

Após a descompactação, em primeiro lugar edite o arquivo bfpsdk.conf modificando "use_libusb=1" para "use_libusb=0".

Agora crie a pasta "etc" em /usr/local caso o mesmo não exista e copie o arquivo bfpsdk.conf para a pasta criada.

$ mkdir /usr/local/etc
$ cp bfpsdk.conf /usr/local/etc/


Para testar o programa demo (possui as funcionalidades de inclusão, identificação e verificação de impressões digitais no modo gráfico) com a interface gtk, basta executar o gtk-demo com no exemplo abaixo:

$ ./gtk-demo

Confira o vídeo do Gtk-Demo em funcionamento logo abaixo, ou no link: http://www.youtube.com/watch?v=gDqDngxp6yU.



Existem exemplos de aplicativos em modo texto, porém com todas as funcionalidades do programa gtk-demo. Abaixo algumas imagens:





Bom, até o próximo documento...


Alessandro de Oliveira Faria

Alessandro de Oliveira Faria - Sócio-proprietário da empresa NETi TECNOLOGIA fundada em Junho de 1996 (http://www.netitec.com.br), empresa especializada em desenvolvimento de software e soluções biométricas, Consultor Biométrico na tecnologia de reconhecimento facial, atuando na área de tecnologia desde 1986 assim propiciando ao mercado soluções em software nas mais diversas linguagens e plataforma, levando o Linux a sério desde 1998 com desenvolvimento de soluções open-source, membro colaborador da comunidade Viva O Linux, mantenedor da biblioteca open-source de vídeo captura entre outros projetos.