;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Como saber que você é você? Entenda a tecnologia por trás da biometria

Existem muitas formas de saber que você é você; entenda - Arte UOL
Existem muitas formas de saber que você é você; entenda Imagem: Arte UOL

Márcio Padrão

Do UOL, em São Paulo

27/09/2018 09h56

O que a urna eletrônica e o iPhone 5S têm em comum? Ambos usam as marcas de seus dedos para verificar sua identidade.

Nem parece, mas 2018 marca os dez anos que o Brasil começou a cadastrar seus eleitores por biometria. Dos 147,3 milhões de eleitores aptos a votar, 73,6 milhões serão identificados por meio de impressões digitais, o que segundo o TSE (Tribunal Superior Eleitoral), é metade (50,03%) do eleitorado.

VEJA TAMBÉM:

Há cinco anos, vimos outro marco da biometria: o iPhone 5S, primeiro celular da Apple com leitor de impressão digital embutido. Apesar de não ter sido o primeiro telefone a ler nossas digitais --o Motorola Atrix, de 2011, já tinha um sensor ótico-- o iPhone 5S marcou uma tendência que dura até hoje, pois quase todos os celulares recentes reconhecem nossos dedos.

Afinal, o que é biometria?

A palavra vem dos termos gregos bio (vida) + metria (medida) e trata-se do estudo das características físicas ou comportamentais dos seres vivos. Fisicamente, usa elementos como nossos olhos, palma da mão, digitais do dedo, retina ou íris dos olhos para nos distinguir. No campo comportamental, a nossa voz, ou forma de andar.

Alguns sensores biométricos são os de impressão digital, como os da maioria dos celulares recentes; os de reconhecimento de rosto, como o Face ID da Apple e o usado nas filas dos voos internacionais em aeroportos; o de reconhecer s, usado em programas como Docusign, e o de leitura de íris, visto no Galaxy S8, S9, Note 8 e Note 9.

Face ID da Apple - Reprodução - Reprodução
Face ID da Apple
Imagem: Reprodução

Para que serve?

Essas características são diferentes e únicas em cada pessoa. Então, a função da biometria é catalogar e identificar os indivíduos a partir desses traços.

Na tecnologia, a biometria permite combinar segurança e personalização com a facilidade de uso.

Um exemplo disso são os sensores dos celulares, que substituem senhas digitadas na tela. Uma pessoa pode ver você digitando e decorar sua senha, mas dificilmente vai reproduzir a digital do seu dedo ou a profundidade do seu rosto ou o desenho da sua íris. Fora a facilidade: encostou o dedo, liberou. Olhou para a tela, destravou.

Sim, até dá para copiar a digital o dedo usando um molde e fazer um clone de borracha. Inclusive, médicos já foram flagrados usando esta tática para burlar o ponto eletrônico de unidades públicas de saúde. Mas é muita tecnologia muito difícil de ser burlada. Tanto é que muitos aplicativos de bancos já adotaram este modelo para que você e sua conta.

Como funciona?

O hardware (seja celular, caixa eletrônico, urna...) usa sensores para captar a biometria. A informação é enviada para o processador de dados e depois para o software, que combina computação gráfica, processamento de imagens, banco de dados e, em alguns casos, ferramentas de aprendizado de máquina.

Em resumo, o processo biométrico consiste de quatro etapas: captura, extração, criação de padrão e comparação.

No caso da digital, dois tipos de sensores fazem a captura: os capacitivos e os óticos. Nos dois casos, o leitor reage com os sulcos e traços da ponta do dedo para criar um padrão específico de corrente elétrica, "digitalizando" assim nossa impressão. O sensor capacitivo usa uma baixa corrente elétrica para isso, e o ótico, um módulo de diodos sensíveis à luz.

Leitor ótico de impressões digitais - The New York Times - The New York Times
Leitor ótico de impressões digitais
Imagem: The New York Times

Biometrias diferentes requerem sensores e leitores diferentes também. O Face ID dos iPhones combina a câmera frontal com um emissor de luz, uma câmera infravermelho e um projetor de pontos, que projeta 30 mil pontos invisíveis para criar mapas faciais do rosto do usuário.

Depois vem a extração. A imagem captada pelas câmeras e sensores é transformada em uma sequência específica de bits (a unidade mais básica de dados da computação). Esta sequência será associada à identificação da pessoa que se submeteu à biometria --esta é a fase da criação de padrão.

É como se cada pedaço da sua digital ou do seu rosto se transformasse em uma combinação única de uns ("1") e zeros ("0"), como são chamados respectivamente o sinal elétrico no seu pico na tensão mais elevada e na mais baixa.

Já a comparação, ou verificação, acontece quando usamos a biometria no cotidiano. O sistema que fez a coleta capta novamente a amostra do usuário e, ao comparar com o banco de dados, comprova que você é você.

Existe ainda uma quinta etapa, a identificação, que é o contrário da verificação. Nela, você usa a biometria para identificar uma pessoa. É o caso da biometria usada na investigação forense.

Como é a biometria nas eleições?

O Tribunal Superior Eleitoral está coletando impressões digitais, fotografia e digital dos eleitores. Essas biometrias vão para um cartório eleitoral, que atualiza as informações vinculadas ao seu título de eleitor.

O objetivo é garantir a identificação correta de cada eleitor e tornar praticamente impossível fraudes via intervenção humana.

Nas cidades que já aram pelo recadastramento biométrico, a identidade do eleitor é confirmada quando ele põe o dedo no leitor biométrico da urna eletrônica, o que dispensa a no caderno de votação.

Para votar, é necessário ainda apresentar documento de identificação com foto ou baixar o etítulo, que também vale para quem já fez a biometria.

* Fontes: TSE; Apple; Oz Technology; André Carlos Ferreira de Carvalho, professor de ciência da computação da ICMC-USP; e Paulo Pisani, professor de ciência da computação da UFABC