Вы находитесь на странице: 1из 47

Biometria em Linux,

Existe?
Alessandro de Oliveira Faria (A.K.A. CABELO)

Versão 4.0
Biometria em Linux, existe?

 Atuando no mercado de software desde 1986  Apresentação

 Embaixador e openSUSE Member; 

 Membro da comunidade Viva O Linux desde 2003; 

 Conselheiro Administrativo Linux do projeto Tecnociência;

 Projetista/mantenedor mais de 90 RPMs no openSUSE Build Service; 

Mantenedor e Desenvolvedor

 droidFrete: Cálculo de frete na plataforma Android.

 droidRastreamento: Rastreabilidade de objeto postados.

 stampDate: Serviço de menu KDE para estampar data em imagens.

 libHAIRCAPTURE: Biblioteca de video captura em Linux.

 IPCMSG: Biblioteca de comunicação inter­processos.

 easyPCSC: Biblioteca para utilização de cartões sma

Publicações:

 Linux Magazine 8 Artigos

 Internet 94 artigos técnicos (VOL/Tecnociência/Linha de Código).

Objetivo: Compartilhar erros /acertos.


Biometria em Linux, existe?
Introdução

Biometria  é  o  ramo  da  ciência  que  estuda  a  medida 


dos seres vivos. A biometria deixou de ser ficção científica 
há algum tempo, e hoje faz parte do nosso dia­a­dia. 
Biometria em Linux, existe?
Introdução
O ineditismo na década de 90 foi apenas a 
utilização  da  biometria  em  sistema  de 
informática.  A  biometria  ganhou  atenção 
científica  somente  no  final  do  século  XIX 
quando  as  características  físicas  das  pessoas 
passaram  a  ser  armazenadas  para  fins 
judiciais.  Já  no  início  do  século  XX,  a 
biometria  ganhou  espaço  nos  documentos  de 
identidade (RG no Brasil).

Cunho judicial, documento de identidade.


Biometria em Linux, existe?
Introdução

Atualmente,  no  início  do  século  XXI  este  assunto 


encontra­se em evidência para garantir a autenticação 
e gerenciamento de identidade.  

Mencionar algumas aplicabilidades.


Biometria em Linux, existe?
Introdução

A  biometria  com  código  aberto  evolui  a  cada  dia, 


cada  projeto  na  sua  velocidade  de  amadurecimento. 
Esta evolução não acontece na velocidade dos projetos 
de software convencionais. 
Biometria em Linux, existe?
Introdução

Na  minha  opinião,  os  principais  motivos  são:  a 


necessidade  de  profundos  conhecimentos 
matemáticos  e  testes  populacionais.  Ou  seja, 
qualquer  projeto  biométrico  precisa  de  uma 
amostragem  numerosa  para  obter  uma  evolução 
significativa em termos de algoritmo matemático.

Custos
Biometria em Linux, existe?
Introdução

Para  quem  deseja  fundamentar  conceitos  de 


desenvolvimento  neste  segmento,  aconselho  estudo  de 
algoritmos  de  visão  computacional  como  OpenCV  e 
Mimas  para  se  familiarizar  com  processamento  de 
imagens, reconhecimento de padrões e treinamento da 
rede de algoritmos.

Apenas para os casos de processamento de imagens.


Biometria em Linux, existe?
Introdução

A  NETi  TECNOLOGIA,  desenvolve  e  pesquisa  o 


assunto  na  plataforma  Linux  desde  1998.  Atualmente, 
trabalhamos  comercialmente  com  foco  na  tecnologia 
proprietária  de  reconhecimento  facial  da  Cognitec 
System.  Entretanto,  a  divisão  de  pesquisa  esta  sempre 
de olho nas soluções de código aberto. 

Casas Bahia - IBM,Shopping Rio Sul e Rio Grande do Sul.


Vantagens da plataforma GNU/Linux.
Biometria em Linux, existe?
Conceito

O  homem  sempre  teve  a  necessidade  de  restringir  e 


controlar o acesso de outros homens a determinados locais 
ou  bens  considerados  privilegiados  ou  particulares. 
Normalmente  utilizamos  cartões  ou  senhas  para  obter 
acesso em sistema ou locais restritos.

Auto fraude em banco, relógio ponto/controle de acesso lab.


Biometria em Linux, existe?
Conceito

Entretanto,  senhas  e  cartões  podem  ser  roubados, 


perdidos,  esquecidos  ou  revelados.  Neste  momento, 
começam  as  preocupações  relacionadas  a  fraude  e  acesso 
de usuários não autorizados. Já a biometria converte uma 
característica  ou  comportamento  em  códigos  de  barras 
humanos que não apresentam estes pontos negativos.

Não consigo emprestar a veia do dedo...


Biometria em Linux, existe?
Conceito

Em  primeiro  lugar,  a  biometria  pode  resolver  duas 


