105
Reforço da Segurança das Biométricas utilizando Codificação de Fonte Distribuída Gonçalo Filipe da Fonseca Lourenço Dissertação para obtenção do Grau de Mestre em Engenharia Electrotécnica e Computadores Júri Presidente: José Manuel Bioucas Dias Orientador: Paulo Luis Serras Lobato Correia Co-orientador: Luis Eduardo de Pinho Ducla Soares Vogal: Nuno Manuel Robalo Correia Novembro de 2009

Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

Embed Size (px)

Citation preview

Page 1: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

Reforço da Segurança das Biométricas utilizando Codificaçãode Fonte Distribuída

Gonçalo Filipe da Fonseca Lourenço

Dissertação para obtenção do Grau de Mestre em

Engenharia Electrotécnica e Computadores

Júri

Presidente: José Manuel Bioucas Dias

Orientador: Paulo Luis Serras Lobato Correia

Co-orientador: Luis Eduardo de Pinho Ducla Soares

Vogal: Nuno Manuel Robalo Correia

Novembro de 2009

Page 2: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

1

Agradecimentos

Ao meu orientador, Professor Paulo Correia, e co-orientador, Professor Luis Soares pelo

incentivo, pela inesgotável dedicação e apoio para a realização desta dissertação.

Aos meus pais, pelo seu amor, carinho e dedicação que sempre me deram.

À minha irmã, por todo o apoio que ela me deu nos momentos difíceis.

A todos,

Muito Obrigado

Page 3: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

2

Resumo

A utilização de características biométricas (por exemplo, impressões digitais, íris, face)

para o reconhecimento de pessoas está a tornar-se cada vez mais popular e muitas aplicações

já estão disponíveis. As características biométricas estão intrinsecamente associadas a

pessoas e não podem ser esquecidas ou compartilhadas com outras pessoas. No entanto, uma

das vulnerabilidades mais relevantes da biometria é que uma vez que um perfil biométrico

esteja comprometido, ele não pode ser reeditado, actualizado ou destruído. Um impostor

poderia então ter acesso a todas as contas / serviços / aplicações usando essa mesma

característica biométrica. Esta dissertação propõe um sistema de verificação biométrica usando

os princípios de codificação fonte distribuída e funções criptográficas de hash, que garantem

maior segurança em relação aos tradicionais sistemas de verificação biométrica. A geração de

perfis biométricos diferentes a partir das mesmas características biométricas, é possível

usando a solução proposta nesta dissertação. Além disso, não será possível recuperar os

dados biométricos originais a partir dos dados armazenados, garantindo assim a sua

privacidade.

Palavras-chave: Segurança biométrica, codificação fonte distribuída, funções

criptográficas de hash, códigos de correcção de erros.

Page 4: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

3

Abstract

The use of biometrics (e.g., fingerprints, irises, faces) for recognizing individuals is

becoming increasingly popular and many applications are already available. Biometrics are

intrinsically associated with individuals and cannot be forgotten or shared with others. However,

one of the most relevant vulnerabilities of biometrics is that once a biometric template is

compromised, it cannot be reissued, updated or destroyed. An attacker could then gain access

to all the accounts/services/applications using that same biometric trait. This dissertation

proposes a biometric verification system using distributed source coding principles and a

cryptographic hash function, with enhanced security with respect to traditional biometric

verification systems. The generation of different templates from the same biometric data is

supported. Furthermore, it will not be possible to recover the original biometric data from the

stored data, thus guaranteeing its privacy.

Keywords: Biometrics security, cryptographic hash function, distributed source coding,

error correcting codes

Page 5: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

4

Índice

Agradecimentos ............................................................................ 1Resumo .......................................................................................... 2Abstract.......................................................................................... 3Índice.............................................................................................. 4Lista de Figuras............................................................................. 7Lista de abreviaturas e símbolos ............................................... 101 Introdução .............................................................................. 12

1.1 Biometria ............................................................................................121.1.1 Vantagens e desvantagens da utilização de biométricas....................... 14

1.1.2 Sistemas biométricos ............................................................................ 15

1.1.2.1 Fase de registo..........................................................................................15

1.1.2.2 Fase de autenticação ...............................................................................15

1.1.2.3 Avaliação do desempenho de um sistema biométrico........................16

1.2 Objectivos da dissertação ................................................................18

1.3 Organização da dissertação .............................................................19

2 Estado da arte da biometria .................................................. 202.1 Sistemas de reconhecimento usando biométricas ........................20

2.1.1 Impressão digital ................................................................................... 21

2.1.2 Face...................................................................................................... 24

2.1.3 Geometria da mão................................................................................. 26

2.1.4 Assinatura ............................................................................................. 28

2.1.5 Voz........................................................................................................ 30

2.1.6 Comparação do desempenho dos diferentes sistemas ......................... 32

2.2 Segurança em sistemas biométricos...............................................332.2.1 Falha intrínseca..................................................................................... 35

2.2.2 Falha devido a ataques ......................................................................... 35

2.2.2.1 Ataque ao sistema administrativo ..........................................................35

2.2.2.2 Ataque a infra-estruturas não seguras ..................................................36

2.2.2.3 Ataque a características biométricas .....................................................38

2.2.3 Efeitos de uma possível falha num sistema biométrico.......................... 38

2.2.4 Medidas para protecção dos sistemas biométricos ............................... 38

Page 6: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

5

2.2.4.1 Modelos de transformação dos templates ............................................41

2.2.4.2 Criptosistemas biométricos .....................................................................41

2.3 Conclusões ........................................................................................42

3 Reconhecimento biométrico ................................................. 433.1 Olho Humano .....................................................................................43

3.1.1 A íris...................................................................................................... 44

3.1.2 Vantagens e desvantagens da utilização da íris em sistemas biométricos…………………………………………………………………………………45

3.2 Reconhecimento biométrico baseado na íris..................................463.2.1 Aquisição da característica biométrica .................................................. 48

3.2.2 Segmentação ........................................................................................ 50

3.2.3 Normalização ........................................................................................ 52

3.2.4 Extracção das características da íris ..................................................... 54

3.2.5 Comparação.......................................................................................... 56

3.2.6 Resultados da implementação do sistema de reconhecimento biométricosem segurança dos dados biométricos................................................................ 57

3.2.7 Aplicações do sistema de reconhecimento biométrico baseado na íris . 62

3.3 Conclusões ........................................................................................63

4 Sistema de reconhecimento biométrico baseado na íris comreforço da segurança dos dados biométricos .......................... 64

4.1 Códigos de Correcção de Erros LDPC ............................................664.1.1 Introdução ............................................................................................. 66

4.1.2 Códigos de bloco lineares ..................................................................... 67

4.1.3 Os Códigos LDPC................................................................................. 69

4.1.3.1 Grafo de Tanner ou bipartido ..................................................................70

4.1.3.2 Construção dos códigos LDPC...............................................................71

4.1.4 Codificação ........................................................................................... 73

4.1.5 Descodificação Iterativa ........................................................................ 73

4.1.5.1 Algoritmo de soma de produtos..............................................................74

4.1.5.2 Algoritmo SPA no domínio logaritmo (LSPA) .......................................78

4.2 Funções criptográficas de hash .......................................................80

4.3 Conclusões ........................................................................................82

5 Implementação do sistema de reconhecimento biométricobaseado na íris com reforço da segurança ............................... 83

5.1 Avaliação de desempenho................................................................83

Page 7: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

6

5.2 Interface gráfica .................................................................................88

6 Conclusões finais e trabalhos futuros ................................. 916.1 Conclusões finais ..............................................................................91

6.2 Trabalhos futuros ..............................................................................91

Anexo I ......................................................................................... 93Referências Bibliográficas.......................................................... 98

Page 8: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

7

Lista de Figuras

Figura 1.1 – Arquitectura da fase de registo ............................................................... 15

Figura 1.2 – Arquitectura da fase autenticação, modo de identificação....................... 16

Figura 1.3 – Arquitectura da fase autenticação, modo Verificação.............................. 16

Figura 1.4 - As curvas típicas das taxas de erro FAR e FRR ...................................... 17

Figura 1.5 - Distribuições de distâncias intra-classe e inter-classe ............................. 18

Figura 1.6 - Taxa de erro FRR em função da taxa de erro FAR (ROC)....................... 18

Figura 2.1 – Representação de um núcleo e um delta de uma impressão digital:círcunferência vermelha - núcleo, circunferência amarela - delta................................ 22

Figura 2.2 – Exemplos de dois tipos de minúcias ....................................................... 23

Figura 2.3 – a) Imagem da face 2D , b) Imagem a 3D e c) Imagem a infravermelho ...………………………………………………………………………………………………….25

Figura 2.4 – a) Medidas típicas da geometria da mão, b) imagem real obtida dodispositivo e c) dispositivo de leitura da mão .............................................................. 27

Figura 2.5 - Representação das vulnerabilidades segundo modelo fish-bone [Jain2006] .......................................................................................................................... 34

Figura 2.6 - Pontos de possíveis ataques nas infra-estruturas do sistema biométrico 37

Figura 3.1 - Estrutura interna do olho humano [Internet2] ........................................... 43

Figura 3.2 - Olho Humano [Internet3] ......................................................................... 44

Figura 3.3 - A íris [Internet4] ....................................................................................... 45

Figura 3.4 - Sistema de reconhecimento biométrico – Fase de registo....................... 47

Figura 3.5 - Sistema de reconhecimento biométrico – fase de autenticação em modode verificação ............................................................................................................. 47

Figura 3.6 - Sensor biométrico para captura da imagem da íris [Internet5] ................. 48

Figura 3.7 - Exemplos de circunferências da íris e da pupila, a) íris e pupila com omesmo centro da circunferência, b) íris e pupila com centros de circunferênciadiferentes.................................................................................................................... 50

Figura 3.8 - a) Imagem da íris bem segmentada, b) imagem da íris mal segmentada 51

Figura 3.9 – Processo de detecção das regiões da íris obstruídas pelas pálpebras, a)imagem da íris, b) imagem da íris segmentada com as rectas que representam aspálpebras, c) rectas horizontais são geradas passando pelo ponto mais próximo da

Page 9: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

8

fronteira da pupila d) zonas da imagem da íris representativas da oclusão daspálpebras e dos reflexos especulares......................................................................... 52

Figura 3.10 - Imagem segmentada com realce da zona da íris interferida por parte dassobrancelhas e cílios .................................................................................................. 52

Figura 3.11 - Modelo rubber sheet.............................................................................. 53

Figura 3.12 - Imagem da íris, com leve deslocamento entre os centros da íris e dapupila segundo uma direcção θ .................................................................................. 54

Figura 3.13 - Imagem da região da íris, com ruído, após normalização ...................... 54

Figura 3.14 - Espectro de fourier para componente radial com f0 =0,1 e σr=0,55, b)Espectro de fourier para componente angular θ0= 0 e σθ=π/8 , c) Espectro de fourierdo filtro Log-Gabor 2D [Bastos] .................................................................................. 55

Figura 3.15 - Método de Daugman utilizado para a quantização das informações defase da textura da íris ................................................................................................. 56

Figura 3.16 – Distribuição de distâncias de Hamming para comparações do tipo intra-classe ......................................................................................................................... 59

Figura 3.17 - Distribuição de distâncias de Hamming para comparações do tipo inter-classe ......................................................................................................................... 59

Figura 3.18 – a) Representação gráfica das taxas de erro FAR e FRR para a base dedados de treino, b) Curvas ROC................................................................................. 61

Figura 3.19 – a) Representação gráfica das taxas de erro FAR e FRR obtidas para abase de dados de teste, b) Curvas ROC .................................................................... 62

Figura 4.1 - Fase de registo........................................................................................ 65

Figura 4.2 - Fase de autenticação, modo de verificação............................................. 65

Figura 4.3 - Grafo de Tanner ...................................................................................... 70

Figura 4.4 - Exemplo de um ciclo de comprimento 4 num grafo de Tanner ................ 71

Figura 4.5 – Exemplo de uma função criptográfica de hash, F é a função decompressão [Internet6] ............................................................................................... 81

Figura 5.1 – a) Representação gráfica das taxas de erro FAR e FRR, b) Curva ROC...………………………………………………………………………………………………….87

Figura 5.2 - Interface gráfica criada para o sistema reconhecimento biométrico comreforço da segurança.................................................................................................. 89

Figura 5.3 - Opção para registo dos utilizadores......................................................... 89

Figura 5.4 – Opção para autenticação do utilizador .................................................... 90

Page 10: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

9

Lista de Tabelas

Tabela 1.1 – Avaliação de biométricas habitualmente usadas [Boechat 2008] ..............14

Tabela 2.1 – Características extraídas a partir de diferentes biométricas.......................20

Tabela 2.2 - Desempenho de sistemas biométricos para diferentes características[Fornazin 2008] .........................................................................................................................33

Tabela 3.1 – Vantagens e desvantagens da utilização da íris em sistemas dereconhecimento biométrico .....................................................................................................46

Tabela 3.2 - Avaliação do desempenho do sistema segundo as taxas de erro FAR eFRR .............................................................................................................................................60

Tabela 3.3 – Avaliação do desempenho do sistema segundo as taxas de erro FAR eFRR .............................................................................................................................................61

Tabela 4.1 – Algoritmos utilizados em funções de hash criptográficas e suascaracterísticas [Internet7] ........................................................................................................82

Tabela 5.1– Valores de FAR e de FRR em função da percentagem mínima de 1'srequerida para um pixel fazer parte da máscara de ruído universal utilizando asegunda estratégia para a decisão sobre a autenticação do utilizador ...........................85

Tabela 5.2 – Desempenho do sistema variando a capacidade de correcção e o númerode 1’s por coluna wc .................................................................................................................86

Tabela 5.3 - Avaliação do desempenho do sistema segundo as taxas de erro FAR eFRR variando a capacidade de correcção............................................................................87

Page 11: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

10

Lista de abreviaturas e símbolos

DTW – Dynamic TimeWarping

EE – Erro igual, equal error

EER – Taxa de erro igual, equal error rate

FA – Erro falsa aceitação, false accept

FAR – Taxa de erro falsa aceitação, false accept rate

FR – Erro Falsa rejeição, false reject

FRR – Taxa de erro falsa rejeição, false reject rate

FTE – Falha no registo

FTA – Falha ao adquirir a característica

GMM – Modelos de mistura gaussiana

HD – Hard Decoding

HMM – Cadeias de Markov ocultas

ID – Identificação do utilizador, username

LLR – Máxima verosimilhança logarítmica

LSPA – Algoritmo soma de produtos no domínio logarítmico

PCA – Análise de componentes principais

ROC – Receiver operating characteristic

SD – Hard Decoding

SPA – Algoritmo soma de produtos

SVM – Support vector machines

c – Palavra de código

G – Matriz Geradora

H – Matriz de teste de paridade

I – Matriz Identidade

h – Chave criptográfica obtida na fase de registo

h’ – Chave criptográfica obtida na fase de autenticação

k – Comprimento da mensagem a codificar pelo código de correcção de erros

M(n) – Conjunto de nós de teste NTm’s ligados ao nó de bit NBn

M(n)\m – Conjunto de nós de teste NTm’s ligados ao nó de bit NBn excluindo o nó de teste

NTm

n – Número de colunas da matriz H, igual ao comprimento da palavra de código

N(m) – Conjunto de nós de bit NBn’s ligados ao nó de teste NTm

N(m)\n – Conjunto de nós de bit NBn’s ligados ao nó de teste NTm excluindo o nó de bit NBn

NBn – Nó de bit

NTm – Nó de teste

P – Matriz de paridade

PT – Transposta da matriz de paridade

qnm – Mensagem que o nó de bit NBn envia para o nó de teste NTm

Page 12: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

11

Q(n) – Pseudo-probabilidades à posteriori

rmn – Mensagem que o nó de teste NTm envia para o nó de bit NBn

s – Bits de paridade obtidos na fase de registo

t – Template obtido na fase de registo

t’ – Template obtido na fase de autenticação

x – Imagem do olho do utilizador obtida na fase de registo

x’ – Imagem do olho do utilizador obtida na fase de autenticação

y – Íris obtida na fase de registo

y’ – Íris obtida na fase de autenticação

η – Ruído gaussiano

Page 13: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

12

1 Introdução

O aumento significativo da quantidade de informação disponível em formato digital e o

desenvolvimento das tecnologias de informação e comunicação (por exemplo Internet) e a

possibilidade de falsificação das mesmas, vem exigindo meios mais seguros para sua

protecção. A identificação e verificação de utilizadores são um dos principais aspectos a serem

considerados para garantir a segurança da informação.

Aeroportos, empresas do sector financeiro, empresas do sector judicial, empresas do

sector da saúde, entre outros, precisam de assegurar que somente pessoas devidamente

autorizadas terão acesso a determinada informação, serviços ou locais restritos.

Deste modo, o problema da segurança relacionada com a privacidade de informação

tem sido cada vez mais importante para as empresas, sejam elas pequenas ou grandes. O

acesso de pessoas não autorizadas a informações sigilosas ou a lugares restritos pode causar

graves problemas às empresas, sendo cada vez mais necessário provar a sua identidade para

obter o acesso.

Na actualidade, o método usado por grande parte das empresas na identificação e

verificação de pessoas são os cartões de identificação, com chips ou dispositivo magnético, ou

senhas, passwords. Estes mecanismos de identificação não são 100 por cento eficientes em

termos de segurança, uma vez que o portador do cartão ou da senha pode não ser a pessoa

que está devidamente autorizada pela empresa a aceder aos seus serviços ou informações.

Cartões de identificação podem ser perdidos, roubados ou simplesmente copiados, enquanto

que as senhas podem ser esquecidas, partilhadas ou copiadas por terceiros.

Assim, tornou-se necessário o estudo de novos métodos de identificação/verificação de

identidades. Um dos novos métodos é o uso da biometria.

1.1 Biometria

Etimologicamente, a expressão “biometria” advém da derivação de palavras (ditas

“primitivas”) de origem grega, bios (vida) e metros (contagem ou medida). Assim, a biometria

define-se como sendo a ciência que estuda estatisticamente as características, físicas

fisiológicas ou comportamentais dos seres vivos, mas actualmente tem sido associado ao

estudo das características físicas, fisiológicas ou comportamentais das pessoas como forma de

identificá-las.

Os Chineses estiveram entre os precursores do uso da biometria. No século 14 os

Chineses usavam a biometria carimbando as mãos e os dedos das crianças em papel, de

forma a distinguir uma criança de outra, após o nascimento [Moraes, 2006].

A origem europeia da biometria já é muito mais recente e é datada do final do século

XIX. Em 1890 um antropologista e delegado policial de Paris, Alphonse Bertillon, encontrou na

biometria uma forma de identificação de criminosos e transformou-a numa nova área de

estudos [Moraes, 2006].

Page 14: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

13

Até há pouco tempo atrás a sua adopção restringia-se a ambientes de alta segurança e

aplicações de identificação criminal, por razões de natureza económica e tecnológica. Com o

aperfeiçoamento da tecnologia e a redução no custo dos dispositivos biométricos, a biometria

vem-se popularizando, sendo cada vez mais usada na resolução de problemas de

reconhecimento de identidades de pessoas.

Às características físicas, fisiológicas ou comportamentais das pessoas, que são usadas

para efeitos de reconhecimento, dá-se o nome de características biométricas. Estas

características podem ser divididas em três classes principais, as físicas ou estáticas, as

fisiológicas e as comportamentais ou dinâmicas.

As características físicas ou estáticas definem-se como sendo as características

relacionadas com os traços do corpo, ou seja, têm a ver com a carga genética das pessoas.

Estas características variam muito pouco ao longo do tempo (a partir da idade adulta).

Exemplos dessas características são a íris, a retina, a geometria da mão, as impressões

digitais, a face, etc.

As características fisiológicas definem-se como sendo as características relacionadas

com o funcionamento do organismo da pessoa. Estas podem variar com o avanço da idade da

pessoa, ou devido a problemas de saúde. Exemplos dessas características são o batimento

cardíaco, a força muscular, etc.

As características comportamentais ou dinâmicas definem-se como sendo as

características relacionadas com o comportamento das pessoas, ou seja, as pessoas vão

apreendendo e desenvolvendo estas características ao longo da sua vida. Estas podem variar

fortemente com o tempo e podem ser facilmente alteradas pela vontade ou estado da pessoa.

Exemplos dessas características são a voz, a assinatura da pessoa, o modo de andar, etc.

Em teoria, qualquer característica humana, pode ser usada no reconhecimento de

pessoas, desde que satisfaça os seguintes requisitos:

Universalidade: Todas as pessoas devem possuir a característica;

Singularidade: A característica não pode ser igual em pessoas diferentes;

Permanência: A característica não deve variar com o tempo. Na prática, existem

alterações ocasionadas pelo envelhecimento, pela mudança das condições de saúde

ou mesmo emocionais das pessoas, bem como por mudanças das condições do

ambiente na aquisição;

Desempenho: Este requisito refere-se à precisão com que se realiza a autenticação de

utilizadores e aos recursos necessários para atingir uma precisão de medição

aceitável;

Aceitabilidade: O dispositivo biométrico deve ser aceite por todos os utilizadores;

Protecção: Este requisito refere-se à facilidade ou dificuldade de utilizadores não

legítimos, impostores, conseguirem corromper o sistema, através da utilização de

técnicas fraudulentas.

Page 15: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

14

Na Tabela 1.1 mostra-se uma avaliação de um conjunto de biométricas habitualmente

usadas, segundo os requisitos acima mencionados [Boechat 2008].

Tabela 1.1 – Avaliação de biométricas habitualmente usadas [Boechat 2008]

Pela observação da tabela verifica-se que não existe uma biométrica ideal, ou seja, não

existe nenhuma biométrica que satisfaça todos os requisitos acima mencionados. Cada

biométrica tem as suas vantagens e desvantagens em comparação com as outras, por isso a

escolha da biométrica a usar numa dada aplicação deve ser a que melhor se adequa aos

requisitos desejados.

1.1.1 Vantagens e desvantagens da utilização de biométricas

Algumas das vantagens de utilizar biométricas no reconhecimento de pessoas em vez

das tradicionais senhas ou cartões de identificação são as seguintes:

As biométricas são inerentes às pessoas, não podendo ser esquecidas, perdidas ou

simplesmente fornecidas a outras pessoas;

A probabilidade de existirem duas pessoas com a mesma característica biométrica,

desde que cuidadosamente escolhida, é bastante reduzida ou praticamente nula;

As biométricas são muito difíceis de copiar, ou seja, são menos susceptíveis a ataques

de força bruta, em contraste com as tradicionais senhas.

Mas como em todos os sistemas, para além das vantagens também existem

desvantagens quanto ao uso de biométricas. Algumas desvantagens são enumeradas a seguir:

Em caso de doenças ou acidentes com as pessoas, a sua autenticação pode ser mais

difícil, pois as características biométricas podem ter sido alteradas;

Com a idade, as características biométricas das pessoas podem alterar-se, diminuindo

as taxas de sucesso na autenticação das pessoas. Para que isso não aconteça pode

ser necessário actualizar a informação biométrica registada nas bases de dados, como

acontece hoje em dia com o Bilhete de Identidade ou Passaporte;

Caso uma característica biométrica seja roubada ou copiada não é possível substitui-la

como acontece com as senhas, ou seja, não é possível substituir um olho, uma face ou

outra característica física pertencente às pessoas.

Page 16: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

15

1.1.2 Sistemas biométricos

Sistemas biométricos são sistemas de reconhecimento de padrões que comparam

representações de uma característica biométrica com o objectivo de estabelecer uma métrica

de similaridade entre elas. Estes sistemas são normalmente utilizados para reconhecimento de

pessoas. Através de dispositivos próprios, como scanners, microfones ou leitores ópticos, entre

outros, capturam uma amostra da característica biométrica da pessoa, que por sua vez através

de algoritmos é normalizada e transformada num perfil biométrico, template. A autenticação da

pessoa efectua-se através de comparações entre o template extraído da característica obtida

na autenticação e os templates armazenados na base de dados, originando uma autenticação

verdadeira ou falsa, conforme o resultado dessa comparação.

Estes sistemas têm duas fases distintas que são a fase de registo e a fase de

autenticação.

1.1.2.1 Fase de registo

Nesta fase, são capturadas as características de um utilizador, para depois através de

funções matemáticas serem extraídas as suas informações relevantes para a autenticação

(templates). Estas são armazenadas numa base de dados para posterior comparação na fase

de autenticação. Para além da característica, o utilizador tem de fornecer também uma

identificação para o registo da sua característica na base de dados, normalmente denominada

ID ou username. A arquitectura do sistema correspondente à fase de registo encontra-se

ilustrada na Figura 1.1.

Figura 1.1 – Arquitectura da fase de registo

1.1.2.2 Fase de autenticação

Existem dois modos de autenticação distintos: a identificação e a verificação.

Na identificação, o utilizador fornece apenas sua característica biométrica, competindo

ao sistema identificar o utilizador. Depois de extraído o seu template biométrico, este vai ser

comparado com os templates registados na base de dados, a fim de identificar, ou não, o

utilizador. Este modo de autenticação designa-se como sendo uma busca 1:N, ou busca

aberta, numa base de dados de perfis biométricos (templates). Basicamente, a identificação

corresponde a responder à questão: “Quem é o utilizador?”. A arquitectura de um sistema de

identificação usando biométricas encontra-se ilustrada na Figura 1.2.

15

1.1.2 Sistemas biométricos

Sistemas biométricos são sistemas de reconhecimento de padrões que comparam

representações de uma característica biométrica com o objectivo de estabelecer uma métrica

de similaridade entre elas. Estes sistemas são normalmente utilizados para reconhecimento de

pessoas. Através de dispositivos próprios, como scanners, microfones ou leitores ópticos, entre

outros, capturam uma amostra da característica biométrica da pessoa, que por sua vez através

de algoritmos é normalizada e transformada num perfil biométrico, template. A autenticação da

pessoa efectua-se através de comparações entre o template extraído da característica obtida

na autenticação e os templates armazenados na base de dados, originando uma autenticação

verdadeira ou falsa, conforme o resultado dessa comparação.

Estes sistemas têm duas fases distintas que são a fase de registo e a fase de

autenticação.

1.1.2.1 Fase de registo

Nesta fase, são capturadas as características de um utilizador, para depois através de

funções matemáticas serem extraídas as suas informações relevantes para a autenticação

(templates). Estas são armazenadas numa base de dados para posterior comparação na fase

de autenticação. Para além da característica, o utilizador tem de fornecer também uma

identificação para o registo da sua característica na base de dados, normalmente denominada

ID ou username. A arquitectura do sistema correspondente à fase de registo encontra-se

ilustrada na Figura 1.1.

Figura 1.1 – Arquitectura da fase de registo

1.1.2.2 Fase de autenticação

Existem dois modos de autenticação distintos: a identificação e a verificação.

Na identificação, o utilizador fornece apenas sua característica biométrica, competindo

ao sistema identificar o utilizador. Depois de extraído o seu template biométrico, este vai ser

comparado com os templates registados na base de dados, a fim de identificar, ou não, o

utilizador. Este modo de autenticação designa-se como sendo uma busca 1:N, ou busca

aberta, numa base de dados de perfis biométricos (templates). Basicamente, a identificação

corresponde a responder à questão: “Quem é o utilizador?”. A arquitectura de um sistema de

identificação usando biométricas encontra-se ilustrada na Figura 1.2.

15

1.1.2 Sistemas biométricos

Sistemas biométricos são sistemas de reconhecimento de padrões que comparam

representações de uma característica biométrica com o objectivo de estabelecer uma métrica

de similaridade entre elas. Estes sistemas são normalmente utilizados para reconhecimento de

pessoas. Através de dispositivos próprios, como scanners, microfones ou leitores ópticos, entre

outros, capturam uma amostra da característica biométrica da pessoa, que por sua vez através

de algoritmos é normalizada e transformada num perfil biométrico, template. A autenticação da

pessoa efectua-se através de comparações entre o template extraído da característica obtida

na autenticação e os templates armazenados na base de dados, originando uma autenticação

verdadeira ou falsa, conforme o resultado dessa comparação.

Estes sistemas têm duas fases distintas que são a fase de registo e a fase de

autenticação.

1.1.2.1 Fase de registo

Nesta fase, são capturadas as características de um utilizador, para depois através de

funções matemáticas serem extraídas as suas informações relevantes para a autenticação

(templates). Estas são armazenadas numa base de dados para posterior comparação na fase

de autenticação. Para além da característica, o utilizador tem de fornecer também uma

identificação para o registo da sua característica na base de dados, normalmente denominada

ID ou username. A arquitectura do sistema correspondente à fase de registo encontra-se

ilustrada na Figura 1.1.

Figura 1.1 – Arquitectura da fase de registo

1.1.2.2 Fase de autenticação

Existem dois modos de autenticação distintos: a identificação e a verificação.

Na identificação, o utilizador fornece apenas sua característica biométrica, competindo

ao sistema identificar o utilizador. Depois de extraído o seu template biométrico, este vai ser

comparado com os templates registados na base de dados, a fim de identificar, ou não, o

utilizador. Este modo de autenticação designa-se como sendo uma busca 1:N, ou busca

aberta, numa base de dados de perfis biométricos (templates). Basicamente, a identificação

corresponde a responder à questão: “Quem é o utilizador?”. A arquitectura de um sistema de

identificação usando biométricas encontra-se ilustrada na Figura 1.2.

Page 17: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

16

Figura 1.2 – Arquitectura da fase autenticação, modo de identificação

Na verificação a característica biométrica é apresentada pelo utilizador juntamente com

uma identificação, ID ou username. Depois de extraído o seu template biométrico, este vai ser

comparado com os templates registados na base de dados para aquele ID, a fim de avaliar se

a autenticação é, ou não, bem sucedida. Este modo de autenticação designa-se como sendo

uma busca 1:1, ou busca fechada, numa base de dados de perfis biométricos. A verificação

corresponde a responder à questão “O utilizador é quem alega ser?”. A arquitectura de um

sistema de verificação encontra-se ilustrada na Figura 1.3.

Figura 1.3 – Arquitectura da fase autenticação, modo Verificação

1.1.2.3 Avaliação do desempenho de um sistema biométrico

Os sistemas biométricos podem ser avaliados segundo diferentes métricas, das quais se

destacam as seguintes:

Nível de desempenho – O desempenho do sistema é medido através das taxas de

falsa aceitação e falsa rejeição.

Nível de conforto – O nível de conforto é uma métrica de certa forma subjectiva e está

profundamente ligado às pessoas utilizadoras do sistema e à facilidade de uso do

mesmo.

Nível de aceitação – Esta métrica também é um pouco subjectiva. De um modo geral,

o sistema é tanto melhor aceite pelos utilizadores, quanto menos intrusivo for.

Custo de implementação - O custo de implementação é um factor fundamental do

sistema e abrange diversos factores tais como: hardware, software, integração com

16

Figura 1.2 – Arquitectura da fase autenticação, modo de identificação

Na verificação a característica biométrica é apresentada pelo utilizador juntamente com

uma identificação, ID ou username. Depois de extraído o seu template biométrico, este vai ser

comparado com os templates registados na base de dados para aquele ID, a fim de avaliar se

a autenticação é, ou não, bem sucedida. Este modo de autenticação designa-se como sendo

uma busca 1:1, ou busca fechada, numa base de dados de perfis biométricos. A verificação

corresponde a responder à questão “O utilizador é quem alega ser?”. A arquitectura de um

sistema de verificação encontra-se ilustrada na Figura 1.3.

Figura 1.3 – Arquitectura da fase autenticação, modo Verificação

1.1.2.3 Avaliação do desempenho de um sistema biométrico

Os sistemas biométricos podem ser avaliados segundo diferentes métricas, das quais se

destacam as seguintes:

Nível de desempenho – O desempenho do sistema é medido através das taxas de

falsa aceitação e falsa rejeição.

Nível de conforto – O nível de conforto é uma métrica de certa forma subjectiva e está

profundamente ligado às pessoas utilizadoras do sistema e à facilidade de uso do

mesmo.

Nível de aceitação – Esta métrica também é um pouco subjectiva. De um modo geral,

o sistema é tanto melhor aceite pelos utilizadores, quanto menos intrusivo for.

Custo de implementação - O custo de implementação é um factor fundamental do

sistema e abrange diversos factores tais como: hardware, software, integração com

16

Figura 1.2 – Arquitectura da fase autenticação, modo de identificação

Na verificação a característica biométrica é apresentada pelo utilizador juntamente com

uma identificação, ID ou username. Depois de extraído o seu template biométrico, este vai ser

comparado com os templates registados na base de dados para aquele ID, a fim de avaliar se

a autenticação é, ou não, bem sucedida. Este modo de autenticação designa-se como sendo

uma busca 1:1, ou busca fechada, numa base de dados de perfis biométricos. A verificação

corresponde a responder à questão “O utilizador é quem alega ser?”. A arquitectura de um

sistema de verificação encontra-se ilustrada na Figura 1.3.

Figura 1.3 – Arquitectura da fase autenticação, modo Verificação

1.1.2.3 Avaliação do desempenho de um sistema biométrico

Os sistemas biométricos podem ser avaliados segundo diferentes métricas, das quais se

destacam as seguintes:

Nível de desempenho – O desempenho do sistema é medido através das taxas de

falsa aceitação e falsa rejeição.

