Desenvolvendo aplicativo para autenticação biométrica utilizando a Libfprint

Neste tutorial vou explicar como utilizar a libfprint a seu favor, ou seja, desenvolver um software utilizando a mesma para leitura de impressões digitais no Linux.

[ Hits: 37.453 ]

Por: Rafael Wagner Souza da Silva em 20/01/2009


Entendendo, compilando e executando



Utilizando leitor biométrico de impressão digital no Linux e desenvolvendo softwares à partir da LibFprint.

Neste tutorial vou ensinar pela própria experiência, o caminho percorrido para ativar e instalar um leitor biométrico de impressão digital no sistema, além de capturar e gerenciar os erros possivelmente gerados pela má leitura do leitor biométrico da digital.

Libfprint v0.0.6

A libfprint é uma biblioteca livre para desenvolvimento de softwares - SDK - que interage com o leitor biométrico de digital através da porta USB. A maior vantagem desta biblioteca é que ela suporta vários modelos de leitores, além de ser livre, claro. No Windows uma biblioteca com o mesmo fim é paga e é cara!

Instalando a Libfprint

Existe vários modos de instalar a Libfprint no seu sistema, vou listar aqui o método que utilizei para instalar no Linuxfx Burntux, que é baseado no Debian Testing/Ubuntu.

Baixar os fontes no site do projeto: libfprint-0.0.6.tar.bz2 (fontes da biblioteca)

Compilando o fonte:

su - vai pedir a senha do administrador
# tar -jxvf libfprint-0.0.6.tar.bz2
# cd libfprint-0.0.6
# ./configure


Aqui é que o bicho começa a pegar (Ubuntu, Linuxfx, Debian testing e outros: Dependências!).

A cada "./configure" o sistema vai informar a dependência que ele necessita para efetuar a compilação com sucesso. Não vou listar as minhas, pois o seu sistema pode ser diferente.

A solução mais correta neste caso é abrir o Synaptic e instalar manualmente os pacotes procurando e instalando a versão de desenvolvimento, estes pacotes são seguidos de "- dev". Um exemplo bem simples é, se o ./configure reclamar a falta da biblioteca imagemagick, você vai procurar no Synaptic imagemagick e vai encontrar:
  • libmagic++9-dev
  • C++ API to the ImageMagick library - development files
  • Magick++ supports an object model which is inspired by PerlMagick

Você deve instalar esta biblioteca e executar mais uma vez o ./configure até resolver todos os problemas de dependências.

Com os problemas de dependência resolvidos, execute o comando "make" para efetuar a compilação na íntegra, a seguir transforme-se em super-usuário para efetuar a instalação da bibliotecas através do comando "make install" seguido do "ldconfig", conforme as instruções abaixo.

# make
# make install
# ldconfig


Para finalizar este pacote, entre na pasta "example" e execute o comando "make" para compilar os códigos exemplos.

# cd examples/
# make


Aqui você já instalou e configurou a libfprint. Para testar:

# ./enroll
# ./verify


Outro modo, não testado por mim

Para fazer o fingerprint reader funcionar, você precisará de um repositório que contenha o FPrint. Adicionando o repositório ao seu sources.list:

# echo -e "# Fingerprint reader support (fprint)\ndeb http://ppa.launchpad.net/madman2k/ubuntu hardy main restricted universe multiverse" | tee -a /etc/apt/sources.list

Em seguida instale os pacotes necessários:

# apt-get update
# apt-get install fprint-demo libfprint-dev libfprint0 libpam-fprint


Você precisará estar no grupo de usuários "plugdev" para utilizar o leitor de impressões digitais (FingerPrint Reader):

# usermod -a -G plugdev $USER
# groups | grep plugdev
# sudo chgrp -R plugdev /dev/bus/usb/

Agora você está pronto para testá-lo. Execute "fprint-demo" para fazer o teste.

Não garanto que funcione!

    Próxima página

Páginas do artigo
   1. Entendendo, compilando e executando
   2. Desenvolvendo um aplicativo para leitura da impressão digital
Outros artigos deste autor

Biometria digital - Sistemas AFIS em Gnu/Linux

Leitura recomendada

Alocação dinâmica de memória em C