necessidades  distintas,  ou  seja,  podemos  utilizá­la  para 
verificar a identidade de um usuário ou identificação do 
mesmo. Em ambos os casos, a biometria é a única maneira 
de garantir a presença do proprietário durante a operação.

Funcionalidade do processamento 1/N e 1/1.


Biometria em Linux, existe?
Tipos de Biometria
Biometria em Linux, existe?
Tipos de Biometria – Reconhecimento Facial

­ Método mais utilizado  entre os seres humanos;
­ Aplicações estáticas e assistidas;
­ Controle de iluminação;
­ Processar eventos no passado (JPEG/MJPG/MP4/h264)
­  Extremamente  complexo  implementar  esse  processo  em 
equipamentos;
­ Baixo impacto cultural;
­ Não intrusivo.
­ Velocidade.
Biometria em Linux, existe?
Tipos de Biometria – Reconhecimento Facial
Biometria em Linux, existe?
Tipos de Biometria – Reconhecimento Facial

Ambiente controlado: fator  determinante  
para  a  tecnologia  de  reconhecimento facial.

Investimento na qualidade da câmera.


Biometria em Linux, existe?
Tipos de Biometria – Reconhecimento Facial

Image Face Image + Eyes Image + Crop Face


Crop
Cap. Finder Face Pos. Finder Eye Pos. Image

Prepro- Preprocessed Feature Feature


cessing Face image Extraction Set
Biometria em Linux, existe?
Tipos de Biometria – Reconhecimento Facial

­ Projeto OpenSource: libface, pam­face­authentication
  e malic;
­ Conhecimentos das APIs de vídeo captura V4L 1/2;
­ Trabalhar com espaços de cores RGB, YUV...;
­ Aceleração de hardware;
­ Tecnologia mais inibidora a fraudes.
Biometria em Linux, existe?
Tipos de Biometria – Reconhecimento Facial

Vantagens - Embarcado.
Biometria em Linux, existe?
Tipos de Biometria – Reconhecimento Facial
Biometria em Linux, existe?
Tipos de Biometria – Reconhecimento Facial
Biometria em Linux, existe?
Tipos de Biometria – Reconhecimento Facial
Biometria em Linux, existe?
Tipos de Biometria – Reconhecimento Facial
Biometria em Linux, existe?
Tipos de Biometria – Reconhecimento Facial
Biometria em Linux, existe?
Tipos de Biometria – Impressão Digital
A  impressão  digital  é  formada  nas  superfícies  dos 
nossos dedos nos primeiros meses de vida. Na verdade 
a  sua  constituição  acontece  ainda  quando  feto,  a 
impressão digital acompanha a pessoa por toda a sua 
existência sem apresentar grandes mudanças. 
Biometria em Linux, existe?
Tipos de Biometria – Impressão Digital

Grande  parte  dos  algoritmos  trabalham  com  o 


princípio  de  extração  dos  pontos  de  minúcias  ou 
pontos característicos. Após a extração são calculados 
a  relação  entre  as  distâncias  destes  pontos,  cada 
algoritmo  possui  a  sua  base  de  cálculo,  seja  por 
análise  dos  pontos  entre  si  ou  por  agrupamentos  de 
pontos para análise de semelhanças de triângulos com 
os ângulos internos.
Biometria em Linux, existe?
Tipos de Biometria – Impressão Digital

Dificuldades:
­ Contato físico;
­ Impacto cultural;
­ Velocidade 1:N;
­ 2% a 10% da  população sem amostragem.

Vantagens:
­ Integrado ao notebooks;
­ Ideal para autenticação remota ou local;
­ Baixo custo.
Biometria em Linux, existe?
Tipos de Biometria – Impressão Digital
Biometria em Linux, existe?
Tipos de Biometria – Impressão Digital
Biometria em Linux, existe?
Tipos de Biometria – Impressão Digital
Biometria em Linux, existe?
Tipos de Biometria – Impressão Digital
Biometria em Linux, existe?
Tipos de Biometria – Impressão Digital

Esta  tecnologia  está  vinculada  ao  hardware 


biométrico. Ou seja, os sensores utilizados para obter 
a  imagem  da  digital  impacta  na  performance  do 
sistema devido a resolução da imagem obtida.
Biometria em Linux, existe?
Tipos de Biometria – Impressão Digital

O  projeto  livre  fprint  apresenta  uma 


compatibilidade  com  uma  multitude  de 
sensores disponíveis no mercado (inclusive os 
sensores da Microsoft).

­ Dependencias libusb e glib;
­ API de simples utilização;
­ Escrito em C;
Biometria em Linux, existe?
Tipos de Biometria – Íris

Íris: São anéis em torno da pupila limitados 
pela  parte  branca  do  olho.  A  íris  carrega 
consigo diversas informações de um indivíduo. 
Inclusive  gêmeos  univitelinos    apresentam  íris 
diferentes.  A  complexabilidade  da  íris  do  olho 
humano  teoricamente  a  torna  única  a  cada 
usuário.