Nível de conforto – O nível de conforto é uma métrica de certa forma subjectiva e está

profundamente ligado às pessoas utilizadoras do sistema e à facilidade de uso do

mesmo.

Nível de aceitação – Esta métrica também é um pouco subjectiva. De um modo geral,

o sistema é tanto melhor aceite pelos utilizadores, quanto menos intrusivo for.

Custo de implementação - O custo de implementação é um factor fundamental do

sistema e abrange diversos factores tais como: hardware, software, integração com

Page 18: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

17

hardware/software existentes, formação dos utilizadores, pessoal de manutenção das

bases de dados, manutenção do sistema.

A métrica de avaliação utilizada nesta dissertação é o nível de desempenho. Deste modo

as próximas linhas desta dissertação servem para explicar como é feita essa avaliação.

Os sistemas biométricos não são infalíveis, isto é, podem ocorrer erros que afectem o

seu desempenho, levando o sistema a tomar decisões que podem não ser as mais correctas.

Estes erros, na biometria, são quantificados segundo dois tipos de erro: falsa aceitação, FA -

false accept e falsa rejeição, FR - false reject [Boechat 2008]:

Falsa aceitação, FA - Decidir que uma determinada identidade é legítima quando na

realidade ela é falsa. A frequência de ocorrências de erros deste tipo é chamada taxa

de falsa aceitação, false accept rate, FAR.

Falsa rejeição, FR - Decidir que uma determinada identidade é falsa quando na

realidade ela é legítima. A frequência de ocorrências de erros deste tipo é chamada

taxa de falsa rejeição, false reject rate, FRR.

A representação gráfica das taxas FRR e FAR encontram-se ilustradas na Figura 1.4.

Pela observação do gráfico verifica-se que existe uma dependência entre as duas taxas, isto é,

quando uma taxa se aproxima do seu valor máximo, a outra aproxima-se do seu valor mínimo,

originando um ponto de intersecção entre as duas curvas. A esse ponto dá-se o nome de erro

igual, equal error, EE, à qual está associada uma taxa de erro designada por taxa de erro igual,

equal error rate, EER. A decisão sobre a autenticação de um utilizador é feita através de um

limiar de decisão ou threshold, T. A partir deste valor consegue-se calibrar um sistema

biométrico, em termos do seu desempenho. Um bom sistema biométrico é aquele que

consegue minimizar as duas taxas de erro, ou seja, taxas de erro FAR e FRR baixas.

Figura 1.4 - As curvas típicas das taxas de erro FAR e FRR

Através das distâncias de Hamming resultantes de comparações entre múltiplas

características de um mesmo indivíduo (intra-classe) e entre características de diferentes

indivíduos (inter-classe) consegue-se identificar qual o melhor valor do limiar de decisão que

minimiza as taxas de erro FAR e FRR. A Figura 1.5 apresenta um gráfico com as distribuições

de distâncias obtidas a partir de comparações intra-classe e inter-classe.

17

hardware/software existentes, formação dos utilizadores, pessoal de manutenção das

bases de dados, manutenção do sistema.

A métrica de avaliação utilizada nesta dissertação é o nível de desempenho. Deste modo

as próximas linhas desta dissertação servem para explicar como é feita essa avaliação.

Os sistemas biométricos não são infalíveis, isto é, podem ocorrer erros que afectem o

seu desempenho, levando o sistema a tomar decisões que podem não ser as mais correctas.

Estes erros, na biometria, são quantificados segundo dois tipos de erro: falsa aceitação, FA -

false accept e falsa rejeição, FR - false reject [Boechat 2008]:

Falsa aceitação, FA - Decidir que uma determinada identidade é legítima quando na

realidade ela é falsa. A frequência de ocorrências de erros deste tipo é chamada taxa

de falsa aceitação, false accept rate, FAR.

Falsa rejeição, FR - Decidir que uma determinada identidade é falsa quando na

realidade ela é legítima. A frequência de ocorrências de erros deste tipo é chamada

taxa de falsa rejeição, false reject rate, FRR.

A representação gráfica das taxas FRR e FAR encontram-se ilustradas na Figura 1.4.

Pela observação do gráfico verifica-se que existe uma dependência entre as duas taxas, isto é,

quando uma taxa se aproxima do seu valor máximo, a outra aproxima-se do seu valor mínimo,

originando um ponto de intersecção entre as duas curvas. A esse ponto dá-se o nome de erro

igual, equal error, EE, à qual está associada uma taxa de erro designada por taxa de erro igual,

equal error rate, EER. A decisão sobre a autenticação de um utilizador é feita através de um

limiar de decisão ou threshold, T. A partir deste valor consegue-se calibrar um sistema

biométrico, em termos do seu desempenho. Um bom sistema biométrico é aquele que

consegue minimizar as duas taxas de erro, ou seja, taxas de erro FAR e FRR baixas.

Figura 1.4 - As curvas típicas das taxas de erro FAR e FRR

Através das distâncias de Hamming resultantes de comparações entre múltiplas

características de um mesmo indivíduo (intra-classe) e entre características de diferentes

indivíduos (inter-classe) consegue-se identificar qual o melhor valor do limiar de decisão que

minimiza as taxas de erro FAR e FRR. A Figura 1.5 apresenta um gráfico com as distribuições

de distâncias obtidas a partir de comparações intra-classe e inter-classe.

17

hardware/software existentes, formação dos utilizadores, pessoal de manutenção das

bases de dados, manutenção do sistema.

A métrica de avaliação utilizada nesta dissertação é o nível de desempenho. Deste modo

as próximas linhas desta dissertação servem para explicar como é feita essa avaliação.

Os sistemas biométricos não são infalíveis, isto é, podem ocorrer erros que afectem o

seu desempenho, levando o sistema a tomar decisões que podem não ser as mais correctas.

Estes erros, na biometria, são quantificados segundo dois tipos de erro: falsa aceitação, FA -

false accept e falsa rejeição, FR - false reject [Boechat 2008]:

Falsa aceitação, FA - Decidir que uma determinada identidade é legítima quando na

realidade ela é falsa. A frequência de ocorrências de erros deste tipo é chamada taxa

de falsa aceitação, false accept rate, FAR.

Falsa rejeição, FR - Decidir que uma determinada identidade é falsa quando na

realidade ela é legítima. A frequência de ocorrências de erros deste tipo é chamada

taxa de falsa rejeição, false reject rate, FRR.

A representação gráfica das taxas FRR e FAR encontram-se ilustradas na Figura 1.4.

Pela observação do gráfico verifica-se que existe uma dependência entre as duas taxas, isto é,

quando uma taxa se aproxima do seu valor máximo, a outra aproxima-se do seu valor mínimo,

originando um ponto de intersecção entre as duas curvas. A esse ponto dá-se o nome de erro

igual, equal error, EE, à qual está associada uma taxa de erro designada por taxa de erro igual,

equal error rate, EER. A decisão sobre a autenticação de um utilizador é feita através de um

limiar de decisão ou threshold, T. A partir deste valor consegue-se calibrar um sistema

biométrico, em termos do seu desempenho. Um bom sistema biométrico é aquele que

consegue minimizar as duas taxas de erro, ou seja, taxas de erro FAR e FRR baixas.

Figura 1.4 - As curvas típicas das taxas de erro FAR e FRR

Através das distâncias de Hamming resultantes de comparações entre múltiplas

características de um mesmo indivíduo (intra-classe) e entre características de diferentes

indivíduos (inter-classe) consegue-se identificar qual o melhor valor do limiar de decisão que

minimiza as taxas de erro FAR e FRR. A Figura 1.5 apresenta um gráfico com as distribuições

de distâncias obtidas a partir de comparações intra-classe e inter-classe.

Page 19: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

18

Figura 1.5 - Distribuições de distâncias intra-classe e inter-classe

O desempenho do sistema está relacionado com o nível de segurança a ataques de

impostores (FAR) e o nível de autenticação de pessoas legítimas (FRR). Se o sistema estiver a

funcionar para valores acima do limiar de decisão da EER obtém-se uma FRR alta e uma FAR

baixa resultando assim numa maior segurança do sistema biométrico mas numa menor taxa de

autenticação de pessoas legítimas. Caso contrário, resulta uma menor taxa de autenticação de

pessoas legítimas e, consequentemente, uma taxa maior de autenticação de possíveis

impostores, traduzindo numa menor segurança do sistema ou seja, mais vulnerável a ataques

de impostores.

Visto que existe uma dependência entre as taxas FAR e FRR, pode-se obter uma

representação gráfica de uma taxa em função da outra, conforme mostra a Figura 1.6. A curva

característica bidimensional resultante designa-se por receiver operating characteristic (ROC).

A curva ROC representa uma boa descrição da precisão de um sistema biométrico, sendo

também útil quando se compara dois sistemas biométricos distintos.

Na prática, a comparação entre dois sistemas distintos pode não ser fácil, visto que o

comportamento das taxas FAR e FRR podem não ser tão bem desenhadas como nas Figuras

1.4 e 1.6, conforme se comprova pelos resultados experimentais obtidos (ver Capítulo 5 da

dissertação).

Figura 1.6 - Taxa de erro FRR em função da taxa de erro FAR (ROC)

1.2 Objectivos da dissertação

Um dos problemas que se têm colocado nos sistemas biométricos é como garantir a total

segurança dos dados biométricos dos utilizadores que se encontram na base de dados. Isto é

importante porque um ataque estratégico a uma base de dados que contém informações

18

Figura 1.5 - Distribuições de distâncias intra-classe e inter-classe

O desempenho do sistema está relacionado com o nível de segurança a ataques de

impostores (FAR) e o nível de autenticação de pessoas legítimas (FRR). Se o sistema estiver a

funcionar para valores acima do limiar de decisão da EER obtém-se uma FRR alta e uma FAR

baixa resultando assim numa maior segurança do sistema biométrico mas numa menor taxa de

autenticação de pessoas legítimas. Caso contrário, resulta uma menor taxa de autenticação de

pessoas legítimas e, consequentemente, uma taxa maior de autenticação de possíveis

impostores, traduzindo numa menor segurança do sistema ou seja, mais vulnerável a ataques

de impostores.

Visto que existe uma dependência entre as taxas FAR e FRR, pode-se obter uma

representação gráfica de uma taxa em função da outra, conforme mostra a Figura 1.6. A curva

característica bidimensional resultante designa-se por receiver operating characteristic (ROC).

A curva ROC representa uma boa descrição da precisão de um sistema biométrico, sendo

também útil quando se compara dois sistemas biométricos distintos.

Na prática, a comparação entre dois sistemas distintos pode não ser fácil, visto que o

comportamento das taxas FAR e FRR podem não ser tão bem desenhadas como nas Figuras

1.4 e 1.6, conforme se comprova pelos resultados experimentais obtidos (ver Capítulo 5 da

dissertação).

Figura 1.6 - Taxa de erro FRR em função da taxa de erro FAR (ROC)

1.2 Objectivos da dissertação

Um dos problemas que se têm colocado nos sistemas biométricos é como garantir a total

segurança dos dados biométricos dos utilizadores que se encontram na base de dados. Isto é

importante porque um ataque estratégico a uma base de dados que contém informações

18

Figura 1.5 - Distribuições de distâncias intra-classe e inter-classe

O desempenho do sistema está relacionado com o nível de segurança a ataques de

impostores (FAR) e o nível de autenticação de pessoas legítimas (FRR). Se o sistema estiver a

funcionar para valores acima do limiar de decisão da EER obtém-se uma FRR alta e uma FAR

baixa resultando assim numa maior segurança do sistema biométrico mas numa menor taxa de

autenticação de pessoas legítimas. Caso contrário, resulta uma menor taxa de autenticação de

pessoas legítimas e, consequentemente, uma taxa maior de autenticação de possíveis

impostores, traduzindo numa menor segurança do sistema ou seja, mais vulnerável a ataques

de impostores.

Visto que existe uma dependência entre as taxas FAR e FRR, pode-se obter uma

representação gráfica de uma taxa em função da outra, conforme mostra a Figura 1.6. A curva

característica bidimensional resultante designa-se por receiver operating characteristic (ROC).

A curva ROC representa uma boa descrição da precisão de um sistema biométrico, sendo

também útil quando se compara dois sistemas biométricos distintos.

Na prática, a comparação entre dois sistemas distintos pode não ser fácil, visto que o

comportamento das taxas FAR e FRR podem não ser tão bem desenhadas como nas Figuras

1.4 e 1.6, conforme se comprova pelos resultados experimentais obtidos (ver Capítulo 5 da

dissertação).

Figura 1.6 - Taxa de erro FRR em função da taxa de erro FAR (ROC)

1.2 Objectivos da dissertação

Um dos problemas que se têm colocado nos sistemas biométricos é como garantir a total

segurança dos dados biométricos dos utilizadores que se encontram na base de dados. Isto é

importante porque um ataque estratégico a uma base de dados que contém informações

Page 20: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

19

biométricas pode trazer danos irreparáveis, caso tenham sucesso, pois esses dados

biométricos podem ser utilizados para aceder a todas as contas / serviços / aplicações dos

utilizadores ai registados e não podem ser alteradas, isto é, não podemos mudar por exemplo

de cara, olho, impressões digitais, como acontece com as passwords.

O primeiro objectivo desta dissertação é encontrar uma solução para o problema acima

mencionado. A utilização de codificação de fonte distribuída, distributed source coding, e de

funções criptográficas hash na codificação dos templates é uma solução possível para

assegurar que caso a base de dados seja atacada com sucesso por pessoas mal

intencionadas, estas não tenham acesso a dados pessoais dos utilizadores.

Também é objectivo da dissertação implementar um sistema de autenticação biométrico

baseado na íris aplicando a solução encontrada para o problema da segurança dos dados na

base de dados.

1.3 Organização da dissertação

Esta dissertação está organizada em seis capítulos distintos. O Capítulo 1, de

introdução, apresenta os principais conceitos sobre biometria, os vários tipos de características

biométricas existentes, quais as vantagens e desvantagens da sua utilização, quais os modos

de autenticação existentes e, em termos de avaliação dos sistemas biométricos, que métricas

são utilizadas para os avaliar.

O Capítulo 2 descreve detalhadamente o estado de arte em termos de sistemas

biométricos, explicando o seu modo de funcionamento e analisando quais as principais

vantagens e desvantagens da sua utilização. Neste capítulo também se descreve que tipos de

vulnerabilidades estão associados aos sistemas biométricos e quais as medidas que estão a

ser estudadas ou implementadas para suprimir essas mesmas vulnerabilidades.

A característica biométrica utilizada nesta dissertação é a íris, porque é bastante precisa

e segura, em comparação com outras biométricas. Para além disso a íris é um órgão interno

visível e bem protegido a modificações externas.

O Capítulo 3 descreve detalhadamente quais as vantagens e desvantagens da utilização

da íris num sistema de reconhecimento biométrico. Neste capítulo é também descrita uma

implementação de um sistema biométrico sem segurança dos templates biométricos, definindo

os seus principais módulos e detalhando o seu modo de funcionamento e resultados.

No Capítulo 4, é proposto um sistema de reconhecimento biométrico baseado na íris

com segurança reforçada recorrendo à codificação de fonte distribuída, distributed source

coding, e às funções criptográficas de hash.

O Capítulo 5 apresenta e discute os resultados provenientes da implementação proposta

no Capítulo 4.

No Capítulo 6 são apresentadas as conclusões sobre o trabalho realizado nesta

dissertação e também quais os aspectos que podem ser desenvolvidos e melhorados no

futuro.

Page 21: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

20

2 Estado da arte da biometria

Este capítulo tem a finalidade de apresentar uma breve descrição do estado da arte da

biometria. Este capítulo está dividido em duas secções principais, na primeira, descrevem-se

algumas implementações de sistemas de reconhecimento biométrico utilizando diferentes

características biométricas, apresentando algumas vantagens e desvantagens da sua

utilização. Na segunda secção, descrevem-se algumas vulnerabilidades destes sistemas em

termos de segurança apresentando possíveis ataques a elas associadas e quais as medidas

que estão a ser tomadas ou mesmo implementadas para protecção destes ataques.

2.1 Sistemas de reconhecimento usando biométricas

Na busca por uma autenticação mais segura, vêm sendo adoptadas novas biométricas

em sistemas de reconhecimento biométrico.

A Tabela 2.1 ilustra alguns exemplos de biométricas utilizadas em sistemas de

reconhecimento biométrico relevando as características extraídas a partir delas e usadas para

autenticação.

Tabela 2.1 – Características extraídas a partir de diferentes biométricasBiométricas Características extraídas sujeitas a comparações na autenticação

Impressão digital Padrão de sulcos cutâneos da superfície da ponta do dedo

Voz A forma como é gerada os sons a partir de regiões vocais como a boca

e o nariz

Retina Padrão gerado pelas veias que atravessam a retina num olho.

Geometria da Mão Medições da geometria da mão humana.

Face Medições da geometria da face humana.

Orelha Medições da geometria da orelha humana.

Íris Características da textura da íris

Assinatura O padrão, velocidade, aceleração e pressão sobre a caneta na

assinatura.

A seguir descrevem-se sucintamente sistemas de reconhecimento biométricos utilizando

as cinco biométricas mais utilizadas, apresentando-se as vantagens e desvantagens da sua

utilização.

O funcionamento base destes sistemas é o descrito pelas figuras 1.1,1.2 e 1.3 do

Capítulo 1.

Page 22: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

21

2.1.1 Impressão digital

A formação das impressões digitais das pessoas começa no sétimo mês de gestação,

com a diferenciação da pele das pontas dos dedos. O fluxo de fluidos amnióticos em volta do

feto e a posição do feto dentro do útero mudam durante o processo de diferenciação. As

células das pontas dos dedos crescem num micro-ambiente, que é ligeiramente diferente de

mão para mão e de dedo para dedo. Os detalhes finos das impressões digitais são

determinados por este micro-ambiente.

Em estudos dermatológicos efectuados, a máxima diferença entre impressões digitais

tem sido encontrada entre indivíduos de diferentes raças. Pessoas da mesma raça, sem grau

de parentesco, possuem uma similaridade muito pequena nas impressões digitais, enquanto

que pessoas que têm algum grau de parentesco, como por exemplo um pai e um filho,

possuem alguma similaridade, por compartilharem metade dos genes. Gémeos idênticos

possuem a máxima similaridade. Estima-se que 95% das características das impressões

digitais de gémeos idênticos sejam iguais [Maltoni 2003].

A aquisição da impressão digital obtém-se a partir de uma imagem a preto e branco ou a

cores das linhas dos dedos. A impressão digital pode ser estampada em papel, pressionando

o dedo previamente preparado com tinta, para posteriormente ser digitalizada por meio de um

scanner. Um exemplo deste tipo de imagens é as impressões digitais latentes encontradas em

cenas de crimes, que podem ser recuperadas por meio de um procedimento especial.

A impressão digital também pode ser obtida “ao vivo”, por meio de dispositivos

electrónicos especiais. O princípio básico de todos é a detecção das rugosidades dos dedos

que estão em contacto com o dispositivo. A aquisição de imagens ao vivo centra-se em quatro

tecnologias:

Tecnologia óptica – Esta é a maneira mais antiga de obtenção de imagens ao

vivo. Uma superfície de aquisição com 1×1 polegadas permite a aquisição de

imagens de cerca de 500 dpi1. A luz reflectida depende das condições da pele, ou

seja, imagens saturadas ou difusas podem ser obtidas de peles molhadas ou

secas.

Tecnologia capacitiva – Nesta tecnologia, as cristas e vales da pele da ponta de

um dedo, criam diferentes acumulações de carga quando o dedo toca uma rede de

sensores CMOS. A carga é convertida num valor de intensidade de um pixel. Uma

superfície de aquisição de 0,5×0,5 polegadas é convertida numa imagem de cerca

de 500 dpi. Estes dispositivos são sensíveis às condições da pele, isto é, dedos

molhados ou secos originam imagens de baixa qualidade.

Tecnologia térmica – Esta tecnologia baseia-se no facto de que a pele é um

condutor de calor melhor que o ar. O contacto das cristas da pele dos dedos com o

dispositivo causa uma alteração observável na temperatura da superfície do

1 DPI é uma medida de resolução da imagem de uma impressora ou de um monitor. Essa sigla significapontos por polegada, dots per inch.

Page 23: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

22

sensor. A tecnologia supera os problemas das condições da pele mas a imagem de

500 dpi obtida não é rica em tons de cinza o que dificulta a extracção das

características da impressão digital.

Tecnologia ultra-sónica – Nesta tecnologia um feixe ultra-sónico é dirigido

através da superfície do dedo, para medir directamente a profundidade dos sulcos

com base no sinal reflectido. As condições de oleosidade da pele não afectam a

imagem obtida, que reflecte bastante bem a topologia dos sulcos. Contudo, estes

equipamentos tendem a ser grandes e a requerer um tempo de leitura maior que

os leitores ópticos.

A extracção das características é o ponto central dos sistemas de autenticação

baseados em impressões digitais, com implicações para o projecto do restante sistema. As

abordagens existentes na literatura podem ser classificadas em três classes:

Abordagem global – Esta abordagem descreve a formação geral das linhas,

sendo observados um núcleo e mais de dois deltas. O núcleo é o centro de

referência da impressão digital e um delta é o ponto de encontro de três linhas,

como se ilustra na Figura 2.1. Estas formações singulares são usadas como pontos

de controlo, em volta dos quais as linhas estão organizadas. A orientação geral das

linhas é útil para classificação e indexação em grandes grupos, embora não seja

suficiente para uma comparação precisa.

Figura 2.1 – Representação de um núcleo e um delta de uma impressão digital:círcunferência vermelha - núcleo, circunferência amarela - delta

Abordagem local – Esta abordagem está relacionada com detalhes marcantes

das próprias linhas, conhecidos como minúcias. Embora exista mais de uma

centena de tipos de detalhes catalogados, os mais utilizados em sistemas

automatizados são a terminação de linha e a bifurcação de linha, como ilustrado na

Figura 2.2. A extracção destas características locais depende fortemente da

qualidade da imagem adquirida. Os templates biométricos obtidos por meio da

extracção de características de minúcias tipicamente possuem um tamanho de 250

a 700 bytes.

Page 24: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

23

Figura 2.2 – Exemplos de dois tipos de minúcias

Abordagem fina – Esta abordagem baseia-se nos detalhes intra-linhas, ou seja, a

posição e formação dos poros de suor. Estas características são altamente

distintivas, mas a sua extracção somente é viável em imagens de alta resolução

(cerca de 1.000 dpi) obtidas de impressões digitais de boa qualidade. A maioria

dos sensores fornece imagens de resolução de 500 dpi, logo este tipo de

abordagem não é funcional para a maioria das aplicações.

A comparação é baseada em métodos desenvolvidos por especialistas humanos. Os

métodos de comparação estudados ao longo de várias décadas são diferenciados em dois

tipos:

Métodos baseados em imagens – Esta classe inclui métodos de correlação de

imagem tanto ópticas quanto numéricas. As imagens das impressões digitais são

expostas e a correlação no nível de intensidade entre os pixéis correspondentes é

computada para diferentes localizações e rotações.

Métodos baseados em características – A comparação baseada em minúcias é o

método mais conhecido e o mais usado em comparação, graças à analogia das

aplicações forenses e graças à aceitação legal como prova de identidade na maioria

dos países. Os algoritmos de comparação mais comuns consideram cada minúcia

como uma função de 3 dimensões, a informação de localização espacial 2D (x,y) e

a orientação θ. Os detalhes extraídos são então armazenados como conjuntos de

pontos, e a comparação consiste em encontrar o máximo número de pares

suficientemente coincidentes da amostra e do template.

Na literatura existente existem três factores para a tomada de decisão de que duas

impressões digitais pertencem ao mesmo dedo. Estes três factores são:

Concordância na configuração global do padrão, ou seja, na distribuição do núcleo

e dos deltas, o que implica que as impressões são do mesmo tipo;

Concordância qualitativa, ou seja, os detalhes de minúcias devem ser idênticos;

Suficiência quantitativa, que especifica que pelo menos um certo número de

detalhes de minúcias devem ser encontrados. O valor mínimo de detalhes de

minúcias é 12, segundo as orientações legais nos Estados Unidos [Kazienko,

2003].

Page 25: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

24

A similaridade entre duas impressões digitais do mesmo dedo deve ser invariante quanto

à translação, rotação, pressão aplicada e distorção elástica da pele.

As principais vantagens da tecnologia de autenticação biométrica baseada em

impressão digital são:

Esta tecnologia pode ser bastante precisa;

Existe uma longa tradição no uso da impressão digital como identificador imutável;

Existem grandes bases de dados de impressões digitais;

A impressão digital pode ser colhida facilmente a baixo custo.

Em relação às desvantagens, as principais são as seguintes:

Em algumas culturas, impressões digitais não são bem aceitas por estarem ligadas

a criminosos, pessoas iletradas ou por questões de higiene;

A qualidade das impressões digitais varia enormemente dentro de uma população;

Os sensores mais baratos podem ser comprovadamente defraudados.

2.1.2 Face

A face é uma característica biométrica convincente e uma das mais aceitáveis por parte

dos utilizadores, pois é usada rotineiramente como primeiro método de reconhecimento entre

pessoas.

A aquisição de imagens da face possui abordagens diferentes. Estas podem ser

agrupadas em quatro grupos distintos:

Imagens 2D – A obtenção de imagens digitalizadas de fotografias é importante,

pois muitos dados estão na forma de fotografias, sejam elas a cores ou a preto-e-

branco. Esta é a obtenção estática de imagens. Já para a obtenção de imagens ao

vivo, câmaras digitais e analógicas podem ser usadas. As imagens são geralmente

captadas com a cooperação do utilizador que vai ser fotografado, e em condições

de iluminação controladas. Qualquer câmara de baixo custo, como uma webcam, é

utilizável para obtenção de imagens 2D, mas em termos de resultados as câmaras

que possuem foco automático e lentes apropriadas apresentam imagens mais

nítidas e de melhor resolução. Tanto quanto possível, câmaras com características

similares devem ser utilizadas nas fases de registo e autenticação. O tamanho de

um arquivo contendo a imagem da face pode variar de 1 KB a 100 KB,

dependendo da compressão utilizada;

Imagens 3D – Muitas das técnicas modernas de reconhecimento de face baseiam-

se na geometria da cabeça e exigem imagens a três dimensões. Os modelos 3D

contêm mais informações da face e são invariantes ao modo como é colocada a

face. Uma desvantagem ainda presente é que os modelos tratam a face como um

objecto rígido, não sendo capazes de retratar as expressões faciais. Embora o

reconhecimento de face 2D ainda supere os métodos 3D, este cenário pode mudar

num futuro próximo [Scheenstra 2005]. A combinação multimodal de abordagens

2D e 3D pode incrementar a precisão total do sistema [Chang 2003]. A aplicação

Page 26: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

25

descrita em [Chang 2005] relata uma taxa de EER de 1,9% para uma abordagem

multimodal 2D+3D, contra uma taxa EER de 4,5% para as abordagens 2D e 3D

separadas. A obtenção de imagens 3D da face pode ser feita segundo várias

técnicas. Uma das técnicas é o uso de imagens simultâneas, onde duas câmaras

2D, cujos campos de visão são separados por um ângulo entre 8º e 15º, obtêm

imagens independentes para montagem posterior. Outra das técnicas baseia-se na

projecção de um padrão de luz conhecido, cuja distorção pode ser capturada para

reconstruir a aparência 3D da face. Por último, técnicas baseadas em varrimento a

laser proporcionam um mapa tridimensional pela amostragem de cada ponto da

superfície da face.

Sequências de imagens – Câmaras de vigilância gravam sequências de vídeo,

que podem conter imagens das faces. No entanto, a resolução das imagens da

face é de baixa qualidade, tornando difícil sua utilização em sistemas de

reconhecimento. Técnicas de seguimento em conjunto com a utilização de

câmaras com zoom podem ser usadas para melhorar a resolução das imagens.

Esta técnica pode ser usada para focar faces suspeitas num vídeo.

Termograma da face – Um dos problemas na aquisição de imagens da face está

relacionado com as condições de iluminação. Iluminação infra-vermelha de baixa

potência, invisível ao olho humano, pode ser usada no processo de detecção da

face. Termogramas faciais baseados em radiação infra-vermelha não dependem

da iluminação ambiente e são resistentes a disfarces das pessoas, mas o alto

custo da sua implementação e a influência de fontes de calor pode afectar esta

modalidade de biometria [Prokoski 1999].

Na Figura 2.3 encontram-se ilustrados alguns exemplos de imagens de faces humanas.

(a) (b) (c)

Figura 2.3 – a) Imagem da face 2D , b) Imagem a 3D e c) Imagem a infravermelho

A extracção das características da face possui como primeiro passo a sua segmentação

ou seja, isolar da imagem a face da qual se quer extrair as características. A segmentação é

um processo de grande importância para o sucesso do reconhecimento facial. Métodos

baseados em distâncias e redes neuronais resultam em taxas de correcta segmentação de

Page 27: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

26

imagens da face em cerca de 85% [Zhao 2003]. Na literatura existem alguns métodos para a

extracção e comparação de características das imagens da face:

Métodos holísticos – Os métodos holísticos usam toda a região da face como

entrada do sistema de reconhecimento. Dentre as várias técnicas existentes, a

PCA, baseada em eigenfaces, é a mais utilizada;

Métodos estruturais – Os métodos estruturais, contendo técnicas mais recentes,

utilizam medidas geométricas (ângulos e distâncias) relativas entre diversos pontos

notáveis da face como olhos, nariz, boca e bochechas;

Métodos híbridos – Nos métodos híbridos existe a tentativa de se aproximar do

sistema de percepção humano, que utiliza tanto a aparência global da face como a

geometria da face na comparação das características faciais.

Estes métodos possuem em comum a dificuldade de se efectuar a comparação quando

a aparência das características muda de forma significativa, como por exemplo, olhos

fechados, a utilização de óculos ou boca aberta. Em condições de laboratório, os algoritmos de

reconhecimento de face podem apresentar taxas de erro bastante aceitáveis. Na prática, o

desempenho dos sistemas de reconhecimento de face é muito dependente da sua aplicação.

Em qualquer sistema existem vantagens e desvantagens e a tecnologia de autenticação

biométrica baseada na face não foge à regra. Assim, as principais vantagens são as seguintes:

Existe uma larga aceitação por parte das pessoas para este tipo de identificador

biométrico, já que fotografias de faces são usadas rotineiramente em documentos.

Os sistemas de reconhecimento de face são os menos intrusivos, não exigindo

qualquer contacto e nem mesmo a colaboração do utilizador.

Os dispositivos de aquisição de imagens 2D são de baixo custo.

Em relação às desvantagens, as principais são as seguintes:

Em sistemas de autenticação por meio da face, as condições de iluminação

precisam ser controladas.

Estes sistemas podem ser facilmente enganados com a utilização de uma fotografia

no acto da aquisição da face.

Uma maneira óbvia e fácil de defraudar o sistema, em aplicações de screening, é a

utilização de disfarces.

2.1.3 Geometria da mão

Várias tecnologias de verificação biométrica com base na geometria da mão têm

evoluindo durante o último século, desde dispositivos electromecânicos até aos electrónicos.

Em 1960 foi registada a primeira patente para um dispositivo que media a geometria da mão, e

registava as características para uma identificação posterior (uma máquina baseada em

mecânica, projectada e construída por Robert P. Miller, sob o nome de Identimation). Nos anos

70 e 80, várias outras companhias lançaram esforços no desenvolvimento e implementação de

dispositivos similares, pressionados pelas oportunidades de mercado. Actualmente existem

Page 28: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

27

leitores modernos de mão que executam funções de controlo de acesso, registo de ponto de

empregados e aplicações de pontos de venda [Zunkel 1999].

O reconhecimento baseia-se na geometria da mão. As características da mão da pessoa

como o comprimento, largura, espessura e curvatura dos dedos e da palma da mão, e a sua

localização, distinguem as pessoas umas das outras.

Um dispositivo de leitura da geometria da mão usa uma câmara para capturar imagens a

preto e branco da silhueta da mão, Figura 2.4. Em combinação com um reflector e espelhos

laterais, duas imagens distintas são produzidas, uma vista de cima e outra vista de lado.

a) b) c)

Figura 2.4 – a) Medidas típicas da geometria da mão, b) imagem real obtida dodispositivo e c) dispositivo de leitura da mão

A imagem é obtida com a colaboração do utilizador, que coloca a mão numa plataforma

que contém pinos para localização da mão. Estes pinos, que se encontram na plataforma do

dispositivo, posicionam a mão do utilizador para assegurar uma captura de imagem mais

precisa e com melhor qualidade [Sanchez-Reillo 2000]. Uma câmara, localizada por cima da

plataforma, é activada quando os sensores de pressão localizados perto dos pinos da

plataforma são activados, indicando que a mão está correctamente posicionada. A fotografia é

tirada mostrando a silhueta e a imagem lateral da mão.

A extracção das características depende da imagem adquirida. A imagem obtida é

convertida para numa imagem em tons de cinzento caso seja colorida. Através de um algoritmo

de detecção de bordas consegue-se extrair o contorno da mão. O dispositivo de aquisição

obtém 96 características da mão do utilizador, que depois são convertidas num template de

apenas 9 bytes de dados.

