programar biometria nitgen

41
Guia de desenvolvimento biométrico Guia de desenvolvimento Biométrico Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Upload: psadeazevedo

Post on 18-May-2015

8.261 views

Category:

Technology


2 download

DESCRIPTION

Guia de Programação Biometria - Protudos Nitgen

TRANSCRIPT

Page 1: Programar Biometria Nitgen

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Guia de desenvolvimento Biométrico

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 2: Programar Biometria Nitgen

1. Como garantir a qualidade da impressão digital?

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

1.1 Características biométricas(diferem de pessoa para pessoa)

1.2 Alterar os respectivos parâmetros de qualidade em função das necessidades

1.3 Registar em Base de Dados o respectivo valor calculado pelo SDK(Protecção do integrador/Fornecedor)

1.4 Funções Biométricas(API’s)

1.5 Factores ambientais

1.6 Posicionamento correcto do dedo sobre o leitorKimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 3: Programar Biometria Nitgen

1.1 Características Biométricas

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Há que ter em conta que cada impressão digital tem as suas características e por tal é necessário fazer uma pré-selecção, e apurar se é possível identificar uma determinada pessoa recorrendo à biometria.

Impressão danificada

Impressão com boa qualidade

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 4: Programar Biometria Nitgen

1.2 Parâmetros de qualidade

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Após seleccionarmos os indivíduos passíveis de ser identificados recorrendo à biometria, há que analisar se é necessário alterar os parâmetros de aquisição.

Conceito Alcance Defeito Parâmetro ComandoBrilho 0 – 100 45 SI_IMAGE_BRIGH

TNESSFIM30: CMD_SET_OPP_OPTION (0x40) / FIM20: CMD_SET_SYSINFO (0x4C) Contraste 0 – 100 20 SI_IMAGE_CONTR

AST

Ganho 1, 2, 4, 8 2 SI_IMAGE_GAINLatência Verdadeiro/Falso Verdadeiro SI_USING_LATENT FIM30:

CMD_SET_LATENT_ OPTION (0x44) / FIM20: CMD_SET_SYSINFO (0x4C)

Captura adaptativa

Verdadeiro/Falso Verdadeiro SI_ADAPTATIVE_CAPTURE

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 5: Programar Biometria Nitgen

1.2 Parâmetros de qualidade

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

• Brilho - Para imagens secas (dedos secos) gera uma imagem habitualmente clara e é recomendado baixar o brilho a um valor como 30, contrariamente para imagens húmidas (dedos sobre-hidratados ou suados) gera uma imagem escura e é recomendado subir o brilho para equalizar a imagem a um nível como 60.

Dedo muito seco

Dedo húmido

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 6: Programar Biometria Nitgen

1.2 Parâmetros de qualidade

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

• Contraste - Intervêm no pré-processamento da imagem, é conveniente jogar com este parâmetro, para dedos secos ou húmidos pode melhorar a relação FRR (índice de falsos rejeitados) é no entanto complexo recomendar um valor distinto ao valor por defeito.

• Ganho - Intervêm no pré-processamento da imagem, uma alteração neste valor pode ocasionar resultados drásticos, só se recomenda se se observar uma melhoria notável para todos os casos possíveis.

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 7: Programar Biometria Nitgen

1.2 Parâmetros de qualidade

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Outros parâmetros poderão ser especificados para garantir o sucesso da identificação/verificação:

• Nível de segurança  é um parâmetro que nos permiti definir a quantidade de pontos de Matching (pontos a azul na imagem abaixo) da impressão digital; ao aumentar este nível estamos a aumentar o nível da exigência de identificação entre a impressão digital adquirida no momento e aquela que está na base de dados. [0..9]

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 8: Programar Biometria Nitgen

1.2 Parâmetros de qualidade

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

De acordo com o manual do SDK este parâmetro tem uma forte dependência com os factores de erro (pág. 37)

Valor aconselhado = 5 (normal)Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 9: Programar Biometria Nitgen

1.2 Parâmetros de qualidade

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

•Verify Image quality este parâmetro está compreendido entre [0..100] e como o próprio método indica funciona como um teste à qualidade de verificação/identificação que o algoritmo faz. O ideal é localizar este parâmetro nos 50

• Enroll Image Quality - este parâmetro está compreendido entre [0..100] e deverá ser usado SEMPRE para a aquisição da impressão digital. O capture deverá ser usado apenas à posteriori para a identificação/verificação. Ao usar este método vamos ficar com a impressão digital numa variável que depois será reencaminhada para um tratamento de Matching ou verify.

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 10: Programar Biometria Nitgen

1.3 Evento QualityInfo

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Sugerimos a utilização deste evento como regra para adicionar uma impressão digital à base de dados, caso este valor seja menor do que três não se deve considerar o armazenamento da impressão digital capturada.

Se q >= 3 Então guardo na Base de Dados

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 11: Programar Biometria Nitgen

1.4 Funções Biométricas(API’S)

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

