;(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

FaceApp: por que o app que te deixa velho ameaça sua privacidade

Luciano Huck no FaceApp - Reprodução
Luciano Huck no FaceApp Imagem: Reprodução

Kaluan Bernardo

Do TAB, em São Paulo

16/07/2019 16h57

Nos últimos dias, a internet brasileira parece ter se tornado um asilo. Do dia para a noite, várias pessoas aram a postar selfies com suas versões idosas. A tecnologia por trás da brincadeira é o FaceApp, um aplicativo que soa inocente, mas pode ser extremamente invasivo em relação à privacidade.

O FaceApp é um serviço russo que surgiu em 2017 e utiliza inteligência artificial para modificar o rosto das pessoas de forma divertida. Ele permite deixar o indivíduo com aparência envelhecida, rejuvenescida, experimentar diferentes cortes de cabelo etc.

Com mais de 50 milhões de s na Play Store, do Android, é o aplicativo gratuito mais baixado da plataforma.

A empresa vende filtros pagos e exibe anúncios para os usuários. A política de privacidade do serviço está exposta no rodapé do site. Na avaliação de especialistas ouvidos pelo TAB, ela é um tanto problemática.

Para Dennys Antonialli, diretor-presidente do InternetLab, ONG que promove debates em direito e tecnologia, "o FaceApp tem uma política de privacidade bastante genérica, dando a possibilidade de coletar e usar não somente as fotos dos usuários, mas também outras informações sensíveis, como identificadores de seu aparelho celular, endereço de e-mail e dados de localização".

vou ser o meu pai. iscritim.

Uma publicação compartilhada por Luan Santana (@luansantana) em

Para Joana Varón, diretora executiva da Coding Rights, organização de defesa de direitos humanos na internet, a política de privacidade do FaceApp é muito permissiva. "Eles afirmam que sua informação pode ser compartilhada com serviços e negócios que são parte do mesmo grupo do FaceApp ou ainda com afiliados [sem dizer quem seriam os afiliados]. Ou seja: o uso vai muito além da empresa dona do aplicativo", comenta.

A companhia afirma que os dados do usuário podem ser usados para oferecer "informação e conteúdo personalizado para você e para outros, incluindo anúncios e outras formas de marketing", melhorar e testar a eficiência do serviço, reconhecer padrões demográficos, entre outros.

O serviço ainda afirma que "as informações coletadas podem ser guardadas e processadas nos Estados Unidos ou em qualquer outro país que o FaceApp e seus afiliados ou provedores de serviço tenham instalações".

Também faltam políticas de segurança. Nos termos, a empresa diz que "não pode garantir a segurança das informações que você transmite ao FaceApp ou garantir que essas informações no serviço não possam ser adas, abertas, alteradas ou destruídas".

A descrição genérica permite que a empresa use os dados coletados sem dar muitas pistas do que o usuário pode esperar. Não que a companhia esteja sozinha. "O Faceapp é só mais um dos inúmeros aplicativos que utilizamos e que operam a partir de um modelo de negócios que se baseia na coleta e tratamento de dados pessoais", diz Antonialli. Por isso, é necessário tomar cuidados especiais.

Envelhecer como meus ídolos

Uma publicação compartilhada por Tata Werneck (@tatawerneck) em

"Os termos de uso e políticas de privacidade foram feitos para não serem lidos. Mas podemos ter mais cuidado escolhendo um pouco os aplicativos que usamos", comenta Varón. Ela recomenda ler, pelo menos, os trechos que falam sobre o compartilhamento de dados e políticas de segurança.

Antonialli recomenda evitar fazer por meio do Facebook. Se fizer, desabilite o compartilhamento das fotos do perfil e do endereço de e-mail. Após usar o aplicativo, confira as permissões que você concedeu a ele no sistema de seu celular e desative-as.

O FaceApp viola as leis brasileiras?

Varón acredita que o aplicativo viola o Marco Civil da Internet. "Você está cedendo sua imagem para um determinado fim: brincar com sua foto. Mas as políticas de privacidade do FaceApp deixam claro que não é isso. As imagens estão sendo arquivadas e processadas para diferentes fins, o que é ilegal no Brasil", diz.

A Lei Geral da Proteção de dados, aprovada em 2018 e que só entrará em vigor em agosto de 2020, também entraria em conflito com o aplicativo. "A lei estabelece alguns princípios que devem nortear as atividades de coleta e tratamento de dados pessoais, como finalidade, adequação, necessidade e transparência, princípios esses que não são compatíveis com políticas tão amplas e genéricas como a do FaceApp. Isso também poderia afetar o consentimento do usuário, que precisa ser oferecido com base em finalidades específicas, e não genéricas.", explica Antonialli. "De todo modo, o direito à privacidade está garantido pela Constituição Federal e práticas que o violem podem ser objeto de questionamento, inclusive judicial", conclui.

Como o FaceApp pode fomentar políticas de vigilância

Pequenas empresas que surgem coletando dados podem ser muito mais perigosas do que as grandes. "Tem mais gente se preocupando com o Facebook do que esses pequenos aplicativos que viralizam", diz Varón.

Embora práticas questionáveis de respeito à privacidade não sejam exclusividade do FaceApp, a coleta e utilização das fotos dos usuários gera preocupações adicionais. "Especialmente em um contexto em que as tecnologias de reconhecimento facial estão sendo largamente aprimoradas", ressalta Antonialli.

A selfie que você tira pode ser usada principalmente para alimentar bancos de dados usados para treinar câmeras de reconhecimento facial.

Essa é uma tecnologia que está sendo criticada, tanto pelo estado de vigilância constante que cria quanto por, muitas vezes, funcionar de forma enviesada.

"No mundo todo nossas imagens estão sendo utilizadas para treinar essas bases de dados sem nosso consentimento. E estamos treinando tecnologias que podem nos discriminar, limitar o a direitos, políticas", comenta Varón.

No MIT, a pesquisadora Joy Buolamwini, analisou os sistemas de reconhecimento facial da Microsoft, Facebook e IBM e notou que os sistemas funcionavam melhor com homens e brancos. Na análise de erro da Microsoft, por exemplo, percebeu que o sistema errava o gênero 93,6% das vezes quando os rostos eram negros.

Há dois anos, por exemplo, o FaceApp foi acusado de ter um filtro racista. Ao prometer deixar a pessoa mais sensual, ele clareava a pele do usuário.

Na última semana, no Rio de Janeiro, uma mulher foi conduzida à delegacia porque uma câmera de reconhecimento facial a confundiu com uma suspeita de crimes. O metrô de São Paulo abriu uma licitação para a instalação de um circuito de segurança com reconhecimento facial.

A tecnologia do reconhecimento facial está um tanto próxima de nós. E aplicativos que compartilham nossos rostos com terceiros podem acelerar seu desenvolvimento, mesmo que sem o consentimento consciente dos usuários.