Na comparação, a representação obtida é comparada com o template armazenado. A

comparação pode envolver, por exemplo, acumulação de diferenças absolutas das

características individuais, entre o template da autenticação e o template armazenado.

Para o cálculo da similaridade entre os dois templates, são utilizados algoritmos

baseados em distância euclidiana, distância de Hamming, modelos de mistura gaussiana,

GMM, ou redes neuronais. Os melhores resultados são apresentados pelos algoritmos

baseados em GMMs [Sanchez-Reillo 2000]. Para a acomodação dos factores naturais e

ambientais que alteram o formato da mão das pessoas, os dispositivos de leitura podem

possuir um processo de actualização dos templates armazenados. Este processo é executado

Page 29: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

28

sob certas condições, durante o processo de comparação. Esta acomodação do template,

actualiza a descrição matemática armazenada quando a diferença entre a amostra e o

template atinge um limite pré-determinado.

As características individuais da mão não são muito descritivas tendo como

consequência na autenticação taxas de erros relativamente altas. Apesar disso, os sistemas de

verificação biométrica com base na geometria da mão são bastante difundidos. Uma avaliação

desta tecnologia foi efectuada em 2001 pelo BWG que relata uma taxa de erro EER em torno

de 1,5% para esta tecnologia [Mansfield 2002].

As principais vantagens da tecnologia de autenticação biométrica baseada na geometria

da mão são as seguintes:

A recolha das características é fácil e não intrusiva.

A computação é bastante simples e os templates são pequenos, o que torna fácil a

construção de sistemas dedicados isolados. O pequeno tamanho do template (9 a

35 bytes) reduz as necessidades de armazenamento.

Adequado para utilizar com outras biométricas, em particular a impressão digital

Não relacionado a registos policiais e criminais.

Em relação às desvantagens, as principais são as seguintes:

Os dispositivos de aquisição ficam localizados a 28 cm de distância da câmara, para

que se obtenha o efeito óptico desejado, obrigando o dispositivo de aquisição a ser

relativamente grande no seu tamanho.

Num sistema biométrico baseado na geometria da mão é necessário uma boa

interacção do utilizador com o dispositivo de aquisição.

Não é suficientemente distinta para identificação, sendo adequada apenas para

aplicações de verificação.

2.1.4 Assinatura

A aquisição de uma assinatura pode ser offline, ou estática, quando introduzida por meio

convencional (canetas, lápis, etc) em documentos de papel e posteriormente adquirida por

meio de uma câmara ou scanner ou online ou dinâmica, quando efectuada num dispositivo

electrónico. Este dispositivo está preparado para capturar, com alto grau de resolução, as

características dinâmicas temporais da assinatura, como a trajectória da caneta, a pressão,

direcção e elevação do traço.

Várias abordagens de análise automatizada baseadas em características como número

de contornos interiores e número de componentes de inclinação têm sido estudadas, mas a

falta de informação dinâmica torna o processo automatizado de verificação estática bastante

vulnerável a fraudes. O problema da verificação automática de assinaturas estáticas atraiu

grande atenção nos últimos anos, mas os resultados não têm fornecido a precisão necessária

devido a muitos problemas de segurança. As técnicas incluem transformadas 2D, histogramas

de dados direccionais, curvatura, projecções verticais e horizontais do traço da assinatura,

abordagens estruturais, medidas locais no traço, posição de pontos característicos. Um dos

Page 30: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

29

melhores resultados tem sido fornecido pela análise baseada no tamanho das distribuições

granulométricas locais [Sabourin 1997].

A abordagem dinâmica é bastante mais interessante. A verificação da dinâmica da

assinatura baseia-se nas características do processo de assinatura em si. Um modo temporal

de representação da assinatura contém mais informação, o que pode tornar o processo mais

preciso. Contudo, este modo necessita de dispositivos especiais. Os dispositivos normalmente

podem ser divididos em três tipos: aquisição por meio da caneta, aquisição por meio da

superfície e aquisição por meio de ambas.

A extracção das características baseia-se principalmente na componente temporal. Na

análise dinâmica, são introduzidas as noções de tempo e pressão, além do espaço

bidimensional do papel. Os dispositivos utilizados podem, por exemplo, registar um fluxo de

vectores penta dimensionais colhidos em pontos temporais equidistantes. Esses vectores

poderiam, por exemplo ser compostos por A = (x,y,p,θx,θy), onde x e y correspondem à

posição, p corresponde à força axial exercida pela caneta e θx e θy registam os ângulos da

caneta em relação ao plano xy. Esta informação adicional é bastante útil na prevenção de

fraudes. Um arquivo de assinaturas contendo funções temporais de posição, pressão, azimute

e elevação possui normalmente um tamanho entre 5 KB e 10 KB. Formatos mais eficientes e

compressões na razão 3:1 permitem o armazenamento em arquivos de 1 KB a 2 KB.

Na análise de assinaturas dinâmicas, as medidas de comparação incluem distâncias

euclidianas entre as trajectórias de canetas, medidas de correlação regional e reconhecimento

temporal-probabilístico como as cadeias de Markov ocultas.

O problema da comparação pode ser reduzido à classificação temporal. A decisão sobre

a autenticação pode ser feita segundo diferentes métodos:

Métodos probabilísticos - Estes métodos baseiam-se em distribuições de

densidade de probabilidades do conjunto das características genuínas e do conjunto

de características em geral. Uma distância entre estas duas distribuições é

determinada para fixar o grau de importância dada à característica. A decisão pode

por exemplo ser baseada na distância Euclidiana, calculada sobre um conjunto de

características;

Métodos elásticos – Estes métodos baseiam-se na utilização de DTW, Dynamic

Time Warping [Myers 1981]. A DTW calcula as distâncias temporais mínimas entre

um vector de entrada e os vectores modelo. Existem diferenças de tempo não

lineares entre as características das assinaturas produzidas pela mesma pessoa. O

objectivo é encontrar o alinhamento temporal óptimo entre a assinatura de

referência e a assinatura da verificação;

Redes neuronais - Esta ferramenta de inteligência artificial tem sido explorada para

a verificação dinâmica de assinaturas, mas o desempenho registado tem sido

inferior aos outros métodos;

Cadeias de Markov ocultas - Cadeias de Markov ocultas, HMM, são o método

mais popular de classificação temporal, com aplicações em áreas como

Page 31: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

30

reconhecimento de discurso, escrita e gesticulação. Uma cadeia de Markov oculta é

uma variante de uma máquina de estados finita e não determinística, onde os

estados e transições possuem associações probabilistas [Rabiner 1986].

Actualmente este é o modelo com melhor desempenho na verificação de

assinaturas. A vantagem resulta da possibilidade de aceitar variabilidade, ao mesmo

tempo que se capturam características individuais da assinatura.

As principais vantagens da tecnologia de autenticação biométrica baseada na assinatura são

as seguintes:

A assinatura dinâmica é uma combinação de informação e biometria. O conteúdo e

o modo da escrita podem ser escolhidos e até mesmo alterados pelo utilizador;

Possui grande aceitação por parte do utilizador;

A assinatura dinâmica é bastante difícil de ser defraudada. A comunidade

interessada em autenticação por meio da dinâmica de assinatura define o nível de

sofisticação do impostor em categorias, como zero-effort forgery, home-improved

forgery, overthe-shoulder forgery e professional forgery. Esta divisão em categorias

por nível de sofisticação ainda não existe em outras tecnologias biométricas.

Em relação às desvantagens, as principais são as seguintes:

O custo dos dispositivos de aquisição é alto;

Esta característica biométrica possui alta variabilidade. Existem muitas pessoas

com assinaturas inconsistentes. Assim, os sistemas de verificação podem ter de

permitir a configuração de limiares de decisão por utilizador.

Um protótipo de sistema de autenticação baseado em assinaturas dinâmicas foi

construído na UNISINOS usando redes neuronais do tipo cascade-correlation como método de

comparação, relatando bons resultados de precisão, com taxas de erro, FAR e FRR, estimadas

em 2,6% e 3,6% respectivamente [Heinen 2004].

Abordagens para localização da caneta e estimativa de orientação usando luz visível

foram desenvolvidas, o que pode baixar o custo de aquisição de assinatura e pode até mesmo

levar a assinaturas tridimensionais [Munich 1998].

O projecto BISP visa desenvolver canetas multi-sensoriais para registo e análise de

biometria comportamental e características neuromotoras, ambas baseadas na cinemática e na

dinâmica da escrita em geral e da assinatura em particular [Hook 2003].Resultados relatados

na primeira competição internacional de verificação por dinâmica da assinatura relatam taxas

de EER entre 2,89% e 16,34% para o melhor e pior algoritmo[ internet1].

2.1.5 Voz

A autenticação por meio da voz tem sido uma área de pesquisa bastante activa desde os

anos 70. Os sistemas podem ser divididos em diferentes classes, de acordo com o protocolo

estabelecido:

Texto fixo – O utilizador pronuncia uma palavra ou frase pré-determinada secreta,

que é gravada durante a fase de registo;

Page 32: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

31

Dependente do texto – O utilizador é solicitado, pelo sistema de autenticação, a

pronunciar algo específico, dentre as diversas opções previamente registadas no

sistema. Neste caso, a fase de registo é bastante longa. É similar ao protocolo de

texto fixo, mas com um número maior de opções;

Independente do texto – O utilizador pronuncia frases conforme seu desejo. O

sistema processa qualquer discurso do utilizador;

Conversacional – O utilizador é interrogado, pelo sistema de autenticação, com

perguntas cujas respostas são secretas, tornando-se um protocolo misto de

conhecimento e biometria. É um protocolo similar ao dependente de texto, sendo

que as frases previamente gravadas possuem um certo grau de segredo.

Na aquisição, existem dispositivos que transformam as ondas acústicas de voz em

ondas electromagnéticas. A quantidade de espaço necessária para armazenar os dados de voz

sem tratamento, depende da taxa de amostragem, dos níveis de quantização e do número de

canais (mono-canal na maioria das vezes). Por exemplo, um sinal de voz amostrado a uma

taxa de 16 kHz, com um nível de quantização de 16 bits, utiliza cerca de 31 KB por segundo de

sinal [internet 8]. O sinal de voz deve ser representado por uma sequência de vectores de

características.

A extracção dos templates pode ser feita segundo diferentes abordagens, a tradicional,

por meio de análise de componentes principais, PCA e análise de factores, FA, a estimativa de

médias e co-variâncias e a estimativa de divergências [Campbell 1997].

Os principais métodos de abordagem para comparação dos dados de voz estão listados

a seguir [Yu 1995]:

DTW, Dynamic Time Warping – Este método permite a compensação da

variabilidade humana inerente ao padrão de voz. É o método mais usado para

verificação dependente do texto;

Métodos estatísticos – Estes métodos baseiam-se na modelação paramétrica do

sinal de voz. A modelação pode ser dependente do tempo, por meio da utilização de

cadeias de Markov ocultas, HMM, ou não dependentes do tempo, por meio da

utilização de modelos de mistura gaussiana, GMM. Os valores dos parâmetros

devem ser obtidos a partir de dados de treino. O método HMM é bastante comum

para sistemas dependentes de texto. No entanto, o método GMM é agora o modelo

dominante para reconhecimento de voz, frequentemente utilizado em combinação

com um provedor de informação de alto nível, como DTW;

Redes neuronais – Redes neuronais têm sido usadas em pesquisas de

reconhecimento de voz independente do texto, treinadas com dados de utilizadores

legítimos e impostores;

SVM, Support Vector Machines – Estes métodos são um grupo de métodos de

aprendizagem supervisionada utilizados para classificação ou regressão. Os

resultados relatados têm sido superiores aos resultados de GMMs.

Page 33: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

32

As principais vantagens da tecnologia de autenticação biométrica baseada na voz são as

seguintes

A voz, assim como a face, é uma biometria usada instintivamente pelas pessoas

para autenticação mútua;

Esta tecnologia utiliza dispositivos baratos, e além disso é facilmente desenvolvida

sobre uma infra-estrutura já existente e amplamente espalhada, como o sistema

telefónico;

Permite protocolos de autenticação de segurança incremental. Por exemplo, o

sistema pode pedir mais dados de voz para que a sua decisão seja a correcta. Pode

também ser utilizado um protocolo de biometria conversacional, combinado com

verificação de conhecimento, ou pode ainda verificar-se a identidade continuamente

durante a conversação;

Em aplicações independentes do texto e em aplicações conversacionais, os

utilizadores não necessitam de um processo separado de autenticação, o que torna

o processo totalmente integrado.

Em relação às desvantagens, as principais são as seguintes:

É possível a imitação por pessoas habilidosas ou a utilização de gravações da voz

do utilizador legítimo para defraudar o sistema. Além disso, existem sistemas de

síntese que podem ser treinados para imitar a voz de pessoas;

A tecnologia text-to-speech torna possível a criação de identidades não existentes

em sistemas de registo e autenticação remotos;

A qualidade do sinal de áudio é susceptível ao ruído do ambiente. Além disso,

podem ser introduzidas distorções na captação do sinal pelo microfone e na

transmissão do sinal através do canal;

O padrão de voz é bastante frágil, pois pode ser alterado pelo estado do utilizador

(saúde, emoção, pressa, sono, preguiça, entre outros).

As taxas de erro para sistemas de autenticação por meio da voz são muito dependentes

da aplicação. Esta tecnologia está amadurecida, mas alguns problemas ainda permanecem por

resolver. O desempenho depende muito das condições de aquisição e teste. Mesmo assim,

competições internacionais tentam estabelecer taxas de erros aproximadas que permitam

comparações com outras tecnologias. Por exemplo, em competição aberta conduzida pelo

NIST em 2003 foi obtida uma taxa EER de 5,3% [Przybocki 2004].

2.1.6 Comparação do desempenho dos diferentes sistemas

A Tabela 2.2 apresenta alguns resultados do desempenho dos sistemas de

reconhecimento biométrico anteriormente mencionados. Os resultados foram alcançados em

competições internacionais, como a FVC [MAIO, 2002] e através de análises do governo norte-

americano.

Page 34: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

33

Tabela 2.2 - Desempenho de sistemas biométricos para diferentes características[Fornazin 2008]

Da Tabela 2.2 conclui-se que as características biométricas impressão digital e íris

apresentam maior segurança para um sistema biométrico porque têm uma taxa FAR bastante

mais baixa em comparação com outras biométricas.

2.2 Segurança em sistemas biométricos

Num sistema biométrico, o problema da segurança dos dados biométricos que são

transmitidos entre os diferentes módulos que compõem o sistema e também armazenados em

base de dados é cada vez mais importante para os projectistas desses sistemas. Caso alguém

não autorizado consiga obter acesso a esses dados, poderá trazer graves problemas aos

utilizadores que utilizam estes sistemas, reduzindo assim a privacidade destes. Um sistema

biométrico que assegure a segurança de dados biométricos, deve respeitar as seguintes

propriedades:

Confidencialidade ou privacidade – O sistema deve assegurar que as

informações não serão reveladas a quem não tiver autorização;

Integridade – O sistema deve assegurar que as informações não serão alteradas

por alguém não autorizado;

Disponibilidade – O sistema deve assegurar que as informações estarão sempre

disponíveis a quem for devidamente autorizado;

Autenticidade – O sistema deve assegurar que alguém é realmente quem diz ser;

Não-repúdio – O sistema deve assegurar que ninguém possa negar a autoria de

alguma informação que efectivamente tenha gerado.

A segurança de sistemas biométricos pode ser avaliada segundo dois aspectos

importantes:

Desempenho do sistema – O desempenho do sistema é representado segundo as

taxas de erro FAR e FRR conforme foi descrito no Capítulo 1;

Robustez do sistema – A robustez de um sistema biométrico define o quanto o

sistema é vulnerável a possíveis ataques. Estas vulnerabilidades resultam do tipo

Page 35: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

34

de arquitectura utilizada para cada um dos módulos do sistema, da sua

implementação e também de como é efectuada a comunicação entre os diversos

módulos do sistema biométrico.

Define-se vulnerabilidade como sendo qualquer fraqueza que pode ser explorada para

violar a segurança de um sistema ou as informações que ele contém.

Dos dois aspectos acima mencionados, a robustez do sistema é a mais difícil de ser

avaliada, porque apesar do projectista do sistema poder utilizar as mais recentes tecnologias

na sua implementação, nunca pode tirar conclusões quanto à sua resistência a possíveis

ataques, ou seja, os impostores vão aperfeiçoando cada vez mais as suas técnicas

fraudulentas de ataque podendo descobrir novas vulnerabilidades que nunca tinham sido

detectadas por parte do projectista do sistema.

Na actualidade não existe nenhum sistema 100 por cento seguro, e os sistemas

biométricos são uma prova disso. Nos últimos anos, com o avanço da tecnologia e estudos

científicos cada vez mais aprofundados, conseguiu-se descobrir algumas vulnerabilidades

destes sistemas das quais se têm tentado resolver.

Algumas dessas vulnerabilidades dos sistemas de reconhecimento biométricos estão

representadas segundo um modelo fish-bone [Jain 2006] . Este modelo está ilustrado na

Figura 2.5.

Figura 2.5 - Representação das vulnerabilidades segundo modelo fish-bone [Jain 2006]

As causas de um possível fracasso de um sistema biométrico ilustradas no modelo da

Figura 2.5 podem ser organizadas em duas principais categorias [Jain 2008]:

Falha intrínseca - A falha intrínseca acontece devido às limitações das tecnologias

de aquisição das características, como por exemplo os sensores, de extracção das

características e a também das tecnologias de decisão utilizadas pelo comparador.

Falha devido a ataques – A falha devido a ataques por parte de impostores

acontece quando eles tentam corromper o sistema para ganhos pessoais.

Page 36: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

35

2.2.1 Falha intrínseca

A falha intrínseca origina uma quebra de segurança do sistema biométrico, devido a

decisões incorrectas por parte do sistema. Um sistema de reconhecimento biométrico pode

fazer dois tipos de erros na sua decisão sobre a autenticação do utilizador: a falsa aceitação e

a falsa rejeição conforme descrito no Capítulo 1.

Um utilizador legítimo pode ser falsamente rejeitado pelo sistema biométrico devido a

diferenças entre os templates armazenados e o template extraído da característica na sua

autenticação. Estas diferenças podem ocorrer devido a uma má interacção entre o utilizador e

o sistema biométrico, isto é, a uma má colocação da característica biométrica no sistema, ou

também devido a ruído introduzido pelo sistema de aquisição de característica.

A falsa aceitação ocorre quando um utilizador não legítimo tem uma autenticação bem

sucedida no sistema, devido a uma semelhança dos templates biométricos, quebrando assim a

propriedade da unicidade e da singularidade da característica. Esta situação pode ocorrer por

exemplo em gémeos, onde as suas características podem ser muito parecidas podendo

enganar o sistema. As duas situações acima mencionadas podem ser também causadas

devido ao uso de características não salientes ou de comparadores não robustos.

Características não salientes, definem-se como sendo características biométricas que não

diferem muito em diferentes pessoas. Esta situação ocorre por exemplo em gémeos. Mas a

falsa aceitação ou falsa rejeição ocorre também por vezes quando um sensor não consegue

adquirir bem a característica biométrica do utilizador devido a limitações da tecnologia ou a

condições ambientais adversas, como por exemplo o utilizador colocar o dedo molhado no

sensor. Isto conduz a uma falha no registo, FTE, ou a uma falha ao adquirir a característica,

FTA.

2.2.2 Falha devido a ataques

Estas falhas ocorrem devido a ataques intencionais organizados por parte de impostores

ao sistema biométrico, cujo sucesso depende da robustez do sistema e também dos recursos

computacionais e não só, adquiridos por eles para o devido efeito.

Estas falhas podem ser classificadas segundo três tipos de ataques: ataque ao sistema

administrativo, ataque a infra-estruturas não seguras e ataque a características biométricas.

2.2.2.1 Ataque ao sistema administrativo

Este ataque, considerado também como ataque interno, testa as vulnerabilidades

existentes na administração do sistema biométrico.

Um dos ataques testados pelos impostores é a integridade do processo de registo do

template biométrico ou seja, o administrador deve se capaz de verificar se as informações

provenientes das características biométricas são genuínas ou se foram manipuladas ou

alteradas por um impostor e também deve ser capaz de descobrir se algum parâmetro do

sistema foi ou não alterado (por exemplo limiar de decisão). Outra das vulnerabilidades é a

Page 37: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

36

coerção que pode existir entre o impostor e o administrador do sistema ou um utilizador

legítimo. Neste caso, o impostor pode forçar um utilizador legítimo ou um administrador a

conceder-lhe o acesso ao sistema. Por último, outra vulnerabilidade que pode existir é o abuso

de excepção por parte de um impostor, ou seja, uma pessoa com privilégios de nível superior

(como um administrador) pode deliberadamente alterar os parâmetros do sistema para permitir

incursões por parte de um impostor.

2.2.2.2 Ataque a infra-estruturas não seguras

A infra-estrutura de um sistema biométrico consiste no hardware, no software e nos

canais de transmissão entre os vários módulos que compõem o sistema. Ratha identificou 8

possíveis ataques nas infra-estruturas do sistema [Ratha 2001]:

Apresentação de uma característica falsa – Uma carateristica falsa é

apresentada no dispositivo de adquisição do sistema;

Ataque de repetição – A caracteristica biométrica é interceptada e reintroduzida no

sistema;

Substituição do módulo de extracção de caracteristicas – O módulo de

extracção de caracteristicas é substituido por um programa cavalo de tróia que

produz um pré-determinado conjunto de caracteristicas;

Substituição dos templates – Os templates do utilizador legitimo obtidos no

módulo de extracção são subtituidos por templates de um impostor;

Substituição do módulo comparador – O comparador pode ser subtituido por um

programa de cavalo de troia que altera o limiar de decisão do sistema, tornando-o

menos seguro;

Modificação dos templates guardados na base de dados – Os templates

guardados na base de dados podem ser modificados ou eliminados. Outra opção

resultante deste ataque é a introdução de novos templates na base de dados (por

exemplo templates de impostores);

Intercepção nos canais de comunicação entre os diferentes módulos dossistema – Os dados enviados entre os diferentes módulos do sistema podem ser

interceptados e modificados;

Substituição da decisão do sistema sobre a autenticação – Este ataque altera a

decisão sobre a autenticação de um utilizador.

A Figura 2.6 ilustra os oito possíveis ataques num sistema biométrico.

Page 38: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

37

Figura 2.6 - Pontos de possíveis ataques nas infra-estruturas do sistema biométrico

Os oito ataques mencionados podem ser estruturados em quatro categorias diferentes:

Ataques no módulo de aquisição – Um ataque pode ser implementado segundo

várias maneiras. Num ataque de coerção, as características biométricas do

utilizador legítimo são apresentados usando a força ou outros métodos ilegais de

persuasão. Num ataque de personificação, o impostor regista-se como sendo

utilizador legítimo, através de disfarces ou imitações das características. Num

ataque de imputação, dados verdadeiros são apresentados por um impostor. Um

exemplo deste ataque por parte do impostor é a criação de uma impressão digital

sem colaboração do seu proprietário [Putte 2000]. Outro exemplo seria a

apresentação por parte do impostor de partes do corpo extraídas de utilizadores

legítimos [Uludag 2004].

Ataques nos módulos de extracção e comparação – A utilização de um cavalo

de Tróia, pode permitir um ataque que consiste em alterar o módulo de extracção.

Por exemplo, a corrupção do processo de extracção pode ser programada para

produzir um conjunto de características favoráveis à aceitação do impostor. O

ataque ao módulo de comparação pode originar limites de decisão superiores ao

real permitindo assim a modificação da sua decisão final. O ataque hill-climbing

envolve a submissão repetida de dados biométricos, com pequenas modificações

entre cada repetição, com a preservação das modificações que resultem num limite

de decisão melhorado. O ataque swamping consiste na submissão de dados

biométricos em abundância, na esperança de que seja alcançado pelo menos o

limite de decisão necessário para autenticação [Schneier 1999].

Ataques no módulo de registo – A segurança do processo de registo é de

extrema importância, porque se um impostor consegue colocar seu template

biométrico no sistema, passa a ser tratado como utilizador válido. Até mesmo

possíveis ataques em conivência com o administrador do sistema devem ser

analisados neste processo. Outro ataque fortíssimo é o dirigido à base de dados

Page 39: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

38

dos templates biométricos para leitura ou modificação não autorizada dos

templates.

Ataques no canal de transmissão entre os diferentes módulos do sistema –Em muitos sistemas reais, alguns módulos do sistema podem estar fisicamente

distantes entre si. Nesses sistemas as ligações entre os módulos podem constituir

vulnerabilidades importantes. Ataques de repetição, são os mais comuns.

2.2.2.3 Ataque a características biométricas

É possível que um impostor consiga adquirir as características biométricas de um

utilizador legítimo do sistema e as use para criar artefactos físicos. Um exemplo disto é a

utilização de superfícies de leitura de impressões digitais, em que se os dedos estiverem

gordurosos e ficar um rasto da característica biométrica, o impostor possa conseguir tirar uma

amostra da característica, a chamada gummy fingers. Se o sistema não for capaz de distinguir

entre uma amostra viva de uma característica e uma amostra artificial da mesma então o

impostor pode utilizar desta forma qualquer amostra artificial para ter o acesso ao sistema

biométrico.

2.2.3 Efeitos de uma possível falha num sistema biométrico

Quando um atacante consegue comprometer em termos de segurança um sistema

biométrico, dois efeitos podem ser realçados [Jain 2008]:

Negação de serviço – Acontece quando um utilizador legítimo quer autenticar-se

ao sistema e não consegue. Isto pode dever-se a sabotagem por parte de atacantes

sobre infra-estruturas do sistema, ficando em poder dos atacantes toda a sua

administração. Falhas intrínsecas originam falsas rejeições enquanto, que falhas na

aquisição da característica originam negação de serviço. Outra das falhas que

originam uma negação de serviço é o abuso administrativo por parte dos atacantes

que modificam os templates biométricos dos utilizadores ou então alteram os

parâmetros de decisão do sistema (por exemplo o limiar de decisão).

Intrusão – Acontece quando um atacante consegue o acesso ilegítimo ao sistema,

resultando assim numa perda de privacidade por parte dos utilizadores (por

exemplo o acesso à base de dados dos utilizadores). Qualquer falha intrínseca ou

falha devido a ataques pode originar uma intrusão no sistema, comprometendo todo

o sistema biométrico.

2.2.4 Medidas para protecção dos sistemas biométricos

Face às vulnerabilidades existentes num sistema biométrico e aos possíveis ataques, foi

necessário criar medidas que prevenissem esses mesmos ataques garantindo assim uma

melhor segurança dos sistemas biométricos. Na literatura sobre biometria existem algumas

medidas de protecção dos sistemas das quais se destacam as seguintes:

Page 40: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

39

Supervisão na aquisição das características biométricas – Em aplicações

biométricas nas quais a supervisão está presente quando os utilizadores estão

submetendo as suas características biométricas, a probabilidade de uma pessoa

ludibriar o sistema é substancialmente reduzida, mas algumas aplicações

simplesmente não permitem tal supervisão, como é o caso de autenticação de

utilizadores via internet;

Detecção de repetição – O sistema pode utilizar uma propriedade das

características biométricas como ferramenta de segurança. Afinal, é desprezível a

possibilidade de dois templates biométricos extraídos da mesma característica

biométrica serem exactamente iguais. Assim o sistema poderia então descartar

qualquer template idêntico a um dos templates anteriores. O preço a pagar por esta

medida é custo do espaço de armazenamento e capacidade de processamento

extra. Mesmo assim, uma solução económica possível seria manter em histórico os

códigos hash dos últimos templates de cada utilizador. Uma coincidência exacta

num novo template indicava um ataque de repetição. Outra solução seria solicitar ao

utilizador que inserisse de novo a característica biométrica. Por exemplo, em

sistemas biométricos baseados em dinâmica da assinatura, o utilizador pode ser

solicitado a assinar mais de uma vez, devendo o sistema certificar-se de que os

exemplares de assinatura não sejam idênticos;

Resposta sumária – As respostas sumárias ou ocultação dos dados, hiding data,

servem para evitar ataques hill-climbing. Assim, o sistema biométrico deve fornecer

apenas uma resposta ao utilizador não autenticado (NÃO), abstendo-se de explicar

qual o motivo da não autenticação;

Desafio e resposta – Medida bastante apropriada contra ataques de repetição, o

desafio e reposta envolve o envio de um desafio ao utilizador, que deve responder

apropriadamente para obter autorização de continuar com a autenticação. Em

sistemas de voz, pode ser usada a verificação independente de texto ou a

verificação conversacional;

Detecção de vivacidade – A detecção de vivacidade num sistema biométrico de

autenticação deve assegurar que somente características reais, pertencentes a

pessoas vivas, fossem aceitas como válidas. Isto tornaria o sistema mais seguro e

aumentaria também o poder de não-repudio. No entanto, até mesmo pequenos

esforços podem levar à fraude em dispositivos biométricos actuais. A detecção de

vivacidade pode ocorrer no processo de aquisição ou no processo de extracção de

características;

Multibiometria - Algumas limitações dos sistemas biométricos que utilizam

somente uma característica biométrica podem ser superadas com a utilização

sistemas multibiométricos. Os sistemas multibiométricos são sistemas que

combinam duas ou mais características para a autenticação. Neste sistemas, os

impostores necessitam de defraudar mais do que uma características para

Page 41: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

40

conseguir uma autenticação com sucesso, tornando estes sistemas mais seguros. A

proposta destes sistemas é aumentar a confiabilidade e o desempenho dos

sistemas;

Modelos de protecção dos templates – Estes modelos têm a finalidade de

proteger os templates extraídos das características biométricas que são inseridos

na base de dados garantido assim a privacidade dos utilizadores do sistema

biométrico.

Um modelo ideal de protecção dos templates biométricos deve possuir os seguintes

requisitos [Maltoni 2003]:

Diversidade – O mesmo template biométrico não deve ser utilizado e inserido na

base de dados de dois sistemas distintos porque caso um template seja roubado de

um sistema, este não vai influenciar a segurança do outro sistema;

Revogabilidade ou biometria cancelável – Caso um template biométrico esteja

comprometido, o modelo deve permitir eliminá-lo deixando introduzir um novo

template na base de dados proveniente das mesmas características biométricas;

Privacidade dos templates – O modelo não deve permitir que, caso a base de

dados esteja comprometida, os impostores consigam obter as características

biométricas originais que deram origem ao template. Este requisito não deixa que

eles consigam criar artefactos físicos de características biométricas a partir dos

templates roubados;

Desempenho – O modelo de protecção de templates biométricos não deve

degradar o desempenho do sistema em termos das taxas de erro, FAR e FRR.

O grande desafio na concepção de um modelo de protecção dos templates biométricos

que satisfaça todos os requisitos acima mencionados é a variação de templates biométricos de

utilizadores legítimos obtidos a partir da mesma característica biométrica. Isto ocorre devido ao

ruído proveniente dos dispositivos de aquisição ou devido a diferentes posições do utilizador na

aquisição da biométrica ou também devido às condições ambientais no acto de aquisição da

biométrica do utilizador.

Os modelos de protecção dos templates biométricos propostos na literatura são

classificados em duas categorias:

Modelos de transformação dos templates – Os modelos de transformação dos

templates utilizam uma função de transformação baseada numa chave, que é

aplicada ao template biométrico e apenas o seu resultado é armazenado na base de

dados.

Criptosistemas biométricos – Estes modelos utilizam algumas informações sobre

o template biométrico que são armazenadas na base de dados. Estas informações

são designadas por dados de ajuda, helper data. Os dados de ajuda não têm de

revelar informações significativas sobre o template biométrico original, sendo

necessário na autenticação extrair a chave criptográfica a partir do template

Page 42: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

41

biométrico obtido na autenticação do utilizador. A decisão da autenticação é

realizada indirectamente através da verificação da validade das chaves extraídas.

2.2.4.1 Modelos de transformação dos templates

Os modelos de transformação de templates utilizam uma função de transformação que é

aplicada ao template biométrico e apenas o seu resultado é armazenado na base de dados.

Estas funções utilizam normalmente uma chave aleatória ou uma senha na transformação dos

templates. Esta mesma função é utilizada no acto de autenticação do utilizador, ou seja, depois

de a característica ser adquirida e extraído o seu template é lhe aplicada a função de

transformação. Na etapa de comparação, o template transformado é comparado com os

templates transformados que se encontram na base de dados, de modo a tomar uma decisão

sobre a autenticação do utilizador.

Os métodos de transformação de características utilizam dois tipos de funções de

transformação distintas:

Funções invertíveis – O resultado da função é invertível, isto é, se um impostor

conseguir descobrir a chave que deu origem à transformação do template

biométrico, pode através de algoritmos existentes conseguir descobrir o template

biométrico original da qual resultou a transformação. Os modelos de protecção dos

templates biométricos baseados em funções invertíveis têm como base guardar em

segredo a chave da transformação do template, para que nenhum impostor tenha

acesso à chave. Um exemplo deste modelo está descrito em [Teoh 2006].

Funções não invertíveis ou de sentido único – O resultado da função é quase

impossível de ser invertido, isto é, caso o impostor tenha acesso à chave que deu

origem à transformação do template, muito dificilmente conseguirá descobrir o