O NBioBSP SDK é baseado na especificação da NBioAPI projectado pela NITGEN Co., LTD., e provêm de uma avançada tecnologia de autenticação de impressões digitais. O NBioAPI é composto por dois tipos de API’s biométricas, chamadas de API primitiva e API de alto nível.

NBioAPI

Baixo nível

Caputurar = CaptureAquisição = Enroll

Verificação = VerifyMatch

“Cliente-servidor”

Alto Nível

Aquisição = EnrollVerificação = Verify

“Stand-alone”

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 12: Programar Biometria Nitgen

1.4 Funções Biométricas (API’S)

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Fluxograma Identificação (1:N)

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 13: Programar Biometria Nitgen

1.4 Funções Biométricas(API’S)

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Fluxograma Identificação (1:N)

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 14: Programar Biometria Nitgen

1.4 Funções Biométricas(API’S)

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Fluxograma Identificação (1:1)

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 15: Programar Biometria Nitgen

1.4 Funções Biométricas(API’S)

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Fluxograma Identificação (1:1)

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 16: Programar Biometria Nitgen

1.5 Factores ambientais

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Os sensores biométricos Nitgen funcionam segundo as leis da reflexão, o que significa que fortes fontes de luz direccionadas sobre o sensor poderão implicar uma má aquisição da impressão digital. Para além disso dispositivos como o Hamster II dispõem de sensores infra-vermelhos que facilmente poderão ser “enganados” com fortes fontes de radiação.

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 17: Programar Biometria Nitgen

1.6 Posição do dedo no acto da aquisição

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Outro importante factor na aquisição é a interacção do utilizador final com o leitor, a colocação do dedo de uma forma errada poderá originar a uma fraca impressão digital.

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 18: Programar Biometria Nitgen

2. Desenvolvimento de um projecto Biométrico

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

2.1 Conceitos importantes(on-line e off-line)

2.2 Captura da impressão digital

2.3 Tratamento dos dados da impressão digital

2.4 Verificação/Identificação do utilizador

2.4.1 Verificação 1:1

2.4.2 Identificação 1:N

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 19: Programar Biometria Nitgen

2.1 Conceitos importantes

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Antes de avançar no projecto há que compreender as suas necessidades, e mediante esta decisão ajustar o tipo de software e hardware.

Entram então para o nosso vocabulários dois novos conceitos:

Terminal On-line - existe comunicação constante com o host, onde está a ser executada uma aplicação que geralmente controla em tempo real todas as operações.

Terminal Off-line - não existe qualquer tipo de aplicação a controlar o terminal e nesta situação, o dispositivo possui inteligência suficiente para gerir a informação que o utilizador lhe faz chegar.

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 20: Programar Biometria Nitgen

eNSearch

Base de Dados Cliente

Save DB to File

Load DB From File

FicheiroFicheiro

eNBSP SDK

Aplicação do cliente

eNSearch SDK

OCX’s/DLL’s

2.1 Conceitos importantes

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Projecto On-line – todos eventos são controlados em tempo real

pela aplicaçãoKimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 21: Programar Biometria Nitgen

2.1 Conceitos importantes

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

RedeAplicação do

Cliente

Projecto Off-line – não há comunicação permanente entre o terminal e a aplicação do cliente

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 22: Programar Biometria Nitgen

2.1 Conceitos importantes

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Capturar FP’S

Hamster

Nsearch(memória

volátil)

Capturar FP’S

Biomax2

Conversão

Identificação/

Verificação

Inicio

Fim

outputUART(“FIM16”)objExtraction.Enroll( Null)

objFPData.Import

objNSearch.addFP

objNSearch.IdentifyUser

Page 23: Programar Biometria Nitgen

2.2 Captura da impressão Digital

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Sistema On-line Sistema Off-line

Sistema On-line Sistema On-line

Inicio da Captura

• Pressionar uma tecla• Barreira Óptica

Instruções para iniciar captura

• FIM16 (Formato HV)• FIM16HD(Formato HD)

Resposta do terminal-Aplicação