Iridossomatologia – alto custo -intrusiva


Biometria em Linux, existe?
Tipos de Biometria – Íris
Iris
JIRRM: Reconhece  uma  íris  presente  na imagem 
submetida  ao  sistema.  Na  página  oficial, 
encontramos informações que mencionam planos 
para  processamento  e  comparação  entre   
amostragens.    O  projeto  identifica  a  íris  e 
somente  então  limita  a  área  para  posterior 
análise.
Biometria em Linux, existe?
Precisão e Confiabilidade

Na  escolha  de  um  sistema  de  autenticação 


biométrico,  o  desempenho  deve  ser  levado  em 
conta,  que  também  está  relacionado  a  taxa  de 
acerto/erro  da  biometria  que  deve  ser 
configurada pelos coeficientes FAR (taxa de falsa 
aceitação) e FRR (taxa de falsa rejeição).
Biometria em Linux, existe?
Precisão e Confiabilidade
Biometria em Linux, existe?
Nada é perfeito

Existem  maneiras  comprovadas  de  burlar 


leitores  de  impressão  digital  utilizando  uma 
amostragem    digital  falsa  feita  de  gelatina  ou 
silicone.  Características  físicas  da  gelatina 
idênticas  à  da  pele  proporcionaram  fraudes  ao 
sistema.  (Sandstrom,  M.,  Liveness  Detection  in 
Fingerprint Recognition, 2001).
Biometria em Linux, existe?
Nada é perfeito

No início do século XX, em 1903, um dos casos 
mais polêmicos envolvendo identidade enganada 
foi  o  de  Will  West.  No  qual  foi  julgado  e 
condenado por um crime que não cometeu.
Biometria em Linux, existe?
Conclusão

Com o poder computacional dos dias atuais, a 
precisão  dos  algoritmos  atingiram  um  nível  de 
confiabilidade  muito  alto.  Principalmente  as 
tecnologias  que  trabalham  diretamente  com 
imagens  ao  vivo  ou  estática.  Porém,  para 
aumentar  ainda  mais  esta  margem  de 
acertividade,  sugiro  a  utilização  da  multi­
biometria (utilização de duas ou mais tecnologias 
biométricas), assim tornando inviável uma fraude 
em qualquer sistema computacional. 
Biometria em Linux, existe?
Instalação - fprint

O  pacote  fprint,  é  uma  opção  totalmente 


open­source  para  o  desenvolvimento  de 
aplicativos  utilizando  a  tecnologia  de  biometria 
digital. O pacote de integração permite a criação 
de  processo  de  identificação  e  verificação  de 
impressão  digital  para  diversos  modelos  de 
leitores.
Biometria em Linux, existe?
Instalação - fprint

$ wget 
http://ufpr.dl.sourceforge.net/sourceforge/
fprint/libfprint­0.0.6.tar.bz2

$ tar ­jxvf libfprint­0.0.6.tar.bz2
$ cd libfprint­0.0.6
$ ./configure
Biometria em Linux, existe?
Instalação - fprint

$ make
$ su
Senha:
# make install
# ldconfig 

# cd examples/
# make 
Biometria em Linux, existe?
Instalação - fprint

$ dmesg
usb 3­1: new full speed USB device using uhci_hcd and address 2
usb 3­1: new device found, idVendor=05ba, idProduct=000a
usb 3­1: new device strings: Mfr=1, Product=2, SerialNumber=3
usb 3­1: Product: U.are.U 4000B Fingerprint Reader
usb 3­1: Manufacturer: DigitalPersona, Inc.
usb 3­1: SerialNumber: {BB353718­DFA3­B74C­A883­B8419AA53934}
usb 3­1: configuration #1 chosen from 1 choice 

# ./img_capture
# ./enroll
# ./verify_live
Biometria em Linux, existe?
Instalação - pam-face

$ wget http://pam­face­authentication.googlecode.com/files/pam­
face­authentication­0.3.tar.gz

Descompacte e compile o pacote:

$ tar ­zxvf pam­face­authentication­0.3.tar.gz
$ cd pam­face­authentication­0.3/
$ mkdir build
$ cd build
$ cmake ­D CMAKE_INSTALL_DIR=/usr ..
$ make
$ sudo make install

$ qt­facetrainer

Adicione a linha a seguir ao arquivo
/etc/pam.d/su:

auth sufficient pam_face_authentication.so 
Biometria em Linux, existe?
Contato
Obrigado
Alessandro de Oliveira Faria (A.K.A.CABELO)

Criticas e sugestões
cabelo@opensuse.org

“Colaborar atrai amigos,
 competir atrai inimigos...”

http://cabelovivaolinux.wordpress.com

Вам также может понравиться