template original. Um exemplo deste modelo está descrito em [Ratha 2007].

2.2.4.2 Criptosistemas biométricos

Os métodos de criptografia de biométricas foram inicialmente desenvolvidos com a

finalidade de criar uma chave criptográfica a partir de características biométricas. No entanto,

estes métodos não eram viáveis, uma vez que para a mesma característica biométrica eram

obtidos diferentes templates, resultando em chaves criptográficas sempre diferentes. Mas, a

criptografia juntamente com a biometria pode também ser utilizada como um modelo de

protecção de templates biométricos, na qual se dá o nome de criptosistemas biométricos

[Uludag.U 2004].

O modelo de protecção baseado em criptosistemas biométricos, utiliza algumas

informações sobre o template biométrico que são armazenadas na base de dados. Estas

informações são designados por dados de ajuda, helper data. Os dados de ajuda não têm de

revelar informações significativas sobre o template biométrico original, sendo necessário na

autenticação, extrair uma chave criptográfica a partir do template biométrico obtido na

Page 43: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

42

autenticação do utilizador. A decisão da autenticação é realizada indirectamente através da

verificação da validade das chaves extraídas.

Criptosistemas biométricos podem ser classificados segundo dois tipos, dependendo

como são obtidos os dados de ajuda, helper data:

Chave de ligação – Nestes sistemas os dados de ajuda são obtidos por ligação de

uma chave (independente das características biométricas) com os template, ou

seja, os dados de ajuda são o resultado de uma suposta “encriptação”. A

autenticação, em sistemas de chave de ligação, envolve a recuperação da chave

utilizada na obtenção dos dados de ajuda, a partir do template biométrico obtido na

autenticação. O template obtido na autenticação vai “desencriptar” os dados de

ajuda de modo a extrair a chave encriptada na fase de registo para a decisão sobre

a autenticação. Um exemplo deste sistema está descrito na referência bibliográfica

[Juels 2002];

Geração de chaves – Nestes sistemas os dados de ajuda são obtidos unicamente

a partir dos templates biométricos. Na autenticação, com a ajuda do template

pretende-se desencriptar os dados de ajuda de modo a obter o template original

obtido na fase de registo. Em seguida, através de um algoritmo, é gerada uma

chave criptográfica a partir do template recuperado para posterior validação da

autenticação. Um exemplo destes sistemas está descrito na referência bibliográfica

[Dodis 2006].

O sistema proposto nesta dissertação e apresentado no Capitulo 4 funciona como um

método de transformação de características. A função de transformação utilizada é irreversível.

2.3 Conclusões

Este capítulo teve o objectivo de apresentar o estado da arte sobre biometria. Nele foram

apresentados implementações de sistemas biométricos utilizando diferentes características

biométricas. Cada um destes sistemas tem vantagens e desvantagens na sua utilização,

dependendo a escolha do sistema biométrico, dos requisitos impostos por quem o quer

implementar.

A utilização destes sistemas biométricos na autenticação de pessoas ainda não é maior

devido às vulnerabilidades detectadas nestes sistemas, tornando-o vulnerável a possíveis

ataques de pessoas mal intencionadas. Estas vulnerabilidades têm sido estudadas de maneira

a conseguir eliminá-las ou, pelo menos, diminuir cada vez mais o impacto delas num sistema

biométrico. Deste modo, neste capítulo apresentou-se algumas medidas de segurança para

precaver essas mesmas vulnerabilidades e possíveis ataques a elas associadas.

No próximo capítulo apresenta-se uma característica biométrica que nos últimos anos

tem tido uma grande ascensão na autenticação de pessoas, a íris, da qual não se falou neste

capítulo. No próximo capítulo é também descrita uma implementação de um sistema de

reconhecimento biométrico baseado na íris sem segurança dos templates.

Page 44: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

43

3 Reconhecimento biométrico

O reconhecimento biométrico baseado na íris, tem sido alvo nos últimos anos de

numerosos estudos [Bowyer 2008]. A íris contém um padrão rico, composto de fibras

colágenas, rugas, sulcos, estrias, veias, sardas, fendas, buracos e cores. Embora a tecnologia

biométrica de reconhecimento pelo padrão da íris seja relativamente recente, tem-se mostrado

bastante precisa e estável. Deste modo, neste capítulo descreve-se um sistema de

reconhecimento biométrico baseado na íris na qual não existe nenhuma protecção dos dados

biométricos armazenados na base de dados.

3.1 Olho Humano

O olho humano tem uma forma parecida com um globo, ou seja, tem uma forma

aproximadamente esférica, com cerca de 25 mm de diâmetro, daí ser também designado de

globo ocular. A sua estrutura interna encontra-se representada na Figura 3.1.

Figura 3.1 - Estrutura interna do olho humano [Internet2]

O globo ocular possui no seu exterior seis músculos que são responsáveis pelos

movimentos oculares, e também três camadas concêntricas interligadas entre si com a função

de visão, nutrição e protecção. A camada externa é constituída pela córnea e pela esclerótica e

serve para protecção. A camada média ou vascular é formada pela íris, a coróide e o corpo

ciliar, é composta por vasos sanguíneos que têm a função de nutrição de todas as camadas do

globo ocular. A camada interna é constituída pela retina que é a parte nervosa [Júnior 2005].

A principal função do globo ocular é a captação dos raios de luz reflectidos pelos

objectos. Esses raios atravessam em primeiro lugar a zona da córnea, que é um tecido

transparente que cobre a íris como se fosse um vidro de um relógio. Em seguida os raios

penetram o globo ocular através da pupila atingido de seguida o cristalino que funciona como

uma lente de focalização. Por último os raios convergem para um ponto focal sobre a retina

[Júnior 2005].

Page 45: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

44

Na retina, mais de cem milhões de células fotossensíveis transformam os raios de luz em

impulsos electroquímicos, que são enviados ao cérebro pelo nervo óptico.

As células fotossensíveis da retina podem ser de dois tipos distintos, os cones e os

bastonetes.

Os cones são sensíveis às cores e permitem alta resolução de detalhes, graças às suas

ligações nervosas, estando ligados individualmente ao seu próprio terminal nervoso. Por

actuarem mais eficientemente sob condições de iluminação favoráveis, os cones são

responsáveis pela chamada visão de alta luminosidade [Júnior 2005].

O olho humano possui três tipos de cones, os quais estão intimamente ligados às faixas

de cores de maior sensibilidade. O primeiro tipo é mais sensível à faixa do espectro

correspondente ao violeta e ao azul. O segundo tipo é mais sensível ao verde enquanto o

terceiro tipo tem maior sensibilidade ao amarelo, laranja e vermelho. Devido a essas

características do olho humano, radiações luminosas de cores diferentes podem ser

capturadas por combinações das três cores: vermelho, verde e azul [Júnior 2005].

Os bastonetes proporcionam uma visão geral e, por serem sensíveis a baixos níveis de

iluminação, são responsáveis pela chamada visão de baixa luminosidade. Objectos coloridos à

luz do dia parecem ser acinzentados ao anoitecer, pois apenas os bastonetes são estimulados.

As imagens que se projectam dentro do olho, são invertidas, ou seja, de cabeça para

baixo, sendo o cérebro a fazer a sua inversão, colocando-a na posição correcta [Júnior 2005].

O olho humano tem algumas características que podem ser usadas como biométricas

em sistemas de reconhecimento humano. As mais utilizadas são a íris e retina. A íris porque

contém um padrão rico, composto de fibras colágenas, rugas, sulcos, estrias, veias, sardas,

fendas, buracos e cores e a retina através dos vasos sanguíneos que a atravessam.

3.1.1 A íris

A íris corresponde à parte colorida do olho, em torno da pupila. A íris humana começa a

ser formada durante o terceiro mês de gestação. A estrutura está completa antes do oitavo

mês de gestação, mas a pigmentação continua a ser desenvolvida no primeiro ano depois do

nascimento.

A íris corresponde a uma região circular entre duas circunferências (pupila e a

esclerótica), conforme se ilustra na Figura 3.2.

Figura 3.2 - Olho Humano [Internet3]

A função principal da íris é regular a quantidade de luz que entra nos olhos, aumentando

ou diminuindo o tamanho da pupila. Caso exista muita intensidade de luz a entrar no olho, a íris

Page 46: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

45

faz com que a pupila se contraia, diminuindo o seu tamanho, caso contrário, a íris faz dilatar a

pupila. Este último fenómeno acontece por exemplo à noite quando estamos em presença de

pouca luz.

A íris é dividida em 3 camadas principais: a borda anterior, o estroma e o epitélio

pigmentado. Estas três camadas estão bem visíveis na Figura 3.3. A borda anterior é composta

por um arranjo denso de células pigmentadas (melanócitos), fibras de colágenas e fibroblastos,

enquanto que o estroma é uma camada fibrovascular composta por fibras de colágeno

distribuídas livremente. É mais espessa e menos densa que a borda anterior. Por fim, a epitélio

pigmentado é uma camada rugosa cuja a densidade dos pigmentos é tal que se torna opaca,

absorvendo grande parte da luz que a atinge [Pamplona 2007].

Figura 3.3 - A íris [Internet4]

As variações de cor entre os diferentes tipos de íris são normalmente atribuídas à

melanina que existe dentro do estroma da íris.

A íris de um indivíduo é única e precisa, caracterizada por um padrão de características

específicas como coroa, glândula, filamentos, sardas, sulcos radiais e estrias, podendo ser

utilizada em sistemas de reconhecimento biométrico. Pesquisas indicam que a probabilidade

de existir um “sósia” de uma íris é de um em 1078. Porém, existem algumas maneiras de se

modificar o seu formato, como é o caso de um trauma (acidente de carro, por exemplo) ou uma

cirurgia de glaucoma. Já cirurgias de miopia ou astigmatismo e o uso de óculos ou lentes não

alteram o relevo da íris [Tisse 2003].

Pesquisas também observaram que os padrões de textura da íris são diferentes entre

gémeos idênticos e até entre olhos de uma mesma pessoa, indicando que a sua formação é

independente de características genéticas, excepto a sua cor [Daugman 1993] e [Jr. 2003].

Este fenómeno é bastante interessante para sistemas de reconhecimento biométrico.

3.1.2 Vantagens e desvantagens da utilização da íris em sistemas biométricos

Algumas das vantagens e desvantagens da utilização da característica biométrica íris em

sistemas de reconhecimento biométrico estão descritas na Tabela 3.1:

45

faz com que a pupila se contraia, diminuindo o seu tamanho, caso contrário, a íris faz dilatar a

pupila. Este último fenómeno acontece por exemplo à noite quando estamos em presença de

pouca luz.

A íris é dividida em 3 camadas principais: a borda anterior, o estroma e o epitélio

pigmentado. Estas três camadas estão bem visíveis na Figura 3.3. A borda anterior é composta

por um arranjo denso de células pigmentadas (melanócitos), fibras de colágenas e fibroblastos,

enquanto que o estroma é uma camada fibrovascular composta por fibras de colágeno

distribuídas livremente. É mais espessa e menos densa que a borda anterior. Por fim, a epitélio

pigmentado é uma camada rugosa cuja a densidade dos pigmentos é tal que se torna opaca,

absorvendo grande parte da luz que a atinge [Pamplona 2007].

Figura 3.3 - A íris [Internet4]

As variações de cor entre os diferentes tipos de íris são normalmente atribuídas à

melanina que existe dentro do estroma da íris.

A íris de um indivíduo é única e precisa, caracterizada por um padrão de características

específicas como coroa, glândula, filamentos, sardas, sulcos radiais e estrias, podendo ser

utilizada em sistemas de reconhecimento biométrico. Pesquisas indicam que a probabilidade

de existir um “sósia” de uma íris é de um em 1078. Porém, existem algumas maneiras de se

modificar o seu formato, como é o caso de um trauma (acidente de carro, por exemplo) ou uma

cirurgia de glaucoma. Já cirurgias de miopia ou astigmatismo e o uso de óculos ou lentes não

alteram o relevo da íris [Tisse 2003].

Pesquisas também observaram que os padrões de textura da íris são diferentes entre

gémeos idênticos e até entre olhos de uma mesma pessoa, indicando que a sua formação é

independente de características genéticas, excepto a sua cor [Daugman 1993] e [Jr. 2003].

Este fenómeno é bastante interessante para sistemas de reconhecimento biométrico.

3.1.2 Vantagens e desvantagens da utilização da íris em sistemas biométricos

Algumas das vantagens e desvantagens da utilização da característica biométrica íris em

sistemas de reconhecimento biométrico estão descritas na Tabela 3.1:

45

faz com que a pupila se contraia, diminuindo o seu tamanho, caso contrário, a íris faz dilatar a

pupila. Este último fenómeno acontece por exemplo à noite quando estamos em presença de

pouca luz.

A íris é dividida em 3 camadas principais: a borda anterior, o estroma e o epitélio

pigmentado. Estas três camadas estão bem visíveis na Figura 3.3. A borda anterior é composta

por um arranjo denso de células pigmentadas (melanócitos), fibras de colágenas e fibroblastos,

enquanto que o estroma é uma camada fibrovascular composta por fibras de colágeno

distribuídas livremente. É mais espessa e menos densa que a borda anterior. Por fim, a epitélio

pigmentado é uma camada rugosa cuja a densidade dos pigmentos é tal que se torna opaca,

absorvendo grande parte da luz que a atinge [Pamplona 2007].

Figura 3.3 - A íris [Internet4]

As variações de cor entre os diferentes tipos de íris são normalmente atribuídas à

melanina que existe dentro do estroma da íris.

A íris de um indivíduo é única e precisa, caracterizada por um padrão de características

específicas como coroa, glândula, filamentos, sardas, sulcos radiais e estrias, podendo ser

utilizada em sistemas de reconhecimento biométrico. Pesquisas indicam que a probabilidade

de existir um “sósia” de uma íris é de um em 1078. Porém, existem algumas maneiras de se

modificar o seu formato, como é o caso de um trauma (acidente de carro, por exemplo) ou uma

cirurgia de glaucoma. Já cirurgias de miopia ou astigmatismo e o uso de óculos ou lentes não

alteram o relevo da íris [Tisse 2003].

Pesquisas também observaram que os padrões de textura da íris são diferentes entre

gémeos idênticos e até entre olhos de uma mesma pessoa, indicando que a sua formação é

independente de características genéticas, excepto a sua cor [Daugman 1993] e [Jr. 2003].

Este fenómeno é bastante interessante para sistemas de reconhecimento biométrico.

3.1.2 Vantagens e desvantagens da utilização da íris em sistemas biométricos

Algumas das vantagens e desvantagens da utilização da característica biométrica íris em

sistemas de reconhecimento biométrico estão descritas na Tabela 3.1:

Page 47: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

46

Tabela 3.1 – Vantagens e desvantagens da utilização da íris em sistemas dereconhecimento biométrico

Vantagens Desvantagens

Órgão bastante protegido e interno do

olho, sendo muito difícil de modificar.

A contracção ou dilatação da pupila alteram o

tamanho da íris.

Não sofre grandes modificações ao

longo da vida.

A íris é um alvo pequeno (1cm) para

ser adquirido a grandes distâncias.

A íris é única de pessoa para pessoa.

A probabilidade de existir uma

“sósia”da íris é de 1 em 1078.

Localizada atrás de uma superfície reflectora,

húmida e curva pode ficar obstruída pelos

cílios (pestanas) ou pálpebras e sujeita a

reflexos.

3.2 Reconhecimento biométrico baseado na íris

Os primeiros protótipos de sistemas de reconhecimento de íris foram idealizados pelos

oftalmologistas Flom e Safir, em 1987 [Bowyer 2008], mas foi John Daugman que, no início da

década de 90, desenvolveu os algoritmos, os métodos matemáticos e as técnicas para

codificar os padrões de textura da íris e compará-las de maneira eficiente [Daugman 1993] [Jr.

2003]. Daugman foi o impulsionador de sistemas biométricos baseados na íris. A partir daí

vários outros trabalhos têm sido desenvolvidos. Entre os mais conhecidos encontram-se o

proposto por Wildes [Wildes 1994] [Wildes 1997], por Li Ma e Tieniu Tan [Ma 2002] [Ma 2004]

e por Masek [Masek 2003].

Deste modo, o próximo passo neste capítulo é descrever uma implementação de um

sistema de reconhecimento biométrico usando a íris, baseado no trabalho de Masek,

descrevendo alguns resultados importantes da sua implementação. Esta implementação não

tem preocupações de segurança dos templates biométricos, ou seja, os templates biométricos

extraídos da íris do utilizador são colocados directamente na base de dados estando

acessíveis a possíveis ataques na base de dados.

O sistema de reconhecimento biométrico da íris tem duas fases distintas, a fase de

registo e a fase de autenticação, conforme foi descrito no Capítulo 1. Na fase de registo, uma

imagem x do olho humano é adquirida, depois através da etapa de segmentação a íris y é

isolada das restantes características do olho, sendo de seguida normalizada de modo a ter

uma dimensão fixa. Depois é extraída, da íris normalizada, uma descrição da sua textura t,

chamado perfil, ou template, que por sua vez é registada na base de dados. Cada utilizador

insere na base de dados uma identificação, ID, que fica associada aos seus templates. A fase

de registo da característica biométrica da íris está representada na Figura 3.4.

Page 48: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

47

Figura 3.4 - Sistema de reconhecimento biométrico – Fase de registo

A autenticação de um utilizador pode ser feita segundo dois modos: identificação ou

verificação, conforme foi descrito no Capítulo 1. Esta dissertação só explora o modo de

verificação, porque é o mais utilizado por parte das empresas devido à necessidade de provar

cada vez mais a identidade das pessoas a terem acesso a determinadas informações, serviços

ou locais. Neste modo as primeiras quatro etapas são iguais ao modo de registo, isto é, uma

imagem x’ do olho do utilizador que quer autenticar-se no sistema é adquirida. Depois, a íris y’

é isolada das restantes características do olho humano, sendo posteriormente normalizada de

modo a ter uma dimensão fixa. Depois é extraída da íris a sua textura, template, t’ que por sua

vez é comparado com os templates, t, armazenados. O utilizador tem de fornecer a sua

identificação, ID, para que seja possível comparar o template adquirido na autenticação com os

templates correspondentes a esse ID armazenados na base de dados. A etapa comparação

tem como função decidir sobre a autenticação do utilizador, isto é, se o utilizador que quer

autenticar-se ao sistema é ou não legítimo. A fase de autenticação, em modo de verificação,

está representada na Figura 3.5.

Figura 3.5 - Sistema de reconhecimento biométrico – fase de autenticação em modo deverificação

Na fase de registo e na fase de autenticação existem pois quatro etapas fundamentais.

Essas etapas são a aquisição da característica biométrica, a segmentação, a normalização e a

extracção dos perfis biométricos. Para além destas etapas existe uma outra no modo de

autenticação que é bastante importante, que é a comparação. É nesta etapa que o sistema de

reconhecimento biométrico da íris decide se um utilizador é ou não legítimo.

47

Figura 3.4 - Sistema de reconhecimento biométrico – Fase de registo

A autenticação de um utilizador pode ser feita segundo dois modos: identificação ou

verificação, conforme foi descrito no Capítulo 1. Esta dissertação só explora o modo de

verificação, porque é o mais utilizado por parte das empresas devido à necessidade de provar

cada vez mais a identidade das pessoas a terem acesso a determinadas informações, serviços

ou locais. Neste modo as primeiras quatro etapas são iguais ao modo de registo, isto é, uma

imagem x’ do olho do utilizador que quer autenticar-se no sistema é adquirida. Depois, a íris y’

é isolada das restantes características do olho humano, sendo posteriormente normalizada de

modo a ter uma dimensão fixa. Depois é extraída da íris a sua textura, template, t’ que por sua

vez é comparado com os templates, t, armazenados. O utilizador tem de fornecer a sua

identificação, ID, para que seja possível comparar o template adquirido na autenticação com os

templates correspondentes a esse ID armazenados na base de dados. A etapa comparação

tem como função decidir sobre a autenticação do utilizador, isto é, se o utilizador que quer

autenticar-se ao sistema é ou não legítimo. A fase de autenticação, em modo de verificação,

está representada na Figura 3.5.

Figura 3.5 - Sistema de reconhecimento biométrico – fase de autenticação em modo deverificação

Na fase de registo e na fase de autenticação existem pois quatro etapas fundamentais.

Essas etapas são a aquisição da característica biométrica, a segmentação, a normalização e a

extracção dos perfis biométricos. Para além destas etapas existe uma outra no modo de

autenticação que é bastante importante, que é a comparação. É nesta etapa que o sistema de

reconhecimento biométrico da íris decide se um utilizador é ou não legítimo.

47

Figura 3.4 - Sistema de reconhecimento biométrico – Fase de registo

A autenticação de um utilizador pode ser feita segundo dois modos: identificação ou

verificação, conforme foi descrito no Capítulo 1. Esta dissertação só explora o modo de

verificação, porque é o mais utilizado por parte das empresas devido à necessidade de provar

cada vez mais a identidade das pessoas a terem acesso a determinadas informações, serviços

ou locais. Neste modo as primeiras quatro etapas são iguais ao modo de registo, isto é, uma

imagem x’ do olho do utilizador que quer autenticar-se no sistema é adquirida. Depois, a íris y’

é isolada das restantes características do olho humano, sendo posteriormente normalizada de

modo a ter uma dimensão fixa. Depois é extraída da íris a sua textura, template, t’ que por sua

vez é comparado com os templates, t, armazenados. O utilizador tem de fornecer a sua

identificação, ID, para que seja possível comparar o template adquirido na autenticação com os

templates correspondentes a esse ID armazenados na base de dados. A etapa comparação

tem como função decidir sobre a autenticação do utilizador, isto é, se o utilizador que quer

autenticar-se ao sistema é ou não legítimo. A fase de autenticação, em modo de verificação,

está representada na Figura 3.5.

Figura 3.5 - Sistema de reconhecimento biométrico – fase de autenticação em modo deverificação

Na fase de registo e na fase de autenticação existem pois quatro etapas fundamentais.

Essas etapas são a aquisição da característica biométrica, a segmentação, a normalização e a

extracção dos perfis biométricos. Para além destas etapas existe uma outra no modo de

autenticação que é bastante importante, que é a comparação. É nesta etapa que o sistema de

reconhecimento biométrico da íris decide se um utilizador é ou não legítimo.

Page 49: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

48

3.2.1 Aquisição da característica biométrica

Esta é a primeira etapa num sistema de reconhecimento biométrico baseado na íris e

uma das mais importantes, porque é nela que se adquire a amostra biométrica, neste caso a

imagem da íris. A imagem é adquirida por intermédio de dispositivos próprios, nomeadamente

sensores biométricos, Figura 3.6. Estes utilizam câmaras fotográficas digitais para obter uma

imagem da íris da pessoa. A imagem obtida é semelhante a uma imagem de uma câmara

fotográfica normal. A imagem da íris deve ser adquirida segundo um plano paralelo ao sensor,

de forma a minimizar possíveis distorções. Felizmente muito trabalho tem sido feito na

aquisição de imagem de íris para que fosse possível o desenvolvimento dos sistemas de

reconhecimento da íris. Quando se quer projectar um dispositivo de captura de imagem, devem

ter-se em consideração três aspectos principais: a iluminação, o sistema de posicionamento, e

o sistema físico de captura [Junior 2005]. O sistema físico de captura é composto pela câmara

fotográfica de aquisição de imagem e pelo sistema de luz utilizada para a obtenção de uma

imagem de alta qualidade que realce a textura da íris.

Figura 3.6 - Sensor biométrico para captura da imagem da íris [Internet5]

Os primeiros dispositivos de aquisição de imagens utilizavam apenas uma fonte de luz,

para além de câmaras de fotografias normais. Estes dispositivos dificultavam a extracção da

textura da íris, especialmente em olhos escuros, sendo necessárias técnicas de

processamento de imagem para minimizar as limitações de aquisição da imagem da íris. Com

o avanço da tecnologia, outros dispositivos apareceram no mercado. Dispositivos modernos

utilizam fontes de luz infra-vermelhas e câmaras que conseguem captar este tipo de luz. Este

tipo de dispositivos obtêm uma excelente qualidade da textura da íris, independentemente da

cor dos olhos da pessoa, e a fonte de luz é invisível ao ser humano, não incomodando o

utilizador na obtenção da característica biométrica [Junior 2005].

No sistema proposto por Jonh Daugman a informação da cor é desprezada, analisando a

imagem em tons de cinzento [Junior 2005]. O posicionamento do utilizador em relação ao

sistema é feito por um display de cristal líquido, permitindo que o utilizador veja a imagem da

sua íris, corrigindo se necessário, possíveis falhas de posicionamento.

No sistema desenvolvido por Richard Wildes [Wildes 1994] [Wildes 1997] usa-se uma

fonte de luz difusa e polarizada, juntamente com uma câmara sensível à baixa intensidade de

48

3.2.1 Aquisição da característica biométrica

Esta é a primeira etapa num sistema de reconhecimento biométrico baseado na íris e

uma das mais importantes, porque é nela que se adquire a amostra biométrica, neste caso a

imagem da íris. A imagem é adquirida por intermédio de dispositivos próprios, nomeadamente

sensores biométricos, Figura 3.6. Estes utilizam câmaras fotográficas digitais para obter uma

imagem da íris da pessoa. A imagem obtida é semelhante a uma imagem de uma câmara

fotográfica normal. A imagem da íris deve ser adquirida segundo um plano paralelo ao sensor,

de forma a minimizar possíveis distorções. Felizmente muito trabalho tem sido feito na

aquisição de imagem de íris para que fosse possível o desenvolvimento dos sistemas de

reconhecimento da íris. Quando se quer projectar um dispositivo de captura de imagem, devem

ter-se em consideração três aspectos principais: a iluminação, o sistema de posicionamento, e

o sistema físico de captura [Junior 2005]. O sistema físico de captura é composto pela câmara

fotográfica de aquisição de imagem e pelo sistema de luz utilizada para a obtenção de uma

imagem de alta qualidade que realce a textura da íris.

Figura 3.6 - Sensor biométrico para captura da imagem da íris [Internet5]

Os primeiros dispositivos de aquisição de imagens utilizavam apenas uma fonte de luz,

para além de câmaras de fotografias normais. Estes dispositivos dificultavam a extracção da

textura da íris, especialmente em olhos escuros, sendo necessárias técnicas de

processamento de imagem para minimizar as limitações de aquisição da imagem da íris. Com

o avanço da tecnologia, outros dispositivos apareceram no mercado. Dispositivos modernos

utilizam fontes de luz infra-vermelhas e câmaras que conseguem captar este tipo de luz. Este

tipo de dispositivos obtêm uma excelente qualidade da textura da íris, independentemente da

cor dos olhos da pessoa, e a fonte de luz é invisível ao ser humano, não incomodando o

utilizador na obtenção da característica biométrica [Junior 2005].

No sistema proposto por Jonh Daugman a informação da cor é desprezada, analisando a

imagem em tons de cinzento [Junior 2005]. O posicionamento do utilizador em relação ao

sistema é feito por um display de cristal líquido, permitindo que o utilizador veja a imagem da

sua íris, corrigindo se necessário, possíveis falhas de posicionamento.

No sistema desenvolvido por Richard Wildes [Wildes 1994] [Wildes 1997] usa-se uma

fonte de luz difusa e polarizada, juntamente com uma câmara sensível à baixa intensidade de

48

3.2.1 Aquisição da característica biométrica

Esta é a primeira etapa num sistema de reconhecimento biométrico baseado na íris e

uma das mais importantes, porque é nela que se adquire a amostra biométrica, neste caso a

imagem da íris. A imagem é adquirida por intermédio de dispositivos próprios, nomeadamente

sensores biométricos, Figura 3.6. Estes utilizam câmaras fotográficas digitais para obter uma

imagem da íris da pessoa. A imagem obtida é semelhante a uma imagem de uma câmara

fotográfica normal. A imagem da íris deve ser adquirida segundo um plano paralelo ao sensor,

de forma a minimizar possíveis distorções. Felizmente muito trabalho tem sido feito na

aquisição de imagem de íris para que fosse possível o desenvolvimento dos sistemas de

reconhecimento da íris. Quando se quer projectar um dispositivo de captura de imagem, devem

ter-se em consideração três aspectos principais: a iluminação, o sistema de posicionamento, e

o sistema físico de captura [Junior 2005]. O sistema físico de captura é composto pela câmara

fotográfica de aquisição de imagem e pelo sistema de luz utilizada para a obtenção de uma

imagem de alta qualidade que realce a textura da íris.

Figura 3.6 - Sensor biométrico para captura da imagem da íris [Internet5]

Os primeiros dispositivos de aquisição de imagens utilizavam apenas uma fonte de luz,

para além de câmaras de fotografias normais. Estes dispositivos dificultavam a extracção da

textura da íris, especialmente em olhos escuros, sendo necessárias técnicas de

processamento de imagem para minimizar as limitações de aquisição da imagem da íris. Com

o avanço da tecnologia, outros dispositivos apareceram no mercado. Dispositivos modernos

utilizam fontes de luz infra-vermelhas e câmaras que conseguem captar este tipo de luz. Este

tipo de dispositivos obtêm uma excelente qualidade da textura da íris, independentemente da

cor dos olhos da pessoa, e a fonte de luz é invisível ao ser humano, não incomodando o

utilizador na obtenção da característica biométrica [Junior 2005].

No sistema proposto por Jonh Daugman a informação da cor é desprezada, analisando a

imagem em tons de cinzento [Junior 2005]. O posicionamento do utilizador em relação ao

sistema é feito por um display de cristal líquido, permitindo que o utilizador veja a imagem da

sua íris, corrigindo se necessário, possíveis falhas de posicionamento.

No sistema desenvolvido por Richard Wildes [Wildes 1994] [Wildes 1997] usa-se uma

fonte de luz difusa e polarizada, juntamente com uma câmara sensível à baixa intensidade de

Page 50: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

49

luz, a qual é visível a humanos. O uso de uma fonte de luz polarizada elimina a reflexão

especular da fonte de luz, permitindo que detalhes da textura da íris sejam capturados. A

combinação de luz difusa com uma câmara sensível a baixa intensidade de luz não incomoda o

utilizador. O controlo de posicionamento feito por Wildes é por meio de dois quadrados

centralizados na lente da câmara, em planos paralelos, ocasionando uma sobreposição desses

quadrados quando o indivíduo se posiciona de forma correcta [Junior 2005].

No sistema de W. W. Boles há uma manipulação de ruídos, variações de iluminação e

da distância entre a câmara e o utilizador. O sistema tolera variações na iluminação e na

reflexão especular, sendo invariante ao tamanho e a translação da imagem. Neste sistema, as

imagens são também representadas em tons de cinzento [Junior 2005].

No sistema proposto por Li Ma e Tieniu Tan Tan [Ma 2002] [Ma 2004] as imagens são

capturadas usando um sensor óptico digital de iluminação infra-vermelha. O utilizador

necessita de se posicionar a 4 centímetros do sensor (aproximadamente) para obter uma

imagem de qualidade da íris. No dispositivo existe também um espelho colocado frente à lente

do sensor para que o utilizador possa localizar-se e manter o olho no centro do sensor. As

imagens de íris capturadas são em tons de cinzento e possuem resolução de 320 x 280 pixéis

[Junior, 2005].

Para fins de pesquisa, investigação e desenvolvimento de sistemas de reconhecimento

da íris, estão disponíveis quatro bases de dados que são geralmente usadas:

CASIA - O instituto de pesquisa CASIA (Chinese Academy of Sciences, Institute of

Automation) disponibiliza uma base de dados dividida em 3 versões: a primeira contem

756 imagens de íris pertencentes a 108 utilizadores diferentes, a segunda contem 1200

imagens de 60 utilizadores, a terceira contém 22051 imagens de 700 utilizadores

diferentes [internet9];

UBIRIS - A Universidade de Beira Interior, em Portugal, disponibiliza uma base de

dados com cerca de 1.900 imagens da íris de 241 utilizadores, contendo ruído e que

simulam a colaboração mínima do utilizador [internet10];

CUHK - A Chinese University of Hong Kong oferece cerca de 250 imagens de íris para

fins de pesquisa;

UPOL - Finalmente, 384 imagens de íris são disponibilizadas pela UPOL (Univerzita

Palackého v Olomouci), da República Checa.

Nesta dissertação a etapa de aquisição de imagens da íris não é efectuada. As imagens

da íris são adquiridas através da base de dados da CASIA. Esta opção tem as suas vantagens

visto que não se tem que preocupar com os problemas que podem advir da aquisição de

imagens de utilizadores, tais como os reflexos especulares, distorções provocadas pelo

sistema de captura da imagem do olho e o posicionamento do olho na sua aquisição. A

utilização desta base de dados com bastantes imagens de utilizadores faz com que se obtenha

melhores resultados sobre o desempenho do sistema. Outra das vantagens da sua utilização e

talvez a mais importante é permitir a comparação dos resultados obtidos com os resultados

publicados de outros sistemas de reconhecimento biométrico.

Page 51: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

50

3.2.2 Segmentação

A segunda etapa do sistema de reconhecimento biométrico da íris, a segmentação, tem

como função determinar a região da íris numa imagem. Esta etapa é das mais críticas deste

sistema, porque uma má localização da íris pode resultar em taxas de reconhecimento