• Tramas Ascii - Hexa• 1Byte =2Bytes (ex: 0xC4

gerado = “0x43-0x34 que corresponde ao “C” e “4” AScii

•Possibilidade de adicionar FP directamente no terminal

•As FP são guardadas no módulo biométrico

•Inconveniente de não termos a informação centralizada num servidor

•Existe a possibilidade da perca de informação.

•Não há informação visual sobre a FP quando adquirida directamente no módulo biométrico(FIM)

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 24: Programar Biometria Nitgen

2.2 Captura da impressão Digital

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Sistema On-line( Terminal )

Sistema On-line

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 25: Programar Biometria Nitgen

2.2 Captura da impressão Digital

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Sistema On-line( Hamster )

Sistema On-line

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 26: Programar Biometria Nitgen

Sistema On-line

2.3 Tratamento da informação

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Conversão (Biomax2 <> Formato eNSearch Hamster) Exemplo Visual Basic 6.0

1. Recebemos a FP na AnsInputFP (817bytes)

2. Trama[0…817] [0..17] códigos de sucesso/erro [18…817] Impressão digital

3. Conversão

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 27: Programar Biometria Nitgen

2.3 Tratamento da informação

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Conversão (Biomax2 <> Formato eNSearch Hamster) Exemplo Visual Basic 6.0

Sistema On-line

3. Conversão

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 28: Programar Biometria Nitgen

2.3 Tratamento da informação

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Conversão (Biomax2 <> Formato eNSearch Hamster) Exemplo Visual Basic 6.0

Sistema On-line

3. Conversão

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 29: Programar Biometria Nitgen

2.3 Tratamento da informação

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Conversão (Biomax2 <> Formato eNSearch Hamster) Exemplo Deplhi 7.0

Sistema On-line

3. Conversão

Inicialmente carrego um ficheiro do tipo *.fdb com algumas impressões digitais

Carregada a informação na base de dados eNSearch, faço a respectiva importação para formato Biomax2 e faço identificação(1:N) Kimaldi Lusa, Lda - Paulo Azevedo -

[email protected]

Page 30: Programar Biometria Nitgen

2.3 Tratamento da informação

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Conversão (Biomax2 <> Formato eNSearch Hamster) Exemplo Deplhi 7.0

Sistema On-line

1. Pedido de FP

2. Recebo a informação

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 31: Programar Biometria Nitgen

2.3 Tratamento da informação

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Conversão (Biomax2 <> Formato eNSearch Hamster) Exemplo C# .NET

Sistema On-line

1. Enroll FP Hamster

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 32: Programar Biometria Nitgen

2.3 Tratamento da informação

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Conversão (Biomax2 <> Formato eNSearch Hamster) Exemplo Deplhi 7.0

Sistema On-line

2. Pedido de informação ao Biomax2 e Conversão

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 33: Programar Biometria Nitgen

2.4 Verificação/Identificação

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Dependendo das necessidades do projecto há que escolher claramente um tipo de autenticação :

• Verificação (1:1) - Extremamente rápida, o utilizador é convidado a apresentar um dado identificativo (FP ou Cartão de proximidade) que será comparado com os registos existentes

• Identificação(1:N) - Depende da quantidade de utilizadores registados, depende das potencialidades da máquina. Aqui o utilizador é convidado a entrar um dado identificativo (FP) , por sua vez a aplicação vai pesquisar na Base de Dados até encontrar o utilizador

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 34: Programar Biometria Nitgen

2.4.1 Verificação

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Como parâmetros, tenho que passar duas impressões digitais a primeira capturada no momento a segunda é a impressão digital que está armazenada para o respectivo utilizador

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 35: Programar Biometria Nitgen

2.4.2 Identificação

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Após a conversão concluída, o resultado é passado como parâmetro deste método

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 36: Programar Biometria Nitgen

3. Segurança e análise de erro

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

3.1 O sistema biométrico é seguro?

3.2 Análise de erro para os dispositivos biométricos

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 37: Programar Biometria Nitgen

3.1 O sistema biométrico é seguro?

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Em termos de segurança, a Kimaldi Lusa disponibiliza aos seus integradores documentação que garante perante a Comissão Nacional de Protecção de Dados é impossível desencriptar uma Impressão Digital depois de ter sido encriptada pelos algoritmos da Nitgen

“…

…“Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 38: Programar Biometria Nitgen

3.2 Análise de erro para dispositivos Biométricos

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Como em todos os dispositivos, há sempre uma taxa de erro associada seja por problemas relacionados com o hardware seja com problemas relacionados com o software, na biometria não poderia ser excepção.

FRR – Falsos Negativos, um falso negativo significa que o utilizador já está registado na base de dados contudo quando é feita uma verificação/identificação o algoritmo rejeita o utilizador, ou seja, é como se o utilizador nunca tivesse sido registado

FAR – Falsos Positivos, um falso positivo por sua vez, é a situação em que existe uma identificação mas o algoritmo aponta para um utilizador errado, retornando um nome errado ou até mesmo um ID errado dependendo da aplicação

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 39: Programar Biometria Nitgen

3.2 Análise de erro para dispositivos Biométricos

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Estes valores podem ser considerados para uma pequena gama de produtos normalmente, aqueles que não necessitam de qualquer tipo de integração com software.

• FFR: 1/1,000• FAR: 1/100,000

Na gama de produtos de integração não é aplicável valores de FFR e FAR.

• Hardware – Leitores de secretária (ex. Hamster I e II)

• Software – SDK de desenvolvimento

 

Uso negligente SDK = Impossibilidade de prever FRR e FAR Kimaldi Lusa, Lda - Paulo Azevedo -

[email protected]

Page 40: Programar Biometria Nitgen

4. Conclusão

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Sistemas Biométricos

Segurança, Fiabilidade e Funcionalidade

Produtos Kimaldi + Produtos Nitgen

Solução viável, segura de rápida implementação

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]

Page 41: Programar Biometria Nitgen

4. Conclusão

Gu

ia d

e d

ese

nvolv

imento

bio

métr

ico

Fim

Obrigado pela vossa atenção!

Dúvidas?

Departamento TécnicoPaulo Azevedo

[email protected]

Kimaldi Lusa, Lda - Paulo Azevedo - [email protected]