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

Huawei está proibida nos EUA, mas seus chips estão em todo lugar

Peças produzidas pela gigante chinesa são aproveitadas por outras empresas de tecnologia - Bruna Souza Cruz/UOL
Peças produzidas pela gigante chinesa são aproveitadas por outras empresas de tecnologia Imagem: Bruna Souza Cruz/UOL

Mark Bergen e Blake Schmidt

29/01/2019 16h32

A Pelco, fabricante de câmeras de segurança com sede na Califórnia, estabeleceu metas ambiciosas de vendas no ano ado para um modelo com resolução de vídeo mais nítida e outros recursos de ponta. Mas depois, o Congresso frustrou seus planos.

Em agosto, uma nova lei proibiu os militares e o governo dos EUA de comprarem equipamentos de tecnologia de empresas consideradas próximas demais às autoridades da China. Quando o projeto de lei foi publicado, a Pelco descartou qualquer ideia de fornecer sua nova câmera GPC Professional 4K ao governo dos EUA e reduziu suas metas de vendas. O motivo: o dispositivo usa peças da HiSilicon, a divisão de chips da Huawei Technologies.

A Huawei, maior empresa de tecnologia da China, é alvo de uma ampla operação dos EUA sob acusações de que a companhia roubou segredos comerciais, violou sanções contra o Irã e vende equipamentos que podem ser usados pelo Partido Comunista da China para espionagem.

A maior parte do foco está no equipamento de telecomunicações da Huawei que ajuda a rodar redes de comunicações em todo o mundo. Mas os chips da HiSilicon também causam preocupação porque eles alimentam cerca de 60 por cento das câmeras de vigilância. Isso significa que chips chineses processam vídeos de câmeras de lugares tão variados quanto pizzarias, escritórios e bancos nos EUA.

A Huawei negou várias vezes que seu equipamento seja usado para espionagem e afirma que não é uma ferramenta do governo chinês. Um representante da HiSilicon não respondeu a pedidos de comentários. Mesmo assim, o fato de chips de fabricação chinesa abastecerem milhões de câmeras nos EUA preocupa alguns legisladores. Eles receiam, especialmente, que as capacidades de vigilância doméstica altamente desenvolvidas da China possam ser usadas contra os EUA.

"Está relacionado com o que a China está fazendo no seu próprio território: usar câmeras de vigilância para construir um enorme Estado orwelliano", disse o representante Mike Gallagher, republicano no Comitê de Serviços Armados da Câmara de Representantes, em entrevista. "A possibilidade de eles fazerem algo subrepticiamente fora de suas fronteiras é motivo de alerta."

Possibilidades

Não há evidências de que câmeras com chips da HiSilicon tenham sido usadas dessa maneira. Mas ataques cibernéticos recentes mostram o que é possível. Em 2016, câmeras fabricadas pela chinesa Hangzhou Xiongmai Technology foram usadas para lançar um ataque cibernético que cortou o o de milhões de pessoas à internet. O incidente surpreendeu a indústria de câmeras, mas essas vulnerabilidades não foram encontradas nos equipamentos da HiSilicon, dizem especialistas do setor.

O que está claro, no entanto, é que os chips da HiSilicon estão profundamente integrados em uma cadeia de suprimentos de câmeras de segurança complexa e difícil de rastrear. IPVM, um blog do setor, informou em dezembro que esses componentes chineses alimentam dezenas de milhões de dispositivos ocidentais vendidos por empresas famosas como a Honeywell International. Muitas câmeras com chips da HiSilicon estão à venda na Amazon.com.

John Honovich, que dirige o blog IPVM, disse que a HiSilicon está mais presente nas câmeras de menos de US$ 200. "Se você vai a uma pizzaria ou a um restaurante comum, a HiSilicon geralmente está ali", disse ele.

A onipresença da HiSilicon é o resultado da iniciativa da China de criar sua própria indústria de semicondutores, em vez de depender de empresas americanas.