biométrico de utilizadores legítimos muito baixas, tornando este sistema ineficaz,

A íris é considerada como uma região circular entre duas circunferências conforme

descrito na secção 3.1.1. Uma das circunferências corresponde à fronteira entre a íris e a

pupila (parte preta do olho), a outra corresponde à fronteira entre a íris e a esclerótica (parte

branca do olho). Mas, nem sempre é possível assumir que as duas circunferências são

concêntricas, isto é que têm o mesmo centro. Em muitos casos, o centro da pupila é diferente

do da íris [Daugman 2004]. Na Figura 3.7 mostra-se dois exemplos do cálculo dos centros das

circunferências, um em que as circunferências têm o mesmo centro e outro em que as

circunferências não têm o mesmo centro.

a) b)Figura 3.7 - Exemplos de circunferências da íris e da pupila, a) íris e pupila com o mesmo

centro da circunferência, b) íris e pupila com centros de circunferência diferentes

As pálpebras e os cílios (pestanas) normalmente interferem com as partes superior e

inferior da íris e também reflexos especulares podem corromper a sua textura. Um método de

segmentação bem sucedida deve localizar e tratar estes aspectos. A utilização de iluminação

infravermelha no processo de aquisição da imagem do olho evita o aparecimento de reflexos.

Antes da localização das circunferências é necessário detectar os contornos da imagem.

Os contornos são obtidos através de uma versão modificada do algoritmo de Canny [Canny

1986]. Através deste algoritmo obtemos um gradiente na direcção desejada, seja ela horizontal,

vertical ou ambas [Wildes 1994]. Wildes verificou que o gradiente vertical possui os pontos

mais relevantes para a detecção da fronteira íris/esclerótica, enquanto que o gradiente

horizontal possui maior relevância para a detecção de pálpebras.

A localização das circunferências é feita usando a transformada circular de Hough [Duda

1972], para estimar os parâmetros das coordenadas do centro xc,yc e raio ( r ) da pupila e da

íris, que são determinados de acordo com a equação:

xc+ yc- r2=0 (3.1)

Page 52: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

51

De maneira a tornar a detecção mais eficiente e precisa, a procura pelos parâmetros da

fronteira íris/esclerótica é realizada primeiro, seguida pela busca da fronteira íris/pupila. Esta

estratégia diminui a área de busca, uma vez que a pupila está contida no interior da íris. Os

limites radiais de busca das circunferências na imagem, para a base de dados da CASIA

versão 1 foram obtidos experimentalmente por Masek: de 90 a 150 pixéis para os limites do

raio da íris e de 28 a 75 pixéis para os limites do raio da pupila [Masek, 2003]. Com estes

parâmetros Masek em 756 imagens conseguiu 624 imagens bem segmentadas (83%). Um

exemplo de uma imagem bem segmentada e outra mal segmentada estão representados na

Figura 3.8.

a) b)

Figura 3.8 - a) Imagem da íris bem segmentada, b) imagem da íris mal segmentada

A detecção de regiões da íris obstruídas pelas pálpebras é realizada utilizando a

transformada linear de Hough, usando apenas o gradiente horizontal. Esta estratégia é

realizada para ambas as pálpebras (separadamente) e permite isolar as regiões aonde existe

oclusão da íris. São determinados os pontos de intersecção da circunferência exterior

(íris/esclerótica) com as rectas geradas pela transformada linear de Hough correspondentes às

pálpebras inferior e superior. Em seguida traçam-se duas rectas paralelas que intersectam os

pontos que estejam mais próximos da fronteira da pupila. Caso não seja possível no espaço de

Hough encontrar a recta que intersecta a circunferência da íris, significa que as pálpebras não

interferem com a íris. Na Figura 3.9 está descrito o processo de detecção das regiões da íris

obstruídas pelas pálpebras.

Page 53: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

52

a) b)

c) d)

Figura 3.9 – Processo de detecção das regiões da íris obstruídas pelas pálpebras, a)imagem da íris, b) imagem da íris segmentada com as rectas que representam as

pálpebras, c) rectas horizontais são geradas passando pelo ponto mais próximo dafronteira da pupila d) zonas da imagem da íris representativas da oclusão das pálpebras

e dos reflexos especulares

Os cílios são detectados por uma simples técnica de thresholding. Pixéis com valores

inferiores a 100 são identificados como ruído [Masek 2003]. Todos os tipos de ruído devem ser

marcados para que não sejam considerados na etapa de codificação. Um exemplo de uma

imagem segmentada com a introdução da zona de ruído está representado na Figura 3.10.

Figura 3.10 - Imagem segmentada com realce da zona da íris interferida por parte dassobrancelhas e cílios

3.2.3 Normalização

A normalização é uma etapa necessária porque as imagens podem ser capturadas sob

diferentes condições, por exemplo, dilatação da pupila, movimentação do olho, inclinação da

cabeça e iluminação no acto da captura da imagem do olho. São pois possíveis diferentes

posições e escalas, sendo necessário transformá-las numa escala fixa e igual para todas as

imagens, de modo a ser possível a comparação entre duas imagens da íris.

A normalização baseia-se no modelo rubber sheet proposto por Daugman [Daugman

1993]. Este transforma as imagens da íris representadas em coordenadas cartesianas para

Page 54: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

53

coordenadas polares ( r , θ ) com r a variar entre [0,1] e θ a variar entre [0, ]. A transformação

de coordenadas cartesianas em polares obedece às seguintes equações:

I x(r,θ),y(r,θ) →I(r,θ) (3.2)

Com: x(r,θ)= 1-r ∗ xp(θ) + r ∗ xI(θ) (3.3)

y(r,θ)= 1-r ∗ yp(θ) + r ∗ yI(θ) (3.4)

Onde I(x,y) é a imagem da íris em coordenadas cartesianas, I(r,θ) corresponde à

imagem em coordenadas polares, (xp, yp) e (xI, yI ) são os centros da pupila e da íris. O centro

da pupila é considerado como o ponto de referência do sistema de coordenadas.

Como nem sempre é possível considerar a pupila e a íris como circunferências concêntricas,

uma correcção na dimensão radial, dependente do ângulo, é realizada no modelo de

Daugman. Linhas radiais são traçadas, do centro da pupila até a fronteira da íris com

esclerótica separadas por um ângulo θ , como mostra a Figura 3.12. O novo raio r' é calculado

através da equação: r = √α ∗ β ± α ∗ β2- α- rI2 (3.5)

Com :

α=ox2+oy

2 (3.6)

ox2=xp - xI (3.7)

oy2=yp - yI (3.8)

β=cos(π- arctan ox2

oy2 - θ ) (3.9)

onde r' é o raio da íris.

A Figura 3.11 descreve o funcionamento do modelo rubber sheet.

Figura 3.11 - Modelo rubber sheet

Page 55: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

54

Figura 3.12 - Imagem da íris, com leve deslocamento entre os centros da íris e da pupilasegundo uma direcção θ

O número de pontos escolhidos em cada linha radial define a resolução radial.

Analogamente, a quantidade de linhas define a resolução angular. Vinte pontos radiais e

duzentos e quarenta pontos angulares formam a imagem normalizada utilizada no trabalho de

Masek [Masek 2003]. A Figura 3.13 apresenta um exemplo da íris com ruído após a

normalização:

Figura 3.13 - Imagem da região da íris, com ruído, após normalização

3.2.4 Extracção das características da íris

A extracção das características tem como principal função extrair da íris toda a

informação relevante da sua textura que permita identificar um utilizador. A esta informação dá-

se o nome de perfis ou templates.

Um dos métodos para extracção das características da íris é o uso de filtros de Gabor,

pois oferecem uma boa resposta sobre localização espacial (orientação) e frequência,

simultaneamente. Mas não é possível construir filtros com largura de banda arbitrária sem se

preocupar com os efeitos da componente DC causados pela sua simetria [Wang 2008]. Em

vez da utilização de filtros de Gabor podem usar-se filtros Log-Gabor, conseguindo-se assim

criar um filtro com qualquer largura de banda que pode ser optimizado para produzir um filtro

com menores dimensões espaciais [Kovesi 2008].

Field, foi o primeiro a propor o uso de filtros Log-Gabor [Bastos], sugerindo que

imagens naturais são melhor codificadas por filtros que possuam função de transferência

gaussiana, quando observadas numa escala logarítmica de frequência. Este filtro apresenta

duas características importantes, não possui componente DC e a sua função de transferência é

prolongada para um grande intervalo de frequências, o que torna possível o uso de maiores

larguras de banda para capturar informações importantes. Devido à particularidade da função

logaritmo ser infinito na origem, o filtro Log-Gabor é construído no domínio da frequência. Num

sistema de coordenadas polares, o filtro Log-Gabor 2D pode ser dividido em duas

Page 56: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

55

componentes, a radial e a angular. A equação que representa os filtros Log-Gabor 2D é dada

por:

G(r,θ)= exp -log r

f0

2

2 log σr2 .exp

-(θ-θ0)2σθ2

2

(3.10)

onde f0 é a frequência central, θ0 é o ângulo de orientação, σr e σθ são a largura de banda

radial e angular, respectivamente.

Segundo Kovesi [Kovesi 2008], os valores 0.74, 0.55 e 0.41 para σr correspondem a um

filtro com largura de banda de uma, duas e três oitavas, respectivamente. A Figura 3.14

representa um espectro de Fourier para as componentes radial e angular do filtro de gabor. Os

espectros foram calculados variando o raio em torno da frequência central, para a componente

radial e variando o ângulo θ em torno do ângulo de orientação θ0 para a componente angular.

Figura 3.14 - Espectro de fourier para componente radial com f0 =0,1 e =0,55, b)Espectro de fourier para componente angular = 0 e =π/8 , c) Espectro de fourier do

filtro Log-Gabor 2D [Bastos]

A extracção de características, como informações de fase da textura da íris, resultam da

convolução entre a imagem da Iris normalizada, e um filtro Log-Gabor. Esta operação é dada

pela seguinte equação:

hRe,Im= ∫ ∫ I(r,θ) ∗ g(r,θ)drdθθr (3.11)

onde I(r, θ) representa a íris normalizada e g(r, θ) representa o filtro Log-Gabor.

A informação da fase de cada elemento da textura da íris é quantizado segundo o

método de Daugman ilustrado na figura seguinte:

Page 57: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

56

Figura 3.15 - Método de Daugman utilizado para a quantização das informações de faseda textura da íris

O resultado da quantização para cada elemento de informação de fase são dois bits,

um para a parte real e outro para a parte imaginária.

No total são quantizados 20x240 elementos de informação de fase, logo são gerados

9600 bits representativos da textura da íris, a qual dá-se o nome de template.

Uma quantidade igual de bits é atribuída à máscara de ruído, onde estão marcadas as

áreas de oclusão com a íris, pálpebras, cílios e reflexos especulares, que não devem ser

consideradas na comparação na fase de autenticação.

3.2.5 Comparação

Nesta etapa, o sistema de reconhecimento biométrico da íris decide se um dado

utilizador é legítimo ou não através da comparação do template adquirido na autenticação com

os templates armazenados na base de dados. A distância de Hamming é uma das métricas

que é utilizada para verificar a legitimidade do utilizador a um sistema biométrico.

A distância de Hamming dá uma medida de quantos bits são diferentes entre os dois

templates. Através da distância de Hamming consegue-se descobrir se dois templates foram

gerados da mesma íris ou se foram gerados de íris diferentes. Às comparações entre templates

gerados da mesma íris dá-se o nome intra-classe, da mesma forma às comparações entre

templates gerados de íris diferentes dá-se o nome de inter-classe.

A distância de Hamming, é representada pela equação seguinte:

Distância de Hamming = 1N

* ∑ Xj (XOR) YjNj=1 (3.12)

onde X e Y são os templates a comparar e N é o número total de bits dos templates.

Se o sistema de reconhecimento biométrico utilizasse a equação acima descrita para

decidir se um dado utilizador é legítimo ou não, poderia ter resultados não muito satisfatórios,

porque os templates continham todas as zonas de oclusão da íris que poderia fazer com que o

sistema tomasse decisões erradas sobre uma dada autenticação. Para resolver este problema

necessita-se de incorporar na distância de Hamming as máscaras de ruído obtidas na etapa da

extracção da característica da íris. A distância de Hamming é então calculada segundo a

equação seguinte:

Page 58: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

57

Distância de Hamming = ‖(X XOR Y) AND (mascara X AND mascara Y)‖‖mascara X AND mascara Y‖ (3.13)

X e Y são os templates a comparar e mascara X e mascara Y são as máscaras de ruído dos

templates.

O operador XOR detecta a discordância entre pares de bits dos templates, enquanto o

operador AND retira do teste todos os bits corrompidos, isto é, os bits dos templates

correspondentes aos bits 1 das máscaras de ruído não são utilizados na comparação entre

templates.

As inconsistências rotacionais ocorridas na etapa de aquisição da íris e que não são

detectadas na etapa da normalização da íris são resolvidas no cálculo da distância de

Hamming através da deslocação de um número de bits de um template para a esquerda e para

a direita. Por cada deslocação feita no template temos uma distância de Hamming calculada,

sendo que no final da comparação entre dois templates, a distância de Hamming seleccionada

é a menor porque corresponde há melhor comparação entre os templates. Masek detectou

através de resultados experimentais que oito deslocações para a esquerda e para a direita do

template para a base de dados da CASIA consegue-se um bom resultado na comparação,

conseguindo o sistema obter uma melhor decisão sobre a autenticação do utilizador [Masek,

2003].

3.2.6 Resultados da implementação do sistema de reconhecimento biométricosem segurança dos dados biométricos

A implementação do sistema de reconhecimento biométrico baseado na íris sem

segurança dos dados biométricos é feita através do programa MATLAB 7.6 (MATLAB 2008). A

etapa de aquisição da biométrica íris não é executada nesta dissertação, ou seja, utiliza-se a

base de dados da CASIA versão 3 – internal com 2655 imagens de 249 utilizadores. Esta base

de dados contém imagens dos dois olhos do utilizador, mas toma-se como opção nesta

dissertação que as imagens do olho esquerdo e direito do mesmo utilizador são identificadas

como sendo de utilizadores diferentes, ou seja, o template resultante da imagem do olho

esquerdo e direito do mesmo utilizador têm identificações diferentes na base de dados. A base

de dados é dividida em duas partes, a primeira fica para treino, com 1449 imagens de 203

utilizadores e a segunda para teste, com 1205 imagens de 182 utilizadores. A base de dados

para treino é utilizada para definir todos os parâmetros necessários do sistema de

reconhecimento biométrico e também para um primeiro teste ao desempenho do sistema.

A base de dados para teste é utilizada para testar o desempenho do sistema quando

são inseridos na base de dados do sistema novos utilizadores.

Devido às diferenças entre os templates do utilizador obtidos na fase de registo e na fase

de autenticação decidiu-se que por cada utilizador são inseridos na base de dados do sistema

três templates correspondentes às três primeiras imagens da íris do utilizador para assim obter

melhores taxas de reconhecimento. Na etapa da segmentação utilizam-se os mesmos limites

radiais de busca das circunferências de Masek [Masek 2003]. A etapa de segmentação da íris

Page 59: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

58

é bem sucedida em 1313 imagens das 1449 imagens na base de dados de treino e em 1004

imagens das 1204 imagens na base de dados de teste. Nesta dissertação é detectada uma

boa segmentação da íris através do cálculo da distância euclidiana entre o centro da

circunferência da pupila e o centro da circunferência da íris, sendo o valor máximo aceitável

nove. Este valor é calculado pela comparação entre as imagens segmentadas e os valores de

distâncias euclidianas correspondentes. A distância euclidiana é calculada através da seguinte

equação:

Distância = (xi − xp) − (yi − yp) (3.14)

Onde (xi,yi) é o centro da circunferência da íris e (xp,yp) é o centro da circunferência da

pupila. Só as imagens da íris bem segmentadas são utilizadas nas próximas etapas do sistema

de reconhecimento biométrico baseado na íris.

As etapas de segmentação, normalização, extracção da característica da íris e

comparação são efectuadas através dos ficheiros elaborados por Masek e Kovesi. Estes

ficheiros foram fornecidos pelos Orientadores da dissertação [Masek_1 2003].

Na etapa de comparação utiliza-se a distância de Hamming para verificar se um dado

utilizador é legítimo ou não ao sistema biométrico, conforme foi descrito anteriormente neste

capítulo. A base de dados de treino serve para definir os parâmetros do sistema, neste caso o

limiar de decisão. O número total de comparações possíveis para a base de dados de treino

entre templates do mesmo utilizador e de utilizadores diferentes encontra-se descrito na lista

seguinte:

Tipo de base de dados – Treino;

Base de dados da Casia – Versão 3, internal;

Número de imagens bem segmentadas – 1313;

Número de comparações intra-classe – 4319;

Número de comparações intra-classe – 857009.

A cada comparação efectuada entre templates resulta uma distância de Hamming

calculada. As distribuições de distâncias de Hamming para os dois tipos de comparações

encontram-se ilustradas nas Figuras 3.16 e 3.17.

Page 60: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

59

Figura 3.16 – Distribuição de distâncias de Hamming para comparações do tipo intra-classe

Figura 3.17 - Distribuição de distâncias de Hamming para comparações do tipo inter-classe

O limiar de decisão representa um valor máximo da distância Hamming permitido para o

sucesso da autenticação do utilizador, ou seja, valores de distância de Hamming abaixo do

valor do limiar de decisão originam uma autenticação bem sucedida, caso contrário, a

autenticação é mal sucedida. Pela observação das Figuras 3.16 e 3.17, o valor do limiar de

decisão deve situar-se próximo da distância de Hamming 0,4 para que o sistema de

reconhecimento biométrico sem segurança dos templates biométricos tenha um bom

desempenho em termos de autenticação de utilizadores legítimos, e bastante seguro em

termos de autenticação de utilizadores não legítimos. A análise do desempenho do sistema é

feita através das taxas de erro de falsa aceitação, FAR e falsa rejeição, FRR, conforme foi

descrito no Capítulo 1. Na fase de registo, insere-se na base de dados do sistema, três

templates por utilizador, conforme foi descrito anteriormente nesta secção. As restantes

imagens dos utilizadores são utilizadas na fase de autenticação, ou seja, as imagens utilizadas

na fase de registo não são utilizadas na fase de autenticação. Nesta fase, o utilizador tem de

Page 61: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

60

fornecer o seu ID e a sua imagem da íris para que o template extraído dela, seja comparado

com cada um dos templates guardados na base de dados do sistema.

Nesta dissertação utilizou-se duas estratégias para o sistema de reconhecimento

biométrico sem segurança decidir sobre a autenticação do utilizador:

Primeira estratégia – A primeira estratégia é o sistema decidir autenticar com êxito

o utilizador se numa das três comparações entre o template obtido na autenticação

e os templates inscritos na base de dados do sistema obtiver uma autenticação

válida;

Segunda estratégia – A segunda estratégia é o sistema decidir autenticar com

êxito o utilizador se nas três comparações possíveis entre o template obtido na

autenticação e os templates inscritos na base de dados do sistema obtiver duas

autenticações válidas.

Quando utilizada a base de dados de treino com 1313 imagens na etapa de aquisição

tem-se as seguintes taxas de erros para o sistema de reconhecimento biométrico sem

segurança, Tabela 3.2:

Tabela 3.2 - Avaliação do desempenho do sistema segundo as taxas de erro FAR e FRR1ª estratégia 2ª estratégia

Limiar de decisão FAR FRR FAR FRR0,38 0,00042 0 0,000046 0,0013810,39 0,00061 0 0,000092 0,0013810,4 0,001335 0 0,000145 0,001381

0,41 0,002823 0 0,000351 0,0013810,42 0,007295 0 0,001168 0,0013810,43 0,020665 0 0,005525 0,001381

Conforme foi descrito no Capítulo 1, as taxas de erro FAR e FRR que definem o

desempenho do sistema podem ser representadas graficamente, Figura 3.18:

0

0,005

0,01

0,015

0,37 0,38 0,39 0,4 0,41 0,42 0,43 0,44

Taxa

s de

err

o

Limiar de decisão

a)

FAR para 2ª estratégia

FRR para 2ª estratégia

FAR para 1ª estratégia

FRR para 1ª estratégia

Page 62: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

61

Figura 3.18 – a) Representação gráfica das taxas de erro FAR e FRR para a base dedados de treino, b) Curvas ROC

Pela análise da Tabela 3.2 e da Figura 3.18 verifica-se que o sistema de reconhecimento

biométrico sem segurança baseado na íris tem um melhor desempenho em termos de

autenticação de utilizadores legítimos, FRR, quando a primeira estratégia é tomada pelo

sistema para decisão da autenticação do utilizador, mas a segunda estratégia tem um melhor

desempenho em termos de rejeição de utilizadores não legítimos, FAR. A taxa de erro falsa

rejeição, FRR causa frustração ao utilizador e a taxa de erro de falsa aceitação causa fraude

ao sistema. A melhor estratégia para a decisão sobre a autenticação do utilizador é aquela que

minimiza as duas taxas de erro. Como já foi dito anteriormente este sistema não tem qualquer

segurança dos templates, logo a escolha da estratégia para decisão da autenticação do

utilizador que melhor se adequa a este sistema é a segunda, pois apresenta melhores

resultados em termos da taxa de erro FAR e obtém taxa de erro FRR baixa (0,1381%). O limiar

de decisão que melhores resultados obtém para as taxas de erro FAR e FRR é 0,38

(FAR=0,0046%, FRR=0,1381%). A taxa EER para este sistema é aproximadamente 0,0014

( 0,14%).

Deste modo, os resultados em termos das taxas de erro, FAR e FRR, obtidos para a

base de dados de teste com 1004 imagens (as três primeiras imagens são utilizadas na fase de

registo e as restantes imagens na fase de autenticação), tendo por base a segunda estratégia

na decisão do sistema sobre a autenticação do utilizador são os seguintes variando o limiar de

decisão, Tabela 3.3:

Tabela 3.3 – Avaliação do desempenho do sistema segundo as taxas de erro FAR e FRRLimiar de decisão FAR FRR

0,38 0,000028 0,009470,39 0,000028 0,0075760,4 0,000071 0,005682

0,41 0,000171 0,0037880,42 0,00047 0,0018940,43 0,002293 0,001894

0

0,0005

0,001

0,0015

0 0,002 0,004 0,006 0,008

FRR

FAR

b)

ROC para 2ª estratégia

ROC para 1ª estratégia

Page 63: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

62

A representação das taxas de erro FAR e FRR que definem o desempenho do sistema

podem ser representadas graficamente através da Figura 3.19.

Figura 3.19 – a) Representação gráfica das taxas de erro FAR e FRR obtidas para a basede dados de teste, b) Curvas ROC

Ao utilizar a base de dados de teste na etapa de aquisição, verifica-se que o sistema tem

pior desempenho em termos da taxa de erro FRR mas em compensação tem um melhor

desempenho para a taxa de erro FAR quando comparado com o sistema que utiliza a base de

dados de treino. Esta diferença pode resultar da maior diferença entre templates do mesmo

utilizador e templates de utilizadores diferentes existentes na base de dados de teste. O limiar

de decisão que melhores resultados obtém para as taxas de erro FAR e FRR é 0,42

(FAR=0,047%,FRR=0,1894%).

A taxa EER para este sistema quando utilizada a base de dados de teste é

aproximadamente 0,0014 ( 0,14%) que é a mesma quando utilizada a base de dados de treino

na etapa aquisição para um primeiro teste o desempenho do sistema.

3.2.7 Aplicações do sistema de reconhecimento biométrico baseado na íris

A utilização dos sistemas de reconhecimento biométrico baseado na íris garantem maior

segurança e confiabilidade, tem menos custos de manutenção e assumem-se cada vez mais

como uma solução de peso, levando à substituição dos sistemas tradicionais de verificação de

0

0,002

0,004

0,006

0,008

0,38 0,39 0,4 0,41 0,42 0,43 0,44

Taxa

s de

err

o

Limiar de decisão

a)

FAR

FRR

00,0030,0060,0090,012

0 0,0002 0,0004

FRR

FAR

b)

ROC utilizando base dedados teste

ROC utilizando a basede dados de treino

Page 64: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

63

identidades, senhas e cartões, que deixam transparecer problemas de utilização fraudulenta,

extravio e intrusão.

Estes sistemas podem ser utilizados em diferentes aplicações, das quais se destacam as

seguintes:

Controlo de acesso a áreas restritas: As áreas onde o acesso deve ser restrito a

um número limitado de pessoas, poderiam fazer uso da tecnologia biométrica

baseada na íris para o controlo do acesso de forma segura, prática e confiável;

Controlo de assiduidade e relógio de ponto: A tarefa de registar a presença de

um funcionário em uma empresa é normalmente realizada através dos chamados

cartões de ponto, ou cartões magnéticos. Tais métodos dão margem a pequenas

fraudes, ou seja, não há um controlo eficiente de quem está registando a sua

presença. Isso poderia ser evitado através da introdução de sistemas de

reconhecimento biométrico baseado na íris , que apresentam maior confiabilidade e

segurança;

Passaporte biométrico: O novo modelo de passaporte, que gradualmente tende a

ser adoptado em todo o mundo, contém outros dados de identificação além da foto

habitual, por exemplo a íris.

3.3 Conclusões

A utilização da íris em sistemas de reconhecimento biométrico tem vantagens e

desvantagens, conforme foi descrito neste capítulo. Uma das grandes vantagens desta

biométrica é ter características que a tornam única em cada pessoa e difícil de ser copiada,

uma vez que a íris é um órgão interno do olho humano.

Um dos objectivos deste capítulo foi implementar um sistema de reconhecimento

biométrico sem segurança baseado na íris e verificar qual o seu desempenho na autenticação

de utilizadores legítimos e rejeição de utilizadores não legítimos. Os resultados obtidos foram

bastante satisfatórios, uma vez que, as taxas de erro obtidas para o limiar de decisão 0,42

foram 0,047% para a taxa de erro FAR e 0,1894% para a taxa de erro FRR. Um dos problemas

detectados na implementação do sistema verificou-se no módulo de segmentação, porque o

método utilizado por Masek na segmentação da íris é computacionalmente bastante intenso,

não sendo uma boa alternativa para sistemas de autenticação em tempo real.

Mas, apesar do bom desempenho deste sistema em termos das taxas de falsa aceitação

e falsa rejeição, este não garante a total segurança dos dados biométricos, transmitidos entre

os diferentes módulos que compõem o sistema e armazenados na base de dados, não

garantindo desta forma a privacidade do utilizador, um dos objectivos enunciados no Capitulo

2, devido às vulnerabilidades e possíveis ataques a elas associadas. No próximo capítulo é

apresentado um sistema que permite proteger os dados biométricos armazenados na base de

dados do sistema, garantindo assim uma maior privacidade dos utilizadores.

Page 65: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

64

4 Sistema de reconhecimento biométrico baseado na íris comreforço da segurança dos dados biométricos

Um dos problemas existentes em sistemas de reconhecimento biométrico é como

garantir a segurança dos dados biométricos, neste caso, os templates guardados na base de

dados. A privacidade dos dados biométricos do utilizador inseridos no sistema deve ser

cuidadosamente assegurada por parte das empresas que utilizem este tipo de sistemas. No

Capítulo 2 descreveram-se algumas vulnerabilidades destes sistemas, apresentando algumas

medidas de prevenção para que ataques ao sistema biométrico não tenham sucesso.

No capítulo anterior descreveu-se um sistema de reconhecimento biométrico baseado na

íris que, em termos de autenticação de utilizadores legítimos e não legítimos apresenta bons

resultados, demonstrando que o sistema de reconhecimento biométrico baseado na íris é um

bom sistema de verificação da identidade dos utilizadores. Mas, neste sistema, a privacidade

dos dados biométricos inseridos na base de dados é praticamente nula, isto é, uma pessoa mal

intencionada que tenha acesso à base de dados pode utilizar as informações guardadas nela

para obter acesso a serviços, informações ou locais privados.

Para resolver este problema, nesta dissertação propõe-se a utilização de funções

criptográficas de hash. Estas funções garantem a privacidade dos dados biométricos porque

são funções unidireccionais, ou seja, a partir da chave hexadecimal obtida é praticamente

impossível descobrir qual a informação, neste caso o template, que originou essa chave.

A utilização destas funções implica que os templates obtidos na fase de registo e na fase

de autenticação, para utilizadores legítimos, sejam exactamente iguais para obterem a mesma

chave criptográfica, porque ligeiras diferenças nos templates resultam em chaves criptográficas

completamente distintas. Na biometria, a aquisição sucessiva de imagens da mesma

biométrica raramente resulta em templates iguais, sendo por isso necessário, a utilização de

códigos de correcção de erros para eliminar essas possíveis diferenças entre os templates do

mesmo utilizador legítimo.

Deste modo, para melhorar o sistema de reconhecimento biométrico baseado na íris

apresentado no capítulo anterior, introduzem-se funções criptográficas de hash e códigos

correctores de erros. A fase de registo e de autenticação do sistema de reconhecimento

biométrico baseado na íris com reforço da segurança são ilustradas, para o modo de

verificação, nas Figura 4.1 e Figura 4.2.

Page 66: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

65

Figura 4.1 - Fase de registo

Na fase de registo, uma imagem do olho humano x é adquirida, depois através da etapa

de segmentação a íris y é isolada das restantes características do olho, sendo de seguida

normalizada de modo a ter uma dimensão fixa. Depois é extraída da íris normalizada y a sua

textura t, chamado perfil, ou template, em seguida este é transformado numa chave

hexadecimal h através da função de hash, sendo esta a informação que é guardada na base

de dados. Para além da aplicação da função de hash, ao template é também aplicado um

codificador de canal, que produz um código de correcção de erros, ficando o resultado

guardado num vector de tamanho n, também designado por codeword. Os k primeiros bits

deste vector são o template e os restantes n–k são os bits de paridade, s, usados para corrigir

o possível ruído de amostragem presente no template adquirido no momento da autenticação.

Estes bits de paridade são guardados na base de dados juntamente com a chave

representante do template e uma identificação, ID, do utilizador.

Figura 4.2 - Fase de autenticação, modo de verificação

Na fase de autenticação, modo de verificação, uma imagem do olho humano x’ é

adquirida, a íris y’ é segmentada, normalizada de modo a ter uma dimensão fixa e é calculado

o respectivo template t’. Em seguida, através dos bits de paridade guardados na base de

65

Figura 4.1 - Fase de registo

Na fase de registo, uma imagem do olho humano x é adquirida, depois através da etapa

de segmentação a íris y é isolada das restantes características do olho, sendo de seguida

normalizada de modo a ter uma dimensão fixa. Depois é extraída da íris normalizada y a sua

textura t, chamado perfil, ou template, em seguida este é transformado numa chave

hexadecimal h através da função de hash, sendo esta a informação que é guardada na base

de dados. Para além da aplicação da função de hash, ao template é também aplicado um

codificador de canal, que produz um código de correcção de erros, ficando o resultado

guardado num vector de tamanho n, também designado por codeword. Os k primeiros bits

deste vector são o template e os restantes n–k são os bits de paridade, s, usados para corrigir

o possível ruído de amostragem presente no template adquirido no momento da autenticação.

Estes bits de paridade são guardados na base de dados juntamente com a chave

representante do template e uma identificação, ID, do utilizador.

Figura 4.2 - Fase de autenticação, modo de verificação

Na fase de autenticação, modo de verificação, uma imagem do olho humano x’ é

adquirida, a íris y’ é segmentada, normalizada de modo a ter uma dimensão fixa e é calculado

o respectivo template t’. Em seguida, através dos bits de paridade guardados na base de

65

Figura 4.1 - Fase de registo

Na fase de registo, uma imagem do olho humano x é adquirida, depois através da etapa

de segmentação a íris y é isolada das restantes características do olho, sendo de seguida

normalizada de modo a ter uma dimensão fixa. Depois é extraída da íris normalizada y a sua

textura t, chamado perfil, ou template, em seguida este é transformado numa chave

hexadecimal h através da função de hash, sendo esta a informação que é guardada na base

de dados. Para além da aplicação da função de hash, ao template é também aplicado um

codificador de canal, que produz um código de correcção de erros, ficando o resultado

guardado num vector de tamanho n, também designado por codeword. Os k primeiros bits

deste vector são o template e os restantes n–k são os bits de paridade, s, usados para corrigir

o possível ruído de amostragem presente no template adquirido no momento da autenticação.

Estes bits de paridade são guardados na base de dados juntamente com a chave

representante do template e uma identificação, ID, do utilizador.

Figura 4.2 - Fase de autenticação, modo de verificação

Na fase de autenticação, modo de verificação, uma imagem do olho humano x’ é

adquirida, a íris y’ é segmentada, normalizada de modo a ter uma dimensão fixa e é calculado

o respectivo template t’. Em seguida, através dos bits de paridade guardados na base de

Page 67: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

66

dados, o template vai ser “corrigido” de modo a tentar obter uma cópia fiel do template original

do utilizador que foi registado na base de dados, x^. A partir deste instante já é possível aplicar

a função de hash ao template corrigido, x^, e comparar a chave hexadecimal obtida com a

chave registada na base de dados para o utilizador com a identificação inserida no acto de

autenticação. Caso as chaves sejam iguais a autenticação do utilizador é bem sucedida, caso