A duplicação do buffer de saída na chamada de sistema fork() do Linux

Alocação dinâmica

Estudando recursividade direta e indireta

Android NDK: Desmistificando o acesso a códigos nativos em C

  
Comentários
[1] Comentário enviado por fchevitarese em 21/01/2009 - 10:53h

Opa!!!
Gostaria de saber se é possível utilizar a libfprint para desenvolver aplicativos web ...
Pois alguns clientes de nossa empresa necessitam da validação biométria na internet. Por exemplo, para verificar se o dono de um cartão é ele mesmo!

No mais, achei seu artigo simples e objetivo!

Obrigado ;)

Fred Chevitarese - GNU/Linux

[2] Comentário enviado por rafael_linuxfx em 21/01/2009 - 22:44h

Olá, existe um projeto open source que tem todas estas funções:

http://www.vivaolinux.com.br/artigo/S1-Ponto-Sistema-de-controle-de-ponto-Open-Source-para-Linux

[3] Comentário enviado por Librarian em 22/01/2009 - 15:36h

"Não garanto que funcione!"

E como tu publicas um procedimento que tu mesmo não executaste?

[4] Comentário enviado por rafael_linuxfx em 22/01/2009 - 16:34h

Não testei por que meu sistema não é Ubuntu. Só deixei disponível, para o caso de algum usuário que utilize Ubuntu queira testar.

Acho que não custa deixar uma opção a mais para facilitar a instalação para usuários de uma distro específica. :)

[5] Comentário enviado por menezes32 em 27/01/2009 - 14:35h

BOA TARDE!

ESTOU COM UM PEQUENO PROBLEMA PARA FAZER FUNCIONAR O MEU IDENTIFICADOR BIOMETRICO EM MEU NOTEBOOK.

ELE É UM ACER 6292 COM UM IDENTIFICADOR BIOMETRICO INCORPORADO. JA TENTEI INSTALAR ALGUNS PROGRAMAS MAIS NADA!

EU USO O UBUNTU 8.10.

VC TERIA ALGUMA SOLUÇÃO PARA RESOLVER DE UMA VEZ POR TODAS O MEU PROBLEMAS? EXISTE ALGUMA PROCEDIMENTO A SEGUIR DIFERENTE?

VI O SEU ARTIGO AQUI MAIS NÃO TESTEI.

FAVOR ENVIAR A RESPOSTA PARA O MEUS EMAIL SE POSSIVEL: ERICBARROSMENEZES@GMAIL.COM

GRATO PELA RESPOSTA JA ANTECIPADAMENTE!


ERIC


[6] Comentário enviado por rafael_linuxfx em 28/01/2009 - 20:42h

Olá!

Eu testei o procedimento de instalação que "Ainda não havia testado" no Ubuntu 8.10, e o leitor integrado do meu notebook não funcionou! mas não pelo método de instalação, que foi 100% correto e sim pela incompatibilidade do meu leitor com a Libfprint, tente instalar no seu e testar, pois pode ser que o seu seja compatível com a libfprint. Na mesma hora testei um USB da microsoft o fingerprint reader e funcionou de primeira.

Se puder lhe ajudar em algo mais, estou a disposição.

[7] Comentário enviado por sandroandrade26 em 05/01/2010 - 13:53h

Executei o primeiro metodo, instalei todas os pacotes necessários na instalação do ./configure, mas quando vou utilizar o make esta dando vários erros, alguem poderia me ajudar.

[8] Comentário enviado por duda10 em 05/05/2010 - 11:48h

Bom dia Rafael,

Estou fazendo meu TCC e o tema é biometria no linux, que linguagem de programação você usou para chamar a libfprint no sistema fingerfx? Se possível, me ajude. Aí vai meu e-mail para contato: tarihs.belli@gmail.com.
Obrigada!!!

[9] Comentário enviado por samuelsonbrito em 14/06/2016 - 11:50h

Como faço para usar o fprint no android. Vi alguns vídeos na internet de pessoas usando, mas não encontrei nenhum tutorial.

[10] Comentário enviado por samuelsonbrito em 14/06/2016 - 11:51h

Como faço para usar o fprint no android? Vi alguns vídeos na internet de pessoas usando, mas não encontrei nenhum tutorial.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts