70
UNIVERSIDADE FEDERAL DE GOI ´ AS – UFG CAMPUS CATAL ˜ AO – CaC DEPARTAMENTO DE CI ˆ ENCIA DA COMPUTAC ¸ ˜ AO – DCC Bacharelado em Ciˆ encia da Computa¸ ao Projeto Final de Curso Autentica¸ ao Segura Baseada em Biometria Voltada para a Dinˆ amica da Digita¸ ao Autor: Gustavo Batista da C. Almeida Orientador: Ms. M´ arcio de Souza Dias Catal˜ ao - 2009

Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

  • Upload
    lehanh

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

UNIVERSIDADE FEDERAL DE GOIAS – UFG

CAMPUS CATALAO – CaC

DEPARTAMENTO DE CIENCIA DA COMPUTACAO – DCC

Bacharelado em Ciencia da Computacao

Projeto Final de Curso

Autenticacao Segura Baseada em Biometria Voltadapara a Dinamica da Digitacao

Autor: Gustavo Batista da C. Almeida

Orientador: Ms. Marcio de Souza Dias

Catalao - 2009

Page 2: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Gustavo Batista da C. Almeida

Autenticacao Segura Baseada em Biometria Voltada para a Dinamica da

Digitacao

Monografia apresentada ao Curso de

Bacharelado em Ciencia da Computacao da

Universidade Federal de Goias Campus Catalao

como requisito parcial para obtencao do tıtulo de

Bacharel em Ciencia da Computacao

Area de Concentracao: Seguranca da Informacao

Orientador: Ms. Marcio de Souza Dias

Catalao - 2009

Page 3: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Almeida, Gustavo Batista da C.

Autenticacao Segura Baseada em Biometria Voltada para a Dinamica da

Digitacao/Ms. Marcio de Souza Dias- Catalao - 2009

Numero de paginas: 58

Projeto Final de Curso (Bacharelado) Universidade Federal de Goias, Campus

Catalao, Curso de Bacharelado em Ciencia da Computacao, 2009.

Palavras-Chave: 1. Biometria. 2. Dinamica da Digitacao. 3. Seguranca da In-

formacao

Page 4: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Gustavo Batista da C. Almeida

Autenticacao Segura Baseada em Biometria Voltada para a Dinamica da

Digitacao

Monografia apresentada e aprovada em de

Pela Banca Examinadora constituıda pelos professores.

Ms. Marcio de Souza Dias – Presidente da Banca

Ms. Luanna Lopes Lobato

Acrısio Jose do Nascimento Junior

Page 5: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Dedico este trabalho a minha Mae Maria Jose, ao meu

Pai Leonides e ao meu Irmao Chester

Page 6: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

AGRADECIMENTOS

Agradeco primeiramente a Deus, por ser o meu porto seguro e por me dar forcas para

conseguir vencer os obstaculos.

Agradeco aos meus pais, Leonides e Maria Jose por todo amor, carinho e incentivo

durante toda a minha vida! Sem eles nada disso seria possıvel.

Agradeco ao meu irmao Chester, pelo companherismo e apoio.

Agradeco tambem a minha namorada Bianca Leao, pelo carinho afeto e compreensao

durante todo o tempo.

Agradeco aos colegas da graduacao,que sempre me ajudaram quando mais precisei.

Em especial aos amigos Nelio Junior e ao Danilo Reis pelo sincero companheirismo.

Agradeco a todos os mestres da graduacao e em especial ao meu orientador profes-

sor Ms. Marcio Souza Dias, por acreditar em mim e tornar possivel a realizacao deste

trabalho.

Agradeco a todos os tios e tias, primos e primas que sempre me apoiaram.

Por fim, agradeco a todos que de forma direta ou indireta que cotribuıram para a

minha formacao.

Page 7: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

“Os desafios foram feitos para serem vencidos. pois se

nao houvessem desafios, nao existiriam vitorias”.

Sulamita

Page 8: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

RESUMO

Almeida, Gustavo Batista da C. Autenticacao Segura Baseada em Biome-

tria Voltada para a Dinamica da Digitacao. Curso de Ciencia da Computacao,

Campus Catalao, UFG, Catalao, Brasil, 2009, 58p.

Sistemas computacionais que necessitam de uma restricao de acesso sao, normalmente,

baseados em um mecanismo de autenticacao que usa nome de usuario e senha como

requisito para a obtencao do acesso. Tal processo de autenticacao faz com que o acesso a

estes sistemas seja menos seguro, tendo em vista o alto ındice de perda e roubo dos dados

de autenticacao.

Baseado nessa fragilidade dos sistemas de autenticacao que e proposto neste trabalho

o desenvolvimento de um prototipo de autenticacao seguro baseado em biometria com

foco na dinamica de digitacao, como meio de tornar mais seguro o acesso a sistemas

computacionais.

Para o desenvolvimento deste trabalho, foi utilizada uma nova metodologia no processo

de captura das amostras, a qual leva em consideracao o tempo total de digitacao da senha

aliado a uma menor complexidade computacional, assim sendo o prototipo desenvolvido

conseguiu obter bons resultados mostrando ser uma solucao viavel para o aumento da

seguranca de sistemas computacionais.

Palavras-Chaves: Biometria, Dinamica da Digitacao, Seguranca da Informacao

i

Page 9: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Sumario

Lista de Abreviacoes 1

Introducao 2

1 Seguranca da Informacao 4

1.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2 Os Tres Pilares da Seguranca da Informacao . . . . . . . . . . . . . . . . . 5

1.3 Tecnologias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.4 Autenticacao e Controle de Acesso . . . . . . . . . . . . . . . . . . . . . . 7

1.4.1 Metodos de Autenticacao . . . . . . . . . . . . . . . . . . . . . . . . 8

1.5 Senhas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.6 Biometria e Seguranca da Informacao . . . . . . . . . . . . . . . . . . . . . 8

1.7 Dinamica da Digitacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2 Biometria 10

2.1 O que e Biometria? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.2 Metodos Basicos de Identificacao . . . . . . . . . . . . . . . . . . . . . . . 11

2.3 Verificacao vs Identificacao . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.4 Medidas de Desempenho em Sistemas Biometricos . . . . . . . . . . . . . . 14

2.4.1 FAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.4.2 FRR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.5 Tipos de Sistemas Biometricos . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.6 Sistemas Biometricos Fisiologicos . . . . . . . . . . . . . . . . . . . . . . . 15

2.6.1 Reconhecimento de Face . . . . . . . . . . . . . . . . . . . . . . . . 15

2.6.2 Reconhecimento da Impressao Digital . . . . . . . . . . . . . . . . . 15

2.6.3 Reconhecimento da Geometria da Mao . . . . . . . . . . . . . . . . 16

2.6.4 Reconhecimento da Iris . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.7 Sistemas Biometricos Comportamentais . . . . . . . . . . . . . . . . . . . . 17

2.7.1 Reconhecimento de Voz . . . . . . . . . . . . . . . . . . . . . . . . 17

2.7.2 Reconhecimento da Assinatura Manuscrita . . . . . . . . . . . . . . 18

ii

Page 10: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

2.8 Dinamica da Digitacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.8.1 Conceitos Basicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.8.2 Informacao Alvo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.8.3 Quantidade de Amostras . . . . . . . . . . . . . . . . . . . . . . . . 20

2.8.4 Extracao das Caracterısticas . . . . . . . . . . . . . . . . . . . . . . 20

2.8.5 Tentativas de Autenticacao . . . . . . . . . . . . . . . . . . . . . . . 21

2.8.6 Classificador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.8.7 Abordagens da Dinamica da Digitacao . . . . . . . . . . . . . . . . 21

2.8.8 Aplicacoes da Dinamica da Digitacao . . . . . . . . . . . . . . . . . 22

2.9 Verificacao de Padroes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.10 Outros Tipos de Biometria . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.11 Comparacao entre as Tecnologias Biometricas . . . . . . . . . . . . . . . . 24

3 Estado da Arte 25

3.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.2 Biometria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.3 Dinamica da Digitacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.4 Evolucao da Dinamica da Digitacao . . . . . . . . . . . . . . . . . . . . . . 28

3.5 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4 Metodologia e Analise do Prototipo Proposto 31

4.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.2 Caracterısticas do Sistema Proposto . . . . . . . . . . . . . . . . . . . . . . 33

4.2.1 Senha ou Informacao Alvo . . . . . . . . . . . . . . . . . . . . . . . 33

4.2.2 Quantidade de Amostras . . . . . . . . . . . . . . . . . . . . . . . . 34

4.2.3 Tentativas de Autenticacao . . . . . . . . . . . . . . . . . . . . . . . 34

4.2.4 Abordagens da Dinamica da Digitacao . . . . . . . . . . . . . . . . 34

4.2.5 Extracao de Caracterısticas . . . . . . . . . . . . . . . . . . . . . . 34

4.3 Prototipo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

5 Teste e Analise dos Resultados 40

5.1 Testes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.2 Plano de Testes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.3 Documentacao do Plano de Testes . . . . . . . . . . . . . . . . . . . . . . . 41

5.3.1 Planejamento para a Execucao do Teste . . . . . . . . . . . . . . . 41

5.3.2 Recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

5.4 Documentacao da Especificacao dos Casos de Testes . . . . . . . . . . . . . 42

5.4.1 Caso de Teste - FRR . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.4.2 Caso de Teste - FAR . . . . . . . . . . . . . . . . . . . . . . . . . . 42

iii

Page 11: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

5.4.3 Resultados Esperados . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.5 Relatorio Resumo de Teste . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.5.1 Caso de Teste - FRR . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.5.2 Caso de Teste - FAR . . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.5.3 Analise dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . . 44

Consideracoes Finais 46

Referencias 48

Apendices 50

A Codigo Fonte 51

A.1 Modulo Captura de Amostras . . . . . . . . . . . . . . . . . . . . . . . . . 51

A.2 Modulo de Autenticacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

iv

Page 12: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Lista de Figuras

1.1 Blocos de solucoes [Zapatar e Suzuki, 2005] . . . . . . . . . . . . . . . . . . 6

2.1 Abordagens de Autenticacao associadas as Tecnologias Biometricas [Araujo, 2004] 12

2.2 Verificacao Um para Um . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.3 Identificacao Um para Muitos . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.4 Impressoes Digitais com Qualidades Diferentes . . . . . . . . . . . . . . . . 16

2.5 Leitor da Geometria da Mao[Gava, 2006] . . . . . . . . . . . . . . . . . . . 17

2.6 Extracao de Caracterısticas . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.7 Comparacao entre as Tecnologias Biometricas [Araujo, 2004] . . . . . . . . 24

3.1 Tecnica de Identificacao Biometrica de Bertillon . . . . . . . . . . . . . . . 26

4.1 Modulo de Cadastramento . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4.2 Modulo de Autenticacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.3 Usuario Sendo Cadastrado . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4.4 Usuario Cadastrado com Sucesso! . . . . . . . . . . . . . . . . . . . . . . . 36

4.5 Falha no Cadastro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.6 Usuario Sendo Autenticado . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.7 Usuario Autenticado com Sucesso . . . . . . . . . . . . . . . . . . . . . . . 38

4.8 Usuario Autenticado com Sucesso . . . . . . . . . . . . . . . . . . . . . . . 38

4.9 Tentativa de Fraude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.1 Taxas de FAR e FRR Obtidas . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.2 Algumas Comparacoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

v

Page 13: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Lista de Abreviacoes

FAR - False Accept Reject - Taxa de Falsa Aceitacao

FRR - False Reject Reject - Taxa de Falsa Rejeicao

ASCII - American Standard Code for Information Interchange - Codigo Padrao Amer-

icano para o Intercambio de Informacao

1

Page 14: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Introducao

Um problema fundamental na seguranca da informacao e o de autenticar um humano

perante uma maquina [Silberchatz et al., 2004]. Sistemas computacionais que necessitam

de uma restricao de acesso sao normalmente baseados em login/senha. Porem um fator

preponderante deste tipo de restricao e o fato de que as senhas ja nao sao consideradas

tao seguras devido ao alto ındice de perda e roubo das mesmas, o que leva estes sistemas

a se tornarem menos seguros[Stamp, 2006].

Sendo assim, faz-se necessario o uso de tecnicas que fortalecam o processo de aut-

enticacao baseado em login/senha com o objetivo de garantir uma maior seguranca a

sistemas computacionais. Uma solucao para este problema seria usar a biometria como

ferramenta para o fortalecimento da autenticacao.

Este trabalho tem como objetivo principal fortalecer o processo de autenticacao de

usuarios baseado em login/senha com o auxilio da biometria, usando a tecnica biometrica

da dinamica da digitacao. A proposta e fazer um estudo detalhado sobre a biometria

com foco na tecnica biometrica da dinamica da digitacao e por meio deste estudo ter uma

base solida para o desenvolvimento de um prototipo de autenticacao baseado na dinamica

da digitacao como meio de fortalecer o processo de autenticacao, garantindo assim mais

seguranca a sistemas computacionais.

Este trabalho procura uma forma diferenciada de usar a dinamica da digitacao pro-

pondo uma nova metodologia baseada no tempo total gasto pelo usuario ao digitar a sua

senha, visto que a maioria dos trabalhos da area usa a latencia de digitacao(intervalo de

tempo entre as digitacoes de tecla sucessivas pelo usuario) para extrair as caracterısticas de

digitacao do usuario. Mas, por ser a metodologia usada neste trabalho de menor complex-

idade em relacao as demais sera que o prototipo a ser desenvolvido ira produzir resultados

que viabilizem o uso de tal metodologia de desenvolvimento? O trabalho descrito neste

texto esta divido em 5 capıtulos.

No capıtulo 1 sao abordados os conceitos de seguranca da informacao e a relacao da

seguranca da informacao com a biometria.

No capıtulo 2 sao apresentados os conceitos e fundamentos da biometria, tipos de

biometria, medidas de desempenho em sistemas biometricos e e feita uma explanacao

sobre as principais tecnicas de biometria, com foco principal na dinamica da digitacao.

2

Page 15: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Ao longo do capıtulo 3 pode-se observar um levantamento sobre o estado da arte da

biometria com foco principal na dinamica da digitacao.

No capıtulo 4 e discorrido sobre a metodologia proposta para o desenvolvimento do

prototipo de autenticacao alem de ser apresentada uma abrangente analise acerca das

principais caracterısticas do mesmo.

NO capıtulo 5 e abordado todo o processo de testes, alem de ser realizado uma analise

dos resultados. Por fim ha uma conclusao do trabalho realizado, levantando os objetivos

alcancados, pontos positivos, pontos negativos, dificuldades e trabalhos futuros.

Ainda e possıvel encontrar o codigo fonte do prototipo e a documentacao de testes

elaborada no apendice desta monografia.

3

Page 16: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Capıtulo 1

Seguranca da Informacao

1.1 Introducao

Informacao compreende qualquer conteudo que possa ser armazenado ou transferido

de algum modo, servindo a determinado proposito e sendo de utilidade ao ser humano,

ou seja, trata-se de tudo aquilo que permite a aquisicao de conhecimento [Filho, 2004].

A seguranca da informacao busca reduzir os riscos de vazamentos, fraudes, erros, uso

indevido, sabotagens, paralisacoes, roubo de informacoes ou qualquer outra ameaca que

possa prejudicar os sistemas, os equipamentos de um indivıduo ou organizacao [Medeiros, 2001].

Um computador ou um sistema computacional e dito seguro se este atende a tres

requisitos basicos relacionados aos recursos que o compoem: confidencialidade, integridade

e disponibilidade [CERT.BR, 2006].

• Confidencialidade: a confidencialidade visa manter a privacidade das informacoes

evitando que pessoas ou programas nao autorizados tenham acesso as mesmas

[Moreira, 2001];

• Integridade: visa manter intacta a informacao, ou seja, a informacao deve man-

ter todas as caracterısticas originais estabelecidas pelo proprietario da informacao

[Moreira, 2001];

• Disponibilidade: propoe garantir que a informacao deve estar disponıvel para a

pessoa certa no momento que ela precise [Moreira, 2001].

Os incidentes de seguranca da informacao vem aumentando consideravelmente ao longo

dos ultimos anos e podem assumir formas variadas, tais como: infeccao de sistemas com-

putacionais por vırus, acesso nao autorizado, furto de informacao proprietaria, invasao de

sistemas, entre outras [Zapatar e Suzuki, 2005].

Um dos principais motivadores desse aumento e a Internet, que cresceu muito passando

de alguns milhares de usuarios na decada de 80 para centenas de milhoes de usuarios

4

Page 17: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

nos dias atuais [Zapatar e Suzuki, 2005]. Alem disso, ha o aumento dos incidentes de

seguranca ocasionados pelas vulnerabilidades1 nos sistemas computacionais.

E importante salientar que nao sao so as ameacas externas que representam riscos a

uma corporacao ou a um indivıduo, os proprios funcionarios representam um alto risco

quando mal intencionados ou mesmo quando nao sao conscientes dos riscos envolvidos na

manipulacao de informacoes [Zapatar e Suzuki, 2005].

1.2 Os Tres Pilares da Seguranca da Informacao

Quando se fala em seguranca da informacao, faz-se necessario considerar tres pi-

lares inter-relacionados. Esses tres pilares sao: as pessoas, os processos e as tecnologias

[Fonseca, 2006]. Esses tres pilares apoiados uns nos outros conseguem suportar um peso

maior e desta forma conseguir impedir o surgimento de problemas.

• Pilar 1 - Pessoas: Um dos elementos mais importantes da seguranca da informacao.

A maioria dos casos de incidentes dentro de uma organizacao contam com o apoio,

intencional ou nao, de pessoal interno [Moreira, 2001]. E comum nas corporacoes

deparar com funcionarios que deixam sua senha de acesso ao sistema escrita em lugar

visıvel a todos, ou mesmo que passam sua senha a outras pessoas. Sao as pessoas

que manipulam o sistema e tem acesso direto as informacoes. Daı a preocupacao

em capacitar e conscientizar os funcionarios como forma de evitar incidentes de

seguranca [Zapatar e Suzuki, 2005].

• Pilar 2 - Processos: Compreende a estrategia de seguranca, definicao e adocao das

polıticas de seguranca. Atraves de processos bem definidos, uma corporacao del-

ega a seguranca como uma responsabilidade de todos, pois sao os processos que

determinam o que deve ou nao ser feito.

• Pilar 3 - Tecnologias: Sao as solucoes empregadas para suportar os processos de-

scritos. E atraves das tecnologias que se aplica as polıticas de seguranca e seu

monitoramento [Zapatar e Suzuki, 2005].

1.3 Tecnologias

O maior desafio da industria mundial de software de seguranca e prover solucoes em

curto prazo a partir da descoberta de determinada ameaca ou problema. Foi-se o tempo

1Vulnerabilidade e definida como uma falha no projeto, implementacao ou configuracao de um software

ou sistema operacional, que quando explorada por um invasor resulta na violacao de seguranca de um

computador [CERT.BR, 2006].

5

Page 18: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

em que tudo se resumia a encontrar um antivırus eficaz, atualmente os vırus nao sao os

unicos viloes do mundo digital [Moreira, 2001].

A seguranca da informacao deve estar atrelada a um plano de gestao de seguranca que

se constitui basicamente de tres partes [Moreira, 2001]:

• A primeira parte consiste em realizar o levantamento e a classificacao dos ativos de

uma organizacao ou pessoa, ou seja, ativos sao os elementos que a seguranca busca

proteger. Os ativos possuem valor para as empresas e precisam ser protegidos de

forma adequada para que seus negocios nao sejam prejudicados.

• O segundo consiste na avaliacao do grau de risco e das vulnerabilidades destes ativos;

• E a terceira diz respeito a infra-estrutura de tecnologias, envolvendo desde a aquisicao

de ferramentas ate a configuracao e instalacao de solucoes.

As tecnologias que dao suporte a infra-estrutura incluem diversas funcionalidades im-

portantes no processo de seguranca da informacao de uma organizacao, tais como a identi-

ficacao de usuarios, a criptografia dos dados e a defesa contra ameacas externas e internas

[Zapatar e Suzuki, 2005].

Atualmente um profissional de seguranca da informacao, tem a sua disposicao uma

gama de ferramentas para garantir a seguranca dos ativos de uma corporacao. Estas

ferramentas se dividem em basicamente tres blocos de solucoes [Zapatar e Suzuki, 2005],

como pode ser visto na figura 1.1.

Figura 1.1: Blocos de solucoes [Zapatar e Suzuki, 2005]

Gestao de Identidade

A gestao de identidade compreende as tecnologias ou ferramentas que permitem que

seja feita a correta identificacao de um usuario, para assim lhe garantir o direito de acesso

a um determinado sistema computacional de acordo com o seu perfil. Essas ferramentas

sao denominadas ferramentas de autenticacao.

6

Page 19: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

As ferramentas de autenticacao permitem identificar unicamente um usuario e verificar

a autenticidade de sua identidade por meio de variados mecanismos, tais como, mecanis-

mos de login/senha, certificados digitais, dispositivos portateis (tokens, smart cards) ou

mesmo a biometria [Zapatar e Suzuki, 2005].

Defesa Contra Ameacas

A defesa de ameaca consiste em acoes preventivas ou corretivas, na defesa contra

ameacas a seguranca de uma organizacao. Este bloco de solucoes compreende acoes de

implementacao de medidas necessarias para evitar a troca de informacoes nao autorizadas,

o monitoramento de redes e aplicacoes visando a deteccao de atividades de intrusao,

ataques externos e a protecao contra infeccao de pragas virtuais [Zapatar e Suzuki, 2005].

Criptografia

Este bloco de solucoes e responsavel por garantir a confidencialidade das informacoes,

atraves da aplicacao de algoritmos de criptografia, variando desde a criptografia de in-

formacoes gravadas em dispositivos de armazenamento (Hard Disks), ate a criptografia das

informacoes em transito visando uma comunicacao mais segura [Zapatar e Suzuki, 2005].

1.4 Autenticacao e Controle de Acesso

Quando falamos em controle de acesso, estamos nos referindo a questoes que dizem re-

speito ao acesso de recursos de um sistema computacional, desta forma, segundo [Stamp, 2006],

temos duas vertentes principais para a realizacao do controle de acesso a sistemas, sendo

elas:

• A autenticacao;

• A autorizacao.

[Stamp, 2006], elucida-nos que a autenticacao permite (ou nao) o acesso de um usuario

ao sistema. Porem, quando um usuario e autenticado, nao necessariamente ele tem acesso

a todos os recursos do sistema, sendo assim faz-se necessario que o sistema tenha uma

polıtica de restricao que restrinja as acoes dos usuarios ja autenticados. Este processo e

o que define a autorizacao.

Sendo assim, a autenticacao diz se voce e mesmo quem diz ser e a autorizacao diz

se um usuario ja autenticado tem ou nao permissao para realizar determinada acao no

sistema [Stamp, 2006].

7

Page 20: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

1.4.1 Metodos de Autenticacao

Um problema fundamental na seguranca da informacao e o de autenticar um humano

perante uma maquina [Silberchatz et al., 2004]. Ou seja, temos que convencer o sistema

que somos de fato quem dizemos ser. Basicamente um homem pode ser autenticado

perante uma maquina com base em qualquer combinacao de algo que voce sabe, algo que

voce tem ou algo que voce e [Costa, 2006].

1.5 Senhas

Uma senha e algo que voce sabe, e mais ainda, e algo que um computador pode

verificar se voce sabe, pois teoricamente as senhas seriam algo que mais ninguem alem de

voce tem conhecimento, por se tratar de algo pessoal e intrasferıvel [Stamp, 2006].

Mas por que as senhas sao mais usadas no processo de autenticacao em relacao a

dispositivos biometricos ou cartoes de acesso, visto que os dois ultimos sao mais seguros

que as senhas? Um dos motivos e o de que as senhas e a sua verificacao por um sistema

computacional e feita de forma bem menos complexa e mais barata em relacao ao uso de

sistemas biometricos ou cartoes de acesso.

De acordo com [Stamp, 2006], atualmente as senhas ja nao sao consideradas seguras

pelo fato de que os usuarios ao selecionarem as suas senhas perante o sistema tendem a

escolher senhas ruins ou fracas do tipo data do seu aniversario, seu sobrenome, etc. Esta

acao de escolher senhas fracas facilita a quebra das senhas o que prejudica seriamente a

seguranca de um sistema computacional.

1.6 Biometria e Seguranca da Informacao

Como veremos com mais detalhes no capitulo 2, a biometria e um metodo de auten-

ticacao que verifica “algo que voce e”, ou seja o usuario passa a ser a senha [Magalhaes e Santos, 2003].

Existem varios tipos de dados biometricos que podem ser utilizados no processo de

autenticacao tais como, impressoes digitais, reconhecimento de face, reconhecimento da

dinamica da digitacao, entre outras.

Na area de seguranca da informacao, o principal impulso por tras da biometria e a

substituicao das senhas ou a combinacao de dados biometricos com metodos de auten-

ticacao mais comuns, como por exemplo, o uso da dinamica da digitacao aliado as senhas

[Stamp, 2006].

8

Page 21: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

1.7 Dinamica da Digitacao

A tecnica biometrica da dinamica da digitacao (que sera vista com mais detalhes no

capıtulo 2) tem se mostrado uma solucao bastante viavel para sistemas computacionais

pelo fato de que esta tecnica prove um nıvel maior de seguranca aos mecanismos de

autenticacao de usuarios, possui um baixo custo de implementacao nao necessitando de

dispositivos caros para a aquisicao de informacoes.

9

Page 22: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Capıtulo 2

Biometria

2.1 O que e Biometria?

O termo biometria deriva do grego bios (vida) + metron (medida), onde no sis-

tema computacional biometria refere-se a utilizacao das caracterısticas de um indivıduo

para proceder a sua autenticacao/identificacao [Magalhaes e Santos, 2003]. Tecnologias

biometricas podem ser definidas como: ”metodos automaticos de verificacao ou identi-

ficacao de identidade de uma pessoa viva baseada em caracterısticas fisiologicas ou de

comportamento”[Marcelo, 2001]

Segundo Costa(2006), as medidas biometricas podem ser divididas em dois grupos, a

biometria fisiologica e a comportamental. A biometria fisiologica engloba caracterısticas

tais como padrao de ıris, impressoes digitais, forma do contorno da mao e da face, e a

principal vantagem deste tipo de biometria e que as caracterısticas fisiologicas sao relati-

vamente estaveis. Ja a biometria comportamental e um reflexo de atitudes psicologicas

do indivıduo, tais como a forma como o indivıduo assina o seu nome, o padrao de sua voz

ou ritmo de sua digitacao.

Teoricamente, qualquer caracterıstica humana, fısica ou comportamental, pode ser

usada para a identificacao de pessoas, desde que ela satisfaca os seguintes requerimentos

[Cavalcanti, 2005]:

• Universalidade: significa que todas as pessoas devem possuir a caracterıstica;

• Singularidade: indica que esta caracterıstica e unica em cada pessoa;

• Permanencia: significa que a caracterıstica nao deve variar muito;

• Mensurabilidade: indica que a caracterıstica pode ser medida quantitativamente.

Na pratica, existem outros requerimentos importantes, que relaciona os requerimentos

acima com algumas tecnicas biometricas [Cavalcanti, 2005]:

10

Page 23: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

• Desempenho: refere-se a precisao de identificacao, os recursos requeridos para con-

seguir uma precisao de identificacao aceitavel e ao trabalho ou fatores ambientais

que afetam a precisao da identificacao;

• Aceitabilidade: indica o quanto as pessoas estao dispostas a aceitar os sistemas

biometricos;

• Permanencia: significa que a caracterıstica nao deve variar muito;

• Protecao: refere-se a facilidade de enganar o sistema com tecnicas fraudulentas.

Tanto a tecnica de autenticacao biometrica fisiologica quanto a comportamental

proveem nıveis de identificacao e seguranca maiores do que aquelas baseadas em

sistema de login/senhas ou cartoes de forma isolada [Costa, 2006].

A autenticacao baseada em biometria tem como objetivo prover uma maior qualidade

e seguranca no servico de autenticacao, pelo fato de que a biometria se baseia em car-

acterısticas pessoais e unicas de um indivıduo. Desta forma torna-se mais difıcil para

as pessoas nao autorizadas utilizarem o sistema, mantendo assim a confiabilidade e a

integridade dos dados.

2.2 Metodos Basicos de Identificacao

A maioria dos metodos de autenticacao de usuarios baseia-se em um dos tres princıpios

basicos de identificacao [Araujo, 2004]:

• Autenticacao usando objetos fısicos (ex.: chave de porta, cartao magnetico);

• Autenticacao usando senhas (login/senha);

• Autenticacao usando biometria (impressao digital, retina, reconhecimento da dinamica

da digitacao, etc.).

A partir destes tres princıpios basicos pode-se criar diferentes maneiras de identi-

ficacao, podendo estes esquemas ser menos ou mais complexos de acordo com o grau

de seguranca que o sistema necessite. No primeiro metodo o acesso a determinado lu-

gar exige que o usuario apresente algum cartao magnetico ou mesmo use alguma chave

para abrir a porta e conseguir o seu acesso. No segundo metodo o acesso e permitido

mediante a apresentacao do nome de usuario e senha do usuario e no terceiro metodo o

sistema responsavel por verificar a veracidade do usuario exige que seja apresentada uma

caracterıstica biometrica, a qual e inerente a cada pessoa [Costa, 2006].

11

Page 24: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Um ponto importante a ser observado e que no primeiro e segundo metodos, apesar

de ser necessario para a autenticacao a apresentacao de algum objeto fısico e/ou a apre-

sentacao do login/senha, estas informacoes podem ser (e comummente sao), passadas de

pessoa para pessoa, o que permitiria que pessoas nao autorizadas fizessem uso do sistema.

Ja no terceiro metodo, mesmo que o usuario passe a outrem o seu login e senha ou

mesmo a posse de seu cartao magnetico, por exemplo, uma impressao digital, impoe que

a pessoa que apresente o seu login/senha seja realmente quem diz ser. A autenticacao

do usuario baseada na biometria prove um bom nıvel de seguranca, visto que o proprio

usuario e a senha, diminuindo-se a probabilidade de acesso indevido ao sistema.

Na figura 2.1 e apresentado um diagrama de blocos com as abordagens do processo de

autenticacao associado as tecnologias biometricas. As abordagens de posse e conhecimento

podem ser combinadas com a biometrica cujo objetivo e prover uma maior seguranca na

autenticacao [Araujo, 2004]. A figura mostra tambem os principais tipos de biometrias.

Figura 2.1: Abordagens de Autenticacao associadas as Tecnologias Biometricas

[Araujo, 2004]

12

Page 25: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

2.3 Verificacao vs Identificacao

Um sistema biometrico pode ser identificado de acordo com a maneira que seus dados

de entrada sao comparados no banco de dados, sendo elas a verificacao e a identificacao

[Gava, 2006].

Na verificacao a informacao biometrica fornecida pelo usuario e comparada com o

modelo referente ao fornecido pelo mesmo no momento de seu processo de cadastramento,

ou seja, tem-se uma verificacao ”um-para-um”, veja a figura 2.2.

Figura 2.2: Verificacao Um para Um

Ja na identificacao tem-se uma comparacao ”um-para-muitos”, ou seja, neste caso a in-

formacao biometrica fornecida pelo usuario e comparada com todos os modelos existentes

no banco de dados. Como e mostrado na figura 2.3.

Figura 2.3: Identificacao Um para Muitos

Segundo ROCHA (2004), o processo de verificacao e mais usado nos sistemas biometricos

13

Page 26: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

por possuir algumas vantagens em relacao ao processo de identificacao: como a verificacao

analisa somente o modelo referente a determinado usuario, o processamento da verificacao

e menor do que o do processo de identificacao. Sendo assim tem-se resultados mais rapidos

pelo fato de nao haver necessidade de comparacao com todos os modelos existente no

banco de dados.

2.4 Medidas de Desempenho em Sistemas Biometricos

O desempenho de um sistema biometrico e medido tendo como base dois tipos de

erro. Esses dois tipos de erros sao conhecidos como FAR (False Accept Rate / Taxa de

Falsa Aceitacao) e FRR (False Rejection Rate / Taxa de Falsa Rejeicao). O FAR e o

FRR sao expressos em porcentagens e quanto menor for as taxas encontradas maior sera

a eficiencia do sistema [Costa, 2006].

As taxas de falsa aceitacao e falsa rejeicao (FAR e FRR) afetam de forma direta o

nıvel de precisao de um sistema biometrico. Desta forma, os numeros fornecidos por estas

taxas de erro devem ser considerados como fator primario durante o processo de avaliacao

destes sistemas [Rocha, 2004].

2.4.1 FAR

A FAR (False Accept Reject) e a estimativa de um usuario mal intencionado ser aceito

quando faz uma autenticacao usando uma identidade falsa. Assim se o usuario A usando os

dados de autenticacao do usuario B e conseguir ter acesso ao sistema entao fica configurado

um erro de falsa aceitacao. A FAR e definida pela seguinte equacao [Costa, 2006]:

FAR = (Total de Falsa Aceitacao / Total de Contas Tentadas)%

2.4.2 FRR

A FRR (False Rejection Rate) e a estimativa de o sistema biometrico rejeitar um

usuario verdadeiro. Por exemplo, se o usuario C usando os seus proprios dados de auten-

ticacao nao conseguir obter acesso ao sistema em que esta cadastrado, entao configura-se

uma falsa rejeicao. A FRR e definida pela seguinte equacao [Costa, 2006]:

FRR = (Total de Falsa Rejeicao / Total de Contas Tentadas)%

2.5 Tipos de Sistemas Biometricos

Os sistemas biometrcios sao divididos basicamente em dois tipos, sendo o primeiro

os fisiologicos e o segundo os comportamentais [Costa, 2006]. Nos topicos subsequentes

14

Page 27: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

veremos com mais detalhes os principais tipos biometrcis tanto fisiologicos quanto os

comportamentais.

2.6 Sistemas Biometricos Fisiologicos

2.6.1 Reconhecimento de Face

No reconhecimento biometrico atraves da face, o sistema e responsavel por capturar

uma imagem do rosto do usuario e posteriormente, com o uso de algoritmos, delimitar a

geometria e as proporcoes da face do indivıduo [Gava, 2006]. Esses dados sao armazenados

na base de dados do sistema, e serao usados nas futuras comparacoes para verificar a

legitimidade do usuario.

Atualmente o reconhecimento da face e uma das areas que mais crescem na industria

da biometria. O fato deste tipo de reconhecimento nao ser tao intrusivo ao usuario facilita

a sua proliferacao neste meio. Segundo CAVALCANTI (2005), para reconhecer o rosto

de uma pessoa sistemas biometricos usam basicamente tres estrategias, sendo elas:

• O reconhecimento atraves da geometria e das proporcoes da face;

• Analise estatıstica da face completa, utilizando algoritmos como o ACP (Analise de

Componentes Principais) e Redes Neurais e.

• E a abordagem que extrai caracterısticas usando a transformando da Gabor em

partes da imagem.

Sistema biometricos baseados no reconhecimento da face possuem um nıvel de segu-

ranca satisfatorio, mas tem como desvantagem o fato de que podem falhar quando os

usuarios alteram alguns atributos esteticos, tais como: uso de oculos, barba, bigode e

chapeus.

2.6.2 Reconhecimento da Impressao Digital

De todas as tecnicas biometricas, as que se baseiam na impressao digital lideram o

mercado. Isso se deve pelo fato de que os dispositivos de capturas de digitais sao baratos

e podem ser acoplados em mouses e teclados [Cavalcanti, 2005].

A estabilidade e a unicidade das impressoes digitais sao bem estabelecidas no meio

social, tanto que este tipo de reconhecimento e usado como uma forma de identificacao em

registros civis e processos criminais. Segundo COSTA (2006), a extracao de caracterısticas

sobre impressoes digitais se baseia em encontrar a posicao de pequenos pontos, chamados

de minucias, que estao presente nas digitais.

15

Page 28: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Tomando por base estas minucias, a digital coletada e comparada com as amostras

que estao armazenadas e caso esta comparacao obtenha uma amostra de igualdade, o

indivıduo tera a permissao concedida ao uso do sistema.

Um fator importante que deve ser observado neste tipo de autenticacao biometrica e

o nıvel de precisao do equipamento de captura, pois quando a digital capturada nao tem

um bom nıvel de precisao pode levar o sistema a nıveis de confiabilidade mais baixos.

Na figura abaixo pode-se observar nove impressoes digitais (de dedos diferentes), com

qualidades diferentes [Magalhaes e Santos, 2003].

Figura 2.4: Impressoes Digitais com Qualidades Diferentes

2.6.3 Reconhecimento da Geometria da Mao

O reconhecimento da geometria da mao tem o mesmo princıpio de comparacao do

reconhecimento por impressao digital. Neste tipo de reconhecimento o sistema avalia o

comprimento dos dedos, largura, area e em sistema mais complexos a veias da palma da

mao. Na figura 2.5 temos um aparelho biometrico que faz o reconhecimento da geometria

da mao.

De acordo com GAVA (2006), a analise da largura, do comprimento e da area da

mao sao independentes e nao descritivas o bastante para a identificacao, tornando-se

necessario combinar essas varias caracterısticas individuais para alcancar uma verificacao

mais robusta.

16

Page 29: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Figura 2.5: Leitor da Geometria da Mao[Gava, 2006]

2.6.4 Reconhecimento da Iris

A ıris, que e a parte colorida do olho, guarda um conjunto de caracterısticas complexas

e que podem ser usadas para distinguir uma pessoa da outra [Gava, 2006]. Ela possui

algumas variacoes em seu formato, e sao essas variacoes que sao usadas para diferenciar

uma pessoa da outra atraves da sua ıris[Vigliazzi, 2003].

Assim como a impressao digital, a ıris ocular e unica, tornando-se uma medida poderosa

para diferenciacao e identificacao de usuarios. Este tipo de sistema analisa o formato da

ıris e a disposicao dos vasos sanguıneos. Comparando estas informacoes com as amostras

ja armazenadas o sistema trara um alto grau de confiabilidade na autenticacao de usuarios

[Gava, 2006].

Um ponto negativo deste tipo de sistema e o fato do mesmo ser considerado um tanto

quanto intrusivo, fato este que e motivado pelo grande incomodo que ele gera por usar

feixes de luz para realizar a varredura da ıris do olho.

2.7 Sistemas Biometricos Comportamentais

Os sistemas Biometricos comportamentais dizem respeito a atitudes psicologicas de

um indivıduo, tais como a voz, a assinatura e o ritmo de sua digitacao. Nos topicos sub-

sequentes serao abordados os principais tipos biometricos comportamentais, abordando

de foco especial a dinamica da digitacao.

2.7.1 Reconhecimento de Voz

Sistemas de identificacao de usuario atraves da fala tratam a voz com uma funcao

e se valem dos padroes harmonicos para separar um impostor de um usuario autentico

[Cavalcanti, 2005].

A voz e utilizada em sistemas automaticos de verificacao/identificacao de locutor.

17

Page 30: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Este tipo de reconhecimento e muito atrativo visto que e considerado pouco invasivo pelo

usuario.

No reconhecimento de voz o sistema de identificacao baseia-se em caracterısticas unicas

do indivıduo, tais como entonacao da voz, sotaque, frequencia de voz e outras, no intuito

de identificar o usuario.

Um ponto negativo deste tipo de sistema e o fato de que pode haver mudancas na voz

do usuario oriundas de seu estado emocional e fısico tais como: tristeza, cansaco, alegria,

gripe e rouquidao, fatores que poderiam levar o sistema a recusar um usuario legitimo.

2.7.2 Reconhecimento da Assinatura Manuscrita

O reconhecimento digital da assinatura pode ser realizado de duas formas, a off-line

e a on-line [Heinen e Osorio, 2005]. No reconhecimento off-line o usuario assina em uma

folha de papel que e posteriormente digitalizada, analisada e comparada com as amostras

disponıveis. Ja no reconhecimento on-line o usuario assina diretamente em um hardware

especıfico (mesa digitalizadora ou tablet), que e conectado ao software de reconhecimento,

o qual vai analisar e comparar a assinatura.

Uma dificuldade inerente a esta abordagem e que a assinatura de uma mesma pessoa

varia bastante e isso pode ser agravado dependendo do estado emocional do usuario ou

mesmo por problemas de saude relacionados com a coordenacao motora [Cavalcanti, 2005].

2.8 Dinamica da Digitacao

O processo de autenticacao de sistemas e comumente baseado em senha, e esta e a

forma mais popular e simples de seguranca e identificacao no meio tecnologico atual. Mas,

por ser um metodo simples, e tambem considerado um metodo fraco e que da brechas

a ataques de impostores que tenham a intencao de fraudar de algum modo os sistemas

protegidos por senhas [Costa, 2006].

Porem, se analisarmos o processo de autenticacao baseado em senhas de forma mais

profunda, pode-se notar que os usuarios destes sistemas protegidos certamente impoem

um ritmo ao pressionar e soltar as teclas que compoem a sua senha [Joyce e Gupta, 1990],

ou seja, cada usuario tem um ritmo proprio para digitar a sua senha.

Sabendo que existem sistemas que sao capazes de verificar se a senha que o usuario

digita e ou nao correta, ha tambem a necessidade desenvolver sistemas que sao capazes

de verificar se quem esta digitando a senha deseja fraudar o sistema, visto que por mais

que o impostor conheca a senha, o ritmo de sua digitacao nao sera o mesmo do usuario

verdadeiro e desta forma o impostor nao conseguira fraudar o sistema de autenticacao.

Tendo isto posto, a dinamica da digitacao e definida como sendo o processo de analisar

18

Page 31: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

o modo que um usuario digita informacoes importantes (por exemplo, senha de acesso de

algum sistema computacional) em um terminal [Monrose et al., 1999], onde o terminal fica

responsavel por monitorar suas entradas atraves do teclado, com o objetivo de autentica-lo

com base em seu ritmo de digitacao da senha habitual.

2.8.1 Conceitos Basicos

No momento da autenticacao do usuario, o mesmo digita a senha ou informacao alvo.

Neste momento o sistema biometrico e responsavel por recolher dados como os tempos de

pressionamento, soltura das teclas (latencias) e tempo total de digitacao da senha, dados

esses que serao utilizados para a extracao de caracterısticas que formarao uma amostra

[Araujo, 2004]. Caso este usuario ainda nao esteja cadastrado no sistema uma quantidade

destas amostras e armazenada (esta quantidade tambem e variavel em cada trabalho),

formando um conjunto de treinamento, do qual sera gerado o modelo ou template1. Mas,

caso o usuario ja esteja cadastrado no sistema, uma amostra e calculada e enviada para o

classificador, que tem a funcao de decidir se o usuario pode ou nao ter acesso ao sistema

de acordo com a verificacao ou identificacao de sua identidade.

2.8.2 Informacao Alvo

Quando nos referimos a informacao alvo, esta se refere ao conjunto de caracteres que

serao digitados pelo usuario. Esta informacao e monitorada pelo sistema de autenticacao

que a coleta, a analisa e posteriormente autoriza ou nao a entrada do usuario de acordo

com a comparacao da informacao fornecida pelo mesmo com o modelo existente no banco

de dados [Joyce e Gupta, 1990].

A informacao alvo pode ser o login e/ou senha, ou acrescidos pelo primeiro nome

e ultimo nome. Em seus trabalhos [Joyce e Gupta, 1990] utilizaram um total de oito

amostras para a formacao do modelo ou template e um classificador estatıstico.

Basicamente existem duas maneiras principais de trabalhar com a dinamica da digitacao

em relacao a informacao alvo. A primeira utiliza uma senha fixa para todos os usuarios

do sistema e o segundo usa senhas diferentes por pessoa, ou seja, na primeira abordagem

(senha fixa), existe uma senha unica ou um texto unico para todos os usuarios do sistema

e ja na segunda abordagem (senhas diferentes), cada usuario pode escolher uma senha

para obter acesso ao sistema.

1Template e a representacao das informacoes extraıdas das amostras biometricas fornecidas pelo in-

divıduo no seu processo de cadastramento[Araujo, 2004]

19

Page 32: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

2.8.3 Quantidade de Amostras

Segundo [Bleha et al., 1990], a quantidade de amostras coletadas e armazenadas pelo

sistema de autenticacao torna-se um aspecto crucial na medida em que os erros de clas-

sificacao tendem a aumentar quando a quantidade de amostras captadas e baixa. Mas

de acordo com as pesquisas de [Joyce e Gupta, 1990], os testes realizados apontaram que

para a obtencao de resultados satisfatorios, em que a utilizacao de menos que seis amostras

para a formacao nao e recomendavel, visto que o sistema nao consegue obter um padrao

conciso sobre como o usuario digita a sua informacao alvo (senha), e desta forma o sistema

teria mais chances de errar.

2.8.4 Extracao das Caracterısticas

Segundo MONROSE (1999), as caracterısticas que devem ser escolhidas para repre-

sentar cada usuario devem ser altamente repetitivas no mesmo usuario e diferente para

os demais, tornando-se assim altamente discriminantes.

A caracterıstica mais utilizada pelos sistemas de autenticacao baseados na dinamica

da digitacao e a latencia da digitacao. A latencia da digitacao representa o intervalo de

tempo entre as digitacoes de teclas sucessivas pelo usuario [Costa, 2006]. Este intervalo

de tempo e obtido pela diferenca entre o pressionamento das teclas ti e ti+1.

Outra caracterıstica bastante usada e a duracao da digitacao, abordagem que foi uti-

lizada pela primeira vez no ano de 1997 por [Obaidat e Sadoun, 1997], e representa o

intervalo de tempo em que uma tecla fica pressionada pelo usuario.

Quando o usuario digita as informacoes que compoem sua senha, o sistema constroi

um vetor composto dos eventos ”tecla-pressionada”e ”tecla solta”. De acordo com os

estudos de [Costa, 2006], se uma senha composta de n caracteres e digitada, o resultado

sera um vetor de dimensao (2n), onde cada posicao representara uma unidade de tempo

calculada em funcao dos eventos tecla pressionada e tecla solta. Desta forma, supondo

que se tenha uma senha com n = 4 caracteres, sendo eles 1-2-3-4 o vetor teria dimensao

igual a 8, e contera os tempos [0, 0.30, 0.31, 0.60, 0.61, 0.75, 0.76, 0.95] como e mostrado

na figura 2.6 Os valores mostrados na figura sao exemplos de digitacao de um usuario e

nao valores fixos. A unidade de tempo adotada foi o segundo.

Outra caracterıstica que pode ser utilizada no contexto da dinamica da digitacao

e a pressao de tecla, que representa o nıvel de pressao aplicada na tecla pelo usuario

[Costa, 2006]. Mas, esta caracterıstica nao e muito utilizada pelo fato de que e necessario

o uso de um teclado especializado que capture a pressao aplicada na tecla pelo usuario.

20

Page 33: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Figura 2.6: Extracao de Caracterısticas

2.8.5 Tentativas de Autenticacao

De acordo com os testes de [Haider et al., 2000], usuarios legıtimos na maioria das

vezes falhavam da primeira vez, mas na segunda tentativa, realizava a autenticacao

com sucesso. Sendo assim a maioria dos sistemas de autenticacao baseados na tecnica

biometrica de dinamica da digitacao passaram a adotar duas tentativas no processo de

autenticacao.

2.8.6 Classificador

O classificador e a parte responsavel pela tomada de decisao, ou seja, de determinar

se a identidade de determinado usuario e verdadeira ou nao. Os classificadores estaticos

sao os mais utilizados nas bibliografias estudadas. Mas ha tambem outros tipos de clas-

sificadores tais como o classificador nebuloso (fuzzy), que e baseado na logica nebulosa e

os classificadores neurais, baseados por sua vez em redes neurais [Costa, 2006].

No trabalho de [Haider et al., 2000], foram usados de forma combinada os tres tipos

de classificadores supracitados (estatico, nebuloso e neural) e nao obteve resultados muito

satisfatorios em relacao aos outros trabalhos.

A maioria dos trabalhos relatam que os melhores resultados sao obtidos quando os

sistemas de autenticacao fazem uso do classificador estatico [Haider et al., 2000].

2.8.7 Abordagens da Dinamica da Digitacao

A autenticacao biometrica baseada na dinamica da digitacao pode ser dividida em duas

abordagens, estas abordagens se diferenciam em relacao ao momento da autenticacao e

em relacao ao nıvel de processamento gasto pelo sistema [Monrose et al., 1999],sendo elas:

• Estatica: Neste tipo de abordagem, a autenticacao se da no inıcio da interacao do

usuario com o sistema, geralmente no momento do login. Este tipo de abordagem

e o mais usado em sistemas de autenticacao biometricos, pelo fato do mesmo ter

uma complexidade de desenvolvimento nao tao elevada e despender de um nıvel de

processamento computacional baixo.

21

Page 34: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

• Contınua: Na abordagem contınua a autenticacao e realizada varias vezes durante a

interacao do sistema com o usuario. Esta abordagem e mais segura que a abordagem

estatica visto que ela pode realizar a deteccao caso haja uma troca de usuarios, mas

por outro lado nesta abordagem exige-se um maior processamento computacional

em relacao a abordagem estatica.

O fato do nıvel de processamento computacional da abordagem estatica ser menor que

na abordagem dinamica se deve ao fato de que na abordagem estatica ha somente uma

autenticacao de usuario e que se realiza no momento de seu login no sistema, ao contrario

da abordagem dinamica que faz varias autenticacoes durante o perıodo em que o usuario

faz uso do sistema.

2.8.8 Aplicacoes da Dinamica da Digitacao

A autenticacao biometrica baseada na dinamica de digitacao tem muitas aplicacoes na

area de seguranca da informacao, visto que usando este tipo de autenticacao biometrica

e aliando-a ao sistema tradicional de login e senha e possıvel diminuir a probabilidade

de que um usuario nao autorizado acesse indevidamente o sistema e venha a ter acesso

a informacoes sigilosas ou mesmo destruı-las. O uso da dinamica de digitacao e util em

sistemas computacionais que necessitam de um maior nıvel de seguranca, pelo fato de

que:

• Maior nıvel de seguranca: prove um nıvel maior de seguranca aos mecanismos de

identificacao tradicionais presentes em controles de acesso, pois somam-se as vanta-

gens das caracterısticas biometricas que sao inerentes ao usuario.

• Baixo Custo: este tipo de autenticacao faz o uso apenas de um teclado convencional

para aquisicao das informacoes que serao analisadas pelo software, o que torna esse

tipo de autenticacao muito mais barato em relacao aos outros tipos de autenticacao

biometrica que em sua maioria fazem uso de dispositivos caros para a aquisicao das

informacoes.

• Nao intrusivo: a aquisicao das amostras necessita que o usuario digite apenas sua

string alvo, processo que o mesmo ja esta habituado a realizar para obter acesso

a sistemas computacionais. Esta vantagem nao e comum em outras tecnologias de

acesso baseadas em biometria, tomando como exemplo a de identificacao da ıris que

e obtida atraves da varredura do olho utilizando um feixe de luz, fazendo com que

os usuarios sintam-se desconfortaveis.

22

Page 35: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

2.9 Verificacao de Padroes

De acordo com [Haider et al., 2000], reconhecimento de padroes e o estudo de como

as maquinas podem observar o meio, aprender e distinguir padroes de interesse neste

meio e serem capazes de tomar decisoes certas acerca das categorias a que pertencem tais

padroes.

No que tange a biometria, que e uma das areas onde se aplica o reconhecimento de

padroes, o padrao poderia ser uma impressao digital, assinatura manuscrita ou mesmo a

dinamica de digitacao de um indivıduo [Araujo, 2004].

O problema do reconhecimento de padroes esta relacionado com as tarefas de clas-

sificacao, onde as classes podem ser definidas previamente pelo projetista do sistema,

ou pode estar baseada em um aprendizado feito acerca da similaridade dos padroes

[Costa, 2006].

Basicamente, em sistemas que necessitam fazer o reconhecimento de padroes, dentre

eles temos a biometria, tem-se usado quatro tipos de tecnicas como forma de resolver os

problemas do reconhecimento de padroes [Haider et al., 2000]:

• Reconhecimento estatıstico: As caracterısticas sao da forma de tuplas ou vetores,

onde sao utilizadas regras de decisao, teoria da probabilidade e outros procedimentos

estatıscos como forma de proceder o reconhecimento. Esse e o tipo de reconheci-

mento de padroes mais usado.

• Reconhecimento Sintatico: e tambem conhecido com reconhecimento estrutural de

padroes, onde as caracterısticas estruturais dos elementos sao representadas sintati-

camente.

• Reconhecimento por Logica Nebulosa: estes classificadores tratam os padroes em

questao de grau de pertinencia a uma determinada classe.

• Reconhecimento por Redes Neurais: pode ser considerado como um tipo particular

de reconhecimento estatıstico, pelo fato das caracterısticas serem formadas por tu-

plas ou vetores. No entanto por possuir algumas capacidades particulares, tais como

capacidade de generalizacao e aprendizagem a partir de exemplos, o reconhecimento

por redes neurais e tratado como uma area distinta ao reconhecimento estatıstico.

2.10 Outros Tipos de Biometria

Dentre as novas tecnologias biometricas que vem sendo desenvolvidas podemos citar

a biometria de DNA, os termogramas de mao, face e veias da mao e a dinamica do andar

[Julio, 2007].

23

Page 36: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

A biometria de DNA (acido desoxirribonucleico) e unica para cada pessoa, exceto para

gemeos, e e muito utilizada em aplicacoes forenses (investigativas) para o reconhecimento

de pessoas [Julio, 2007].

O termograma de mao, face e veias da mao, e um metodo biometrico que captura

o calor emitido pelo corpo. Sendo assim este metodo e pouco invasivo ao usuario. Um

ponto negativo deste metodo e o fato de que o mesmo so e viavel e produz resultados

confiaveis quando e feito em ambientes controlados [Julio, 2007].

A dinamica de andar analisa a forma particular em que cada indivıduo anda con-

siderando tempo e espaco. Ainda nao ha estudos extensivos a respeito deste tipo de

biometria e sobre sua confiabilidade [Julio, 2007].

2.11 Comparacao entre as Tecnologias Biometricas

Na figura abaixo e apresentado uma comparacao entre as principais tecnologias biometricas

vistas anteriormente e leva em consideracao tres fatores como criterio de avaliacao:

• Desempenho: refere a capacidade de um sistema biometrico autenticar corretamente

um indivıduo de acordo com as caracterısticas biometricas inerentes ao sistema

[Araujo, 2004]

• Aceitabilidade: Indica o quao aceitavel e pelos usuarios passarem por este tipo de au-

tenticacao. Tem relacao direta com o nıvel de intrusao do sistema ao usuario[Araujo, 2004].

• Fraudavel: Indica a facilidade com que o sistema biometrico pode ser enganado por

usuarios e metodos fraudulentos [Araujo, 2004].

Figura 2.7: Comparacao entre as Tecnologias Biometricas [Araujo, 2004]

24

Page 37: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Capıtulo 3

Estado da Arte

3.1 Introducao

O reconhecimento de pessoas, bem como o uso de caracterısticas inerentes a cada indi-

viduo, analisados computacionalmente para autenticacao de pessoas pode ser considerado

um tema atual, mas, desde a antiguidade caracterısticas fısicas eram usadas para a iden-

tificacao de indivıduos. As bases da verificacao de pessoas atraves de suas caracterısticas

pessoais vem sendo exercitadas bem antes do surgimento dos computadores.

3.2 Biometria

A partir do seculo XIX, a crescente pesquisa na area de criminalıstica, com o objetivo

de relacionar caracterısticas fısicas com processos criminais, impulsionou a criacao de

varios dispositivos para mensuracao de indivıduos, principalmente o de reconhecimento

de impressoes digitais [Marcelo, 2001].

No entanto, a ideia de usar as caracterısticas pessoais no processo de identificacao

surgiu e se caracterizou ao longo da historia.

No ano de 782 da era Crista, foram encontradas placas soterradas na regiao do

Turquestao que continham um termo de acordo firmado pela afixacao da marcas dos

dedos de ambas as partes como forma de concordancia entre as partes [Marcelo, 2001].

Em 800 na regiao da India, analfabetos legalizavam seus papeis atraves de suas im-

pressoes digitais [Marcelo, 2001].

No ano de 1300, chineses empregavam a impressao digital em casos de crime e de

divorcio [Marcelo, 2001].

O ano de 1664 foi um ano de muito muita importancia para a autenticacao biometrica.

Neste ano o medico e anatomista Marcelo Malpighi publicou um trabalho com o nome de

”Epıstola sobre o orgao do tato”, trabalho no qual se fazia um estudo sobre os desenhos

25

Page 38: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

das digitais e da palma da mao [Marcelo, 2001].

Em 1840, com o advento da fotografia, a mesma passou a ser usada como processo de

identificacao criminal, inicialmente na Suıca [Marcelo, 2001].

Em 1856, Jose Engel publicou o ”Tratado de desenvolvimento da mao humana”, tra-

balho que compreendia um estudo sobre os desenhos digitais [Marcelo, 2001].

Em 1882, Alfonse Bertillon criou o primeiro sistema cientifico de identificacao baseado

nas caracterısticas fısicas do homem (figura 3.1). Este sistema consistia no assinalamento

milimetrico de varias partes do corpo humano: diametro da cabeca, comprimento das

orelhas, estatura, envergadura e marcas particulares como tatuagens e cicatrizes. Estes

dados eram registrados em uma ficha antropometrica, que continha tambem a fotografia

do identificado em questao [Marcelo, 2001].

Figura 3.1: Tecnica de Identificacao Biometrica de Bertillon

Em 1888, Francis Galton, um nobre ingles foi incubido pela nobreza para desenvolver

um sistema de identificacao mais seguro que o antropometrico. Galton lancou as bases

cientificas da impressao digital, e apesar de seu sistema de identificacao pelas digitais ser

bastante rudimentar, o seu trabalho serviu como ponto de partida para os demais sistemas

dactiloscopicos [Marcelo, 2001].

Em 1900, Edward Richard Henry publicou na Inglaterra um livro de sua autoria

chamado ”Classification and users of finger prints”, que expunha seu novo sistema de

reconhecimento de impressoes digitais baseado em arcos, presilhas verticilos e compostos.

Onde um ano depois, em 1901, seu sistema passou a ser usado pela polıcia da Inglaterra

[Marcelo, 2001].

26

Page 39: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

No Brasil o uso de caracterısticas biometricas para identificacao pessoal, passou a

ser mais usado a partir do ano de 1902. Neste ano Jose Alves Felix Pacheco, iniciou

no Rio de Janeiro a tomada da impressao digital nas fichas antropometricas. Em julho

de 1904 foi expedida a primeira carteira de identidade, que ainda usava assinalamentos

antropometrico juntamente com as digitais [Marcelo, 2001].

3.3 Dinamica da Digitacao

A tecnica de autenticacao biometrica baseada na dinamica de digitacao e baseada na

suposicao que as pessoas tem maneiras ou caracterısticas unicas de digitacao. A dinamica

da digitacao tambem e conhecida por alguns nomes tais como, dinamica de teclado, analise

de digitacao, biometria da digitacao e ritmo da digitacao [Umphress e Williams, 1985].

O uso da dinamica da digitacao em sistemas que usam caracterısticas biometricas

para autenticacao de usuarios vem crescendo. Boa parte deste crescimento se deve ao

fato de que a dinamica da digitacao possui uma viabilidade tecnica e financeira para ser

implementada, visto que a mesma e baseada em software e nao necessita de hardwares

especıficos para a captura das informacoes biometricas, fazendo com que o seu custeio

e complexidade de implementacao caiam em relacao as outras tecnicas de autenticacao

biometrica.

O uso das caracterısticas advindas da digitacao foi sugerido por Spillane em 1975, como

e citado por [Leggett e Usnik, 1990]. Como foi relatado nos trabalhos de [Umphress e Williams, 1985],

no ano de 1985 observou-se que os operadores de telegrafo possuıam uma maneira par-

ticular de digitar as mensagens a serem transmitidas. Sendo assim era possıvel para os

outros operadores de telegrafo identificar quem estava transmitindo determinada men-

sagem apenas escutando o som da digitacao dos pontos.

Em meados dos anos 70 esta observacao dos operadores de telegrafo passou a ser nor-

malizada e aplicada para a area de dinamica da digitacao, o que teve como consequencia

a publicacao de alguns trabalhos utilizando estas caracterısticas observadas para a auten-

ticacao de usuarios, validando assim a suposicao de que caracterısticas vindas do teclado

mostram verdadeiramente que cada pessoa tem uma caracterıstica singular de digitacao

e que essa caracterıstica podem ser usada para identificar pessoas.

Em 1985 [Umphress e Williams, 1985], publicaram um dos primeiros trabalhos cientıficos

envolvendo dinamica de digitacao para autenticacao pessoal. Neste trabalho foram uti-

lizados os intervalos de tempo entre teclas (latencia) em dois tipos distintos: no primeiro

um texto contendo 1400 caracteres no processo de cadastramento e no segundo um texto

contendo 300 caracteres no processo de cadastramento, sendo que o texto era imposto

pelo sistema, ou seja, o usuario nao tinha a opcao de digitar a string que desejava.

Uma das principais desvantagens que foram observadas no trabalho de [Umphress e Williams, 1985]

27

Page 40: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

foi que devido ao tamanho da informacao e da quantidade de dados de entrada ser rela-

tivamente grande, obteve-se como consequencia, apenas uma taxa de erro dentre as duas

(FAR e FRR ) a ser analisada: a FAR, cujo valor foi de aproximadamente 6%. Tambem

foi observado que o tamanho dos textos de entrada dificulta a coleta de amostras.

Em 1988 [Leggett e Williams, 1987], estenderam o trabalho realizado por [Umphress e Williams, 1985],

mostrando que as singularidades da digitacao de cada pessoa poderia ser utilizada para

aumentar a seguranca em verificacoes estaticas de login e senha em conjunto com uma

frase nao tao grande como nos trabalho de [Umphress e Williams, 1985].

Em [Leggett e Usnik, 1990], que tambem estende os estudos de [Umphress e Williams, 1985]

e [Leggett e Williams, 1987], foi utilizado pela primeira vez o conceito de autenticacao de

usuarios baseada na dinamica da digitacao com abordagem dinamica. Anteriormente a

autenticacao do usuario era feita para conceder a permissao do mesmo para dar entrada no

sistema (Autenticacao Estatica), desta forma a autenticacao era feita antes do usuario dar

entrada no sistema. Ja na autenticacao dinamica a verificacao da identidade do usuario

e realizada nao so antes do usuario entrar no sistema, mas tambem durante a interacao

do usuario com o sistema. Isso evita uma possıvel troca de usuarios durante a interacao

com o sistema, e ate mesmo previne usuarios esquecidos que deixam o sistema aberto e

saem, podendo alguem nao autorizado se apossar do sistema.

3.4 Evolucao da Dinamica da Digitacao

Como se pode observar em [Bleha et al., 1990] os autores usaram em seus trabalhos

um texto fixo e a senha de cada usuario como informacao alvo, para assim proceder a

autenticacao e dar entrada ao sistema onde o vetor de caracterıstica foi formando usando

a latencia de digitacao entre as teclas. Os resultados obtidos foram calculados usando 32

pessoas, de onde, 10 eram usuarios autenticos e 22 eram impostores. As taxas atingidas

foram 0,310% de FRR e 0,50% de FAR.

No ano de 1993, [Brow e Rogers, 1993] abordaram o problema de autenticacao baseado

na tecnica biometrica de dinamica da digitacao, usando em seu classificador o modelo de

redes neural: Kohonen aliada ao algoritmo Backpropagation. Usando um total de 25

usuarios, que foram responsaveis pela criacao tanto dos padroes autenticos como dos

falsos, obteve-se os seguintes resultados: 11,5% de FRR e 4,2% de FAR.

Em 2000, [Cho et al., 2000], usou como classificador uma rede neural auto-associativa

que foi treinada somente com padroes genuınos. Essa arquitetura foi usada somente para

detectar impostores e conseguiu atingir excelentes resultados: FRR de 1% e 0% de FAR.

Mas apesar dos bons resultados este tipo de abordagem apontou algumas desvantagens e

limitacoes, A primeira delas foi a de apresentar um alto custo computacional, alem de um

fator que na pratica nao e trivial de se conseguir, muitos padroes autenticos por pessoa,

28

Page 41: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

que no caso deste artigo foi usado centenas de padroes por pessoa.

Ao contrario da maioria dos sistemas dos sistemas de autenticacao baseados na dinamica

da digitacao que usam um texto variavel por pessoa como string alvo como,por exemplo,

seu nome e/ou sua senha [Bergadano et al., 2002], propuseram um sistema de autenticacao

onde a informacao alvo era um texto que continha 683 caracteres para todos os usuarios.

Com essa configuracao o sistema alcancou taxas de 0,40% de FRR e 0,01% de FAR.

Em 2004, [Yu e Cho, 2004], construıram um sistema no qual foi utilizada uma maquina

de vetor de suporte (Vector Suport Machine) como classificador. As caracterısticas eram

extraıdas a partir das senhas de cada um dos usuarios usando a mesma abordagem dos

trabalhos de Brown e Roger [Brow e Rogers, 1993]. Foi desenvolvido tambem um proced-

imento de selecao de caracterısticas, baseado em uma arquitetura integrada de selecao-

classificacao, usando algoritmos geneticos e VSM. Usando um total de 21 usuarios o

sistema implementado apresentou as seguintes taxas de erros: 0,354% de FRR e 0% de

FAR.

Em 2004, [Araujo, 2004] apresentou uma metodologia para autenticacao de usuarios

baseada na dinamica da digitacao que analisava o tempo de pressionamento bem como o

tempo de soltura das teclas, alem de seus codigos ASCII . Caso o usuario nao estivesse

cadastrado no sistema, dez amostras eram adquiridas para formar um conjunto de treina-

mento, e assim calcular um template para representa-lo. A metodologia apresentada pelo

autor foi avaliada envolvendo tres tipos de usuarios: o legıtimo o impostor simples e o

impostor observador.

O usuario legıtimo e o proprietario da conta, o impostor simples tem conhecimento da

informacao alvo a ser digitada e o impostor observador participa das secoes de autenticacao

do usuario legitimo. Este trabalho apresentou algumas inovacoes tais como: a extracao de

caracterısticas em funcao das teclas utilizadas na digitacao, o conjunto de caracterısticas

(codigo de teclas, duracao de teclas e de duas latencias de teclas) e a determinacao do

valor de limiar em funcao do desvio padrao das caracterısticas. O trabalho apresentou os

seguintes resultados: 0,155% de FRR e 0,191% de FAR.

A coleta de amostras, para a formacao da base de dados do trabalho de [Araujo, 2004],

foi realizada na Faculdade de Engenharia Eletrica (FEEC) da Universidade Estadual de

Campinas (UNICAMP). Em um perıodo de 3 meses, os usuarios tentavam se autenticar

nas contas cadastradas usando dois tipos de layout de teclados (ABNT) sendo um con-

vencional e outro um teclado de notebook.

[Cavalcanti, 2005], apresentou um sistema de composicao de biometrias para sistemas

multimodais de verificacao de identidade pessoal. Seu trabalho apresenta uma arquitetura

que combina tres tipos de biometria, sendo elas: reconhecimento de face, reconhecimento

de assinatura manuscrita e reconhecimento da dinamica da digitacao. O uso da dinamica

da digitacao foi usado pelo autor por ser uma tecnica biometrica com um custo de im-

29

Page 42: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

plementacao baixo e ser pouco intrusiva para o usuario. O software para aquisicao do

ritmo da digitacao de cada usuario foi desenvolvido em uma linguagem de programacao

chamada Visual Basic e foi usado um total de 24 usuarios para a aquisicao do banco de

dados. O sistema apresentou bons resultados, principalmente na tecnica biometrica de

dinamica da digitacao.

No ano de 2006 [Costa, 2006], apresentou uma nova abordagem para autenticacao

biometrica de usuarios baseada na dinamica da digitacao usando teclados numericos. A

metodologia pode ser usada tanto em mecanismos de login, no controle de acesso a areas

restritas e na melhoria do nıvel de seguranca em transacoes bancarias. O sistema analisa

o codigo ASCII, duas latencias e uma duracao associada a cada tecla.

[Costa, 2006], baseou o seu trabalho analisando dois tipos de usuarios para a obtencao

das taxas FAR e FRR, sendo eles os usuarios autenticos e os usuarios impostores. Ao

todo, foram coletadas 2340 amostras de usuarios autenticos e cada conta foi atacada 60

vezes por usuarios impostores resultando em um total de 1560 amostras impostoras. O

seu trabalho apresentou os seguintes resultados: 0,219% de FRR e 0,122% de FAR.

Sistemas de autenticacao baseados na tecnica biometrica de dinamica da digitacao,

podem ser usados em qualquer ambiente que se faca necessario o uso de senha como forma

de controle de acesso, como forma de aumentar o nıvel de seguranca destes sistemas.

Atualmente, a nıvel comercial, a empresa Admit One Securit possui um sistema de-

nominado BioPassword, que tem como objetivo principal monitorar e autenticar usuarios

usando a tecnica biometrica de dinamica da digitacao. O BioPassword usa uma com-

binacao do login e senha do usuario aliado ao comportamento biometrico da dinamica da

digitacao para proceder a autenticacao do usuario. Por ser um software proprietario, nao

ha muitos detalhes em relacao a sua implementacao.

3.5 Conclusao

Algumas conclusoes podem ser feitas acerca das caracterısticas principais dos trabalhos

vistos no estado da arte. Dentre os trabalhos estudados fica sublinhado que a extracoes de

caracterısticas mais utilizada sao a latencia da digitacao e a duracao da digitacao. Uma

outra caracterıstica importante dos sistemas desenvolvidos e o de que o uso de textos

fixos grande para como informacao alvo nao e muito viavel, pelo fato de obter com essa

configuracao taxas de erro altas.

30

Page 43: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Capıtulo 4

Metodologia e Analise do Prototipo

Proposto

4.1 Introducao

Como pode ser visto no capıtulo 3, o calculo da latencia da digitacao e o calculo

do tempo em que cada tecla fica pressionada sao os meios mais usados para a extracao

de caracterısticas em um sistema de autenticacao biometrica voltado para a dinamica da

digitacao. Neste trabalho nao se usa a latencia de digitacao ou da duracao da digitacao das

teclas como forma de extrair as caracteristicas de digitacao de um usuario, com o objetivo

principal de verificar a viabilidade de outro metodo de extracao de caracterıstica.

Este trabalho propoe uma metodologia que analisara o tempo total gasto para que um

usuario digite a sua senha no sistema, objetivando desta forma mostrar que a analise do

tempo que um usuario gasta para digitar a sua senha pode ser discriminante.

Basicamente o prototipo proposto e baseado em dois modulos principais, sendo eles o

modulo de cadastramento e o modulo de autenticacao. Inicialmente se o usuario deseja

acesar o sistema e ainda nao e cadastrado ele deve criar uma nova conta, caso contrario

ele deve informar uma conta ja cadastrada.

O modulo de cadastramento (figura 4.1) permite inicialmente que o usuario faca o seu

cadastro pessoal, o qual contem o identificador da conta do usuario (um numero inteiro)

e onde o usuario deve informar seu nome de usuario. E pedido que cada usuario digite

sua senha por um total de dez vezes. O modulo de cadastramento e responsavel entao

por analisar cada uma das dez entradas que o usuario digitou a sua senha armazenando

o tempo gasto (em milisegundos) de cada digitacao. Tendo estes tempos armazenados,

o sistema verifica quais foram o maior e o menor tempo em que o usuario digitou a sua

senha e armazena os tempos de digitacao das senhas e a senha propriamente dita em um

arquivo de texto referenciado pelo identificador da conta deste usuario. E importante

31

Page 44: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

salientar que o identificador da conta de usuario e fornecido pelo sistema e nao e de livre

escolha do usuario.

Figura 4.1: Modulo de Cadastramento

Com uma conta ja criada, para obter acesso ao sistema o usuario devera ir ao modulo

de autenticacao (figura 4.2). No modulo de autenticacao o primeiro passo do usuario e

informar o identificador de sua conta (numero inteiro).

A partir da identificacao da conta o sistema ira buscar na sua base de dados o modelo

correspondente a este usuario. Como mostrado anteriormente este modelo que e refer-

enciado pelo identificador de conta deste usuario contem os tempos que foram gastos

pelo usuario no modulo de cadastramento. Posteriormente, o usuario devera informar o

seu login e sua senha. Ao digitar a senha o sistema analisara a dinamica da digitacao

do usuario atraves da analise do tempo que o usuario gasta para digitar a sua senha.

O sistema entao verifica se o tempo que foi gasto esta entre o maior e o menor tempo

armazenado no arquivo correspondente a este usuario na base de dados. Se o tempo es-

tiver dentro do intervalo pre-definido entao sistema autoriza o acesso ao sistema, senao

o sistema concedera ao usuario uma outra chance de autenticacao, caso nesta segunda

tentativa de autenticacao o usuario nao consiga se autenticar com sucesso o sistema en-

tendera que este usuario e um impostor e nao permitira o seu acesso ao sistema. Um fato

32

Page 45: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

importante a ser citado em relacao ao modulo de cadastramento e que o sistema alem

de verificar a forma com que o usuario digita determinada senha, tambem verifica se a

senha que esta sendo fornecida ao sistema no momento da autenticacao bate com a senha

cadastrada pelo mesmo no momento do cadastramento.

Figura 4.2: Modulo de Autenticacao

4.2 Caracterısticas do Sistema Proposto

Com base nos estudos realizados no capıtulo Estado da Arte, os varios trabalhos de

dinamica da digitacao vistos possuem caracterısticas que os diferem ou que os aproximam

uns dos outros, seja no uso de senhas fixas ou nao, seja no numero de tentativas de

autenticacao ou mesmo na forma em que os sistemas propostos pelos autores realizam a

extracao de caracterısticas. Nas proximas sessoes sao apresentados aspectos importantes

relacionados a metodologia proposta.

4.2.1 Senha ou Informacao Alvo

A senha e o conjunto de caracteres digitado pelo usuario para sua autenticacao, esta

senha e escolhida pelo usuario no momento do cadastramento de sua conta no sistema. Em

relacao a escolha da senha pelo usuario, esta pode contar tanto numeros quanto letras e

nao deve ser menor que cinco caracteres. A escolha destas caracterısticas para a formacao

de uma senha baseou-se nos estudos de [BLEHA et al, 1990] que concluiu que o uso de

33

Page 46: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

menos que cinco caracteres na composicao da senha podem comprometer a extracao das

caracterısticas de digitacao do usuario, tornando o sistema menos confiavel.

4.2.2 Quantidade de Amostras

Foram 10 a quantidade de amostras coletadas por cada usuario. Isso se deve ao

fato de que segundo os estudos de [Joyce e Gupta, 1990] para a obtencao de resultados

satisfatorios nao e indicado o uso de menos que seis amostras coletadas pois quanto menor

o numero de amostras fica mais difıcil para o usuario imprimir um ritmo que o diferencie

de outros usuarios.

4.2.3 Tentativas de Autenticacao

De acordo com os testes de [Haider et al., 2000], usuarios legıtimos na maioria das

vezes falhavam da primeira vez, mas na segunda tentativa, realizava a autenticacao com

sucesso. Sendo assim a maioria dos sistemas de autenticacao de usuarios baseados na

dinamica da digitacao da o direito ao usuario de duas tentativas para se autenticar com

sucesso no sistema, desta forma este trabalho segue esta tendencia e permite que o usuario

tente por duas vezes se autenticar. Caso ele nao consiga nestas duas tentativas o sistema

ira considera-lo um usuario impostor.

4.2.4 Abordagens da Dinamica da Digitacao

Como colocado no capıtulo 2, existem duas formas de trabalhar com a dinamica da

digitacao em relacao a autenticacao, sendo elas a forma estatica e a forma dinamica. Neste

trabalho usa-se a forma estatica, ou seja, a autenticacao se dara no momento em que o

usuario inicia sua interacao com o sistema.

4.2.5 Extracao de Caracterısticas

Diferentemente de outros trabalhos como [Costa, 2006] e [Araujo, 2004], que analis-

aram caracterısticas como latencia da digitacao e/ou a duracao de tempo em que cada

tecla da informacao alvo fica pressionada, este trabalho analisa o tempo total que foi

gasto pelo usuario para digitar a sua senha. Este tempo e medido em milisegundos e

compreende o tempo em que o usuario pressiona a primeira tecla ate o momento em que

solta a ultima tecla que compoe a sua senha.

34

Page 47: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

4.3 Prototipo

Foi desenvolvido um prototipo com o objetivo de automatizar a metodologia proposta.

Este prototipo foi desenvolvido na linguagem de programacao JAVA na plataforma de

desenvolvimento NETBEANS 6.1. O uso desta linguagem se deve ao fato de sua porta-

bilidade e robustez.

Como esta citado na metodologia foram desenvolvidos dois modulos: um responsavel

pelo cadastramento e outro responsavel pela autenticacao. No desenvolvimento deste

projeto nao houve a necessidade de um sistema gerenciador de banco de dados, visto que

as informacoes pertinentes ao cadastramento de usuarios (identificador da conta, tempos

de digitacao e senha), e que posteriormente sao usadas pelo modulo de autenticacao sao

armazenadas em arquivos de texto; isto e, ja sao suficientes para a analise da tecnica

proposta empregada.

Na figura 4.3, observa-se um usuario sendo cadastrado no sistema. No momento do

cadastramento o usuario recebe o identificador de sua conta, escolhe um login e digita sua

senha no sistema por um total de dez vezes. Feito isso basta clicar em finalizar para que

o cadastro seja concluıdo.

Figura 4.3: Usuario Sendo Cadastrado

Quando o usuario clica em finalizar, o sistema mostra uma janela confirmando que o

cadastro deste usuario foi realizado com sucesso (Figura 4.4). A partir deste momento

o usuario pode autenticar-se no modulo de autenticacao, visto que o mesmo ja sabe

35

Page 48: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

o identificador de sua conta, definiu a sua senha e o sistema ja armazenou os dados

necessarios para proceder a sua autenticacao baseado na sua dinamica de digitacao e

verificacao de sua senha.

Figura 4.4: Usuario Cadastrado com Sucesso!

No momento do cadastramento se o usuario muda ou erra a senha que esta sendo

digitada, o sistema informa ao mesmo que houve um erro no processo de cadastramento

e que todas as senhas a serem digitadas precisam ser iguais. Como visto na figura 4.5.

Terminado o processo de cadastramento o usuario passa entao ao modulo de cadastra-

mento, onde ira autenticar-se. Para autenticar-se no sistema o usuario devera informar o

identificador de sua conta, a seguir informar o seu login e por fim informar a sua senha,

como pode ser observado na figura 4.6.

Caso a senha digitada esteja correta e a dinamica da digitacao imprimida pelo usuario

ao digitar a senha coincida com a cadastrada, o usuario e autenticado com sucesso (figura

4.7).

Caso a senha ou a dinamica empregada pelo usuario nao coincidam com o seu modelo

cadastrado, o sistema acusa falha na autenticacao (Figura 4.8). O sistema entao lhe

concede outra chance de autenticacao.

Mas se na segunda tentativa de autenticacao o usuario nao conseguir se autenticar

com sucesso o sistema acusa tentativa de fraude (figura 4.9), e fecha a aplicacao.

36

Page 49: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Figura 4.5: Falha no Cadastro

Figura 4.6: Usuario Sendo Autenticado

37

Page 50: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Figura 4.7: Usuario Autenticado com Sucesso

Figura 4.8: Usuario Autenticado com Sucesso

38

Page 51: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Figura 4.9: Tentativa de Fraude

39

Page 52: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Capıtulo 5

Teste e Analise dos Resultados

5.1 Testes

O desenvolvimento de um software envolve uma gama de atividades nas quais a possi-

bilidade de ocorrerem falhas humanas e enorme [Molinario, 2008]. E e por estas razoes que

o desenvolvimento de um software deve ser sempre acompanhado por atividades de testes

que visam garantir a qualidade do software. Os testes sao indispensaveis para remover

defeitos e para avaliar o grau de qualidade do software [Delamaro et al., 2007].

5.2 Plano de Testes

O ato de planejar testes e um dos mecanismos mais efetivos na prevencao de erros em

um software [Beizer, 1995]. Um plano de testes e um forte instrumento estrategico no

desenvolvimento de um software, isso se deve pelo fato de que e ele que ira guiar e repre-

sentar todo o processo de teste atraves de documentos e quanto mais bem documentado

o plano estiver, melhor ele representara a realidade [Delamaro et al., 2007].

Segundo [Molinario, 2008], existem varios padroes internacionais, alem de um nacional

que sao padroes especıficos para a elaboracao e uso do plano de testes, como forma de

sistematizar a producao de documentos relativos aos testes realizados na producao de

um software, dentre estes padroes destaca-se as Normas IEEE (Institute of Eletrical and

Eletronics Engineers), o padrao QAI (Quality Assurance Institute) e o padrao ABNT

NBR 12207.

As normas IEEE (Institute of Eletrical and Eletronics Engineers), sao padroes esta-

belecidos pelo Software Engineering Standarts Comittee e tem como objetivo basico ser

ponto de apoio para o desenvolvimento de diversas atividades industriais de software,

sugerindo que essas normas sejam um guia para as definicoes dos processos envolvidos.

O QAI (Quality Assurance Institute) e um instituto internacional de certificacoes e

40

Page 53: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

padroes em qualidade de software e tem uma proposta propria de padronizacao do plano

de testes.

A ABNT NBR 12207 e o unico padrao nacional existente no que tange a teste de

software. Porem, na pratica nao e muito seguida [Molinario, 2008].

Ainda segundo [Molinario, 2008], para testes o padrao mais importante e bem e re-

conhecido o IEEE STD 829-1998. Esta norma foi criada em 1998 e tem como objetivo

prover uma forma mais organizada de montar uma documentacao eficaz para testes, sem-

pre visando alcancar uma maior qualidade de software. Segundo dados do IEEE, este

documento descreve oito sugestoes de documentacao, nao sendo necessario porem, uti-

lizar todos eles, o ideal e que o projetista de testes utilize o que mais adequar a sua

necessidade. Dentre os oito documentos sugeridos pela norma, os que serao produzidos

por este trabalho como forma de documentar e nortear os testes serao:

• Plano de Testes: apresenta o planejamento para a execucao do teste;

• Especificacao dos Casos de Testes: Definir os casos de teste, incluindo dados

de entrada e resultados esperados;

• Relatorio-Resumo de Teste: apresenta os resultados das atividades de testes e

prover avaliacoes baseadas nestes resultados;

5.3 Documentacao do Plano de Testes

5.3.1 Planejamento para a Execucao do Teste

Como foi visto no capıtulo 2, secao 2.4, a eficiencia de um sistema biometrico e veri-

ficada por meio da mensuracao de dois tipos de erros: o de falsa aceitacao (FAR - false

accept reject), que ocorre quando o sistema aceita um impostor como usuario autentico e

o de falsa rejeicao (FRR - false rejection rate), quando o sistema rejeita um usuario ver-

dadeiro. Sendo assim, quanto menor for as taxas de erro do sistema biometrico, maior sera

a sua eficiencia [Costa, 2006]. Os testes entao, serao realizados com o objetivo principal

de mensurar as taxas de erro geradas por um sistema biometrico (FAR e FRR).

5.3.2 Recursos

Os principais recursos usados na realizacao dos testes foram: um microcomputador

com sistema operacional Windows XP SP3 instalado, 512MB de memoria RAM, Disco

rıgido com capacidade de 40GB e um processador AMD Sempron 2.1GHz 32Bits.

41

Page 54: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Como os testes foram realizados em um sistema biometrico que analisa a dinamica de

digitacao do usuario para proceder a autenticacao, faz-se necessario citar que o teclado

usado e um teclado do tipo ABNT2, idioma portugues do Brasil.

5.4 Documentacao da Especificacao dos Casos de Testes

Basicamente tem-se dois casos de testes: o primeiro ira mensurar a taxa de erro de falsa

rejeicao (FRR), e o segundo ira mensurar a taxa de erro de falsa aceitacao(FAR). O uso

de apenas dois casos de testes se da pelo fato de que a qualidade de um sistema biometrico

e verificada atraves da mensuracao das taxas de erro FAR e FRR[Araujo, 2004], sendo

assim temos um caso de teste para tipo de erro. Os detalhes acerca de cada um dos casos

de testes podem ser vistos no que segue.

5.4.1 Caso de Teste - FRR

O caso de teste que compreende a verificacao de falsa rejeicao (FRR) sera realizado

em duas etapas, sendo a primeira uma etapa de cadastramento e a segunda uma etapa

de tentativa de autenticacao.

Na primeira etapa um total de 40 usuarios cadastraram no sistema biometrico por

meio do modulo de cadastramento (vide figura 4.1). Cada um dos 40 usuarios escolheram

um login (nome de usuario) e alimentaram o sistema digitando a sua senha (que foi

previamente escolhida pelo usuario). Esta fase teve a duracao de 1 dia.

Terminada a etapa de cadastramento estes usuarios foram (um por vez), por meio do

modulo de autenticacao tentar realizar a sua autenticacao. Em cada conta que usuario

nao conseguisse autenticar-se no sistema, o mesmo iria computar um erro de falsa rejeicao,

pois o sistema rejeitou um usuario verdadeiro.

Todos os dados referentes a este teste foram devidamente anotados e arquivados, e

serao mostrados no Relatorio-Resumo de teste.

5.4.2 Caso de Teste - FAR

Para realizar a verificacao de falsa aceitacao FAR, e necessario que um usuario im-

postor tente autenticar-se com sucesso se passando pelo dono de uma conta previamente

cadastrada no sistema. Se este usuario impostor conseguir autenticar-se entao estara car-

acterizado um erro de falsa aceitacao, pois o sistema acaba de aceitar um usuario que nao

e verdadeiro.

Este caso de teste leva em conta dois tipos de usuarios impostores, o primeiro que sera

denominado usuario impostor simples, o qual tera em maos uma lista contendo o login e

a senha de todos os 40 usuarios cadastrados no sistema. Desta forma ele ira poder tentar

42

Page 55: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

autenticar-se em cada uma das 40 contas. Em cada conta que ele conseguir autenticar-se

sera computado um erro de falsa aceitacao.

O segundo tipo de usuario impostor sera denominado usuario impostor observador

[Araujo, 2004]. Este usuario vai estar presente no momento em que os usuarios verdadeiros

estiverem procedendo o seu cadastro no sistema e tera como missao observar a forma como

10 dos 40 usuarios, que irao realizar o cadastro, digitam a sua senha, observando de forma

especial o posicionamento das maos sobre o teclado e como cada tecla e pressionada. A

principal contribuicao que este usuario impostor ira trazer para as avaliacoes finais do teste

e mostrar se alguem que sabe a senha e ve como o usuario digita, tera mais vantagem

quando tentar burlar o sistema.

Todos os dados referentes a este teste serao devidamente anotados e arquivados, e

serao mostrados no Relatorio-Resumo de teste.

5.4.3 Resultados Esperados

Em relacao aos casos de testes propostos, espera-se primeiramente que o sistema iden-

tifique, na maioria dos casos, se um determinado usuario e ou nao um usuario verdadeiro.

Espera-se tambem que as taxas de erros obtidas por meio da realizacao dos testes, pos-

sam ser compatıveis quando comparadas a outros trabalhos da area. Esta comparacao e

muito importante, pois atraves dela iremos saber se o uso da metodologia proposta por

este trabalho e viavel ou nao.

5.5 Relatorio Resumo de Teste

Este documento tem como objetivo, apresentar os resultados obtidos nas atividades

de teste e realizar uma avaliacao desses resultados com base nos objetivos propostos.

5.5.1 Caso de Teste - FRR

Levando-se em consideracao o caso de teste FRR (false rejection rate), de acordo com

os dados anotados durante o procedimento de testes, pode-se observar que apenas tres (3)

usuarios verdadeiros de um total de 40, nao conseguiram obter acesso ao sistema. Sendo

assim ficou configurando tres erros de falsa rejeicao, pois o sistema rejeitou tres usuarios

verdadeiros.

Como visto no capitulo 2 e secao 2.4 a FRR e definida pela seguinte equacao [Costa, 2006]:

FRR = (Total de Falsa Rejeicao / Total de Contas Tentadas) %

FRR = (3 / 40) %

FRR = 0,075 %

43

Page 56: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Desta forma o sistema obteve uma taxa de erro FRR de 0,075%

5.5.2 Caso de Teste - FAR

Levando em consideracao o caso de teste do usuario impostor simples, pode-se observar

durante os testes que ele conseguiu autenticar-se em 7 das 40 contas disponıveis. Sendo

assim ficou configurado um total de 7 erros de falsa aceitacao.

Como visto no capıtulo 2 e secao 2.4 a FAR e definida pela seguinte equacao [Costa, 2006]:

FAR = (Total de Falsa Aceitacao / Total de Contas Tentadas) %

FAR = (7 / 40) %

FRR = 0,175 %

Desta forma o sistema obteve uma taxa de erro FAR de 0,175%.

Levando-se em consideracao o caso de teste do usuario impostor observador, pode-se

observar durante os testes que ele conseguiu obter acesso em 2 das 10 contas utilizadas.

Isso mostra que mesmo observando como o usuario verdadeiro digita a sua senha, ainda e

difıcil para o impostor proceder o mesmo ritmo de digitacao, pelo fato de que na maioria

das vezes o usuario verdadeiro ja esta familiarizado com a senha e o impostor nao.

FAR = (Total de Falsa Aceitacao / Total de Contas Tentadas) % FAR = (2 / 10) %

FRR = 0,2%

Sendo assim a FAR obtida para o usuario impostor observador foi FAR = 0,2%.

5.5.3 Analise dos Resultados

Os testes do prototipo, que foram realizados de acordo com a documentacao de testes

elaborada seguindo a norma de documentacao de teste de software IEEE 829-1998, con-

seguiram alcancar o seu objetivo principal que era o de mensurar as taxas de erro geradas

por este sistema de autenticacao biometrico. As taxas obtidas por este prototipo podem

ser vistas na figura 5.1.

Figura 5.1: Taxas de FAR e FRR Obtidas

As taxas de erro que o sistema obteve sao consideradas satisfatorias, quando compara-

das a outros trabalhos da area. Abaixo veremos algumas comparacoes.

No ano de 1990 [Bleha et al., 1990] os autores usaram em seus trabalhos um texto

fixo e a senha de cada usuario como informacao alvo, e como caracterıstica foi extraıda a

44

Page 57: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

latencia de digitacao. Os resultados obtidos foram calculados usando 32 pessoas para a

realizacao dos testes. As taxas atingidas foram 0,310% de FRR e 0,50% de FAR.

No ano de 2004 [Araujo, 2004] apresentou uma metodologia para autenticacao de

usuarios baseada na dinamica da digitacao que analisava o tempo de pressionamento bem

como o tempo de soltura das teclas, alem de seus codigos ASCII. Os resultados obtidos

foram de 0,155% de FRR e 0,191% de FAR.

No ano de 2006 [Costa, 2006], apresentou uma nova abordagem para autenticacao

biometrica de usuarios baseada na dinamica da digitacao usando teclados numericos. O

seu trabalho apresentou os seguintes resultados: 0,219% de FRR e 0,122% de FAR.

A escolha destes trabalhos para a realizacao da comparacao com o trabalho atual deve-

se principalmente ao fato de [Costa, 2006] e [Araujo, 2004] serem trabalhos mais atuais,

outro fato importante para a escolha destes tres trabalhos e o de que todos eles usam a

latencia da digitacao na extracao das caracterısticas do usuario, sendo assim como este

trabalho propoe uma nova metodologia faz-se necessario compara-lo com trabalhos que

usam metodologias diferentes no intuito de verificar se a metodologia proposta e ou nao

viavel.

Atraves da tabela comparativa 5.2, pode-se observar que o prototipo desenvolvido

obteve resultados melhores que o de [Araujo, 2004] levando-se em consideracao a taxa de

FAR, mas, observa-se tambem que a taxa de FAR obtida por este prototipo foi maior que

a taxa obtida por [Bleha et al., 1990] e [Costa, 2006].

Figura 5.2: Algumas Comparacoes

Levando-se em consideracao a taxa de erro FRR, observa-se que o prototipo desen-

volvido obteve resultados expressivos, obtendo uma taxa de FRR menor que os outros tres

trabalhos usados na comparacao. Isso mostra que o prototipo desenvolvido e a metodolo-

gia usada produzem otimos resultados em relacao a falsa rejeicao.

45

Page 58: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Consideracoes Finais

Autenticar seres humanos perante um sistema computacional e algo de grande im-

portancia e fundamental para a seguranca da informacao. Sendo assim foi abordado

neste trabalho uma alternativa de autenticacao de usuarios usando o tipo biometrico da

dinamica da digitacao com o objetivo de prover uma maior seguranca a sistemas com-

putacionais que necessitam de uma autenticacao baseada em login/senha.

Este trabalho apresentou um estudo das tecnicas de autenticacao baseados em biome-

tria, cujo foco foi o tipo biometrico de dinamica da digitacao, produzindo um prototipo

de autenticacao baseado na dinamica da digitacao, implementado por meio da linguagem

de programacao JAVA.

Contribuicoes foram produzidas durante o desenvolvimento deste trabalho, uma delas

e o estudo sobre a biometria e principalmente o estudo da dinamica da digitacao, uma

tecnica biometrica ainda desconhecida para muitos, mas que vem se mostrando uma

solucao bastante simples e viavel de ser implementada por prover bons resultados quando

o objetivo e o de garantir maior seguranca a sistema de autenticacao de usuarios baseados

em login/senha.

A tecnica biometrica da dinamica da digitacao e uma area de pesquisa cientifica que

ainda esta em crescimento, e devido a isto ainda nao possui muitos trabalhos publicados

na area. Desta forma o desenvolvimento deste trabalho e muito importante, pois este vem

a somar com os trabalhos anteriores, solidificando o fato de que a tecnica biometrica da

dinamica da digitacao e uma poderosa ferramenta para o fortalecimento da seguranca de

sistemas computacionais.

Desta forma o desenvolvimento deste trabalho e muito importante, pois este vem a

somar com os trabalhos anteriores, solidificando o fato de que a tecnica biometrica da

dinamica da digitacao e uma poderosa ferramenta para o fortalecimento da seguranca de

sistemas computacionais.

A metodologia de desenvolvimento usada para o desenvolvimento deste prototipo e

bem menos complexa que a maioria das aplicacoes desenvolvidas na area, o que garante a

esta aplicacao um nıvel de processamento bem menor que as demais. Quando comparada

a outros importantes trabalhos da area (como visto no capıtulo 5) mostrou-se que mesmo

sendo de um nıvel de complexidade menor, o prototipo desenvolvido conseguiu prover

46

Page 59: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

resultados competitivos e ate melhores em alguns pontos, respondendo de forma positiva

a pergunta feita na introducao que questionava se o uso de uma metodologia baseada no

tempo total gasto para a digitacao da senha discriminaria ou nao usuarios impostores de

usuarios verdadeiros.

Dentre as dificuldades encontradas para realizacao deste trabalho pode-se citar a difi-

culdade de encontrar publico alvo para a realizacao dos testes. Isso ficou evidente pelo fato

de demandar um pouco de tempo por parte do usuario para a realizacao do cadastro no

sistema. A escolha de uma linguagem de programacao adequada para o desenvolvimento

do prototipo tambem nao foi uma tarefa das mais faceis, tendo em vista a grande possibili-

dade de escolhas possıveis. A bibliografia tambem pode ser considerada outra dificuldade,

ja que a dinamica da digitacao ainda e uma area de pesquisa em desenvolvimento e ainda

nao ha muitos trabalhos publicados sobre a dinamica da digitacao.

Um ponto bastante positivo deste trabalho foi o fato do mesmo conseguir taxas de

FRR e FAR baixas o que mostra que o prototipo desenvolvido e confiavel, solidificando

ainda mais o fato da metodologia usada ser bastante viavel. Outro ponto positivo e que

o prototipo alcancou uma taxa de FRR mais baixa em relacao aos trabalhos comparados

(como visto na figura 5.2).

Por outro lado o prototipo obteve uma taxa de erro de FAR mais alta que dois dos

tres trabalhos com os quais foi comparado, o que mostra que uma desvantagem deste

prototipo esta na aceitacao de falsos usuarios. Apesar de conseguir taxas mais altas,

porem proximas, este ponto do trabalho deve ser melhorado.

Para trabalhos futuros tem-se a perspectiva de usar redes neurais no processo de

classificacao e comparacao das amostras, com o objetivo de tentar diminuir ainda mais

as taxas de erros obtidas, provendo assim um maior nıvel de seguranca ao sistema de

autenticacao.

Outra intencao de trabalho futuro seria a de usar este sistema no ambito da crip-

tografia, gerando uma chave biometrica baseada nas caracterısticas da dinamica da digitacao

do usuario agregando mais seguranca a este sistema.

47

Page 60: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Referencias

Araujo, L. (2004). Uma metodologia para autenticacao pessoal baseada em Dinamica da

Digitacao. UNICAMP, Campinas, SP, Brasil.

Beizer, B. (1995). Black-Box Testing. Wiley-Interscience.

Bergadano, F., Gunneti, D., e Pikardi, C. (2002). User authentication through keystroke

dynamics. ACM Transactions on Information and System Security.

Bleha, S., C.Slivinsky, e Hussain, B. (1990). Computer-Access Security Systems Using

Keystroke Dynamics. IEEE Trans. Pattern Anal. Machine Intell., Vol. 12.

Brow, M. e Rogers, M. (1993). User identification via keystroke char-

acteristics of typed names using neural networks. Disponıvel em:

http://portal.acm.org/citation.cfm?id=1085126.1085129 Acesso em 23/03/2009.

Cavalcanti, G. (2005). Composicao de Biometrias para Sistemas Mul-

timodais de Verificacao de Identidade Pessoal. Disponıvel em:

http://www.bdtd.ufpe.br/tedeSimplificado//tde busca/arquivo.php?codArquivo=402

Acesso em 13/01/2009.

CERT.BR (2006). Cartilha de Seguranca da Informacao. http://cartilha.cert.br/conceitos

Acesso em 25/05/2009.

Cho, S., Han, C., e Kim, H. (2000). Web-based keystroke dynamics identity verification us-

ing neural network. Disponıvel em: http://www.informaworld.com/smpp/content con-

tent=a785829106 db=all Acesso em 21/02/2009.

Costa, C. (2006). Autenticacao Biometrica via teclado numerico baseada na dinamica da

digitacao. UNICAMP, Campinas, SP, Brasil.

Delamaro, M., Maldonado, J., e M.Jino (2007). Introducao ao Teste de Software. Editora

Campus.

Filho, A. (2004). Seguranca da Informacao: Sobre a necessidade de Protecao de Sistemas

de Informacao. Disponıvel em: http://www.espacoacademico.com.br/042/42amsf.htm

Acesso em 14/05/2009.

Fonseca, F. (2006). Curso Basico de Seguranca da Informacao, Introducao a Seguranca

da Informacao. Academia Latino-Americana de Seguranca da Informacao.

Gava, E. (2006). Sistemas Biometricos com enfase na dinamica da digitacao. Disponıvel

em: http://www.fatec.br/html/sistemas biometricos.pdf Acesso em 15/05/2009.

48

Page 61: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Haider, S., Abbas, A., e Zaidi, A. (2000). A Multi-Technique Approach for User Identifi-

cation through Keystroke Dynamics. IEEE Int. Conference of Syst., Man and Cybern.,

Vol. 2.

Heinen, M. e Osorio, F. (2005). Biometria Comportamental: Pesquisa e de-

senvolvimento de usuarios utilizando assinaturas manuscritas. Disponıvel em:

www.dcc.ufla.br/infocomp/artigos/v3.2/art06.pdf Acesso em 25/05/2009.

Julio, R. (2007). O Reconhecimento Biometrico. Disponıvel em:

http://bsi.cneccapivari.br/?q=node/39 Acesso em 14/04/2009.

Joyce, R. e Gupta, G. (1990). Identity authorization based on keystroke latencies. Com-

munications of the ACM, Vol. 33., No 2.

Leggett, J. e Usnik, G. (1990). Dynamic identity verification via keystroke characteristics.

International Journal of Man-Machine Studies, Vol. 35.

Leggett, J. e Williams, G. (1987). Verifying identity via keystroke characteristics. Inter-

national Journal of Man-Machine Studies, Vol. 28.

Magalhaes, P. e Santos, H. (2003). Biometria e Autenticacao.

http://repositorium.sdum.uminho.pt/handle/1822/2184 Acesso em 22/12/2008.

Marcelo, A. (2001). Biometria. Disponıvel em:

www.fieo.br/v2/central aluno?revista/rev2001/biometria.htm Acesso em 15/05/2009.

Medeiros, C. (2001). Seguranca da Informacao: Implantacao de Me-

didas e Ferramentas de Seguranca da Informacao. Disponıvel em:

http://www.linuxsecurity.com.br/info/general/TCE Seguranca da Informacao.pdf

Acesso em 13/02/2009.

Molinario, L. (2008). Testes Funcionais de Software. Visual Books, 1◦ edicao.

Monrose, F., Reiter, M., e S, W. (1999). Password Hardening Based on Keystroke Dy-

namics. 6th ACM Conference on Computer Security.

Moreira, N. (2001). Seguranca Mınima, Uma Visao Corporativa da Seguranca da In-

formacao. Axcel Books.

Obaidat, M. e Sadoun, B. (1997). Verification of Computer User Using Keystroke Dy-

namics,. IEEE Trans. Syst., Man, Cybern., Vol. 27.

Rocha, P. (2004). Um estudo sobre sistemas biometricos multimodais. Universidade Fed-

eral de Goias, Catalao, GO, Brasil.

49

Page 62: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Silberchatz, A., Galvin, P., e Gagne, G. (2004). Sistemas Operacionais com Java. Editora

Campous 2004.

Stamp, M. (2006). Information Security, principles and practice. Wiley-Interscience.

Umphress, D. e Williams, G. (1985). Identity verification through keyboard characteristics.

International Journal of Man-Machine Studies, Vol. 23.

Vigliazzi, D. (2003). Biometria, Medidas de Seguranca. Visual Books, 2003.

Yu, E. e Cho, S. (2004). Keystroke dynamics identity verifi-

cation - its problems and practical solutions. Disponıvel em:

http://www.sciencedirect.com/science? ob=ArticleURL udi=B6V8G-4CMW0SJ-

1 user=686368 rdoc=1 fmt= orig=search sort=dview=c acct=C000037519 version=1 urlVersion=0 userid=686368=md5=9b3d85d376c3118e5fb82d56300266f6

Acesso em 13/01/2009.

Zapatar, M. e Suzuki, R. (2005). Seguranca da Informacao, Um diferencial determinante

na competitividade das corporacoes. PROMOM 2005.

50

Page 63: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

Apendice A

Codigo Fonte

A.1 Modulo Captura de Amostras1 /*

2 * ModuloCapturaAmostras.java

3 *

4 *Este modulo permite que o usuario faca um cadastro que contem seu login e o

5 *identificador de sua conta. Posteriormente o modulo analisa cada uma das

6 *entradas fornecidas e armazena o tempo gasto em milisegundos de cada

7 *digitac~ao.

8 *

9 * Created on 11 de Agosto de 2008, 17:10

10 */

11

12 package Frames;

13

14 import Usuarios.Usuario;

15 import java.awt.event.KeyEvent;

16 import java.io.File;

17 import java.io.FileOutputStream;

18 import java.io.IOException;

19 import java.io.ObjectOutputStream;

20 import java.util.logging.Level;

21 import java.util.logging.Logger;

22 import javax.swing.JOptionPane;

23

24 /**

25 *

26 * @author Gustavo Almeida

27 */

28 public class ModuloCapturaAmostras extends javax.swing.JFrame {

29

30 long[] tempoFinal = new long[9];

31 int i = 0; /** Captura o tempo em que cada tecla da informac~ao alvo ficou pressionada

32 pelo usuario*/

33 int cont = 1;

34 int j = 0;

35 String senha = "";

36 long[] tempoInicial = new long[9];

37 long[] media = new long[10];

38 long[] mediaOrd = new long[10];

39

40 /** Creates new form ModuloCapturaAmostras */

41 public ModuloCapturaAmostras() {

42 initComponents();

43

44 boolean existe = true;

45 int l = 1;

46 while(existe) {

47 if(!new File("Usuarios/" + l + ".bio").exists()) {

48 jLabel2.setText("0" + l);

49 existe = false;

51

Page 64: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

50 }

51 else {

52 l++;

53 }

54 }

55

56

57 }

58

59 /** This method is called from within the constructor to

60 * initialize the form.

61 * WARNING: Do NOT modify this code. The content of this method is

62 * always regenerated by the Form Editor.

63 */

64 // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents

65 private void initComponents() {

66

67 jLabel5 = new javax.swing.JLabel();

68 jLabel1 = new javax.swing.JLabel();

69 jLabel2 = new javax.swing.JLabel();

70 jButton5 = new javax.swing.JButton();

71 jPasswordField1 = new javax.swing.JPasswordField();

72 jButton6 = new javax.swing.JButton();

73 jTextField1 = new javax.swing.JTextField();

74 jLabel4 = new javax.swing.JLabel();

75 jLabel6 = new javax.swing.JLabel();

76 jLabel7 = new javax.swing.JLabel();

77 jLabel3 = new javax.swing.JLabel();

78

79 setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);

80 setTitle("..:: Modulo de Captura de Amostras ::..");

81 getContentPane().setLayout(null);

82

83 jLabel5.setFont(new java.awt.Font("Arial", 1, 12));

84 jLabel5.setForeground(new java.awt.Color(0, 0, 153));

85 jLabel5.setText(" Modulo de Captura de Amostras");

86 getContentPane().add(jLabel5);

87 jLabel5.setBounds(20, 10, 370, 30);

88

89 jLabel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Identificador da Conta: "));

90 getContentPane().add(jLabel1);

91 jLabel1.setBounds(20, 60, 210, 50);

92

93 jLabel2.setText("01");

94 getContentPane().add(jLabel2);

95 jLabel2.setBounds(140, 80, 34, 14);

96

97 jButton5.setText("Finalizar");

98 jButton5.addActionListener(new java.awt.event.ActionListener() {

99 public void actionPerformed(java.awt.event.ActionEvent evt) {

100 jButton5ActionPerformed(evt);

101 }

102 });

103 getContentPane().add(jButton5);

104 jButton5.setBounds(40, 350, 100, 23);

105

106 jPasswordField1.addActionListener(new java.awt.event.ActionListener() {

107 public void actionPerformed(java.awt.event.ActionEvent evt) {

108 jPasswordField1ActionPerformed(evt);

109 }

110 });

111 jPasswordField1.addKeyListener(new java.awt.event.KeyAdapter() {

112 public void keyPressed(java.awt.event.KeyEvent evt) {

113 jPasswordField1KeyPressed(evt);

114 }

115 public void keyReleased(java.awt.event.KeyEvent evt) {

116 jPasswordField1KeyReleased(evt);

117 }

118 });

119 getContentPane().add(jPasswordField1);

120 jPasswordField1.setBounds(40, 240, 160, 20);

121

122 jButton6.setText("Cancelar");

123 getContentPane().add(jButton6);

52

Page 65: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

124 jButton6.setBounds(190, 350, 100, 23);

125 getContentPane().add(jTextField1);

126 jTextField1.setBounds(40, 140, 160, 20);

127

128 jLabel4.setBorder(javax.swing.BorderFactory.createTitledBorder("Escolha um LOGIN: "));

129 getContentPane().add(jLabel4);

130 jLabel4.setBounds(20, 120, 210, 60);

131

132 jLabel6.setFont(new java.awt.Font("Tahoma", 1, 11));

133 jLabel6.setText("1a");

134 getContentPane().add(jLabel6);

135 jLabel6.setBounds(210, 240, 50, 20);

136

137 jLabel7.setFont(new java.awt.Font("Tahoma", 0, 10));

138 getContentPane().add(jLabel7);

139 jLabel7.setBounds(40, 280, 120, 10);

140

141 jLabel3.setBorder(javax.swing.BorderFactory.createTitledBorder("Digite a Informac~ao Alvo: "));

142 getContentPane().add(jLabel3);

143 jLabel3.setBounds(20, 200, 310, 100);

144

145 java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();

146 setBounds((screenSize.width-413)/2, (screenSize.height-449)/2, 413, 449);

147 }// </editor-fold>//GEN-END:initComponents

148

149 private void jPasswordField1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jPasswordField1ActionPerformed

150 this.i = 0;

151

152 // Verifica se as senhas s~ao as mesmas

153 if(this.j == 0) {

154 this.senha = jPasswordField1.getText();

155 }

156

157 if(this.j > 0 && this.senha.compareTo(this.jPasswordField1.getText()) != 0) {

158 reiniciaProcesso();

159 }

160 else {

161 /**

162 * Verifica o tempo final - inicial (media)

163 * Pega o tamanho da senha

164 */

165 this.media[j] = tempoFinal[this.tempoFinal.length - 1] - tempoInicial[0];

166 for(int l = this.tempoFinal.length - 1; l >= 0; l--) {

167 if(this.media[j] == -this.tempoInicial[0]) {

168 this.media[j] = tempoFinal[l] - tempoInicial[0];

169 }

170 else {

171 break;

172 }

173 }

174 this.j++;

175 this.cont++;

176

177 // apos as 10 entradas

178 if(this.cont == 11) {

179 this.jLabel6.setText("ok!");

180 this.jLabel7.setText("Clique em finalizar");

181 jButton5.requestFocus();

182 // ordena o vetor de tempo

183 this.mediaOrd = ordenaVetor(media);

184

185 // Imprime o vetor de tempos e ele apos a ordenac~ao

186 for (int l = 0; l < this.media.length; l++) {

187 System.out.println(this.media[l]);

188 }

189 }

190 else {

191 this.jLabel6.setText((this.cont) + "a");

192 this.jPasswordField1.setText("");

193 this.tempoFinal = new long[9];

194 this.tempoInicial = new long[9];

195 }

196 }

197

53

Page 66: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

198 }//GEN-LAST:event_jPasswordField1ActionPerformed

199

200 private void jPasswordField1KeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jPasswordField1KeyPressed

201 if(evt.getKeyCode() != KeyEvent.VK_ENTER) {

202 this.tempoInicial[i] = System.currentTimeMillis();

203 }

204

205 }//GEN-LAST:event_jPasswordField1KeyPressed

206

207 private void jPasswordField1KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jPasswordField1KeyReleased

208 if(evt.getKeyCode() != KeyEvent.VK_ENTER) {

209 this.tempoFinal[i] = System.currentTimeMillis();

210 this.i++;

211 }

212

213 }//GEN-LAST:event_jPasswordField1KeyReleased

214

215 private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed

216 ObjectOutputStream buf = null;

217 try {

218 // Cria o novo usuario com as informac~oes colhidas

219 int id = Integer.parseInt(jLabel2.getText());

220 Usuario novo = new Usuario(id, jTextField1.getText(), this.senha, mediaOrd);

221 Object obj = (Object) novo;

222

223 // Escreve no arquivo

224 File file = new File("Usuarios/" + id + ".bio");

225 file.createNewFile();

226 FileOutputStream fos = new FileOutputStream(file);

227 buf = new ObjectOutputStream(fos);

228 buf.writeObject(novo);//GEN-LAST:event_jButton5ActionPerformed

229

230 JOptionPane.showMessageDialog(null, "Cadastro realizado com sucesso!",

231 "Confirmac~ao", JOptionPane.INFORMATION_MESSAGE);

232

233 } catch (IOException ex) {

234 Logger.getLogger(ModuloCapturaAmostras.class.getName()).log(Level.SEVERE, null, ex);

235 JOptionPane.showMessageDialog(null, "N~ao foi possıvel realizar o cadastro!",

236 "Erro!", JOptionPane.ERROR_MESSAGE);

237 }

238 finally {

239 try {

240 buf.close();

241 dispose();

242 } catch (IOException ex) {

243 Logger.getLogger(ModuloCapturaAmostras.class.getName()).log(Level.SEVERE, null, ex);

244 }

245 }

246 }

247

248 /**

249 * @param args the command line arguments

250 */

251 public static void main(String args[]) {

252 java.awt.EventQueue.invokeLater(new Runnable() {

253 @Override

254 public void run() {

255 new ModuloCapturaAmostras().setVisible(true);

256 }

257 });

258 }

259

260 // Variables declaration - do not modify//GEN-BEGIN:variables

261 private javax.swing.JButton jButton5;

262 private javax.swing.JButton jButton6;

263 private javax.swing.JLabel jLabel1;

264 private javax.swing.JLabel jLabel2;

265 private javax.swing.JLabel jLabel3;

266 private javax.swing.JLabel jLabel4;

267 private javax.swing.JLabel jLabel5;

268 private javax.swing.JLabel jLabel6;

269 private javax.swing.JLabel jLabel7;

270 private javax.swing.JPasswordField jPasswordField1;

271 private javax.swing.JTextField jTextField1;

54

Page 67: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

272 // End of variables declaration//GEN-END:variables

273

274 private long[] ordenaVetor(long[] med) {

275 for(int l = 0; l < med.length - 1; l++) {

276 for(int m = l + 1; m < med.length; m++) {

277 if(med[l] > med[m]) {

278 long aux = med[l];

279 med[l] = med[m];

280 med[m] = aux;

281 }

282 }

283 }

284

285 return media;

286 }

287 // End of variables declaration

288

289 private void reiniciaProcesso() {

290 JOptionPane.showMessageDialog(null, "Senhas incorretas!\n Todas as senhas digitadas" +

291 " devem ser iguais!", "Alerta", JOptionPane.WARNING_MESSAGE);

292

293 this.j = 0;

294 this.cont = 1;

295

296 this.jLabel6.setText((this.cont) + "a");

297 this.jPasswordField1.setText("");

298 }

299

300 }

A.2 Modulo de Autenticacao1 package Frames;

2

3 import Usuarios.Usuario;

4

5 /*

6 * ModuloAutenticacao.java

7 *Neste modulo o usuario informa sei identificador ao sistema, que por sua vez

8 *busca em sua base de dados o modelo correspondente a este usuario.Assim o

9 *usuario ira tentar autenticar-se no sistema!

10 *

11 * Created on 11 de Agosto de 2008, 16:21

12 */

13 import java.io.File;

14 import java.io.FileInputStream;

15 import java.io.IOException;

16 import java.io.ObjectInputStream;

17 import java.util.logging.Level;

18 import java.util.logging.Logger;

19 import javax.swing.JOptionPane;

20

21 /**

22 *

23 * @author Gustavo Almeida

24 */

25 public class ModuloAutenticacao extends javax.swing.JFrame {

26

27 private Usuario user;

28

29 private long[] tempo = new long[2];

30 private int cont = 1;

31 private int tent = 0;

32

33 /** Creates new form ModuloAutenticacao */

34 public ModuloAutenticacao() {

35 initComponents();

36 }

37

38 /** This method is called from within the constructor to

39 * initialize the form.

55

Page 68: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

40 * WARNING: Do NOT modify this code. The content of this method is

41 * always regenerated by the Form Editor.

42 */

43 // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents

44 private void initComponents() {

45

46 jIdConta = new javax.swing.JTextField();

47 jLabel2 = new javax.swing.JLabel();

48 jLabel3 = new javax.swing.JLabel();

49 jLogin = new javax.swing.JTextField();

50 jLabel4 = new javax.swing.JLabel();

51 jLabel5 = new javax.swing.JLabel();

52 jLabel6 = new javax.swing.JLabel();

53 jLabel1 = new javax.swing.JLabel();

54 jAutentica = new javax.swing.JButton();

55 jSenha = new javax.swing.JPasswordField();

56

57 setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

58 setTitle("..:: Modulo de Autenticac~ao ::..");

59 getContentPane().setLayout(null);

60

61 jIdConta.addFocusListener(new java.awt.event.FocusAdapter() {

62 public void focusLost(java.awt.event.FocusEvent evt) {

63 jIdContaFocusLost(evt);

64 }

65 });

66 getContentPane().add(jIdConta);

67 jIdConta.setBounds(70, 70, 50, 20);

68

69 jLabel2.setBorder(javax.swing.BorderFactory.createTitledBorder("Login/Senha"));

70 getContentPane().add(jLabel2);

71 jLabel2.setBounds(10, 140, 250, 100);

72

73 jLabel3.setText("LOGIN: ");

74 getContentPane().add(jLabel3);

75 jLabel3.setBounds(40, 170, 50, 14);

76 getContentPane().add(jLogin);

77 jLogin.setBounds(90, 170, 90, 20);

78

79 jLabel4.setText("SENHA: ");

80 getContentPane().add(jLabel4);

81 jLabel4.setBounds(40, 210, 50, 14);

82

83 jLabel5.setFont(new java.awt.Font("Arial", 1, 12));

84 jLabel5.setForeground(new java.awt.Color(0, 0, 153));

85 jLabel5.setText(" Autenticac~ao Biometrica de Usuario");

86 getContentPane().add(jLabel5);

87 jLabel5.setBounds(30, 10, 350, 30);

88

89 jLabel6.setFont(new java.awt.Font("Tahoma", 0, 10));

90 getContentPane().add(jLabel6);

91 jLabel6.setBounds(160, 100, 90, 10);

92

93 jLabel1.setFont(new java.awt.Font("Arial", 1, 12));

94 jLabel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Identificador da Conta"));

95 getContentPane().add(jLabel1);

96 jLabel1.setBounds(10, 50, 250, 70);

97

98 jAutentica.setText("Autenticar");

99 jAutentica.addActionListener(new java.awt.event.ActionListener() {

100 public void actionPerformed(java.awt.event.ActionEvent evt) {

101 jAutenticaActionPerformed(evt);

102 }

103 });

104 getContentPane().add(jAutentica);

105 jAutentica.setBounds(100, 260, 130, 23);

106

107 jSenha.addKeyListener(new java.awt.event.KeyAdapter() {

108 public void keyPressed(java.awt.event.KeyEvent evt) {

109 jSenhaKeyPressed(evt);

110 }

111 public void keyReleased(java.awt.event.KeyEvent evt) {

112 jSenhaKeyReleased(evt);

113 }

56

Page 69: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

114 });

115 getContentPane().add(jSenha);

116 jSenha.setBounds(90, 210, 90, 20);

117

118 java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();

119 setBounds((screenSize.width-389)/2, (screenSize.height-351)/2, 389, 351);

120 }// </editor-fold>//GEN-END:initComponents

121 /** Verifica se o ritmo de digitac~ao do usuario corresponde com o da

122 conta fornecida previamente*/

123 private void jAutenticaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jAutenticaActionPerformed

124 long media = this.tempo[1] - this.tempo[0];

125 if(media < this.user.menorTempo() || media > this.user.maiorTempo()) {

126 JOptionPane.showMessageDialog(null, "Falha na autenticac~ao!");

127

128 /** Tempo mostrado no JOptionPane */

129 JOptionPane.showMessageDialog(null, "Tempo feito: " + media

130 + "\n\n" + "Menor Certo: " +

131 this.user.menorTempo() + "\n" + "Maior Certo: " +

132 this.user.maiorTempo());

133 /** ate aqui */

134

135 this.cont = 1;

136 this.jIdConta.setText("");

137 this.jLabel6.setText("");

138 this.jLogin.setText("");

139 this.jSenha.setText("");

140 this.tent++;

141 if(this.tent == 2) {

142 JOptionPane.showMessageDialog(null, "Tentativa de fraude!", "ALERTA",

143 JOptionPane.ERROR_MESSAGE);

144 dispose();

145 }

146 }

147 else {

148 JOptionPane.showMessageDialog(null, "Usuario autenticado com sucesso!");

149

150 /** Tempo mostrado no JOptionPane */

151 JOptionPane.showMessageDialog(null, "Tempo feito: " + media

152 + "\n\n" + "Menor Certo: " +

153 this.user.menorTempo() + "\n" + "Maior Certo: " +

154 this.user.maiorTempo());

155 /** ate aqui */

156

157 dispose();

158 }

159

160 }//GEN-LAST:event_jAutenticaActionPerformed

161 /**Este metodo comeca a contagem de tempo, a partir do momento em que o usuario

162 digita o primeiro caracter de sua senha*/

163 private void jSenhaKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jSenhaKeyPressed

164 if(cont == 1) {

165 this.tempo[0] = System.currentTimeMillis();

166 }

167 }//GEN-LAST:event_jSenhaKeyPressed

168 /**Este metodo termina a contagem do tempo que o usuario gastou para digitar

169 a sua senha, esta contagem termina no momento em que o usuario solta a ultima

170 tecla de sua senha*/

171 private void jSenhaKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jSenhaKeyReleased

172 if(cont == this.user.getSenha().length() - 1) {

173 this.tempo[1] = System.currentTimeMillis();

174 }

175 cont++;

176 }//GEN-LAST:event_jSenhaKeyReleased

177 /**Este metodo carrega a conta fornecida pelo usuario para assim, proceder

178 a autenticac~ao*/

179 private void jIdContaFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_jIdContaFocusLost

180 try {

181 ObjectInputStream buf = null;

182

183 File file = new File("Usuarios/" + Integer.parseInt(jIdConta.getText()) + ".bio");

184 FileInputStream fos = new FileInputStream(file);

185 buf = new ObjectInputStream(fos);

186 Object obj = buf.readObject();

187

57

Page 70: Autentica¸c˜ao Segura Baseada em Biometria Voltada para a ...dcc.catalao.ufg.br/up/498/o/Gustavo2009.pdf · Agrade¸co aos colegas da gradua¸c˜ao,que sempre me ajudaram quando

188 this.user = (Usuario)obj;

189

190 jLabel6.setText("Dados carregados.");

191 } catch (IOException ex) {

192 Logger.getLogger(ModuloAutenticacao.class.getName()).log(Level.SEVERE, null, ex);

193 } catch (ClassNotFoundException ex) {

194 Logger.getLogger(ModuloAutenticacao.class.getName()).log(Level.SEVERE, null, ex);

195 }

196 }//GEN-LAST:event_jIdContaFocusLost

197

198 /**

199 * @param args the command line arguments

200 */

201 public static void main(String args[]) {

202 java.awt.EventQueue.invokeLater(new Runnable() {

203 public void run() {

204 new ModuloAutenticacao().setVisible(true);

205 }

206 });

207 }

208

209 // Variables declaration - do not modify//GEN-BEGIN:variables

210 private javax.swing.JButton jAutentica;

211 private javax.swing.JTextField jIdConta;

212 private javax.swing.JLabel jLabel1;

213 private javax.swing.JLabel jLabel2;

214 private javax.swing.JLabel jLabel3;

215 private javax.swing.JLabel jLabel4;

216 private javax.swing.JLabel jLabel5;

217 private javax.swing.JLabel jLabel6;

218 private javax.swing.JTextField jLogin;

219 private javax.swing.JPasswordField jSenha;

220 // End of variables declaration//GEN-END:variables

221

222 }

58