contrário a sua autenticação não é permitida pelo sistema.

Nas secções seguintes descreve-se mais detalhadamente os códigos de correcção de

erros, em especial os códigos low-density-parity-check, LDPC e as funções criptográficas de

hash.

4.1 Códigos de Correcção de Erros LDPC

4.1.1 Introdução

A história dos códigos de correcção de erros começou em 1948 com a publicação de um

artigo pelo matemático e engenheiro Claude E. Shannon, do laboratório Bell [Shannon 1948].

Ele lançou as bases da Teoria de Informação, mostrando a importância de dispor de técnicas

de codificação de canal que permitissem uma transmissão e um armazenamento robusto de

dados. Shannon não só determinou os limites teóricos para a taxa máxima de transmissão de

dados através de um canal de comunicação, como também, colocou um enorme desafio de

investigação que era determinar uma técnica de codificação de canal capaz de atingir a taxa

máxima de transmissão por ele deduzida. Inicialmente os maiores interessados nestes códigos

foram os matemáticos, que os desenvolveram consideravelmente nas décadas de 50 e de 60.

A partir da década de 70, com as pesquisas espaciais e a grande popularização dos

computadores, estes códigos começaram a interessar também aos engenheiros.

Em 1993 Berrou, Glavieux e Thitimajshimi [Berrou 1993] apresentaram uma nova técnica

de codificação designada por turbo códigos, TC, que revolucionou toda a investigação

realizada até então. Baseado em técnicas de descodificação iterativas, foi possível pela

primeira vez aproximar-se do limite de Shannon. Os melhoramentos conseguidos foram tão

surpreendentes e a técnica proposta tão revolucionária que foram precisos vários anos para

compreender e absorver os novos conceitos. À medida que a comunidade científica

concentrava a sua atenção no novo método, tornou-se claro que os seus fundamentos tinham

sido lançados muitos anos antes, em 1960 por Robert Gallager [Gallager 1962] [Gallager

1963], que na sua tese de doutoramento tinha proposto uma nova classe de códigos baseados

em matrizes de teste de paridade esparsas, conhecidos por Low Density Parity-Check Codes,

LDPC, e um algoritmo de descodificação iterativo designado por algoritmo soma de produtos,

SPA. Foi Makay e Neal [Neal 1995] [Neal 1997], que redescobriram os códigos LDPC e que

confirmaram as suas excelentes propriedades de correcção de erros, tendo provado que à

semelhança dos turbo códigos, os LDPC’s conseguiam atingir uma probabilidade de erro muito

próxima do limite de Shannon [Shannon 1948], conseguindo um melhor compromisso entre o

desempenho e complexidade na etapa da descodificação. .

Page 68: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

67

Hoje em dia estes códigos estão presentes no nosso quotidiano de diversas maneiras,

por exemplo, quando se utiliza informações digitalizadas, tais como assistir a um programa de

televisão, falar ao telefone, ouvir um CD de música, assistir a um filme em DVD, mandar um

recado a alguém via SMS ou navegar pela Internet.

Um código de correcção de erros consiste em acrescentar alguma informação a cada

mensagem que precisa de ser transmitida/armazenada de modo a que quando seja necessário

recuperar essa mensagem se consiga detectar e corrigir possíveis erros no processo de

transmissão/armazenamento.

A próxima secção desta dissertação serve para explicar uma classe muito importante de

códigos de detecção e correcção de erros, os códigos de bloco lineares, uma vez que, os

códigos acima referidos baseiam-se em códigos de bloco lineares.

4.1.2 Códigos de bloco lineares

Um código de correcção de erros diz-se um código de bloco se a cada mensagem de

símbolos do alfabeto X, de comprimento fixo k, o codificador de canal fizer corresponder uma

palavra de código de comprimento fixo n, com n>k. A diferença n-k representa o número de

símbolos de teste utilizados na detecção e correcção de erros. No caso de o alfabeto ser

binário, X={0,1}, o código de bloco diz-se binário.

Uma classe importante de códigos de correcção de erros é os códigos de bloco lineares,

na medida em que estes podem ser descritos matematicamente com base na teoria de

espaços vectoriais. Os códigos de bloco lineares binários utilizam aritmética módulo 2 e, como

tal, dizemos que um código binário é linear se a soma (módulo 2) de quaisquer palavras de

código é ainda uma palavra de código. Tendo em conta as propriedades da soma módulo 2,

facilmente concluímos que a soma de uma palavra de código consigo própria é o vector nulo,

pelo que uma das condições necessárias, mas não suficiente, para que um código seja linear é

que uma das palavras de código seja o vector nulo.

Dado um código linear binário (n,k), em que as palavras de código são vectores de

dimensão n do tipo:

c=[ c0 c1…cn-1]; (4.1)

e as mensagens a codificar são vectores de dimensão k, com n > k, do tipo:

m=[ m0 m1…mk-1]; (4.2)

a forma mais simples de representar esse código é com base numa matriz G, chamada de

matriz geradora de dimensão k x n. As palavras de código podem ser obtidas a partir da

seguinte equação:

c = mG; (4.3)

A partir da equação (4.3), tira-se a conclusão que cada bit da palavra de código é uma

combinação linear dos bits da mensagem. No entanto, esta observação não é suficiente para

afirmar que o conjunto de vectores { c0 c1…c2k-1} obtidos a partir da equação (4.3) para o

conjunto de mensagens { m0 m1…m2k-1} , constitui um código, ou seja, estamos perante um

Page 69: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

68

código se mensagens diferentes derem origem a palavras de código diferentes. Isto só é

possível, se as linhas da matriz G forem linearmente independentes. Só desta forma é possível

a sua descodificação unívoca.

Designando por ci o bit i de uma palavra de código, uma outra definição possível para um

código binário linear (n,k) é a seguinte: um código binário diz-se linear se todas as 2k palavras

de código satisfazem um conjunto de n-k equações lineares homogéneas em ci com i=0,…,n-1

,ou seja, um sistema de n-k equações homogéneas a n incógnitas. Estas equações são

designadas por equações de teste de paridade.

O sistema de equações pode ser descrito na forma matricial através da equação

seguinte:

HcT = 0 (n-k) x 1; (4.4)

em que H é a matriz de teste paridade, de dimensões (n-k) x n.

Uma característica desejada para os códigos de blocos lineares é que as palavras

código sejam apresentadas de forma sistemática, isto é, seja possível separá-la em duas

partes, a parte de mensagem e a parte de redundância, a que chamamos bits de paridade.

No caso de o código ser sistemático as palavras de código são do tipo:

c=[ c0 c1…cn-1] = [ m0 m1…mk-1 s0 s1…sn-k-1]; (4.5)

em que { s0 s1…sn-k-1 } são os bits de paridade e { m0 m1…mk-1 } são os bits da mensagem a

transmitir.

Neste caso os bits da mensagem são transmitidos de forma separada dos bits de

paridade, sendo estes obtidos como combinação linear dos primeiros,

s=[ s0 s1…sn-k-1] = mP; (4.6)

em que P representa a matriz de paridade de dimensão k x (n-k). Desta forma a matriz

geradora G pode ser escrita em termos sistemáticos da seguinte forma:

G=[P| I k]; (4.7)

em que Ik representa a matriz identidade de dimensão k x k.

Um código de bloco linear definido por uma matriz H de máxima característica é sempre

sistematizável e, nesse caso, por aplicação de operações lineares às linhas de H, esta poderá

ser pode ser escrita na forma sistemática:

H=[-PT| In-k ]; (4.8)

em que PT representa a transposta da matriz de paridade P de dimensão (n-k) x k e I a matriz

de identidade de dimensão (n-k) x (n-k)

A taxa de codificação é dada por k/n. Por exemplo, para uma palavra de código com 40

bits codificados e 20 bits de mensagem, a taxa de codificação é igual a 1/2.

Page 70: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

69

4.1.3 Os Códigos LDPC

Os códigos LDPC são códigos caracterizados por uma matriz de teste de paridade

esparsa, H, isto é, com uma baixa densidade de 1’s, ou seja, o número de 1’s na matriz é

bastante menor que o número de zeros,

Quando se tem um código LDPC de comprimento longo, a análise torna-se complexa

devido ao grande número de palavras de código envolvidas e, por isso, é comum adoptar-se

uma análise estatística para encontrar um código com baixa probabilidade de erro de

descodificação.

Os códigos LDPC podem ser de dois tipos: regulares ou irregulares.

Os códigos LDPC regulares foram propostos pela primeira vez por Robert Gallager em

1962 [Gallager 1962] [Gallager 1963]. Gallager definiu um código LDPC regular (n,k,wc), com

wc<<n-k como sendo um código de bloco linear cuja a matriz de teste de paridade tem

dimensões (n-k) x n contendo exactamente wc 1’s por coluna e wr=wcnm

1’s por linha, com m=n-

k.

Gallager provou ainda que fazendo wc ≥ 3 , o conjunto de códigos LDPC (n,k, wc) que

podem ser obtidos possuem, na sua grande maioria, uma distância mínima elevada, bastando

seguir algumas regras simples de construção, como por exemplo, garantir que quaisquer duas

colunas da matriz H possuam quanto muito um só 1 em comum.

Devido à baixa densidade de 1’s da matriz H consegue-se que o número mínimo de

colunas de H necessárias somar de forma a obter o vector nulo é elevado, garantindo assim,

uma distância mínima elevada para o código.

A distância mínima de um código, define-se como sendo a menor distância de Hamming

verificada para todos os pares distintos de palavras de código. A distância de Hamming, entre

duas palavras de código define-se como sendo o número de posições para as quais as duas

palavras diferem.

Mais recentemente começaram a ser estudados códigos LDPC irregulares, cuja matriz

de teste de paridade possui uma baixa densidade de 1’s mas em que o número de 1’s por

coluna e por linha não é constante.

Em [Richardson 2001] é feita a prova de que os códigos LDPC irregulares são

superiores aos regulares para blocos longos. No entanto, a realização em hardware dos

códigos LDPC regulares é mais simples visto que a sua estrutura pode ser explorada com vista

a simplificar o descodificador.

Além disso, para comprimentos de bloco mais curtos, os códigos irregulares possuem,

na maioria dos casos, uma distância mínima inferior aos regulares, daí a preferência por estes

últimos nessa situação.

Uma outra explicação para o melhor desempenho dos códigos LDPC irregulares tem por

base a sua representação em grafos de Tanner, assim como, a forma como estes são

descodificados.

Page 71: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

70

4.1.3.1 Grafo de Tanner ou bipartido

Um grafo de Tanner ou bipartido [Tanner 1981] é uma forma de visualização de códigos

LDPC que facilita a compreensão do processo de descodificação iterativa. A ideia central é

usar o grafo para estruturar as equações de teste de paridade, facilitando a codificação e a

descodificação. O grafo de Tanner é construído definindo-se os nós de bit, NBn, em

quantidades iguais às colunas da matriz H, e os nós de teste, NTm, em quantidades iguais às

linhas de H. O número de ligações, que sai de cada nó de bit em direcção aos nós de teste é

determinado pelo valor do peso de cada coluna da matriz de paridade, isto é, o número de 1’s

em cada coluna. Da mesma forma, o número de ligações que sai de cada nó de teste em

direcção aos nós de bit é igual ao valor do peso de cada linha da matriz, dado pelo número de

1’s em cada linha de H. Logo, as posições dos 1’s da matriz H definem as ligações entre nós

de bit e nós de teste, designadas por caminhos. O número de caminhos que chegam a cada nó

é designado pelo grau desse nó.

A seguir inclui-se um exemplo para demonstrar como se obtém um grafo de Tanner a

partir da matriz de teste de paridade.

Exemplo 4.1Considere-se o código binário linear LDPC (6,3), definido pela matriz de teste de paridade H:

H( × )=H(( )× =1 1 0 0 1 00 1 1 0 0 11 0 1 1 0 0

O grafo de Tanner associado à matriz H é:

Figura 4.3 - Grafo de Tanner

Dado um código LDPC (n,k), onde wcn é o grau do nó de bit NBn e wrm é o grau do nó de

teste NTm, conclui-se que: ∑ wci=ni=1 ∑ wrj

n-kj=1 ; (4.9)

ou seja, a soma dos graus de todos os nós de bit NBm’s é igual à soma dos graus de todos os

nós de teste NTn’s.

Para códigos LDPC regulares (n,k,wc), tem-se todos os nós de teste NTm’s com o mesmo

grau, e todos os nós de bit NBn’s também com o mesmo grau, chegando à conclusão através

da equação anterior que:

n x wc= (n-k) x wr ↔ wr = nn-k

wc; (4.10)

Um dos mais importantes conceitos relativos aos grafos de Tanner é a definição de ciclo.

Ciclo define-se como sendo um caminho fechado de comprimento l entre nós, sendo que o nó

70

4.1.3.1 Grafo de Tanner ou bipartido

Um grafo de Tanner ou bipartido [Tanner 1981] é uma forma de visualização de códigos

LDPC que facilita a compreensão do processo de descodificação iterativa. A ideia central é

usar o grafo para estruturar as equações de teste de paridade, facilitando a codificação e a

descodificação. O grafo de Tanner é construído definindo-se os nós de bit, NBn, em

quantidades iguais às colunas da matriz H, e os nós de teste, NTm, em quantidades iguais às

linhas de H. O número de ligações, que sai de cada nó de bit em direcção aos nós de teste é

determinado pelo valor do peso de cada coluna da matriz de paridade, isto é, o número de 1’s

em cada coluna. Da mesma forma, o número de ligações que sai de cada nó de teste em

direcção aos nós de bit é igual ao valor do peso de cada linha da matriz, dado pelo número de

1’s em cada linha de H. Logo, as posições dos 1’s da matriz H definem as ligações entre nós

de bit e nós de teste, designadas por caminhos. O número de caminhos que chegam a cada nó

é designado pelo grau desse nó.

A seguir inclui-se um exemplo para demonstrar como se obtém um grafo de Tanner a

partir da matriz de teste de paridade.

Exemplo 4.1Considere-se o código binário linear LDPC (6,3), definido pela matriz de teste de paridade H:

H( × )=H(( )× =1 1 0 0 1 00 1 1 0 0 11 0 1 1 0 0

O grafo de Tanner associado à matriz H é:

Figura 4.3 - Grafo de Tanner

Dado um código LDPC (n,k), onde wcn é o grau do nó de bit NBn e wrm é o grau do nó de

teste NTm, conclui-se que: ∑ wci=ni=1 ∑ wrj

n-kj=1 ; (4.9)

ou seja, a soma dos graus de todos os nós de bit NBm’s é igual à soma dos graus de todos os

nós de teste NTn’s.

Para códigos LDPC regulares (n,k,wc), tem-se todos os nós de teste NTm’s com o mesmo

grau, e todos os nós de bit NBn’s também com o mesmo grau, chegando à conclusão através

da equação anterior que:

n x wc= (n-k) x wr ↔ wr = nn-k

wc; (4.10)

Um dos mais importantes conceitos relativos aos grafos de Tanner é a definição de ciclo.

Ciclo define-se como sendo um caminho fechado de comprimento l entre nós, sendo que o nó

70

4.1.3.1 Grafo de Tanner ou bipartido

Um grafo de Tanner ou bipartido [Tanner 1981] é uma forma de visualização de códigos

LDPC que facilita a compreensão do processo de descodificação iterativa. A ideia central é

usar o grafo para estruturar as equações de teste de paridade, facilitando a codificação e a

descodificação. O grafo de Tanner é construído definindo-se os nós de bit, NBn, em

quantidades iguais às colunas da matriz H, e os nós de teste, NTm, em quantidades iguais às

linhas de H. O número de ligações, que sai de cada nó de bit em direcção aos nós de teste é

determinado pelo valor do peso de cada coluna da matriz de paridade, isto é, o número de 1’s

em cada coluna. Da mesma forma, o número de ligações que sai de cada nó de teste em

direcção aos nós de bit é igual ao valor do peso de cada linha da matriz, dado pelo número de

1’s em cada linha de H. Logo, as posições dos 1’s da matriz H definem as ligações entre nós

de bit e nós de teste, designadas por caminhos. O número de caminhos que chegam a cada nó

é designado pelo grau desse nó.

A seguir inclui-se um exemplo para demonstrar como se obtém um grafo de Tanner a

partir da matriz de teste de paridade.

Exemplo 4.1Considere-se o código binário linear LDPC (6,3), definido pela matriz de teste de paridade H:

H( × )=H(( )× =1 1 0 0 1 00 1 1 0 0 11 0 1 1 0 0

O grafo de Tanner associado à matriz H é:

Figura 4.3 - Grafo de Tanner

Dado um código LDPC (n,k), onde wcn é o grau do nó de bit NBn e wrm é o grau do nó de

teste NTm, conclui-se que: ∑ wci=ni=1 ∑ wrj

n-kj=1 ; (4.9)

ou seja, a soma dos graus de todos os nós de bit NBm’s é igual à soma dos graus de todos os

nós de teste NTn’s.

Para códigos LDPC regulares (n,k,wc), tem-se todos os nós de teste NTm’s com o mesmo

grau, e todos os nós de bit NBn’s também com o mesmo grau, chegando à conclusão através

da equação anterior que:

n x wc= (n-k) x wr ↔ wr = nn-k

wc; (4.10)

Um dos mais importantes conceitos relativos aos grafos de Tanner é a definição de ciclo.

Ciclo define-se como sendo um caminho fechado de comprimento l entre nós, sendo que o nó

Page 72: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

71

de partida e de chegada tem de ser o mesmo, em que l é o número de ligações entre nós

existentes no ciclo. Na Figura 4.4 ilustra-se um exemplo de um ciclo de comprimento 4.

Exemplo 4.2:

Figura 4.4 - Exemplo de um ciclo de comprimento 4 num grafo de Tanner

Qualquer ciclo de um grafo de Tanner tem um comprimento par e o seu valor mínimo é 4

correspondendo a uma matriz de teste de paridade em que existem duas colunas com dois 1’s

em comum.

Ao definir um código LDPC através da matriz H procura-se evitar a existência de ciclos

de comprimento 4 no seu grafo de Tanner, de forma a melhorar o desempenho do algoritmo de

descodificação ou seja quanto maior o ciclo, maior a distância mínima da matriz H. Uma das

regras na construção da matriz H para evitar a existência de ciclos de dimensão 4, é garantir

que quaisquer duas colunas da matriz, possuam quanto muito, um só 1, em comum.

4.1.3.2 Construção dos códigos LDPC

A forma mais simples de representar um código LDPC (n,k), consiste na construção da

matriz de teste de paridade, H. Caso se queira construir um código LDPC regular deve ter-se

em conta que o número de 1’s da matriz H por coluna seja igual a wc e o número de 1’s por

linha seja igual a wr=wcnm,. Caso se queira construir um código LDPC irregular o número de 1’s

por linha e o número de 1’s por coluna variam. Na construção da matriz H deve-se maximizar o

ciclo mínimo presente nos grafos de Tanner obtidos a partir das equações de paridade e

também a distância mínima de modo a que o código tenha um bom desempenho na etapa de

descodificação.

Mackay e Neal apresentaram algumas estratégias para a construção de códigos LDPC

[Neal 1995]. Estas estratégias são apresentadas de forma numerada, sendo convicção dos

autores que as de ordem superior maximizam a probabilidade do código obtido possuir um

melhor desempenho. No entanto, eles próprios reconhecem não possuir qualquer prova deste

facto.

Algumas dessas estratégias são descritas a seguir:

i. A matriz H é gerada a partir de uma matriz de zeros de dimensões (n-k) x n em que

o número de 1’s por coluna é colocado aleatoriamente com peso igual a wc (o

código gerado poderá ser irregular);

71

de partida e de chegada tem de ser o mesmo, em que l é o número de ligações entre nós

existentes no ciclo. Na Figura 4.4 ilustra-se um exemplo de um ciclo de comprimento 4.

Exemplo 4.2:

Figura 4.4 - Exemplo de um ciclo de comprimento 4 num grafo de Tanner

Qualquer ciclo de um grafo de Tanner tem um comprimento par e o seu valor mínimo é 4

correspondendo a uma matriz de teste de paridade em que existem duas colunas com dois 1’s

em comum.

Ao definir um código LDPC através da matriz H procura-se evitar a existência de ciclos

de comprimento 4 no seu grafo de Tanner, de forma a melhorar o desempenho do algoritmo de

descodificação ou seja quanto maior o ciclo, maior a distância mínima da matriz H. Uma das

regras na construção da matriz H para evitar a existência de ciclos de dimensão 4, é garantir

que quaisquer duas colunas da matriz, possuam quanto muito, um só 1, em comum.

4.1.3.2 Construção dos códigos LDPC

A forma mais simples de representar um código LDPC (n,k), consiste na construção da

matriz de teste de paridade, H. Caso se queira construir um código LDPC regular deve ter-se

em conta que o número de 1’s da matriz H por coluna seja igual a wc e o número de 1’s por

linha seja igual a wr=wcnm,. Caso se queira construir um código LDPC irregular o número de 1’s

por linha e o número de 1’s por coluna variam. Na construção da matriz H deve-se maximizar o

ciclo mínimo presente nos grafos de Tanner obtidos a partir das equações de paridade e

também a distância mínima de modo a que o código tenha um bom desempenho na etapa de

descodificação.

Mackay e Neal apresentaram algumas estratégias para a construção de códigos LDPC

[Neal 1995]. Estas estratégias são apresentadas de forma numerada, sendo convicção dos

autores que as de ordem superior maximizam a probabilidade do código obtido possuir um

melhor desempenho. No entanto, eles próprios reconhecem não possuir qualquer prova deste

facto.

Algumas dessas estratégias são descritas a seguir:

i. A matriz H é gerada a partir de uma matriz de zeros de dimensões (n-k) x n em que

o número de 1’s por coluna é colocado aleatoriamente com peso igual a wc (o

código gerado poderá ser irregular);

71

de partida e de chegada tem de ser o mesmo, em que l é o número de ligações entre nós

existentes no ciclo. Na Figura 4.4 ilustra-se um exemplo de um ciclo de comprimento 4.

Exemplo 4.2:

Figura 4.4 - Exemplo de um ciclo de comprimento 4 num grafo de Tanner

Qualquer ciclo de um grafo de Tanner tem um comprimento par e o seu valor mínimo é 4

correspondendo a uma matriz de teste de paridade em que existem duas colunas com dois 1’s

em comum.

Ao definir um código LDPC através da matriz H procura-se evitar a existência de ciclos

de comprimento 4 no seu grafo de Tanner, de forma a melhorar o desempenho do algoritmo de

descodificação ou seja quanto maior o ciclo, maior a distância mínima da matriz H. Uma das

regras na construção da matriz H para evitar a existência de ciclos de dimensão 4, é garantir

que quaisquer duas colunas da matriz, possuam quanto muito, um só 1, em comum.

4.1.3.2 Construção dos códigos LDPC

A forma mais simples de representar um código LDPC (n,k), consiste na construção da

matriz de teste de paridade, H. Caso se queira construir um código LDPC regular deve ter-se

em conta que o número de 1’s da matriz H por coluna seja igual a wc e o número de 1’s por

linha seja igual a wr=wcnm,. Caso se queira construir um código LDPC irregular o número de 1’s

por linha e o número de 1’s por coluna variam. Na construção da matriz H deve-se maximizar o

ciclo mínimo presente nos grafos de Tanner obtidos a partir das equações de paridade e

também a distância mínima de modo a que o código tenha um bom desempenho na etapa de

descodificação.

Mackay e Neal apresentaram algumas estratégias para a construção de códigos LDPC

[Neal 1995]. Estas estratégias são apresentadas de forma numerada, sendo convicção dos

autores que as de ordem superior maximizam a probabilidade do código obtido possuir um

melhor desempenho. No entanto, eles próprios reconhecem não possuir qualquer prova deste

facto.

Algumas dessas estratégias são descritas a seguir:

i. A matriz H é gerada a partir de uma matriz de zeros de dimensões (n-k) x n em que

o número de 1’s por coluna é colocado aleatoriamente com peso igual a wc (o

código gerado poderá ser irregular);

Page 73: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

72

ii. A matriz H é gerada aleatoriamente com colunas de peso de Hamming2 wc tentando

uniformizar ao máximo o peso de Hamming wr de cada linha;

iii. A matriz H é gerada com colunas de peso de Hamming wc, linhas de peso de

Hamming wr, e não possuindo quaisquer duas colunas com mais de um 1 em

comum, eliminando assim ciclos de comprimento 4;

iv. A matriz H é gerada de acordo com o procedimento do ponto anterior mas tendo

como objectivo a maximização do ciclo mínimo do código;

v. A matriz H é gerada de acordo com o procedimento referido em (iv) procurando

obter uma matriz de característica máxima, de preferência na forma H =[ H1 H2]

com H1 ou H2 invertível.

Mackay e Neal apresentam ainda um conjunto de técnicas que fazem uso de algumas

das estratégias acima referidas. Essas técnicas são vulgarmente conhecidas por 1A, 2A, 1B e

2B, sendo usadas por muitos investigadores na classificação dos códigos LDPC estudados (5).

A estratégia 1A diz respeito à terceira estratégia da lista acima, com wc=3, e wr=6 em

que é introduzida a restrição de o código possuir ciclos superiores a 4.

A estratégia 2A diz respeito à quinta estratégia da lista acima, tendo como base a

construção da matriz H com (n-k) / 2 colunas (com n-k a definir o número de linhas da matriz H)

de peso 2, sem que exista qualquer 1 em comum entre elas, e em que as restantes colunas

têm peso 3, Simultaneamente, procura-se que o peso das linhas seja o mais uniforme possível,

impondo como restrição o facto de quaisquer duas colunas de H não terem mais do que um 1

em comum.

As estratégias 1B e 2B resultam da eliminação de um pequeno número de colunas da

matriz H obtidas segundo as estratégias 1A e 2A, respectivamente, de forma a eliminar todos

os ciclos do código de tamanho inferior a um dado valor l estipulado, procurando, desta forma,

maximizar o ciclo de acordo com a quarta estratégia da lista acima.

Um dos problemas que se coloca é precisamente a forma de eliminar os ciclos de

comprimento inferior a um dado valor. McGowan e Williamson [Williamson 2003], Mao e

Banihashemi [Banihashemi 2001] apresentam alguns métodos para eliminação desses ciclos

para os códigos LDPC.

Prabhakar e Narayanan apresentaram outra estratégia de construção de códigos LDPC

baseada num método algébrico de construção de códigos LDPC regulares [Narayanan 2002].

Este método apresenta como grande vantagem o facto de a estrutura do grafo de Tanner poder

ser gerada algebricamente usando um procedimento recursivo. Mais detalhe sobre este

método encontra-se disponível na referência bibliográfica [Narayanan 2002].

2 Peso de Hamming de uma coluna/linha, define-se como sendo o número de 1’s presentes nessacoluna/linha.

Page 74: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

73

4.1.4 Codificação

Como já foi dito anteriormente os códigos LDPC são códigos de bloco lineares, logo a

forma mais natural de realizar a codificação será partindo do conhecimento da matriz geradora

e a partir desta determinar as palavras de código segundo a equação (4.3). No entanto, os

métodos utilizados na construção de códigos LDPC, tem por base a obtenção da sua matriz de

teste de paridade H ou então o equivalente TG. Na grande maioria das vezes a matriz H obtida

não é sistemática nem de característica máxima, no entanto, esta pode ser expressa na forma

sistemática segundo a equação (4.8) usando o método de Gauss. A obtenção da matriz G é

depois imediata. Embora de fácil implementação, o método de Gauss é bastante dispendioso

em termo do número de operações a realizar na codificação de cada palavra de código. Esta

constatação deve-se a facto de a sistematização da matriz H não conduzir, necessariamente, à

obtenção de uma matriz G com baixa densidade de 1’s, pelo que a codificação por (4.3) exige

a realização de um número extremamente elevado de operações.

Deste modo, nesta dissertação, a matriz H obtida tem a representação descrita na

equação (4.8) para simplificar a codificação.

4.1.5 Descodificação Iterativa

Na descodificação de um código LDPC, existem duas abordagens possíveis:

Hard Decoding, HD – Nesta abordagem, considera-se que o conjunto de símbolos

distintos à entrada do descodificador é finito, ou seja, no caso de um código binário

à entrada do descodificador tem-se apenas bits;

Soft Decoding, SD – Nesta abordagem tem-se em conta a distribuição

probabilística dos símbolos recebidos por parte do descodificador.

Os algoritmos do tipo HD são na sua grande maioria menos complexos e menos

exigentes computacionalmente que os algoritmos SD, mas os algoritmos SD apresentam um

melhor desempenho em termos da taxa de erros, BER, visto que estes têm em conta a

distribuição probabilística dos símbolos recebidos.

No contexto dos códigos LDPC ambas as abordagens de descodificação têm vindo a ser

objecto de investigação procurando um compromisso entre complexidade e desempenho. Os

algoritmos iterativos HD propostos são normalmente designados por algoritmos de troca de bits

[Rich], e os SD por algoritmos de troca de mensagens.

O algoritmo apresentado por Gallager [Gallager 1963] tem por base a representação

gráfica dos códigos LDPC e é vulgarmente conhecido como algoritmo de soma de produtos,

SPA.

Nesta dissertação utiliza-se uma simplificação do algoritmo SPA, mais concretamente o

algoritmo soma de produtos no domínio logarítmico, LSPA, porque em termos de complexidade

computacional é bastante mais simples. Para perceber este algoritmo, começa por

descrever-se o algoritmo que lhe deu origem, o algoritmo de soma de produtos, SPA.

Page 75: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

74

4.1.5.1 Algoritmo de soma de produtos

O algoritmo SPA caracteriza-se por utilizar grafos de Tanner que simplificam a

descodificação. A base deste algoritmo é a transmissão mensagens entre nós. De uma

maneira geral, as mensagens recebidas por um nó de bit NBn a partir dos nós de teste NTm’s

que a ele estão ligados, ou as mensagens enviadas desse nó de bit NBn para esses nós de

teste NTm’s, não são mais do que probabilidades calculadas através da distribuição

probabilística dos símbolos recebidos pelo descodificador.

Estes algoritmos normalmente têm aplicação quando estão em presença de canais de

transmissão. Logo, é necessário conhecer em primeiro lugar as características do canal.

Geralmente, os canais considerados no estudo do desempenho de um dado algoritmo de

descodificação são os chamados canais “bem comportados”, tais como o canal binário

simétrico, BSC e o canal aditivo gaussiano, AWGN [Bossert 1999] [ Carlson 1986]. No entanto,

as características dos canais de transmissão variam ao longo do tempo, pelo que a sua

caracterização estatística torna-se bastante complicada, senão impossível, o que origina um

pior desempenho dos algoritmos de descodificação.

No que diz respeito à descodificação de códigos LDPC, tendo por base o algoritmo SPA,

a grande maioria dos investigadores considera que o canal é Gaussiano (com características

parecidas com as comunicações em espaço livre e de mais fácil tratamento teórico). Neste

sentido, na descrição que a seguir se apresenta do algoritmo SPA, considera-se que o canal

produz ruído aditivo gaussiano, sem que isso, no entanto, impeça a sua generalização para

outro tipo de canais.

Consideremos um código binário LDPC (n,k), cujas palavras de código são transmitidas

através de um canal com ruído aditivo Gaussiano.

Os bits da palavra de código cn ∈{0,1}, com n a representar o tamanho da palavra de

código, são modelados através da modulação BPSK, porque neste caso o sinal transmitido é

digital e além disso esta modulação é a que apresenta um melhor desempenho. Esta

modulação faz com que os bits da palavra de código sejam transformados em {1,-1} através da

equação seguinte:

xn = (-1)cn; (4.11)

Os símbolos recebidos são designados por yn , com yn=xn+ηn , sendo ηn ruído Gaussiano

com média nula e desvio padrão σ.

A abordagem utilizada no algoritmo SPA é do tipo SD que considera a distribuição

probabilística dos símbolos recebidos.

O objectivo do algoritmo SPA é maximizar a probabilidade à posteriori de um bit cn, da

palavra descodificada c ser 1 ou 0 tendo em conta a palavra recebida y e o conjunto de

restrições Sn que o bit tem de satisfazer. Logo o que se pretende calcular são as probabilidades

à posteriori :

Pr(cn=0 | y, Sn); (4.12)

Pr(cn=1 | y, Sn); (4.13)

Page 76: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

75

Designa-se por:

Pr(cn=1 ou 0 | yn, Sn) → probabilidade à posteriori de um bit cn dado yn, com yn o n-

ésimo símbolo da palavra recebida, y;

ckj → k-ésimo bit da j-ésima equação de teste de paridade envolvendo o nó de teste

NTm;

ykj = (-1)c

+ η, sendo η ruído gaussiano → Símbolo recebido correspondente ao bit

transmitido ckj;

pkj= Pr(ckj=1 ou 0 | ykj);

N(m) → o conjunto de nós de bit NBn’s ligados ao nó de teste NTm, ou seja,

N(m)={n: Hmn=1};

N(m)\n → o conjunto de nós de bit NBn’s ligados ao nó de teste NTm excluindo o nó

de bit NBn

M(n) → o conjunto de nós de teste NTm’s ligados ao nó de bit NBn, ou seja, N(n)={m:

Hmn=1};

M(n)\m → o conjunto de nós de teste NTm’s ligados ao nó de bit NBn excluindo o nó

de teste NTm ;

Assumindo que os símbolos da palavra recebida y são estatisticamente independentes,

Gallager [Gallager 1962] [Gallager 1963] apresentou um teorema no qual provou que a razão

entre as probabilidades à posteriori é dada por:

Pr(cn=0| y, Sn)Pr(cn=1| y, Sn)

= 1-pnpn

∏ (1+m∈M(n) ∏ (1-2pn'm))n'∈N(m)\n∏ (1-m∈M(n) ∏ (1-2pn'm))n'∈N(m)\n; (4.14)

Gallager propôs também um algoritmo iterativo para determinar essas probabilidades à

posteriori, visto que calcular a razão entre probabilidades através da equação acima descrita

poderia ter um grau de complexidade muito grande. O algoritmo proposto por Gallager é o

algoritmo SPA [Gallager 1962] [Gallager 1963].

Com vista a descrever o algoritmo é necessário introduzir alguma notação adicional:

qnm(b) com b ∈ {0,1} → mensagem que é enviada do nó de bit NBn para o nó de

teste NTm, indicando a probabilidade de cn=b, baseado na informação recebida do

canal yn, e de todos os nós de teste NTm’s dependentes de cn com excepção do nó

de teste NTm;

rnm(b) com b ∈ {0,1} → mensagem que é enviada do nó de teste NTm para o nó de

bit NBn indicando a probabilidade de cn=b, baseado em todos os nós de bit NBn‘s

ligados ao nós de teste NTm com excepção do nó de bit NBn;

Qn(b) com b ∈ {0,1} → mensagens recebidas pelo nó de bit NBn . A estas

mensagens dá-se o nome de pseudo probabilidade à posteriori de cn=b.

Tendo em conta a definição de rnm(b), Gallager demonstrou que a informação que o nó

de teste NTm recebe de todos os nós de bit NBn’s, n’ ∈ N(m)\n é dada pelos valores de qn’m,

logo :

rmn(0) = 12

+ 12

∏ (1-2pn'm)n'∈N(m)\n = 12

+ 12

∏ (1-2qn'm(1))n'∈N(m)\n ; (4.15)

Page 77: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

76

rmn(1) = 12

− 12

∏ (1-2pn'm)n'∈N(m)\n = 12

− 12

∏ (1-2qn'm(1))n'∈N(m)\n ; (4.16)

Resultando assim para a razão entre probabilidades à posteriori que:Pr(cn=0| y, Sn)Pr(cn=1| y, Sn)

= 1-pnpn

∏ rmn(0)m∈M(n)∏ rmn(1)m∈M(n); (4.17)

De igual modo, tendo em conta a definição de qnm(b), Gallager definiu que:

qnm(0) = (1- pn) ∏ rm'n(0)m'∈M(n)\m ; (4.18)

qnm(1) = pn ∏ rm'n(1)m'∈M(n)\m ; (4.19)

A decisão sobre o valor binário do bit n da mensagem recebida é então tomada tendo

por base as pseudo-probabilidades à posteriori:

Qn(0) =(1-pn) ∏ rmn(0)m∈M(n) ; (4.20)

Qn(1) = pn ∏ rmn(1)m∈M(n) ; (4.21)

onde o bit n da palavra descodificada c é dado por:

cn= 1 ←Qn(1)>0.50 ←Qn(1)<0.5 ; (4.22)

As equações (4.15) e (4.16), bem como, (4.17) e (4.18) deverão ser normalizadas por

forma a que qnm(0)+ qnm(1) = 1 e Qn(0)+ Qn(1) = 1.

Numa forma mais simplificada o algoritmo pode ser descrito da seguinte forma:

Para todos os pares de nós (NBn,NTm), ou seja, para todas as entradas da matriz de

teste de paridade H =1 faz-se o seguinte:

Inicialização:

qnm(0) = (1 – pn); (4.23)

qnm(1) = pn; (4.24)

Calcular a mensagem que o nó de teste NTm envia para o nó de bit NBn:

rmn(0) = 12

+ 12

∏ (1-2qn'm(1))n'∈N(m)\n ; (4.25)

rmn(1) = 1 - rmn(0); (4.26)

Calcular a mensagem que o nó de bit NBn envia para o nó de teste NTm:

qnm(0) = knm( -pn) ∏ rm'n( )m'∈M(n)\m ; (4.27)

qnm(1) = knmpn ∏ rm'n( )m'∈M(n)\m ; (4.28)

onde as constantes knm são escolhidas por forma a que qnm(0)+ qnm(1) = 1

Calcular as pseudo-probabilidades à posteriori :

Qn(0) = kn( − pn) ∏ rmn( )m∈M(n) ; (4.29)

Qn(1) = knpn ∏ rmn( )m∈M(n) ; (4.30)

onde as constantes knm são escolhidas por forma a que Qn(0)+ Qn(1) = 1

∀n fazer:

Page 78: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

77

cn = 1 ←Qn(1)>0.50 ←Qn(1)<0.5 ; (4.31)

Se a palavra descodificada cn verificar as equações de teste de paridade (cnHT=0) ou o

número máximo de iterações tiver sido atingido, então o algoritmo pára, caso contrário, voltar a

ii.

O algoritmo de soma de produtos [Gallager 1962] [Gallager 1963] é de máxima

verosimilhança quando aplicado a códigos descritos por grafos de Tanner sem ciclos, ou seja,

calcula com exactidão as probabilidades à posteriori [Etzion 1999] [Kschischang 2001]. No

entanto, grafos de Tanner sem ciclos não suportam bons códigos em virtude de estes

possuírem uma baixa distância mínima.

Quando os códigos representados por grafos de Tanner possuem ciclos, o algoritmo

deixa de ser óptimo na medida em que os ciclos introduzem uma realimentação positiva nas

mensagens enviadas entre nós. De facto, dado um código LDPC com ciclo l, apenas as

mensagens enviadas ao longo das primeiras l/2 iterações são independentes, passando a

haver correlação entre elas nas iterações seguintes. Este é o motivo pelo qual na construção

dos códigos LDPC se procura maximizar o ciclo [Lechner 2003] [Sayir 2002].

Outra consideração importante a tecer acerca do algoritmo SPA é o facto de ele permitir

não só corrigir erros ocorridos, como também, detectar a existência de erros na medida em que

a matriz de teste de paridade H é conhecida. Esta é uma grande vantagem relativamente ao

algoritmo Viterbi utilizado na descodificação dos códigos convolucionais e do algoritmo BCJR

utilizado na descodificação dos Turbo Códigos, uma vez que estes algoritmos não nos

informam da eventualidade da sequência descodificada ainda possuir erros.

Quanto a possíveis erros de descodificação é de referir o estudo realizado por Lechner e

Sayir [Lechner 2002] [Lechner 2003], sobre os diversos tipos de erros que podem ocorrer na

descodificação. Lechner e Sayir identificaram três tipos de erros:

i. Convergência para uma palavra de código errada;

ii. Convergência das pseudo-probabilidades à posteriori para um máximo local;

iii. A não convergência das pseudo-probabilidades à posteriori para um ponto de

equilíbrio.

O primeiro tipo de erros é mais grave na medida em que estes não podem ser

detectados. Este tipo de erros está directamente relacionado com a distância mínima do código

e, como tal, não poderá ser evitado por uma simples melhoria do algoritmo de descodificação.

Lechner e Sayir chegaram, no entanto, à conclusão que para códigos LDPC com

comprimentos de bloco superiores a 1000 esse tipo de erros era praticamente desprezável.

Os dois últimos tipos de erros podem ser detectados, com o algoritmo a declarar falha na

descodificação ao atingir o número máximo de iterações estipulado. Estes devem-se sobretudo

à existência de ciclos e à realimentação positiva que estes originam.

Face ao bom desempenho do algoritmo SPA, são poucos os investigadores que se têm

preocupado em melhorar o seu desempenho na descodificação dos códigos LDPC, mas pelo

Page 79: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

78

contrário, a implementação eficiente do algoritmo SPA quer em hardware quer em software tem

tido um crescente interesse por parte de investigadores.

São vários os desafios colocados ao nível do desempenho, expressa em termos de BER

e da complexidade computacional do algoritmo. Relativamente a este último ponto há que

salientar o elevado número de operações aritméticas nomeadamente multiplicações, que é

necessárias executar. Há também que referir os elevados requisitos de memória para

armazenar os valores das mensagens enviadas entre nós. A implementação do algoritmo SPA

usando processadores de vírgula fixa, onde é necessário realizar a quantificação dos valores

das mensagens enviadas entre nós, mostrou ser sensível aos erros de quantificação [Leung

2000)].

Das várias modificações propostas no algoritmo SPA há que destacar a implementação

no domínio logarítmico [Chen 2002] [Hu 2001]. De facto, estes sistemas de descodificação

usando máximas verosimilhanças logarítmicas, LLR, apresentam grandes vantagens, uma vez

que as multiplicações são substituídas por adições e o passo de normalização é eliminado.

4.1.5.2 Algoritmo SPA no domínio logaritmo (LSPA)

Como referido anteriormente, o algoritmo SPA requer um número elevado de

multiplicações. Como as multiplicações são bastante mais dispendiosas computacionalmente

do que as adições, pode-se transferir os cálculos do algoritmo SPA para o domínio logarítmico

onde as multiplicações são convertidas em adições. Este é o princípio que está na origem da

implementação do algoritmo LSPA, no domínio logaritmo [Chen 2002] [Hu 2001].

Primeiro começa-se por definir as máximas verosimilhanças logarítmicas das

mensagens, rnm e qnm transmitidas entre os nós, bem como as probabilidades à posteriori pn e

as máximas verosimilhanças logarítmicas das pseudo probabilidades à posteriori Qn :

L(cn) = ln Pr(cn=0 | yn)Pr(cn=0 | yn)

=ln 1-pnpn

; (4.32)

L(rmn) = ln rmn(0)rmn(1)

; (4.33)

L(qmn) = ln qmn(0)qmn(1)

; (4.34)

L(Qn) = ln Qn( )Qn( ); (4.35)

A condição de inicialização do algoritmo SPA passa a ser:

L(cn) = L(qnm) = ln 1-pnpn

; (4.36)

No que toca à mensagem que cada nó de bit NBn envia para cada nó de teste NTm, tem-

se que,

L(qmn) = ln qmn( )qmn( ) =

knm 1-pn ∏ rm'n(0)m'∈M(n)\m

knm pn ∏ rm'n(1)m'∈M(n)\m=

=ln 1-pnpn

+ ∑ rm'n(0)rm'n(1) = L(cn)+ ∑ L(m'∈ M(n)\mm'∈ M(n)\m rm'n)=L(cn)+L(rm'n); (4.37)

Page 80: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

79

No que toca às pseudo probabilidades tem-se que,

L(Qn) = ln Qn(0)Qn(1) = L(cn)+L(rmn); (4.38)

Estas últimas equações envolvem apenas somas pelo que o seu cálculo é muito menos

exigente do que o cálculo dos qmn, Qn do algoritmo SPA. Pela observação destas duas últimas

equações pode-se verificar que estas podem ser realizadas numa só operação, através da

seguinte forma:

L(qnm) = L(Qn) − L(rmn) − L(rm'n); (4.39)

Esta simplificação faz com que o algoritmo tenha de realizar somente 2 x M(n) adições

para calcular as M(n) mensagens que um dado nó de bit NBn envia para todos os nós de teste

NTm’s a ele ligados e a máxima verosimilhança logarítmica da pseudo probabilidade à posteriori

associada a esse nó de bit NBn. A eficiência computacional é melhorada uma vez que o

número de operações a realizar, neste caso adições, é menor e as operações são menos

complexas.

Quanto ao cálculo da mensagem que cada nó de teste NTm envia para cada nó de bit

NBn não basta substituir (4.12) e (4.13) em (4.30), pois o resultado obtido seria demasiado

complexo de calcular. De facto, a eficiência computacional do algoritmo SPA no domínio

logarítmico depende da forma como são calculadas as mensagens que cada nó de teste envia

para todos os todos os nós de bit a ele ligados. São dois os parâmetros determinantes da

complexidade computacional do cálculo:

O primeiro parâmetro é a topologia do código directamente relacionada com o grau

de cada nó de teste NTm e, logo, com a taxa de codificação;

O segundo parâmetro é a forma como é implementada a operação base do cálculo

das mensagens que cada nó de teste NTm envia para todos os nós de bit NBn’s a

ele ligados.

Uma solução possível para o problema foi proposta por Gallager [Gallager 1962]

[Gallager 1963]. Com base na solução proposta por Gallager, toma-se a seguinte simplificação:

tanh( 12

log p0p1

) = p0-p1 = 1-2p1; (4.40)

onde p e p são probabilidades com p + p =1

Subtraindo (4.12) e (4.13) obtêm-se:

rmn(0)-rmn(1) = ∏ 1-2n'∈N(m) qn'm(1); (4.41)

Aplicando a equação (4.37) à equação (4.38) tem-se que:

rmn(0)-rmn(1) = tanh( 12

log rmn(0)rmn(1)

) = tanh( 12

L(rmn)); (4.42)

1-2qn'm( ) = tanh( 12

log qn'm(0)qn'm(1)

) = tanh( 12

L(qn'm)); (4.43)

Então a máxima verosimilhança logarítmica da mensagem que o nó de teste NTm envia

para o nó de bit NBn é dada por:

Page 81: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

80

L(rmn) = 2 tanh-1( ∏ tanh( 12

L(qn'm)))n'∈N(m) ; (4.44)

Numa forma mais simplificada o algoritmo pode ser descrito da seguinte forma:

Para todos os pares de nós (NBn,NTm), ou seja, para todas as entradas da matriz de

teste de paridade H =1, faz-se o seguinte:

i. Inicialização:

L(cn) = L(qnm) = ln 1-pnpn

; (4.45)

ii. Calcular a máxima verosimilhança logarítmica da mensagem que o nó de teste NTm

envia ao nó de bit NBn:

L(rmn) = 2 tanh-1( ∏ tanh( 12

L(qn'm)))n'∈N(m) ; (4.46)

iii. Calcular a máxima verosimilhança logarítmica da mensagem que o nó de bit NBn

envia ao nó de teste NTm:

L(qnm) = L(cn)+L(rm'n); (4.47)

iv. Calcular a máxima verosimilhança logarítmica das pseudo-probabilidades à

posteriori:

L(Qn)=L(cn)+L(rmn); (4.48)

v. ∀n fazer: cn= 1 ←Qn>00 ←Qn<0 . (4.49)

Se a palavra descodificada cn verificar as equações de teste de paridade (cnHT=0) ou o

número máximo de iterações tiver sido atingido, então o algoritmo pára, caso contrário, voltar a

ii..

Nesta dissertação o ruído produzido por um canal de transmissão é substituído por ruído

proveniente da etapa de aquisição da biométrica. Aos templates obtidos na autenticação de um

utilizador é lhe agregado os bits de paridade guardados na base de dados de modo a que

quando forem colocados no descodificador, ele os consiga detectar e corrigir possíveis erros,

permitindo assim que a sua autenticação seja possível.

4.2 Funções criptográficas de hash

As funções de hash mais utilizadas em sistemas de segurança são funções de hash

criptográficas, porque são unidireccionais, sendo praticamente impossível de descobrir a

informação original que deu origem ao hash.

Um hash é uma chave hexadecimal de tamanho fixo, obtida a partir da aplicação de uma

função de criptográfica de hash, a uma mensagem de tamanho arbitrário.

Caso algum dado da informação original seja acrescentado, eliminado ou alterado, o

resultado da função de hash será sempre diferente. Ou seja, dois blocos de dados resultam em

hash iguais somente se forem exactamente idênticos.

Uma função criptográfica de hash deve ter em consideração as seguintes propriedades:

Page 82: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

81

Serem funções não reversíveis – A partir do hash é computacionalmente inviável

encontrar a mensagem que lhe deu origem. Por outro lado, deverá ser fácil obter o

hash a partir da mensagem;

Resistência fraca a colisões – Dada uma mensagem m e o hash correspondente

h = T(m), é computacionalmente inviável encontrar outra mensagem diferente m’, tal

que T(m) = T(m’);

Resistência forte a colisões – Dada a função criptográfica T, é

computacionalmente inviável encontrar duas mensagens diferentes, m e m’, tal que

T(m) = T(m’).

Na figura seguinte apresenta-se um exemplo de uma implementação de uma função

criptográfica de hash elaborada por Merkle-Damgård :

Figura 4.5 – Exemplo de uma função criptográfica de hash, F é a função de compressão[Internet6]

Neste processo, uma mensagem de comprimento arbitrário é dividido em blocos cujo

comprimento do bloco depende da função de compressão. Os blocos são então processados

sequencialmente por cada função de compressão de modo a obter o hash final. As entradas de

cada função de compressão são o resultado de cada função de compressão anterior, mais o

bloco de mensagem actual.

Os algoritmos mais utilizados nas funções de hash criptográficas são os message-digest

algorithm 4, MD4, ou message-digest algorithm 5, MD5, ambos de 16 bytes3, o secure hash

algorithm 1, SHA-1, de 20 bytes, o secure hash algorithm 256,SHA-256, de 32 bytes, e o

secure hash algorithm 512, SHA-512, de 64 bytes. Algumas das características destes

algoritmos e de outros algoritmos utilizados nas funções de hash criptográficas encontram-se

listadas na Tabela 4.1.

3 Significa o comprimento da chave obtida da função criptográfica. 1 byte = 8 bits

Page 83: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

82

Tabela 4.1 – Algoritmos utilizados em funções de hash criptográficas e suascaracterísticas [Internet7]

Algorithm Outputsize

(bits)

Internalstatesize

Blocksize

Lengthsize

Wordsize

Collisionattacks

(complexity)

Preimageattacks

(complexity)

MD2 128 384 128 No 32 Almost

MD4 128 128 512 64 32 Yes (2^8) With flaws(2^102)

MD5 128 128 512 64 32 Yes (2^32) No

SHA-0 160 160 512 64 32 Yes (2^39)

SHA-1 160 160 512 64 40 With flaws(2^52)

No

SHA-256/224 256/224 256 512 64 32 No No

SHA-512/384 512/384 512 1024 128 64 No No

WHIRLPOOL 512 512 512 256 8 No

De seguida apresenta-se uma breve legenda para uma melhor percepção das

características que diferenciam os diferentes algoritmos, presentes na Tabela 4.1:

Output size – Tamanho final da chave hexadecimal;

Internal state size – Tamanho da chave após cada função de compressão;

Block size – Tamanho dos blocos à entrada da função de compressão;

Nesta dissertação utiliza-se o algoritmo SHA-512, porque é o algoritmo que tem maior

comprimento na chave obtida através da função criptográfica e quanto maior o comprimento da

chave, maior é a segurança da chave a possíveis ataques e além disso este algoritmo é o que

dá mais garantias de não haver possíveis colisões, porque este algoritmo origina 2^128-1

chaves diferentes enquanto, os outros algoritmos originam 2^64-1 chaves diferentes.

4.3 Conclusões

O objectivo principal deste capítulo foi apresentar um modelo de protecção dos

templates que garanta a privacidade dos utilizadores, isto é, caso a base de dados seja

atacada por alguém, estes nunca terão acesso a informações pessoais do utilizador.

No próximo capítulo apresenta-se os resultados da implementação do modelo proposto

neste capítulo.

Page 84: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

83

5 Implementação do sistema de reconhecimento biométricobaseado na íris com reforço da segurança

O objectivo principal deste capítulo é apresentar os resultados da implementação do

sistema de reconhecimento biométrico seguro proposto no capítulo anterior. Os resultados

deste sistema são depois comparados com o sistema de reconhecimento biométrico sem

segurança apresentado no Capítulo 3.

5.1 Avaliação de desempenho

Para a avaliação do desempenho do sistema de reconhecimento biométrico proposto

com reforço da segurança dos templates são usadas as mesmas bases de dados descritas no

Capítulo 3. A base de dados de treino é usada para ajustar os parâmetros do sistema, mais

precisamente para escolher a matriz de teste de paridade H, e também para uma primeira

verificação do desempenho do sistema. A base de dados de teste serve para testar o

desempenho do sistema face a novos dados não usados para ajustar a sua configuração.

O sistema de reconhecimento biométrico proposto tem duas fases distintas: registo e

autenticação. Na fase de registo são inscritos na base de dados do sistema por utilizador, três

templates provenientes de imagens das bases de dados de treino ou de teste. Na fase de

autenticação são utilizadas as restantes imagens dos utilizadores que não foram inseridas na

base de dados do sistema. Para o sistema proposto com segurança reforçada também são

usadas as duas estratégias descritas no Capítulo 3 para a decisão do sistema sobre a

autenticação do utilizador. Estas duas estratégias são descritas novamente neste capítulo para

uma melhor compreensão dos resultados obtidos para o sistema de reconhecimento biométrico

com reforço da segurança dos templates:

Primeira estratégia – A primeira estratégia é o sistema decidir autenticar com êxito

o utilizador se numa das três comparações entre o template obtido na autenticação

e os templates inscritos na base de dados do sistema obtiver uma autenticação

válida;

Segunda estratégia – A segunda estratégia é o sistema decidir autenticar com

êxito o utilizador se nas três comparações possíveis entre o template obtido na

autenticação e os templates inscritos na base de dados do sistema obtiver duas

autenticações válidas.

A grande diferença entre o sistema proposto com reforço da segurança e o sistema

apresentado no Capitulo 3, que serviu de base para o desenvolvimento, é a utilização de

funções criptográficas de hash e de códigos de correcção de erros, nomeadamente códigos

LDPC, conforme foi descrito no capítulo anterior.

A função criptográfica de hash utilizada nesta dissertação baseia-se no algoritmo SHA-

512. A implementação da função criptográfica de hash foi fornecida pelos Orientadores desta

dissertação [Ferguson 2003]. Esta implementação para além do algoritmo atrás referido

Page 85: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

84

permite utilizar outros algoritmos nas funções criptográficas, igualmente descritos no capítulo

anterior.

A utilização dos códigos LDPC requer a construção de uma matriz de teste de paridade,

H, de dimensão (n-k) x n, com n representando o comprimento da palavra de código e k o

comprimento do template a codificar. Para cada íris, uma máscara de ruído é gerada,

eventualmente com um número diferente de 1’s que corresponde a zonas de oclusão da íris,

ou seja, o comprimento k, do template que se quer codificar, varia de íris para íris, sendo

necessário para cada um dos templates, usar um código LDPC diferente para os codificar. Este

processo tornava o sistema bastante complexo em termos computacionais. Para resolver este

problema, optou-se por usar uma máscara de ruído universal, representativa de todos os

templates, originando assim, a necessidade de criar somente uma matriz H para os codificar,

visto que k passa a ser um valor fixo.

Máscara de ruído universal

A máscara de ruído universal é obtida com o auxílio da base de dados de treino, que

inclui 1313 imagens da íris bem segmentadas. Para cada uma destas imagens é segmentada a

zona da íris que após ser normalizada fica com uma dimensão de 20x240 pixéis. A etapa de

extracção de características cria uma máscara de ruído de dimensão 20x480. Deste modo, a

máscara universal criada tem igualmente dimensão 20x480. A construção da máscara de ruído

universal é feita da seguinte forma:

i. Criar uma matriz de dimensão 20x480, chamada matriz de ocorrências, que

representa o número de ocorrências de 1’s nas máscaras de ruído, que

representam as zonas de oclusão da íris, ou seja, cada elemento (i,j)4 desta matriz

representa o número total de ocorrências de 1’s presentes nas máscaras de ruído

para a posição (i,j).

ii. O valor de cada elemento (i,j) da máscara de ruído universal toma o valor 1 se a

divisão do nº de ocorrências de 1’s pelo número total de imagens (neste caso são

1313 imagens) é superior a uma certa percentagem de 1’s, caso contrário, o seu

valor será zero.

O valor de percentagem a usar para gerar a máscara universal é obtido com o auxílio do

sistema de reconhecimento biométrico apresentado no Capítulo 3, variando-se a percentagem

de 1’s e calculando as máscaras de ruído universais correspondentes. Depois, para cada

máscara de ruído universal obtida aplica-se o sistema descrito no Capitulo 3 e verifica-se qual

o valor das taxas FAR e FRR obtidos, para o limiar de decisão anteriormente escolhido (0,38).

O valor de percentagem a adoptar é a que minimiza as duas taxas erro, FRR e FAR. Na Tabela

5.1 apresentam-se os valores de FAR e de FRR obtidos variando a percentagem considerada:

4 O elemento (i,j) é o elemento da matriz correspondente à linha i, coluna j

Page 86: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

85

Tabela 5.1– Valores de FAR e de FRR em função da percentagem mínima de 1'srequerida para um pixel fazer parte da máscara de ruído universal utilizando a segunda

estratégia para a decisão sobre a autenticação do utilizadorPercentagem mínima

de 1's para cadaelemento da máscara

(%)

FAR FRR

20 0,000168 0,015193

15 0,000122 0,009669

12 0,000122 0,006906

10 0,000114 0,004144

8 0,000137 0,004144

7 0,000145 0,004144

6 0,00016 0,004144

Pela observação dos valores das taxas FRR e FAR verifica-se que a percentagem

mínima de 1’s que minimiza as duas taxas de erro é 10%. Assim, a máscara de ruído universal

utilizada é a correspondente a essa percentagem tendo no total 4496 bits igual a 1. Ao aplicar

esta máscara aos templates de dimensão 9600 bits, fica-se com templates de dimensão 5194

bits representativos de todas as zonas da íris que não têm qualquer tipo de oclusão.

Matriz de teste de paridade H

Nesta dissertação optou-se por construir um código LDPC (n,k), com n a variar e k fixo.

A matriz H é gerada colocando aleatoriamente bits 1 em cada coluna de modo a que por

coluna se tenha peso de Hamming igual wc. De seguida a matriz é rearranjada de modo a ter o

mais uniforme possível linhas com peso de Hamming igual wr=wcnm

, com m=n-k. A matriz H é

gerada de modo a não ter qualquer ciclo de comprimento 4, sendo a sua estrutura a

representada na equação (4.8), de modo a simplificar a codificação do template. O único

parâmetro que falta definir é o valor do peso de Hamming das colunas wc. No capítulo anterior

definiu-se que o wc tem de ser maior que três para que o algoritmo de descodificação tenha um

bom desempenho. Assim, para cada valor wc, efectuaram-se alguns testes utilizando a base de

dados de treino com 1313 imagens, variando a capacidade de correcção dos códigos LDPC. A

capacidade de correcção é definida pelo número bits de paridade utilizados para detecção e

correcção de erros nos templates. Na Tabela 5.2 estão representados os resultados dos testes

efectuados para a base de dados de treino com 1313 imagens (as 3 primeiras imagens são

usadas para a fase de registo, as restantes imagens são utilizadas na fase de autenticação)

utilizando as duas estratégias, anteriormente descritas nesta secção, para a decisão do

sistema quanto à autenticação do utilizador.

Page 87: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

86

Tabela 5.2 – Desempenho do sistema variando a capacidade de correcção e o número de1’s por coluna wc

1ª estratégia 2ª estratégia

wcCapacidade

de correcção FAR FRR FAR FRR

3

8000 0,000076 0,109116 0 0,3342548500 0,000145 0,052486 0,000015 0,2320448750 0,002244 0,104972 0,000221 0,2320449000 0,004945 0,118785 0,001311 0,22376

4

8000 0,000107 0,031768 0 0,1339788500 0,002953 0,013812 0,000298 0,0745868750 0,023542 0,008287 0,004449 0,0593929000 0,112932 0,008287 0,035087 0,041436

5

9000 0,000051 0,063536 0 0,2058019500 0,000206 0,023481 0 0,1063549750 0,001021 0,012431 0,000059 0,088398

10000 0,006223 0,011050 0,000911 0,066298

Pela observação dos resultados da Tabela 5.2, verifica-se que o sistema tem um melhor

desempenho, para a taxa FRR, quando a primeira estratégia é a escolhida para a decisão da

autenticação do utilizador. Quanto à taxa FAR, verifica-se que a segunda estratégia apresenta

melhores resultados, mas em termos da FRR a diferença entre as duas estratégias testadas é

significativa, sendo pior quando a segunda estratégia é a escolhida. Com o aumento do peso

de Hamming das colunas, wc, de três para quatro 1’s por coluna, verifica-se que, a taxa de erro

FRR diminui e a taxa de erro FAR aumenta. Quando wc é igual a cinco verifica-se que, para as

duas estratégias, as taxas FAR e FRR reduzem-se significativamente, necessitando de mais

bits de paridade para as conseguir obter.

Com o aumento da capacidade de correcção, os códigos LDPC conseguem detectar e

corrigir uma maior quantidade de erros existentes no template, havendo maior probabilidade de

um impostor conseguir obter uma autenticação válida.

Deste modo, para a base de dados de teste utilizou-se nesta dissertação, matrizes H’s

com peso de Hamming por coluna, wc, igual a cinco pois apresenta melhores resultados em

termos de FRR para valores mais baixos da taxa FAR. A primeira estratégia é a utilizada pelo

sistema para decisão da autenticação do utilizador, porque para valores baixos da taxa FAR,

obtém-se sempre valores para a taxa FRR significativamente menores.

A verdadeira avaliação do desempenho do sistema é feita utilizando a base de dados de

teste com 1004 imagens de 182 utilizadores (as 3 primeiras imagens são usadas para a fase

de registo, as restantes imagens são utilizadas na fase de autenticação) . Neste caso obtêm-se

os seguintes valores para as taxas de erro FAR e FRR, variando a capacidade de correcção,

Tabela 5.3:

Page 88: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

87

Tabela 5.3 - Avaliação do desempenho do sistema segundo as taxas de erro FAR e FRRvariando a capacidade de correcçãoCapacidade de

correcçãoFAR FRR

9000 0,000110 0,0511369100 0,000151 0,0359859200 0,000316 0,0321979300 0,000398 0,0227279400 0,000522 0,0170459500 0,000755 0,0132589600 0,001016 0,0094709700 0,001496 0,0094709800 0,002264 0,0094709900 0,003994 0,007576

10000 0,006972 0,007576

A representação das taxas de erro FAR e FRR que definem o desempenho do sistema

podem ser representadas graficamente através da Figura 5.1:

Figura 5.1 – a) Representação gráfica das taxas de erro FAR e FRR, b) Curva ROC

0

0,01

0,02

0,03

0,04

0,05

0,06

9000 9200 9400 9600 9800 10000

Taxa

s de

err

o

Capacidade de correcção

a)

FAR

FRR

00,010,020,030,040,050,06

0 0,0005 0,001 0,0015 0,002

FRR

FAR

b)

Sistema dereconhecimentobiométrico proposto

Sistema dereconhecimentobiométrico semsegurança

Page 89: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

88

Analisando a Tabela 5.3 e os gráficos da Figura 5.1, conclui-se que a taxa FRR para

sistema de reconhecimento biométrico proposto é pior do que o sistema de reconhecimento

biométrico sem segurança descrito no Capítulo 3. Isto deve-se a ter construído uma máscara

universal para todos os templates, podendo em alguns casos ter sido desprezado bits

correspondentes a zonas da íris de não oclusão ou então não terem sido eliminados bits

correspondentes a zonas de oclusão da íris. A alternativa seria não usar máscaras de ruído

mas os resultados obtidos seriam certamente piores aos obtidos para o sistema de

reconhecimento biométrico proposto, porque eram considerados todos os bits do template,

incluindo os bits considerados de ruído que pioram sempre o desempenho do sistema.

Em termos de aceitação de utilizadores não legítimos no sistema, a taxa FAR obtida é

satisfatória, situando-se abaixo dos 0,7 % .

Para este sistema tem-se uma EER ligeiramente inferior a 1%, que é significativamente

maior que a taxa EER obtida para o sistema de reconhecimento biométrico sem segurança,

0.14%.

O sistema de reconhecimento biométrico proposto com reforço da segurança dos

templates consegue verificar os 3 principais requisitos de segurança:

Diversidade – Este sistema tem a possibilidade de gerar múltiplos templates a

partir da mesma biométrica;

Revogabilidade ou biometria cancelável – Caso um template biométrico esteja

comprometido, o sistema permite eliminá-lo, podendo introduzir um novo template

na base de dados proveniente das mesmas características biométricas;

Privacidade – Este sistema garante a privacidade dos utilizadores, porque na base

de dados do sistema são inscritos chaves criptográficas dos templates que não

revelam qualquer informação sobre as características biométricas do utilizador.

5.2 Interface gráfica

Nesta dissertação criou-se uma interface gráfica em MATLAB para o sistema de

reconhecimento biométrico proposto e descrito no Capítulo 4. Esta interface tem duas opções

possíveis, que são a opção para registo dos utilizadores e a opção para autenticação dos

utilizadores conforme mostra a Figura 5.2.

Page 90: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

89

Figura 5.2 - Interface gráfica criada para o sistema reconhecimento biométrico comreforço da segurança

Caso a opção escolhida seja o registo de utilizadores, “Enrollment”, aparecerá no ecrã a

seguinte figura:

Figura 5.3 - Opção para registo dos utilizadores

Para registar um template, o utilizador tem de fornecer o seu ID que identifica os

templates do utilizador registados na base de dados. O ID pode ser obtido de forma automática

correspondendo às primeiras 6 letras do nome da imagem (o nome das imagens têm de ter

comprimento maior que 6) ou o utilizador definir qual o seu ID, por exemplo Gonçalo. Caso o ID

seja escolhido pelo utilizador, a base de dados tem uma opção para verificar se o template que

se quer registar corresponde a imagens do mesmo utilizador.

Caso a opção seja a autenticação de um utilizador (Figura 5.4) é necessário colocar a

base de dados do sistema onde o utilizador está registado, a seguir introduzir o seu ID e a

Page 91: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

90

imagem da sua característica biométrica e finalmente carregar no botão “ Authentication” e

verificar se a autenticação é válida ou não ao sistema.

Para uma melhor percepção da interface criada, no Anexo I demonstra-se o seu

funcionamento.

Figura 5.4 – Opção para autenticação do utilizador

Page 92: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

91

6 Conclusões finais e trabalhos futuros

6.1 Conclusões finais

A biometria cada vez mais apresenta-se como a tecnologia mais adequada no processo

de autenticação de pessoas, porque utiliza características das pessoas que não se podem

esquecer nem perder, como acontece com os sistemas de autenticação normais que utilizam

passwords e cartões de identificação.

Nesta dissertação apresentou-se uma descrição sucinta de várias implementações de

sistemas de reconhecimento biométrico utilizando diferentes biométricas, descrevendo

algumas vantagens e desvantagens da sua utilização. Nos sistemas de reconhecimento

biométrico têm sido detectados algumas vulnerabilidades que podem pôr em causa toda a

segurança das informações processadas por estes sistemas. Deste modo, nesta dissertação

apresentou-se alguns dos possíveis ataques provocados por pessoas mal intencionadas que

tentam explorar essas mesmas vulnerabilidades dos sistemas biométricos. Uma das

vulnerabilidades detectadas encontra-se na base de dados do sistema que guarda as

informações dos utilizadores usadas para a fase de autenticação.

Na presente dissertação, apresentou-se um modelo de protecção para os templates

inscritos na base de dados do sistema de modo a garantir a privacidade dos utilizadores. Nos

sistemas tradicionais de reconhecimento biométrico os templates são extraídos das

características biométricas e inscritos directamente na base de dados do sistema, enquanto,

que no sistema de reconhecimento biométrico proposto, é inserido na base de dados uma

chave criptográfica do template que não revela qualquer informação do template que lhe deu

origem.

O sistema de reconhecimento biométrico proposto assegura os três principais requisitos

de segurança:

Diversidade – Este sistema tem a possibilidade de gerar múltiplos templates a

partir da mesma biométrica;

Revogabilidade ou biometria cancelável – Caso um template biométrico esteja

comprometido, o sistema permite eliminá-lo, podendo introduzir um novo template

na base de dados proveniente das mesmas características biométricas;

Privacidade – Este sistema garante a privacidade dos utilizadores, porque na base

de dados do sistema são inscritos chaves criptográficas dos templates que não

revelam qualquer informação sobre as características biométricas do utilizador.

6.2 Trabalhos futuros

Nesta dissertação, sugere-se como trabalhos futuros a continuação do estudo do

sistema proposto nesta dissertação, melhorando-o por exemplo com a utilização de códigos

LDPC irregulares com número de 1’s por linha e coluna diferentes para depois comparar os

desempenhos dos diferentes sistemas. Outro aspecto a ser melhorado é a máscara de ruído

Page 93: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

92

universal obtida, de modo a que, esta esteja perfeitamente adequada quando se insere novos

utilizadores no sistema.

A utilização de funções criptográficas de hash e códigos de correcção de erros na

multibiometria pode ser uma alternativa fiável ao sistema de reconhecimento biométrico

baseado na íris, uma vez que, a utilização de várias biométricas pode garantir melhores

resultados em termos da segurança e privacidade dos utilizadores. Neste caso, para que um

impostor consiga obter uma autenticação válida, necessita de conseguir obter várias

características biométricas do utilizador legítimo, o que é caso impossível de conseguir.

Em trabalhos futuros deve-se desenvolver um algoritmo para etapa de segmentação da

íris que consiga obter um maior número de imagens da íris bem segmentadas. Caso se queira

utilizar estes sistemas em tempo real, o algoritmo utilizado nesta dissertação para a

segmentação da íris não é o mais aconselhável, porque as transformadas de Hough são

bastante intensas em termos computacionais. Em tempo real, o sistema deve ser rápido a

tomar uma decisão sobre a autenticação de um utilizador e a utilização destas transformadas

pode fazer com que o tempo de resposta do sistema não seja tão rápido como se deseja.

Page 94: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

93

Anexo I

Neste anexo explica-se como funciona a interface criada para o sistema de

reconhecimento biométrico com reforço da segurança dos templates biométricos.

Caso a opção escolhida seja o registo de utilizadores, “Enrollment” o seu funcionamento

é o seguinte:

I. Para criar uma base de dados do sistema seguir os seguintes passos ilustrados na

figura:

1- Carregar no botão “Create database”;

2- Escolher o algoritmo utilizado para a função criptográfica de hash;

3- Carregar no botão “Seleccionar”;

4- Escrever o nome da base de dados;

5- Carregar no botão “OK”.

93

Anexo I

Neste anexo explica-se como funciona a interface criada para o sistema de

reconhecimento biométrico com reforço da segurança dos templates biométricos.

Caso a opção escolhida seja o registo de utilizadores, “Enrollment” o seu funcionamento

é o seguinte:

I. Para criar uma base de dados do sistema seguir os seguintes passos ilustrados na

figura:

1- Carregar no botão “Create database”;

2- Escolher o algoritmo utilizado para a função criptográfica de hash;

3- Carregar no botão “Seleccionar”;

4- Escrever o nome da base de dados;

5- Carregar no botão “OK”.

93

Anexo I

Neste anexo explica-se como funciona a interface criada para o sistema de

reconhecimento biométrico com reforço da segurança dos templates biométricos.

Caso a opção escolhida seja o registo de utilizadores, “Enrollment” o seu funcionamento

é o seguinte:

I. Para criar uma base de dados do sistema seguir os seguintes passos ilustrados na

figura:

1- Carregar no botão “Create database”;

2- Escolher o algoritmo utilizado para a função criptográfica de hash;

3- Carregar no botão “Seleccionar”;

4- Escrever o nome da base de dados;

5- Carregar no botão “OK”.

Page 95: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

94

II. Para ler uma base de dados do sistema já criada efectuar os seguintes passos:

1- Carregar no botão “Read database”;

2- Escolher a base de dados a utilizar;

3- Carregar no botão “Abrir”.

III. Para eliminar uma base de dados do sistema efectuar os seguintes passos:

1- Carregar no botão “Delete database”;

2- Escolher a(s) base(s) de dados a eliminar;

3- Carregar no botão “Abrir”.

4- Responder “Yes” se tem a certeza de querer eliminar a(s) base(s) de

dados, caso contrário, carregar em “No” ou “Cancel”.

5- Se carregar em “Yes”, uma mensagem aparecerá no ecrã dizendo que

a(s) base(s) de dados foi ou foram eliminadas.

III. Para inscrever templates dos utilizadores na base de dados do sistema existe as

seguintes opções:

I. Inscrever um template de um só utilizador:

94

II. Para ler uma base de dados do sistema já criada efectuar os seguintes passos:

1- Carregar no botão “Read database”;

2- Escolher a base de dados a utilizar;

3- Carregar no botão “Abrir”.

III. Para eliminar uma base de dados do sistema efectuar os seguintes passos:

1- Carregar no botão “Delete database”;

2- Escolher a(s) base(s) de dados a eliminar;

3- Carregar no botão “Abrir”.

4- Responder “Yes” se tem a certeza de querer eliminar a(s) base(s) de

dados, caso contrário, carregar em “No” ou “Cancel”.

5- Se carregar em “Yes”, uma mensagem aparecerá no ecrã dizendo que

a(s) base(s) de dados foi ou foram eliminadas.

III. Para inscrever templates dos utilizadores na base de dados do sistema existe as

seguintes opções:

I. Inscrever um template de um só utilizador:

94

II. Para ler uma base de dados do sistema já criada efectuar os seguintes passos:

1- Carregar no botão “Read database”;

2- Escolher a base de dados a utilizar;

3- Carregar no botão “Abrir”.

III. Para eliminar uma base de dados do sistema efectuar os seguintes passos:

1- Carregar no botão “Delete database”;

2- Escolher a(s) base(s) de dados a eliminar;

3- Carregar no botão “Abrir”.

4- Responder “Yes” se tem a certeza de querer eliminar a(s) base(s) de

dados, caso contrário, carregar em “No” ou “Cancel”.

5- Se carregar em “Yes”, uma mensagem aparecerá no ecrã dizendo que

a(s) base(s) de dados foi ou foram eliminadas.

III. Para inscrever templates dos utilizadores na base de dados do sistema existe as

seguintes opções:

I. Inscrever um template de um só utilizador:

Page 96: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

95

1- Depois de criada ou escolhida a base de dados do sistema, carregar no

botão “Read image” e escolher a imagem que se quer registar;

2- Escolha a opção se o ID é fornecido pelo o utilizador ou se quer que o

sistema crie um ID para o utilizador;

3- Se a opção escolhida for “Manual”, escreva o ID que identifica na base

de dados do sistema, os dados biométricos do utilizador, se a opção for

“Automatic” o ID criado corresponde às primeiras 6 letras do nome da

imagem;

4- Carregar no botão “Enrollment”.

II. Inscrever um ou mais templates de um utilizador ou de vários utilizadores na

base de dados do sistema:

1. Carregar no “ Read images”;

2. Introduza o número de imagens por utilizador(es) que quer inscrever na

base de dados;

3. Carregar no botão “OK” se pretende continuar ou “Cancel” se pretende

anular a operação;

4. Escolha a directoria aonde se encontra as imagens do(s) utilizador(es);

95

1- Depois de criada ou escolhida a base de dados do sistema, carregar no

botão “Read image” e escolher a imagem que se quer registar;

2- Escolha a opção se o ID é fornecido pelo o utilizador ou se quer que o

sistema crie um ID para o utilizador;

3- Se a opção escolhida for “Manual”, escreva o ID que identifica na base

de dados do sistema, os dados biométricos do utilizador, se a opção for

“Automatic” o ID criado corresponde às primeiras 6 letras do nome da

imagem;

4- Carregar no botão “Enrollment”.

II. Inscrever um ou mais templates de um utilizador ou de vários utilizadores na

base de dados do sistema:

1. Carregar no “ Read images”;

2. Introduza o número de imagens por utilizador(es) que quer inscrever na

base de dados;

3. Carregar no botão “OK” se pretende continuar ou “Cancel” se pretende

anular a operação;

4. Escolha a directoria aonde se encontra as imagens do(s) utilizador(es);

95

1- Depois de criada ou escolhida a base de dados do sistema, carregar no

botão “Read image” e escolher a imagem que se quer registar;

2- Escolha a opção se o ID é fornecido pelo o utilizador ou se quer que o

sistema crie um ID para o utilizador;

3- Se a opção escolhida for “Manual”, escreva o ID que identifica na base

de dados do sistema, os dados biométricos do utilizador, se a opção for

“Automatic” o ID criado corresponde às primeiras 6 letras do nome da

imagem;

4- Carregar no botão “Enrollment”.

II. Inscrever um ou mais templates de um utilizador ou de vários utilizadores na

base de dados do sistema:

1. Carregar no “ Read images”;

2. Introduza o número de imagens por utilizador(es) que quer inscrever na

base de dados;

3. Carregar no botão “OK” se pretende continuar ou “Cancel” se pretende

anular a operação;

4. Escolha a directoria aonde se encontra as imagens do(s) utilizador(es);

Page 97: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

96

5. Carregar no botão “OK” se pretende continuar ou “Cancel” se pretende

anular a operação;

6. Escolha a opção “Manual” se o ID é fornecido pelo o utilizador ou

“Automatic” se quer que o sistema crie um ID para o utilizador;

7. Se a opção escolhida for “Manual”, escreva o ID que identifica na base

de dados do sistema, os dados biométricos do utilizador, se a opção for

“Automatic” o ID criado corresponde às primeiras 6 letras do nome da

imagem;

8. Carregar no botão “Enrollment”.

IV. Para eliminar um template de um utilizador:

96

5. Carregar no botão “OK” se pretende continuar ou “Cancel” se pretende

anular a operação;

6. Escolha a opção “Manual” se o ID é fornecido pelo o utilizador ou

“Automatic” se quer que o sistema crie um ID para o utilizador;

7. Se a opção escolhida for “Manual”, escreva o ID que identifica na base

de dados do sistema, os dados biométricos do utilizador, se a opção for

“Automatic” o ID criado corresponde às primeiras 6 letras do nome da

imagem;

8. Carregar no botão “Enrollment”.

IV. Para eliminar um template de um utilizador:

96

5. Carregar no botão “OK” se pretende continuar ou “Cancel” se pretende

anular a operação;

6. Escolha a opção “Manual” se o ID é fornecido pelo o utilizador ou

“Automatic” se quer que o sistema crie um ID para o utilizador;

7. Se a opção escolhida for “Manual”, escreva o ID que identifica na base

de dados do sistema, os dados biométricos do utilizador, se a opção for

“Automatic” o ID criado corresponde às primeiras 6 letras do nome da

imagem;

8. Carregar no botão “Enrollment”.

IV. Para eliminar um template de um utilizador:

Page 98: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

97

1. Depois de introduzida a base de dados do sistema, carregar no botão

“Delete ID”

2. Introduzir o ID de aonde se pretende eliminar o template, introduzindo

também a data e hora da inscrição na base de dados do sistema;

3. Carregar no botão “OK”

Caso a opção escolhida seja a autenticação de um utilizador , o seu funcionamento é o

seguinte:

1- Carregar no botão “Read Database” e ler a base de dados que se

pretende utilizar;

2- Introduza o ID do utilizador que quer autenticar-se;

3- Introduza a imagem da característica biométrica do utilizador;

4- Carregar no botão “Authentication” e verificar se a autenticação do

utilizador é válida ou não ao sistema.

97

1. Depois de introduzida a base de dados do sistema, carregar no botão

“Delete ID”

2. Introduzir o ID de aonde se pretende eliminar o template, introduzindo

também a data e hora da inscrição na base de dados do sistema;

3. Carregar no botão “OK”

Caso a opção escolhida seja a autenticação de um utilizador , o seu funcionamento é o

seguinte:

1- Carregar no botão “Read Database” e ler a base de dados que se

pretende utilizar;

2- Introduza o ID do utilizador que quer autenticar-se;

3- Introduza a imagem da característica biométrica do utilizador;

4- Carregar no botão “Authentication” e verificar se a autenticação do

utilizador é válida ou não ao sistema.

97

1. Depois de introduzida a base de dados do sistema, carregar no botão

“Delete ID”

2. Introduzir o ID de aonde se pretende eliminar o template, introduzindo

também a data e hora da inscrição na base de dados do sistema;

3. Carregar no botão “OK”

Caso a opção escolhida seja a autenticação de um utilizador , o seu funcionamento é o

seguinte:

1- Carregar no botão “Read Database” e ler a base de dados que se

pretende utilizar;

2- Introduza o ID do utilizador que quer autenticar-se;

3- Introduza a imagem da característica biométrica do utilizador;

4- Carregar no botão “Authentication” e verificar se a autenticação do

utilizador é válida ou não ao sistema.

Page 99: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

98

Referências Bibliográficas

[Bastos] Bastos, C. A. Reconhecimento de Íris utilizando filtro Log-Gabor2D, Centro de

Informática - Universidade Federal de Pernambuco. Recife,Brasil.

[Banihashemi 2001] Banihashemi, A. H. (Junho 2001). A Heuristic Search for Good Low-

Density Parity-Check Codes at Short Block Lenghts, IEEE ICC 2001. Finlândia.

[Berrou 1993] Berrou, C., Glavieux, A., e Thitimajshimi, P. (Maio de 1993). Near Shannon Limit

Error Correcting Coding and Decoding”, Proceedings ICC’93, pp.1064-70. Genebra, Suíça

[Boechat 2008] Boechat, G. (Fevereiro 2008). Dissertação de Mestrado - Proposta de um

modelo de arquitectura biométrica para identificação pessoal com estudo da dnâmica da

digitação, Universidade Federal de Pernambuco. Recife, Brasil.

[Bossert 1999 ] Bossert, M. (1999). Channel Coding for Telecommunications, John Wiley &

Sons.

[Bowyer 2008] Bowyer, K. W., e Flynn, P. J. (2008). Image understanding for iris biometrics: A

survey, in Computer Vision and Image Understanding, vol. 110, edição 2, pp 281–307.

[Campbell 1997] Campbell, J. P. (1997). Speaker recognition: A tutorial. Proceedings of the

IEEE, 85(9):1437–1462.

[Canny 1986] Canny,J. (1986). A Computational Approach to Edge Detection”, IEEE

Transactions on Pattern Analysis and Machine Intelligence, Vol. 8, pp. 679-714, 1986.

[Chen 2002]Chen, J. e Fossorie,M. P. C. (Março 2002). Near Optimum Universal Belief

Propagation Based Decoding of Low-Density Parity Check Codes, IEEE Transactions on

Communications, vol. 50, nº 3, pp. 406-414.

[Chang 2003] Chang, K., Bowyer, K., e Flynn, P. (2003). Multimodal 2D and 3D biometrics for

face recognition. IEEE International Workshop on Analysis and Modeling of Faces and

Gestures, pages 187–194.

[Chang 2005] Chang, K. I., B., K. W., e Flynn, P. J. (2005). An evaluation of multimodal 2D+3D

face biometrics. IEEE Transactions on Pattern Analysis and Machine Intelligence, 27(4).

[Carlson 1986] Carlson, A. B. (1986). Communication Systems: An Introduction to Signals and

Noise in Electrical Communication, 3ª Edição, McGraw-Hill.

[Daugman 1993] Daugman, J. G. (1993). High confidence visual recognition of persons by a

test of statistical independence, in IEEE Transactions on Pattern Analysis and Machine

Intelligence, vol. 15, no. 11, pp. 1148–1161.

Page 100: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

99

[Daugman 2004] Daugman, J. G. (2004). How iris recognition woks, in IEEE Transactions on

Circuits and Systems for Video Technology, vol. 14, no. 1, pp 21–30.

[Dodis 2006] Dodis, Y., Ostrovsky, R., Reyzin, L., e Smith, A. (Fevereiro de 2006). Fuzzy

Extractors: How to Generate Strong Keys from Biometrics and Other Noisy Data, Cryptology

ePrint Archive, Tech. Rep. 235.

[Duda 1972] Duda, R. e Hart,P. (1972). Use of Hough Transformation to Detect Lines and

Curves in Pictures: Graphics and Image Processing, Communications of the ACM, Vol. 15, pp.

11-15, 1972

[Etzion 1999] Etzion, T. A. (Setembro 1999). Which Codes Have Cycle-Free Tanner Graphs,

IEEE Transactions on Information Theory, vol. 45, nº 6,pp. 2173-2181.

[Ferguson 2003] Ferguson,N. e Schneier, B. (2003). Practical Cryptography, John Wiley &

Sons.

[Fornazin 2008] Fornazin, M. (2008) Análise de Desempenho do Criptossistema Fuzzy Vault

em Aplicações Reais, Pós-Graduação em Ciência da Computação, UNIVERSIDADE

ESTADUAL PAULISTA “Júlio de Mesquita Filho”, Brasil

[Gallager 1962] Gallager, R. G. (1962). Low-Density Parity-Check Codes, IRE Transactions

Information Theory, vol. IT-8, pp. 21-28.

[Gallager 1963] Gallager, R. G. (1963). Low-Density Parity-Check Codes.Cambridge, MA: MIT

Press.

[Heinen et al, 2004] Heinen, M. R., e Osório, F. S. (2004). Biometria comportamental Pesquisa

e desenvolvimento de um sistema de autenticação de usuários utilizando assinaturas

manuscritas. Infocomp Revista de Ciência da Computação. ISSN 1807-4545 volume 3 capítulo

2 pgs 31 a 37 Lav. Lavras MG Brasil.

[Hook 2003] Hook, C., Kempf, J., e Scharfenberg, G. (2003). New pen device for biometrical

3d pressure analysis of handwritten characters, words and signatures.In WBMA ’03:

Proceedings of the 2003 ACM SIGMM Workshop on Biometrics Methods and Applications,

pages 38–44. Nova Iorque, EUA.: ACM Press.

[Hu 2001] Hu, X. Y. (2001). Efficient Implementations of the Sum-Product Algorithm for

Decoding LDPC Codes, IEEE GLOBECOM '01, vol. 2.

[Jain 2006] Jain, A. K., Ross, A., e Pankanti, S. (Junho de 2006). Biometrics: A Tool

Information Security, IEEE Transactions on Information Forensics and Security vol. 1, no 2, pp.

125–143.

Page 101: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

100

[Jain 2008] Jain, A. K., Nandakumar, K., e Nagar., A. (Janeiro de 2008). Biometric Template

Security. EURASIP Journal on Advances in Signal Processing, Special Issue on Biometrics.

[Jr. 2003] Jr., J. D., Orlans, N. M., e Higgins, P. T. (2003). Biometrics, McGraw-Hill. McGraw-

Hill, 1ª edição.

[Juels 2002] Juels, A., e Sudan, M. (2002). A Fuzzy Vault Scheme, in Proceedings of IEEE

International Symposium on Information Theory,pp. 408. Lausana, Suiça.

[Júnior 2005] Júnior, C. A. (2005). Biometria com Enfoque em Reconhecimento de Iris,

Trabalho final do curso. Universidade Estadual de Londrina.

[Kazienko 2003] Kazienko, J. F. (2003). Dissertação de mestrado - Assinatura digital de

documentos eletrônicos através da impressão digital. Programa de Pós-Graduaçãoem Ciência

da Computação. Universidade Federal de Santa Catarina.

[Kovesi 2008] Kovesi, P. (Novembro de 2008). What are Log-Gabor filters and why are they

good? Obtido de

http://www.csse.uwa.edu.au/~pk/Research/MatlabFns/PhaseCongruency/Docs/convexpl.html

[Kschischang 2001] Kschischang, F. R. (Fevereiro 2001). Factor Graphs and the Sum-Product

Algorithm, IEEE Transactions on Information Theory,vol. 47, nº 2, pp. 498-519.

[Lechner 2002] Lechner, G., e Sayir, J. (Setembro 2002). On the Convergence of Log-

Likelihood Values in Iterative Decoding, Mini-Workshop on Topics in Information Theory,.

Essen, Alemanha.

[Lechner 2003] Lechner, G. (Fevereiro 2003). Convergence of Sum-Product Algorithm for

Finite Length Low-Density Parity-Chech Codes, Winter School on Coding and Information

Theory. Monte Veritá, Suiça.

[Leung 2000]Leung, W. K. (Fevereiro 2000). Decoding Low Density Parity Check Codes with

Finite Quantization Bits, IEEE Communications Letters, vol. 4, nº 2 pp. 62-64.

[Ma 2002] Ma, L., Wang, Y., e Tan., T. (2002). Iris recognition based on multichannel gabor

filtering,in Procedings of the 5th Asian Conference on Computer Vision, volume 1, pp 279–283.

[Ma 2004] Ma, L., Tan, T., Zhang, D., e Wang, Y. (2004). Local Intensity Variation Analysis for

Iris Recognition. Pattern Recognition, 37(6):1287–1298.

[Maio 2002] Maio, D. (2002) Proceedings of the 16th International Conference on Pattern

Recognition, v. 3, pp. 811-814, second fingerprint verification competition.

[Maltoni 2003] Maltoni, D., Maio, D., Jain, A. K., e Prabhakar, S. (2003). Handbook of

Fingerprint Recognition,Springer. Berlim, Alemanha.

Page 102: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

101

[Mansfield 2002]Mansfield, T., Kelly, G., Chandler, D., e Kane, J. (2002). Biometrics.

Biometrics for identification and authentication - advice on product selection. Technical report,

UK Biometrics Working Group.

[Masek 2003] Masek, L. (2003). Recognition of Human Iris Patterns for Biometric Identification.

School of Computer Science and Software Engineering ,The University of Western Australia,

Austrália.

[Masek_1 2003] Masek, L. e Kovesi, P. (2003). MATLAB Source Code for a Biometric

Identification System Based on Iris Patterns . School of Computer Science and Software

Engineering ,The University of Western Australia, Austrália.

[Moraes 2006] Moraes, A. F. (2006). Dissertação de Mestrado - Método para avaliação da

tecnologia Biométrica na segurança dos aeroportos. São Paulo.

[Munich 1998]Munich, M. E., e Perona, P. (1998). Camera-based ID verification by signatures

tracking. Lecture Notes in Computer Science, 1406:782.

[Myers 1981] Myers, C. S., e Rabiner, L. R. (1981). A comparative study of several dynamic

time-warping algorithms for connected word recognition. The Bell System Technical Journal,

60(7):1389–1409.

[Narayanan 2002] Narayanan, K.R e Prabhakar,A. (Setembro 2002). Pseudorandom

Construction of LDPC codes using Linear Congruential Sequences, IEEE Transactions on

Communications, vol. 50, nº 9, pp. 1389-1396.

[Neal 1995] Neal, R. M., e Mackay, D. J. (1995). “Good Codes based on Very Sparse Matrices”,

Cryptography and Coding. 5th IMA Conference ed. Colin Boyd, Lecture Notes in Computer

Science nº 1025, pp.100-111, Springer, Berlim.

[Neal 1997] Neal, R. M., e Mackay, D. J. (Março 1997). Near Shannon limit performance of low

density parity check codes, Electronics Letters, vol. 33, nº 6, pp 457-458.

[Pamplona 2007] Pamplona, V. F. (Julho de 2007). Estudo sobre a íris humana para síntese

de imagens fotorealísticas. Porto Alegre.

[Prokski 1999] Prokoski, F. J., e Riedel, R. (1999). Infrared identification of faces and body

parts. In Jain, A. K., Bolle, R. M., and Pankanti, S., editors, Biometrics Personal Identification in

Networked Society, capítulo 9. Kluwer Academic Publishers. Boston, MA, EUA.

[Przybocki 2004] Przybocki, M., e Martin, A. (2004). NIST speaker recognition evaluation

chronicles. Technical report, Speech Group, Information Access Division, Information

Technology Laboratory National Institute of Standards and Technology USA. Publicado na

Conferência The Odissey 2004 .

Page 103: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

102

[Putte 2000] Putte, T., e Keuning, J. (2000). Biometrical fingerprint recognition In Proceedings

of IFIP TC8/WG8.8 Fourth Working Conference on Smart Card Research and Advanced

Applications, pág. 289–303.

[Rabiner 1986] Rabiner, L. R., e Juang, B. H. (1986). An introduction to Hidden Markov

Models. IEEE Magazine on Accoustics, Speech and Signal Processing 3(1):4–16.

[Ratha 2001] Ratha, N. K., Connell, J. H., e Bolle, R. M. (Junho de 2001). An Analysis of

Minutiae Matching Strength. Publicado em Proceedings of Third International Conference on

Audio- and Video-Based Biometric Person Authentication (AVBPA) pp. 223–228. Halmstad,

Suécia.

[Ratha 2007] Ratha, N. K., Chikkerur, S., Connell, J. H., e Bolle, R. M. (Abril de 2007).

Generating Cancelable Fingerprint Templates, IEEE Transactions on Pattern Analysis and

Machine Intelligence, vol. 29,no. 4, pp. 561–572.

[Richardson 2001] Richardson, T., e Urbanke, R. (Fevereiro de 2001). “The Capacity of Low-

Density Parity-Check Codes Under Message-Passing Decoding”, IEEE Transactions on

Information Theory, vol. 47, nº 2, pp. 599-618.

[Sabourin 1997] Sabourin, R., Genest, G., e Preteux, F. J. (1997). Off-line signature

verification by local granulometric size distributions. IEEE Transactions on Pattern Analysis and

Machine Intelligence, 19(9):976–988.

Sanchez-Reillo 2000] Sanchez-Reillo, R., Sanchez-Avila, C., e Gonzalez Marcos, A. (2000).

Biometric identification through hand geometry measurements.IEEE Transactions on Pattern

Analysis and Machine Intelligence, 22(10):1168–1171.

[Sayir 2002] Sayir, J. Lechner, G. (Setembro 2002). On the Convergence of Log-Likelihood

Values in Iterative Decoding, Mini-Workshop on Topics in Information Theory. Essen,

Alemanha.

[Scheenstra 2005] Scheenstra, A., Ruifrok, A., e Veltkamp, R. C. (2005). A survey of 3D face

recognition methods. In 5th International Conference on Audio- and Video-based Biometric

Person Authentication (AVBPA), volume 3546 of Lecture Notes in Computer Science, pages

891–899, Rye Brook. Nova Iorque, EUA. Springer-Verlag.

[Schneier 1999] Schneier, B. (1999). Inside risks: the uses and abuses of

biometrics.Communications of the ACM, 42(8):136.

[Shannon 1948] Shannon, C. E. (1948). A mathematical theory of communication”, Bell

Systems Technical Journal, 27: 397-423, 623-656, 162.

[Tanner 1981] Tanner, R. M. (Setembro 1981). A recursive approach to low complexity codes,

IEEE Transactions on Information Theory, vol. IT-27, nº 5, pp. 533-547.

Page 104: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

103

[Teoh 2006] Teoh, A. B., Goh, A., e Ngo, D. C. (Dezembro de 2006). Random Multispace

Quantization as an Analytic Mechanism for BioHashing of Biometric and Random Identity

Inputs,IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 28, no. 12,

pp.1892–1901.

[Tisse 2003] Tisse, L.T.l., Martin, L., e Robert., M. (2003). Person identification technique using

human iris recognition. St Journal of System Research,Vol. 4, pp. 67 – 75.

[Turk 1991] Turk, M., e Pentland, A. (1991). Face recognition using eigenfaces.In IEEE

Computer Society Conference on Computer Vision and PatternRecognition, pages 586–591.

Maui, HI, EUA.

[Uludag 2004] Uludag, U., e Jain, A. K. (2004). Attacks on biometric systems: A case study in

fingerprints. Proc. SPIE-EI.

[Uludag 2004] Uludag, U., Pankanti, S., Prabhakar, S., e Jain., A. K. (2004). Biometric

cryptosystems: issues and challenges, Proceedings of the IEEE, vol. 92, no. 6, pp. 948–960.

[Wang 2008] Wang, W., Li, J., Huang, F., e Feng, H. (2008). Design and implementation of

Log-Gabor filter in fingerprint image enhancement, in Pattern Recognition Letters, Volume 29,

edição 3, pp. 301–308.

[Wildes 1994] Wildes, R., Asmuth, J., Green, G., S. Hsu, R. K., Matey, J., e McBride, S. (1994).

A system for automated iris recognition, in Proceedings of IEEE Workshop on Applications of

Computer Vision, pp. 121–128.

[Wildes 1997] Wildes, R. (1997). Iris recognition: an emerging biometric technology, in

Proceedings of the IEEE, vol. 85, no. 9.

[Williamson 2003] Williamson, R. C., e McGowan, J. A. (2003). Loop Removal from LDPC

Codes,IEEE Information Theory Workshop 2003. Paris.

[Yu 1995] Yu, K., Mason, J., e Oglesby, J. (1995). Speaker recognition using Hidden Markov

Models, Dynamic Time Warping and Vector Quantisation. IEE Proceedings – Vision, Image and

Signal Processing, 142:313–318.

[Zhao 2003] Zhao, W., Chellappa, R., Phillips, P. J., e Rosenfeld, A. (2003). Face recognition: A

literature survey. ACM Computing Surveys, 35(4):399–458.

[Zunkel 1999] Zunkel, R. L. (1999). Hand geometry based verification. In Jain, A. K.,Bolle, R.

M., and Pankanti, S., editors, Biometrics: Personal Identification in Networked Society, capítulo

4, pages 87–101. Kluwer Academic Publishers. Boston, MA,EUA.

Páginas de internet de onde foram retiradas figuras e tabelas:

[Internet1] http://www.cs.ust.hk/svc2004 ( Setembro de 2009)

Page 105: Reforço da Segurança das Biométricas utilizando Codificação de … · criptográficas de hash, códigos de correcção de erros. 3 Abstract The use of biometrics (e.g., fingerprints,

104

[Internet2] http://curlygirl.naturlink.pt/olho.jpg (Setembro de 2009)

[Internet3] http://curlygirl.naturlink.pt/olho.jpg (Setembro de 2009)

[Internet4] http://www.grupoescolar.com/a/b/46694.jpg (Setembro de 2009)

[Internet5] http://www.explainthatstuff.com/how-iris-scans-work.html (Setembro de 2009)

[Internet6] http://www.rsa.com/rsalabs/node.asp?id=2176 (Setembro de 2009)

[Internet7] http://en.wikipedia.org/wiki/Cryptographic_hash_function (Setembro de 2009)

[internet8] http://www.wirelessbrasil.org/wirelessbr/colaboradores/jose_smolka/ cod_voz_05.

html (Setembro de 2009)

[internet9] Base de dados da CASIA http://www.cbsr.ia.ac.cn/IrisDatabase.htm (Agosto de

2009)

[internet10] Base de dados da UBIRIS http://iris.di.ubi.pt/ubiris1.html (Agosto de 2009)