Qual mensagem é exibida quando 1010 101 é inserido na barra de endereços do PC1 web browser?

“MÉTODOS PARA TRANSMITIR PACOTES DE DADOS

SEGURAMENTE ATRAVÉS DE UMA NUVEM”

Campo da Invenção [001] Esta invenção refere-se a redes de comunicação incluindo métodos e aparelhos destinados a otimizar o desempenho e a qualidade do serviço, garantir a integridade dos dados, maximizar o tempo de atividade do sistema e a estabilidade da rede e manter a privacidade e a segurança.

Fundamentos da Invenção [002] A melhoria dos meios de comunicação alimentou o progresso da civilização desde os primórdios da humanidade. Desde o uso de correios e mensageiros que viajam a pé ou a cavalo; passando por entrega postal por trem, caminhão e avião; até o advento do telegrama e telégrafo, telefone, rádio, televisão, computadores, telefone celular; Internet, e-mail e World Wide Web; e mais recentemente, através das mídias sociais, telefonia IP, da conectividade máquina-máquina (M2M), da Internet das coisas (loT) e da Internet de tudo (loE), a comunicação sempre liderou o caminho na exploração das mais recentes tecnologias da época. Com cada nova geração de tecnologia de telecomunicações empregada, o número de pessoas conectadas e a velocidade de transferência de informações entre elas também aumentou.

[003] O efeito dessa tendência é que a humanidade está mais conectada do que em qualquer momento da história, com as pessoas que confiam nas e contam com as tecnologias de comunicação para fornecer de forma segura e confiável suas informações privadas, pessoais, familiares e financeiras apenas para aqueles a quem pretendem contatar. O conhecimento e a informação agora podem ser distribuídos em segundos para milhões de pessoas, e amigos e familiares podem entrar em contato uns com os outros do outro lado do mundo, apenas pressionando um botão. Costuma-se dizer, “o

Petição 870190007413, de 23/01/2019, pág. 8/25

2/425 mundo tomou-se um lugar muito pequeno”.

[004] Embora tal progresso seja tremendamente benéfico para todos, também há consequências negativas de nossa forte dependência de tecnologia. Não é surpreendente que, quando o sistema de comunicação não consegue funcionar, por exemplo, durante um terremoto ou um clima severo, as pessoas ficam desorientadas ou até entram em pânico por estarem “desconectadas”, mesmo que temporariamente. A qualidade do serviço, ou QoS, de um sistema de comunicação ou mídia é então uma medida crítica do desempenho de uma rede de comunicação. A paz de espírito dos povos, os ativos financeiros, a identidade e até mesmo suas próprias vidas dependem de uma comunicação confiável e segura.

[005] Outra consideração chave de uma rede de comunicação é a sua capacidade de garantir privacidade, segurança e proteção ao cliente que a usa. A medida que a tecnologia da comunicação evoluiu, também evoluiu a sofisticação dos criminosos e dos “hackers” que pretendem causar prejuízos, perturbar sistemas, roubar dinheiro e prejudicar acidentalmente ou maliciosamente os outros. Fraudes de cartão de crédito, senhas roubadas, roubo de identidade e divulgação não autorizada de informações confidenciais, imagens privadas, arquivos, e-mails, mensagens de texto e tweets privados (roubados para envergonhar ou chantagear as vítimas) são apenas alguns exemplos de crimes cibernéticos modernos.

[006] Exemplos notáveis de violações da privacidade e crimes cibernéticos no momento deste pedido de patente estão listados abaixo para destacar a proporção epidêmica do problema de segurança nas redes de comunicação abertas de hoje (organizados cronologicamente):

• “Target: Informações roubadas envolveram pelo menos 70 milhões de pessoas,” CNBC, 10 de janeiro de 2014 • “Hackers fizeram geladeira e TV inteligentes enviar emails maliciosos,” BGR (www.bgr.com), 20 de janeiro de 2014

Petição 870170079583, de 19/10/2017, pág. 10/709

3/425 • “A política de privacidade do Nest Google retoma como termostato hackeado,” Slash Gear (www.slashgear.com), 24 de junho de 2014 • “Sequestro de contas questionam a segurança dos dados do Line. Line, o aplicativo gratuito de chamadas e mensagens, foi abalado por uma recente onda de falhas de segurança de dados. O aplicativo viu centenas de contas de usuários serem acessadas ilegalmente por partes que não os usuários das contas,” Nikkei Asian Review, 2 de julho de 2014 • “Americanos comuns pegos na varredura de dados da NSA, afirma relatório,” AP 6 de julho de 2014 • “Lâmpadas de LED inteligentes vazam senhas de Wi-Fi,” BBC News, 8 de julho de 2014 • “Seis pessoas acusadas de golpe na StubHub para ingressos de primeira linha. A StubHub foi alvo de hackers que usaram senhas roubadas e números de cartão de crédito para comprar e vender milhares de ingressos para concertos de música pop e jogos dos Yankees, disseram autoridades de Nova York”, Bloomberg, 24 de julho de 2014 • “‘Internet das Coisas’ é muito suscetível a hackeamento, mostra estudo,” International Business Times (www.ibtimes.com), 4 de agosto de 2014 • “Hackers russos acumulam mais de um bilhão de senhas de Internet”, New York Times, 5 de agosto de 2014 • “Novo vazador está divulgando segredos dos EUA, conclui governo,” CNN, 6 de agosto de 2014 • “Hackers invadem termostato Nest do Google em 15 segundos,” The Enquirer (www. theinquirer.net), 11 de agosto de 2014 • “Dairy Queen hackeada pelo mesmo malware que atingiu Target,” Christian Science Monitor, 29 de agosto de 2014 • “Celebridades vítimas de vazamento de fotos nuas Vulnerabilidade de segurança em contas do iCloud,” CBS News, 1 de

Petição 870170079583, de 19/10/2017, pág. 11/709

4/425 setembro de 2014 • “Home Depot pode ser o alvo mais recente de fraude de cartão de crédito... O ataque da Home Depot pode ser muito maior que o da Target (40M de cartões roubados em 3 semanas),” Fortune, 2 de setembro de 2014 • “Misteriosas torres de telefonia celular falsas estão interceptando ligações em todos os EUA,” Business Insider, 3 de setembro de 2014 • “Ataque informático: de bancos a varejistas, sinais de guerra cibernética?” Yahoo Finance, 3 de setembro de 2014 • “Home Depot confirma hackeamento de sistema de pagamento em lojas dos EUA e Canadá,” Fox News, 9 de setembro de 2014 • “Yahoo trava batalha judicial com o governo americano contra vigilância,” CBS/AP, 11 de setembro de 2014 • “Seus dados médicos valem mais para os hackers do que seu cartão de crédito,” Reuters, 24 de setembro de 2014 • “Alerta vermelho: HTTPS foi hackeado. A exploração do navegador contra ataque SSL/TLS (BEAST) será classificada entre as piores invasões [sic] porque compromete conexões do navegador das quais centenas de milhões de pessoas dependem todos os dias,” InjoWorld, 26 de setembro de 2014 • “Ataque cibernético à Sony, antes um incômodo, rapidamente se tomou um incêndio,” New York Times, 30 de dezembro de 2014 [007] No que parece ser um ritmo crescente de crimes cibernéticos, falhas de segurança, roubos de identidade e invasões de privacidade, surge a questão: “como todos esses ataques cibernéticos são possíveis e o que pode ser feito para detê-los?” Ao mesmo tempo em que a sociedade procura maior privacidade e segurança, os consumidores também querem uma maior

Petição 870170079583, de 19/10/2017, pág. 12/709

5/425 conectividade, uma comunicação de maior qualidade mais barata e uma maior conveniência na realização de transações financeiras.

[008] Para entender as limitações e vulnerabilidades de desempenho em redes modernas de comunicação, armazenamento de dados e dispositivos conectados, é primeiramente importante compreender como a comunicação eletrônica, de rádio e óptica de hoje em dia opera, transporta e armazena dados, incluindo arquivos, e-mail, texto, áudio e imagens de vídeo.

Operação de rede telefônica com comutação de circuitos [009] A comunicação eletrônica envolve uma variedade de componentes de hardware ou dispositivos conectados em redes de fios, rádio, micro-ondas ou enlaces de fibra óptica. A informação é passada de um dispositivo para outros enviando energia elétrica ou eletromagnética através dessa rede, usando vários métodos para incorporar ou codificar “conteúdo” informativo no fluxo de dados. Teoricamente, as leis da física estabelecem a taxa máxima de dados de tais redes à velocidade da luz, mas na maioria dos casos limitações práticas na codificação de dados, roteamento e controle de tráfego, qualidade de sinal para ruído e superação de ruído elétrico, magnético e óptico e parasitas indesejados perturbam ou inibem o fluxo de informações, limitando a capacidade da rede de comunicação a uma fração de seu desempenho ideal.

[0010] Historicamente, a comunicação eletrônica de dados foi realizada pela primeira vez usando conexões elétricas dedicadas “fisicamente conectadas” formando um “circuito” de comunicação entre dois ou mais dispositivos conectados eletricamente. No caso de um telégrafo, um comutador mecânico foi usado para armar e desamar manualmente um circuito elétrico de corrente contínua (CC), magnetizando um solenoide que, por sua vez, movia uma alavanca metálica, fazendo com que o dispositivo de escuta ou o “relé” clicassem no mesmo padrão que o remetente pressionou o comutador. O remetente usou então uma linguagem acordada, isto é, código

Petição 870170079583, de 19/10/2017, pág. 13/709

6/425

Morse, para codificar informações no fluxo de pulso. O ouvinte também precisaria entender o código Morse, uma série de pulsos longos e curtos, chamados de pontos e traços, para interpretar a mensagem.

[0011] Mais tarde, Alexander Graham Bell desenvolveu o primeiro telefone usando o conceito de “corrente ondulada”, agora denominada corrente alternada (CA), para transportar o som através de uma conexão elétrica. A rede telefônica compreendia dois transdutores magnéticos conectados por um circuito elétrico em que cada transdutor magnético compreendia um diafragma e uma bobina móveis, ou “bobina de voz”, circundados por um invólucro de ímã permanente fixo. Ao falar no transdutor, as mudanças na pressão do ar do som fazem com que a bobina de voz se mova para frente e para trás dentro do campo magnético circundante induzindo uma corrente CA na bobina. Na extremidade do ouvinte, a corrente variável no tempo que flui na bobina de voz induz uma forma de onda idêntica e um campo magnético variável no tempo que se opõe ao campo magnético circundante, fazendo com que a bobina de voz se mova para frente e para trás da mesma maneira que o transdutor que captura o som. O movimento resultante reproduz o som de maneira similar ao dispositivo que captura o som. No vernáculo moderno, quando o transdutor está convertendo o som em corrente elétrica, ele está funcionando como um microfone e quando o transdutor está convertendo a corrente elétrica em som, ele está funcionando como alto-falante. Além disso, como o sinal elétrico conduzido é análogo à forma de onda de áudio transportada como uma onda de pressão elementar no ar, isto é, som, hoje tais sinais elétricos são chamados de sinais analógicos ou formas de onda analógicas.

[0012] Uma vez que o transdutor, conforme descrito, é usado tanto para falar quanto para ouvir, na conversa, ambas as partes têm que saber quando falar e quando ouvir. Semelhante a duas latas conectadas por um barbante, em tal sistema, um chamador não pode falar e ouvir ao mesmo

Petição 870170079583, de 19/10/2017, pág. 14/709

7/425 tempo. Embora essa operação unidirecional, denominada modo “half-duplex”, possa parecer arcaica, na verdade ainda é comumente usada na comunicação de rádio hoje em radiocomunicadores e na telefonia moderna com o nome “push-to-talk” ou PTT.

[0013] Mais tarde, os telefones full-duplex (isto é, bidirecionais ou de envio e recebimento) com microfones e alto-falantes separados tomaram-se comuns, onde as partes podiam falar e ouvir ao mesmo tempo. Mas mesmo hoje é necessário um cuidado no funcionamento da comunicação telefônica full-duplex para evitar a realimentação, uma condição em que o som do receptor é captado pelo microfone e é alimentado de volta para o chamador, resultando em ecos confusos e, às vezes, sons de assobio incômodos problemas que afetam especialmente comunicação telefônica de longa distância.

[0014] Os primeiros sistemas telegráficos e telefônicos sofreram outro problema: privacidade. Nessas primeiras encarnações de redes de comunicação, todos os conectados à rede ouvem tudo o que se comunicou no circuito, mesmo que não o desejem. Nas redes telefônicas rurais, esses circuitos compartilhados eram conhecidos como “linhas partilhadas”. O sistema de telefone evoluiu rapidamente para redes de múltiplas linhas onde os circuitos dedicados conectavam um escritório de ramal telefônico diretamente aos telefones dos clientes individuais. Dentro do escritório de troca de ramais, um operador de sistema conectaria os chamadores manualmente entre si através de uma central telefônica usando pontes e também tinha a capacidade de conectar um ramal a outros para formar os primeiros serviços de chamada telefônica de “longa distância”. Grandes bancos de relés que formam redes de “comutadores” telefônicos substituíram gradualmente os operadores humanos, que posteriormente foram substituídos por comutadores eletrônicos que compreendem tubos de vácuo.

[0015] Depois que os Laboratórios da Bell desenvolveram o transistor

Petição 870170079583, de 19/10/2017, pág. 15/709

8/425 no final da década de 1950, os comutadores telefônicos e as trocas de ramal substituíram seus tubos de vácuo frágeis e quentes por dispositivos de estado sólido de funcionamento a frio que usavam transistores e, finalmente, circuitos integrados. A medida que a rede crescia, os números de telefone aumentavam em dígitos de um prefixo de sete dígitos e número privado para incluir códigos de área e, finalmente, códigos de país para lidar com chamadas internacionais. Os cabos de cobre que carregavam chamadas de voz logo tomaram o mundo e atravessaram os oceanos. Apesar da magnitude da rede, o princípio da operação permaneceu constante, que as chamadas representam uma conexão elétrica direta ou “circuito” entre os chamadores com voz carregada por sinais analógicos e o roteamento da chamada determinado por comutadores telefônicos. Esse sistema telefônico acabou por ser conhecido como uma “rede telefônica com comutação de circuitos”, ou coloquialmente como o sistema telefônico antigo ou POTS. A telefonia com comutação de circuitos atingiu sua máxima adoção na década de 1980 e, em seguida, foi implacavelmente substituída por “telefonia com comutação de pacotes”, descrita na próxima seção.

[0016] Evoluindo quase paralelamente à rede telefônica, a comunicação de rádio regular começou com a radiodifusão na década de 1920. A difusão era unidirecional, emanada de estações de difusão de rádio em frequências específicas licenciadas pelo governo, e recebida por qualquer número de receptores de rádio sintonizados a essa frequência de difusão específica ou estação de rádio. O sinal difundido transportava um sinal analógico usando modulação de amplitude (AM) ou posteriormente por métodos de modulação de frequência (FM), cada um em porções dedicadas do espectro de rádio licenciado. Nos Estados Unidos, a Comissão Federal de Comunicações ou FCC evoluíram para gerenciar a atribuição e regulamentação de tais bandas licenciadas. O conceito de difusão foi expandido para a exibição de programas de televisão usando transmissão de

Petição 870170079583, de 19/10/2017, pág. 16/709

9/425 rádio, compreendendo inicialmente conteúdo em preto e branco, em seguida, em cores. Posteriormente, os sinais de televisão também puderam ser transportados para as casas das pessoas, seja por antenas parabólicas de micro-ondas ou através de cabos coaxiais. Como qualquer ouvinte sintonizado para a frequência de difusão específica pode receber a difusão, o termo “multidifusão” agora é usado para essa comunicação unidirecional de múltiplos ouvintes.

[0017] Paralelamente ao advento da radiodifusão, a primeira comunicação bidirecional começou com os navios comerciais e militares do oceano e, na época da Segunda Guerra Mundial, os rádios evoluíram para transceptores de rádio portáteis com radiocomunicador, dispositivos que combinavam transmissores e receptores em uma única unidade. Como a telefonia, a transmissão de rádio bidirecional inicial, operava no modo “simplex”, permitindo que apenas um rádio difundisse em um único canal de rádio enquanto outros ouviam. Ao combinar transmissores e receptores em diferentes frequências, a transmissão e a recepção simultâneas tomaram-se possíveis em cada extremidade do enlace de rádio, permitindo a comunicação de modo full-duplex entre duas partes.

[0018] Para evitar a sobreposição de transmissões de múltiplas partes, no entanto, um protocolo chamado half-duplex ou push-to-talk é comumente usado para o gerenciamento de canais, permitindo que qualquer um transmita exclusivamente em um canal específico com base em ordem de chegada. Os tipos de rádio padrão da indústria usando modulação analógica incluem rádio amador (ham ou CB), rádio VHF marinho, UNICOM para controle de tráfego aéreo e FRS para comunicação pessoal com radiocomunicador. Nessas redes de rádio bidirecionais, os rádios enviam seus dados através de “canais” de frequência específicos para uma torre de rádio central, onde a torre amplifica e repete o sinal, enviando-o para toda a rede de rádio. O número de frequências disponíveis que transportam informações sobre a área de difusão

Petição 870170079583, de 19/10/2017, pág. 17/709

10/425 define a largura de banda total do sistema e o número de usuários capazes de se comunicarem de forma independente na rede de rádio ao mesmo tempo.

[0019] A fim de expandir a capacidade total da rede de rádio para lidar com um maior número de chamadores, o conceito de uma rede celular, onde uma grande área é dividida em pedaços menores ou “células” de rádio, foi demonstrado na década de 1970 e alcançou uma ampla adoção dentro de uma década depois. O conceito de celular era limitar a faixa de difusão de uma torre de rádio a uma área menor, ou seja, a uma distância mais curta e, portanto, ser capaz de reutilizar as mesmas bandas de frequência para lidar simultaneamente com diferentes chamadores presentes em diferentes células. Para fazer isso, criou-se um software para gerenciar a transferência de um chamador que passa de uma célula para uma célula adjacente sem “cair” e, de repente, desconectar a chamada. Como POTS, rádio bidirecional, assim como difusão de rádio e televisão, as redes celulares iniciais eram de natureza analógica. Para controlar o roteamento de chamadas, o sistema de número de telefone foi adotado para determinar a conexão elétrica sem fio apropriada. Essa opção também teve o benefício de conectar de forma perfeita a nova rede celular sem fio ao sistema telefônico antigo “com fios”, provendo interconexão e interoperabilidade entre os dois sistemas.

[0020] A partir da década de 1980, a comunicação telefônica e de rádio, juntamente com a difusão de rádio e TV, iniciou uma migração inexorável de métodos e formatos de comunicação analógicos para digitais, impulsionada pela necessidade de reduzir o consumo de energia e aumentar a vida da batería, para melhorar a qualidade com melhor desempenho de sinal para ruído, e para começar a abordar a necessidade de carregar dados e texto com voz. Formatos de rádio como EDACS e TETRA surgiram capazes de permitir simultaneamente modos de comunicação um para um, um para muitos e muitos para muitos. A comunicação celular também migrou rapidamente para formatos digitais, como o GPRS, assim como a difusão de

Petição 870170079583, de 19/10/2017, pág. 18/709

11/425

TV.

[0021] Em 2010, a maioria dos países tinha cessado, ou estava em processo de cessação, toda transmissão de TV analógica. Ao contrário da televisão difundida, as operadoras de TV a cabo não eram obrigadas a mudar para o formato digital, mantendo um composto híbrido de sinais analógicos e digitais até 2013. A sua migração final para o digital foi motivada não pelos padrões governamentais, mas por razões comerciais para expandir o número de canais disponíveis de sua rede, para poder fornecer conteúdo HD e UHD, para oferecer mais programação pay-per-view (PPV, também conhecido como “unidifusão”) e para permitir serviços de conectividade digital de alta velocidade para seus clientes.

[0022] Embora seja comum equiparar a migração de redes globais de comunicação de formatos analógicos para formatos digitais com o advento da Internet e mais especificamente com a adoção generalizada do protocolo Internet (IP), a mudança para formatos digitais precedeu a aceitação comercial de IP em telefonia, possibilitando, se não catalisando, a migração universal de comunicação para IP e “redes com comutação de pacotes” (descrita na próxima seção).

[0023] A evolução resultante da telefonia com comutação de circuitos é representada esquematicamente pela Figura 1, como uma “rede telefônica com comutação pública” ou PSTN que compreende uma amalgamação de conexões e sub-redes de rádio, celular, PBX e POTS, cada uma compreendendo tecnologias diferentes. A rede inclui as portas de PSTN IA e 1B conectadas por linhas troncos de alta largura de banda 2 e, por exemplo, conectadas através de conexões com fios 4 ao gateway de POTS 3, rede celular 17, PBX 8 e rede de rádio bidirecional 14. Cada sub-rede funciona de forma independente, acionando dispositivos semelhantes. Por exemplo, o gateway de POTS 3, ainda comum em comunidades rurais, é conectada por fio de cobre de par trançado 7 a telefones analógicos convencionais 6 ou

Petição 870170079583, de 19/10/2017, pág. 19/709

12/425 altemativamente a telefones sem fio 5. Os telefones sem fio 5, que normalmente empregam o padrão de telecomunicações sem fio digital intensificado ou DECT, sua variante de potência ultrabaixa DECT-ULE ou seu precursor CT2 são todos sistemas de RF de sistema fechado dedicados, tipicamente com frequências portadoras a 0,9, 1,9, 2,4 e 5,8 GHz. Os telefones DECT puros não podem acessar redes celulares diretamente, apesar de serem dispositivos baseados em RF sem fio.

[0024] O PBX 8 controla qualquer número de dispositivos usados nos escritórios da empresa, incluindo telefones de mesa com fio 9, telefone com viva-voz 10 para chamadas em conferência e estação base de rede sem fio privada 11 conectada por conexões sem fio 12 a telefones de roaming sem fio

13. Os telefones de roaming sem fio 13 representam uma intensificação centrada em negócios para um telefone sem fio convencional, provendo o acesso do telefone às conexões WiFi corporativas ou no caso do sistema de telefone sem fio pessoal do Japão ou PHS, para acessar uma rede microcelular pública localizada fora da empresa em corredores de volume de alto tráfego e nos distritos de negócios de cidades densamente povoadas, como Shinjuku, Tóquio. A largura de banda, a faixa de transmissão e a duração da batería são extremamente limitadas nos produtos PHS.

[0025] A PSTN também se conecta a redes celulares com comutação de circuitos 17 que executam protocolos analógicos e digitais AMPS, CDMA e GSM. Através da torre celular 18, as redes celulares com comutação de circuitos 17 se conectam usando frequências de rádio celular padronizadas 28 para dispositivos móveis, tais como telefones celulares 19A. No caso das redes GPRS, uma intensificação para GSM, as redes celulares com comutação de circuitos 17 também podem se conectar aos tablets 19B, fornecendo simultaneamente dados e voz de baixa velocidade. As redes de rádio bidirecionais 14, como a TETRA e a EDACS, conectam a PSTN a rádios portáteis 16A e maiores rádios integrados e de mesa 16B através de torres de

Petição 870170079583, de 19/10/2017, pág. 20/709

13/425 rádio de alta potência 15 e enlaces de RF 28. Essas redes de rádio bidirecionais, comumente usadas por policiais, ambulâncias, paramédicos, departamentos de bombeiros e até mesmo autoridades portuárias, também são conhecidas como redes e serviços de comunicação profissional, e alvejam governos, municípios e respondentes de emergência em vez de consumidores. (Observação: Conforme usado aqui, os termos “desktop”, “tablet” e “notebook” são usados como referência abreviada para os computadores com esses nomes.) [0026] Ao contrário do gateway de POTS 3, rede celular 17 e PBX 8 que usam números de telefone tradicionais para completar o roteamento de chamadas, a rede de rádio bidirecional 14 usa canais de rádio RF dedicados (em vez de números de telefone) para estabelecer enlaces de rádio entre a torre 15 e os dispositivos móveis a que serve. Como tal, os serviços profissionais de comunicação por rádio permanecem distintos e exclusivamente diferentes das redes de telefonia celular dos clientes.

[0027] A Figura 1 ilustra graficamente a flexibilidade de uma rede PSTN para interligar sub-redes de diversas tecnologias. E essa diversidade que define uma fraqueza intrínseca das redes com comutação de circuitos de hoje - a interoperabilidade entre sub-redes. Como as várias sub-redes não se comunicam com nenhum protocolo de controle comum ou linguagem, e como cada tecnologia administra o transporte de dados e voz de forma diferente, os vários sistemas são essencialmente incompatíveis, exceto pela capacidade limitada de fazer uma ligação telefônica através da linha principal PSTN ou linhas troncos. Por exemplo, durante o ataque terrorista de 11 de setembro no World Trade Center na cidade de Nova York, muitos respondentes de emergência de todos os Estados Unidos foram para Manhattan em uma tentativa de ajudar a combater o desastre, apenas para descobrir que seu sistema de comunicação por rádio e radiocomunicadores eram incompatíveis com voluntários de outros estados e cidades, tomando impossível gerenciar

Petição 870170079583, de 19/10/2017, pág. 21/709 / 425 um comando centralizado e controle do esforço de socorro. Sem padronização no protocolo de comunicação de seu rádio, seus rádios simplesmente não podiam se conectar uns aos outros.

[0028] Além disso, com as conexões elétricas diretas e de RF de redes telefônicas com comutação de circuitos, especialmente usando protocolos digitais analógicos ou não seguros, é uma questão simples para um hacker com um varredor de RF encontrar canais de comunicação ativos e detectar, amostrar, ouvir ou interceptar as conversas ocorrendo no momento. Como a PSTN forma um enlace ou circuito “continuamente ligado” entre as partes que se comunicam, há tempo suficiente para que um hacker identifique a conexão e “escute-a”, legalmente por governos que operam sob um grampo telefônico ordenado por tribunal federal ou criminalmente por criminosos cibernéticos ou governos que realizam vigilância ilegal, proibida ou não autorizada. A definição de espionagem e vigilância legal e ilegal e qualquer obrigação de conformidade com a cooperação por parte de um operador de rede varia dramaticamente por país e tem sido um ponto de disputa aquecido entre empresas globais como Google, Yahoo e Apple operando em inúmeros limites internacionais. As redes de comunicação e a Internet são globais e não conhecem fronteiras ou limites, mas as leis que regem essas informações eletrônicas são locais e estão sujeitas à autoridade jurisdicional do governo que controla a comunicação e o comércio nacionais e internacionais na época. [0029] Independentemente da sua legalidade ou ética, a espionagem e a vigilância eletrônica hoje são comuns, desde o monitoramento de câmeras de segurança ubíquas localizadas em cada canto da rua e suspensas em cada estrada ou metrô, até o sofisticado hackeamento e quebra de código executado pelas divisões e órgãos de segurança nacional de vários países. Embora todas as redes sejam vulneráveis, a antiguidade e as precárias disposições de segurança das PSTNs tomam-nas especialmente fáceis de serem hackeadas. Como tal, uma PSTN conectada a mesmo uma rede segura e moderna

Petição 870170079583, de 19/10/2017, pág. 22/709

15/425 representa um ponto fraco no sistema geral, criando vulnerabilidade para violações de segurança e crimes cibernéticos. No entanto, ainda demorará muitos anos, senão décadas, para retirar a rede global da PSTN e a substituí-la completamente por uma comunicação com comutação de pacotes baseada em IP. Essas redes baseadas em pacotes (descritas abaixo), embora mais modernas que as PSTNs, ainda não são seguras e estão sujeitas a falhas de segurança, hacks, ataques de negação de serviço e invasões de privacidade.

Operação de rede de comunicação com comutação de pacotes [0030] Se duas latas conectadas por um barbante representam uma metáfora para a operação da moderna telefonia com comutação de circuitos, então o correio representa a metáfora semelhante para redes de comunicação com comutação de pacotes. Em tal abordagem, texto, dados, voz e vídeo são convertidos em arquivos e fluxos de dados digitais, e esses dados são posteriormente analisados em “pacotes” quantizados de dados a serem entregues na rede. O mecanismo de entrega é baseado em endereços eletrônicos que identificam de maneira exclusiva onde o pacote de dados está indo e de onde ele vem. O formato e o protocolo de comunicação também são projetados para incluir informações sobre a natureza dos dados contidos no pacote, incluindo conteúdo específico para o programa ou aplicativo para o qual ele será usado, e o hardware que facilita os enlaces físicos e conexões elétricas ou de rádio que transportam os pacotes.

[0031] Nascido na década de 1960, o conceito de redes com comutação de pacotes foi criado na era paranoica da guerra fria pós-Sputnik. Naquela época, o Departamento de Defesa dos Estados Unidos (DoD) expressou a preocupação de que um ataque de mísseis nuclear espacial podería destruir toda a infra-estrutura de comunicação dos Estados Unidos, desativando sua capacidade de responder a uma greve preventiva da URSS e que a vulnerabilidade a tal ataque podería realmente provocar um. Assim, o DoD patrocinou a criação de um sistema de comunicação redundante ou de

Petição 870170079583, de 19/10/2017, pág. 23/709

16/425 uma “rede” tipo grade, em que a capacidade da rede de fornecer informações entre instalações militares não podería ser impedida destruindo qualquer enlace de dados específico ou mesmo inúmeros enlaces dentro da rede. O sistema, conhecido como ARPANET, tomou-se o pai da Internet e a Eva proverbial das comunicações digitais modernas.

[0032] Apesar da criação da rede com comutação de pacotes, o crescimento explosivo da Internet não ocorreu até a década de 1990, quando o primeiro navegador Web fácil de usar Mosaic, o advento de páginas da Web definidas com hipertexto, a rápida adoção da World Wide Web e o uso generalizado de e-mail impulsionaram coletivamente a aceitação global da plataforma da Internet. Um dos seus princípios fundamentais, a falta de controle central ou a necessidade de um mainframe central, impulsionou a Internet à onipresença em parte porque nenhum país ou governo podería detêla (ou mesmo estavam plenamente conscientes de suas implicações globais) e também porque sua base de usuários compreendia consumidores usando seus computadores pessoais recentemente adquiridos.

[0033] Outra implicação de grande alcance do crescimento da Internet foi a padronização do Protocolo de Internet (IP) usado para rotear pacotes de dados através da rede. Em meados da década de 1990, os usuários da Internet perceberam que a mesma rede com comutação de pacotes que transporta dados também podería ser usada para transportar voz e, logo depois, nasceu o “protocolo de voz sobre a Internet” ou VoIP. Embora o conceito tenha permitido teoricamente que qualquer pessoa com acesso à Internet se comunicasse gratuitamente por voz pela Internet, os atrasos de propagação em toda a rede, ou seja, latência, tomaram a qualidade da voz pior e muitas vezes ininteligível. Embora os tempos de atraso tenham melhorado com a adoção de links Ethernet de alta velocidade, conectividade Wi-Fi de alta velocidade e dados 4G para melhorar a qualidade da conexão na “última milha”, a própria Internet foi criada para garantir uma entrega precisa de pacotes de dados, mas

Petição 870170079583, de 19/10/2017, pág. 24/709 / 425 não para garantir o tempo necessário para entregar os pacotes, ou seja, a Internet não foi criada para funcionar como uma rede em tempo real.

[0034] Assim, o sonho de usar a Internet para substituir as caras operadoras de telecomunicações de longa distância ou “companhias telefônicas” permaneceu em grande parte não realizado apesar da disponibilidade de provedores “over-the-top” (OTT), como Skype, Line, KakaoTalk, Viper e outros. A telefonia OTT sofre de má qualidade de serviço (QoS) resultante de latência de rede não controlada, qualidade de som fraca, chamadas descartadas, eco, reverberação, realimentação, som intermitente e, muitas vezes, a incapacidade até mesmo de iniciar uma chamada. O desempenho ruim da comunicação OTT é intrinsecamente não uma fraqueza do protocolo baseado em VoIP, mas da própria rede, onde as operadoras OTT não têm controle sobre o trajeto que os dados tomam ou os atrasos na comunicação. Em essência, as operadoras OTT não podem garantir o desempenho ou a QoS porque a comunicação OTT funciona como um carona na Internet. Ironicamente, as empresas capazes de utilizar melhor as comunicações baseadas em VoIP hoje são as operadoras de telefonia de longa distância com redes baseadas em hardware dedicadas de baixa latência, as companhias telefônicas que têm a menor motivação para fazê-lo.

[0035] Além da redundância de rede intrínseca, uma das maiores forças da comunicação com comutação de pacotes é a capacidade de transportar informações de qualquer fonte para qualquer destino desde que os dados estejam arranjados em pacotes consistentes com o Protocolo de Internet e desde que os dispositivos de comunicação sejam conectados e ligados à Internet. O Protocolo de Internet gerencia a capacidade da rede de entregar a carga útil ao seu destino, sem qualquer cuidado ou preocupação com a informação que está sendo transportada ou sobre o aplicativo que irá usá-la, evitando qualquer necessidade de interfaces de software personalizadas e hardware proprietário caro. Em muitos casos, mesmo as cargas úteis

Petição 870170079583, de 19/10/2017, pág. 25/709

18/425 relacionadas ao aplicativo estabeleceram formatos predefinidos, por exemplo, para ler e-mails, para abrir uma página da Web em um navegador, para visualizar uma imagem ou vídeo, para assistir um arquivo flash ou ler um documento PDF, etc.

[0036] Como o seu formato de arquivo versátil evita qualquer dependência de software proprietário ou específico de empresa, a Internet pode ser considerada uma plataforma de comunicação de “fonte aberta”, capaz de se comunicar com a mais ampla gama de dispositivos já conectados, desde computadores até telefones celulares, desde carros a eletrodomésticos. A frase mais recente que descreve essa conectividade universal é a “Internet de tudo” ou loE.

[0037] A Figura 2 ilustra alguns exemplos de tais dispositivos conectados à Internet. Como mostrado, uma grande matriz de computadores, incluindo servidores de nuvem de alta velocidade 21 A, 21B e 21C e armazenamento de dados em nuvem 20, estão interligados por conexões de largura de banda alta 23, tipicamente fibra óptica, entre outros inúmeros servidores (não mostrados) para formar a nuvem de Internet 22. A metáfora da nuvem é apropriada porque não existe uma fronteira bem definida que define quais servidores são considerados parte da nuvem e quais não são. Em uma base diária e até de minuto a minuto, os servidores ficam online enquanto outros podem ser desconectados para manutenção, tudo sem qualquer impacto na funcionalidade ou desempenho da Internet. Esse é o benefício de um sistema distribuído verdadeiramente redundante - não há um único ponto de controle e, portanto, nenhum ponto de falha.

[0038] A nuvem pode estar conectada ao usuário ou ao dispositivo conectado através de qualquer variedade de enlaces com fio, WiFi ou sem fio. Conforme mostrado, o servidor de nuvem 21A se conecta através de um enlace com fio ou fibra 24 à torre sem fio 25, ao ponto de acesso WiFi 26 ou à unidade de distribuição com fio 27. Esses enlaces de “última milha”, por sua

Petição 870170079583, de 19/10/2017, pág. 26/709

19/425 vez, se conectam a qualquer número de dispositivos de comunicação ou conectados. Por exemplo, a torre sem fio 25 pode se conectar através do rádio celular 28 ao telefone inteligente 32, ao tablet 33 ou ao carro conectado 31, e pode ser usada para atender usuários móveis 40 incluindo, por exemplo, pedestres, motoristas de veículos pessoais, policiais e motoristas profissionais na indústria de transporte rodoviário e de entrega. A comunicação telefônica capaz com comutação de pacotes sem fio compreende protocolos celulares 3G, incluindo HSUPA e HSDPA, bem como 4G/LTE. LTE, ou evolução a longo prazo, refere-se aos padrões de rede para assegurar a interoperabilidade com uma variedade de protocolos celulares, incluindo a capacidade de transferir perfeitamente chamadas telefônicas de uma célula para outra, mesmo que as células estejam operando com diferentes protocolos. Observação: Por uma questão de definição, como aqui usado, “última milha” refere-se ao enlace entre qualquer tipo de dispositivo cliente, como um tablet, desktop ou telefone celular, e um servidor de nuvem. Direcionalmente, o termo “primeira milha” às vezes também é usado para especificar o enlace entre o dispositivo que origina a transmissão de dados e o servidor da nuvem. Nesses casos, o enlace de “última milha” também é o enlace de “primeira milha”.

[0039] Para uma comunicação de curta distância, o ponto de acesso WiFi 26 se conecta pelo rádio WiFi 29 ao smartphone 32, tablet 33, notebook 35, desktop 36 ou aparelho conectado 34 e pode ser usado em aplicativos sem fio localizados em lares, cafés, restaurantes e escritórios. O WiFi compreende a comunicação operando de acordo com os padrões definidos pelo IEEE para as especificações de frequência de portadora única 802.11a, 802.11b, 802.11g, 802.11η e, mais recentemente, para o formato de banda de frequência dupla 802.11 ac. A segurança WiFi, com base em uma simples chave de login estático, é usada principalmente para impedir o acesso não autorizado da conexão, mas não se destina a proteger dados indefinidamente

Petição 870170079583, de 19/10/2017, pág. 27/709 / 425 de detecção ou hackeamento.

[0040] A unidade de distribuição com fio 27 pode se conectar por fibra, cabo coaxial ou Ethernet 30A ao notebook 35, desktop 36, telefone 37, televisão 39 ou por linhas de telefone de fio de cobre de par trançado 30B ao terminal de ponto de venda 38 atendendo mercados conectados imóveis ou com fio fixos 42, incluindo hotéis, fábricas, escritórios, centros de atendimento, bancos e residências. A conexão com fio pode incluir distribuição de cabo de fibra ou coaxial para a casa, escritório, fábrica ou empresa conectada localmente através de um modem para converter conexão de dados de alta velocidade (HSD) em fio de cobre WiFi, Ethernet ou de par trançado. Em áreas remotas onde a fibra ou o cabo não está disponível, as conexões de linha de assinante digital (DSL) ainda são usadas, mas com taxas de dados e confiabilidade de conexão dramaticamente comprometidas. No total, contando o acesso através de conexões sem fio, Wi-Fi e com fio, o número de objetos conectados à Internet deverá chegar a 20 bilhões globalmente até o ano 2020.

[0041] Em contraste com as redes com comutação de circuitos que estabelecem e mantêm uma conexão direta entre dispositivos, as comunicações com comutação de pacotes usam um endereço para “rotear” o pacote através da Internet para o seu destino. Como tal, em redes de comunicação com comutação de pacotes, não há um único circuito dedicado que mantenha uma conexão entre os dispositivos de comunicação, nem os dados que viajam através da Internet viajam em um único trajeto consistente. Cada pacote deve encontrar o caminho através do labirinto de computadores interligados para alcançar seu destino.

[0042] A Figura 3 ilustra um exemplo hipotético do roteamento de um pacote IP do notebook 60 para o desktop 61 usando a comunicação de rede com comutação de pacotes. Em operação, o primeiro pacote de dados enviado do notebook 60 para o roteador WiFi 62A via conexão sem fio 63A é

Petição 870170079583, de 19/10/2017, pág. 28/709 / 425 direcionado para a matriz de servidores DNS 70, sendo DNS um acrônimo para domain name servers (servidores de nomes de domínio). A finalidade da matriz de servidores DNS 70 é converter o nome textual ou o número de telefone do dispositivo de destino, neste caso o desktop 61, em um endereço IP. Antes de rotear o pacote, o servidor raiz DNS 72 baixou uma grande tabela de endereços para o servidor secundário DNS 71. Quando a consulta do notebook 60 chega, o servidor secundário DNS 71 responde com o endereço IP do destino, ou seja, desktop 61. Caso o servidor secundário DNS 71 não conheça o endereço do dispositivo de destino, ele pode solicitar as informações faltantes do servidor raiz DNS 72. Em última análise, o endereço IP é passado da matriz de servidores DNS 70 para o endereço de origem, ou seja, para o notebook 60.

[0043] Posteriormente, o notebook 60 monta seus pacotes de dados IP e começa enviando-os sequencialmente para o seu destino, primeiro através do rádio WiFi 63A para o roteador WiFi 62A e, depois, em toda a rede de roteadores e servidores que atuam como roteadores intermediários para o seu destino. Por exemplo, uma série de roteadores dedicados, conforme mostrado, incluem 65A, 65B e 65C e servidores de computadores que operam como roteadores incluem 66A a 66E, juntos formam uma rede de roteador que funciona como nós na Internet ou como um ponto de presença ou POP, isto é, portas de conectividade limitada capazes de acessar a Internet. Enquanto alguns roteadores ou servidores que atuam como um POP se conectam à Internet através de apenas um pequeno número de dispositivos adjacentes, o servidor 66A, como mostrado, está interconectado a vários dispositivos, e às vezes é chamado de “super POP”. Por razões de clareza, deve-se notar que o termo POP no vernáculo de rede não deve ser confundido com o nome do aplicativo POP, ou correio antigo, usado em aplicativos de e-mail.

[0044] Cada roteador, ou servidor que atua como roteador, contém em seus arquivos de memória uma tabela de roteamento que identifica os

Petição 870170079583, de 19/10/2017, pág. 29/709 / 425 endereços IP que ele pode abordar e, possivelmente, também os endereços que os roteadores acima podem abordar. Essas tabelas de roteamento são baixadas e instaladas automaticamente em cada roteador quando são conectadas pela primeira vez à Internet e geralmente não são carregadas como parte do roteamento de um pacote através da rede. Quando um pacote IP entra em um roteador, POP ou super POP, o roteador lê o suficiente do endereço IP, geralmente os dígitos mais significativos do endereço, para saber para onde direcionar o pacote em sua jornada até seu destino. Por exemplo, um pacote dirigido a Tóquio a partir de Nova York pode ser roteado primeiro através de Chicago, em seguida, através de servidores em São Francisco, Los Angeles ou Seattle antes de continuar para Tóquio.

[0045] No exemplo da Figura 3, um pacote do notebook 60 para o roteador WiFi 62A é então encaminhado para o roteador 65A através da via 64A, que embora tenha várias opções, decide encaminhar o pacote para o super POP 66A através da rota 67A. Embora o super POP 66A também tenha muitas opções, ele decide que o melhor trajeto nesse momento específico é a rota 68 para o servidor-roteador 66D, enviando-o para o roteador local 65C através da rota 67B, que por sua vez se conecta através da rota 64B ao roteador WiFi e ponto de acesso 62B comunicando pelo rádio WiFi 63B ao desktop 61. Então, enquanto o trajeto percorrido viajou do super POP 66A para o servidor-roteador 66D para o roteador local 65C, podería ter provavelmente viajado do super POP 66A para o roteador 65B para o roteador local 65C ou do super POP 66A para o servidor-roteador 66D para o servidorroteador 66E para o roteador local 65C. E uma vez que o número de roteadores que um pacote atravessa e a taxa de dados disponível de cada uma das conexões entre os roteadores varia de acordo com a infra-estrutura e com o tráfego e o carregamento da rede, não há como determinar a princípio qual trajeto é mais rápido ou melhor.

[0046] Ao contrário da comunicação telefônica com comutação de

Petição 870170079583, de 19/10/2017, pág. 30/709 / 425 circuitos que estabelece e mantém uma conexão direta entre os clientes, com dados com comutação de pacotes, não há inteligência universal olhando para a Internet para decidir qual trajeto é o trajeto melhor, ideal ou mais rápido para rotear o pacote nem há garantia de que dois pacotes sucessivos irão mesmo seguir a mesma rota. Como tal, o pacote “descobre” o trajeto através da Internet com base nas prioridades das empresas que operam os roteadores e servidores que o pacote atravessa. Cada roteador, em essência, contém certas tabelas de roteamento e algoritmos de roteamento que definem suas rotas preferidas com base na condição da rede. Por exemplo, as preferências de um roteador podem priorizar o envio de pacotes para outros roteadores pertencentes à mesma empresa, equilibrando o tráfego entre conexões para roteadores adjacentes, encontrando o menor atraso para o próximo roteador, direcionando negócios a parceiros de negócios estratégicos ou criando uma via expressa para clientes VIP ignorando o maior número possível de roteadores intermediários. Quando um pacote entra em um roteador, não há como saber se as opções de roteamento feitas pelo POP específico foram feitas no melhor interesse do remetente ou do operador do servidor de rede.

[0047] Então, em algum sentido, a rota que um pacote toma é uma questão de tempo e de sorte. No exemplo anterior de roteamento de Nova York para Tóquio, o roteamento e a QoS resultante podem variar substancialmente com base em uma pequena perturbação no trajeto, isto é, em equações não lineares, o chamado “efeito borboleta”. Considere o caso em que o pacote de Nova York passa pelo “roteador A” em Chicago e devido ao alto tráfego temporário na Califórnia, é encaminhado para a Cidade do México e não para a Califórnia. O roteador da Cidade do México, em seguida, envia o pacote IP para Cingapura, de onde finalmente é enviado para Tóquio. O próximo pacote enviado é roteado pelo “roteador B” de Chicago, que por causa do baixo tráfego nesse momento dirige o pacote para São Francisco e depois diretamente para Tóquio em apenas dois saltos. Nesse caso, o segundo

Petição 870170079583, de 19/10/2017, pág. 31/709 / 425 pacote pode chegar a Tóquio antes que o primeiro roteie por um trajeto mais tortuoso. Esse exemplo destaca a problemática de usar a Internet para comunicação em tempo real, como transferência contínua de vídeo ao vivo ou VoIP, ou seja, a Internet não foi projetada para garantir o tempo de entrega ou para controlar os atrasos da rede na execução da entrega. A latência pode variar de 50 ms a mais de 1 segundo, apenas dependendo se um pacote é roteado através de apenas dois servidores ou até quinze.

[0048] A falta de controle de roteamento da Internet é problemática para aplicativos em tempo real e é especialmente uma questão de QoS baixa para operadoras OTT - operadoras que tentam fornecer telefonia baseada na Internet, pegando uma carona na infra-estrutura da Internet. Uma vez que a operadora OTT não controla o roteamento, elas não podem controlar o atraso ou a latência da rede. Outro problema com a comunicação com comutação de pacotes, é que é fácil sequestrar dados sem ser detectado. Se um pirata intercepta um pacote e identifica seu endereço IP de origem ou de destino, eles podem usar uma variedade de métodos para interceptar dados de roteadores intervenientes e detectar ou redirecionar o tráfego através de sua própria rede de piratas para espiar a conversa e até mesmo quebrar arquivos encriptados.

[0049] Os endereços IP de origem e destino e outras informações importantes usadas para rotear um pacote (e também usadas por piratas para hackear um pacote) são especificados como uma cadeia de dados digitais ilustrados na Figura 4. O pacote IP contém informações digitais que definem a conexão física entre dispositivos, a forma como os dados são organizados para ligar os dispositivos em conjunto, o roteamento da rede do pacote, um meio para garantir que os dados úteis (carga útil) foram entregues com precisão e que tipo de dados está na carga útil e, em seguida, os dados da carga útil propriamente ditos para serem usados por vários programas de aplicativos.

Petição 870170079583, de 19/10/2017, pág. 32/709 / 425 [0050] O pacote IP é enviado e recebido em sequência como uma cadeia de bits digitais em série, mostrados no tempo de avanço 86 da esquerda para a direita e está organizado de maneira específica chamada de Protocolo de Internet, conforme estabelecido por vários comitês de padrões, incluindo o Internet Engineering Task Force ou IETF, entre outros. O padrão assegura que qualquer pacote IP que acompanha o protocolo prescrito possa se comunicar com e ser entendido por qualquer dispositivo conectado que cumpra o mesmo padrão de IP. Garantir a comunicação e a interoperabilidade de dispositivos e aplicativos conectados à Internet são características da Internet e representam um princípio orientador da Iniciativa de Código Aberto ou OSI, para evitar que qualquer empresa, governo ou pessoa tome o controle da Internet ou limite sua acessibilidade ou sua funcionalidade.

[0051] O modelo OSI, uma abstração que compreende sete camadas de funcionalidade, prescreve precisamente o formato de um pacote IP e para que cada segmento do pacote é usado. Cada porção ou “segmento” do pacote IP corresponde aos dados que se aplicam à função da camada OSI específica resumida na tabela 87 da Figura 4. Os papéis das sete camadas OSI são os seguintes:

• Camada 1, a camada física ou PHY, compreende informações específicas de hardware que articulam a natureza física da comunicação como sinais elétricos, de RF e ópticos e a maneira como esses sinais podem ser convertidos em bits para uso no sistema de comunicação. A conversão de um meio de comunicação específico, como rádio WiFi, Ethernet, portas seriais, fibra óptica, rádio celular 3G ou 4G, DSE em fio de cobre de par trançado, USB, Bluetooth, TV a cabo ou por satélite ou difusões digitais de áudio, vídeo ou multimídia em um fluxo de bits é a tarefa da camada PHY. No pacote IP, o preâmbulo 80 representa os dados da Camada 1 e é usado para sincronizar todo o pacote de dados ou “quadro”, para o hardware que o transcreve.

Petição 870170079583, de 19/10/2017, pág. 33/709 / 425 • Camada 2, a camada de enlace de dados, compreendendo bits arranjados como quadros, define as regras e os meios através dos quais os fluxos de bits entregues à Camada PHY 1 são convertidos em dados interpretáveis. Por exemplo, os fluxos de bits baseados em rádio WiFi podem atender a qualquer número de padrões definidos pelo IEEE, incluindo 802.11a, b, g, n e ac; a comunicação de rádio 3G pode ser modulada usando métodos HSDPA ou HSUPA de acesso a pacotes de alta velocidade; luz modulada em uma fibra óptica ou sinais elétricos em um cabo coaxial pode ser decodificada em dados de acordo com o padrão DOCSIS 3; etc. No pacote IP, os dados da Camada 2 encapsulam o restante do pacote, os segmentos 82, 83 e 84, com um “cabeçalho de enlace de dados” 81 à esquerda, e um “código de fim de enlace de dados” 85 à direita, definindo juntos quando a carga útil encapsulada sendo entregue começa e pára, bem como para garantir que nada tenha sido perdido no processo de transmissão. Um elemento-chave dos dados da Camada 2 é o endereço de acesso de mídia ou MAC, usado para direcionar o tráfego de dados para e de endereços Ethernet específicos, enlaces de RF ou enlaces de transceptores específicos de hardware.

• Camada 3, a camada de rede ou Internet, compreende pacotes chamados de “datagramas” que contêm informações de Protocolo de Internet (IP) usadas para rotear um pacote IP, incluindo se o pacote contém dados IPv4 ou IPv6 e os correspondentes endereços IP de origem e destino, bem como informações sobre a natureza da carga útil contida no pacote, ou seja, se o tipo de protocolo de transporte usado compreende Protocolo de Controle de Transmissão (TCP), Protocolo de Datagrama de Usuário (UDP) ou outro. A Camada 3 também inclui uma função para evitar imortais pacotes IP que nunca são entregues, mas nunca morrem. Um tipo específico de pacote da Camada 3, o ICMP é usado para diagnosticar a condição de uma rede, incluindo a conhecida função “ping”. No pacote IP, a Camada 3 compreende “cabeçalho IP” 82 e encapsula sua carga útil compreendendo

Petição 870170079583, de 19/10/2017, pág. 34/709 / 425 segmentos de transporte e camada superior 83 e 84.

• Camada 4, a camada de transporte, compreende segmentos de dados que definem a natureza da conexão entre dispositivos de comunicação, onde UDP define uma descrição mínima da carga útil para comunicação sem conexão, a saber, quão grande é a carga útil, se houve perda de bits e qual o serviço de aplicativo (porta) usará os dados entregues. O UDP é considerado sem conexão porque não confirma a entrega da carga útil, dependendo, em vez disso, do aplicativo para verificar erros ou dados perdidos. O UDP normalmente é usado para comunicação sensível ao tempo, como difusão, multidifusão e transferência contínua onde o reenvio de um pacote não é uma opção. Em contraste, o TCP assegura uma conexão virtual, confirmando que o pacote e a carga útil são entregues de forma confiável antes do envio do pacote seguinte e reenvia pacotes descartados. O TCP também verifica a integridade dos dados dos pacotes entregues usando uma soma de verificação e inclui disposições para remontar pacotes fora de sequência em sua ordem original. Tanto TCP como UDP definem as portas de origem e de destino, uma descrição de um serviço ou aplicativo de camada superior, por exemplo, um servidor web ou um servidor de e-mail, preocupado com as informações contidas na carga útil da Camada 4. No pacote IP, a Camada 4 compreende o cabeçalho TCP / UDP 83 e encapsula os dados / carga útil 84 que compreendem o conteúdo para as camadas OSI superiores 5, 6 e 7.

• Camadas 5, 6 e 7, as camadas superiores ou de aplicativo descrevem o conteúdo entregue pela Internet como dados / carga útil 84. A Camada 7, a camada de “aplicativo”, representa o nível mais alto no modelo OSI e depende das seis camadas OSI subjacentes para suportar softwares de aplicativos de código aberto e proprietários. Os aplicativos do Nível 7 comumente usados incluem e-mails usando SMTP, POP ou IMAP, navegação na web usando HTTP (Chrome, Safari, Explorer, Firefox), transferências de

Petição 870170079583, de 19/10/2017, pág. 35/709 / 425 arquivos usando FTP e emulação de terminal usando Telnet. Os aplicativos proprietários incluem o conjunto de produtos do Microsoft Office (Word, Excel, PowerPoint), Adobe Illustrator e Photoshop; aplicativos de banco de dados Oracle e SAP; software financeiro Quicken, Microsoft Money e QuickBooks; além de reprodutores de áudio e vídeo (como iTunes, QuickTime, Real Media Player, Windows Media Player, Flash), bem como leitores de documentos como Adobe Acrobat Reader e Apple Preview. Os aplicativos de Nível 7 geralmente também utilizam objetos incorporados definidos sintaticamente pelo Nível 6, a camada de “apresentação”, que inclui texto, gráficos e imagens, som e vídeo, apresentações de documentos como XML ou PDF, além de funções de segurança, como encriptação. O Nível 5, a camada de “sessão”, estabelece conectividade de aplicativo cruzada, como importar um objeto para outro arquivo de programa e controlar o início e término de uma sessão.

[0052] Conforme descrito, o modelo de sete camadas OSI define as funções de cada camada e o pacote IP correspondente encapsula os dados relativos a cada camada, uma dentro da outra de maneira análoga à boneca babushka ou russa, as bonecas de madeira com uma dentro da outra, dentro da outra e assim por diante... O pacote externo ou Camada 1 PHY define todo o quadro de IP contendo informações relacionadas a todos os níveis mais altos. Dentro desses dados PHY, o quadro de dados da Camada 2 descreve a camada de enlace de dados e contém o datagrama da rede da Camada 3. Esse datagrama, por sua vez, descreve a camada de Internet como sua carga útil, com os dados do segmento da Camada 4 descrevendo a camada de transporte. A camada de transporte carrega os dados da camada superior como uma carga útil incluindo o conteúdo da Camada 5, 6 e 7. O encapsulamento de sete camadas também é às vezes referido pelo mnemônico “aZZ people seem to need data processing” (todo mundo parece precisar de processamento de dados) que ordena as sete camadas OSI sucessivamente de cima para baixo

Petição 870170079583, de 19/10/2017, pág. 36/709 / 425 como aplicativo, apresentação, sessão, transporte, rede, enlace de dados e camadas físicas.

[0053] Embora as camadas físicas e de enlace inferiores sejam específicas do hardware, as camadas OSI médias encapsuladas dentro do pacote IP que descrevem a rede e as informações de transporte são completamente agnósticas para o hardware usado para se comunicar e entregar o pacote IP. Além disso, as camadas superiores encapsuladas como a carga útil da camada de transporte são específicas apenas para os aplicativos aos quais elas se aplicam e operam de forma totalmente independente de como o pacote foi roteado ou entregue pela Internet. Esse particionamento permite que cada camada seja essencialmente supervisionada de forma independente, apoiando uma miríade de combinações possíveis de tecnologias e usuários sem a necessidade de aprovação gerencial de formatação de pacotes ou verificação da viabilidade da carga útil do pacote. Pacotes IP incompletos ou impróprios são simplesmente descartados. Dessa maneira, as redes com comutação de pacotes são capazes de rotear, transportar e entregar diversas informações relacionadas ao aplicativo em diferentes meios de comunicação, de forma coerente, entre todos os dispositivos ou objetos conectados à Internet.

[0054] Em conclusão, as redes de circuitos comutadas requerem uma única conexão direta entre duas ou mais partes que se comunicam (similar ao sistema telefônico simples antigo de um século atrás), enquanto a comunicação de rede com comutação de pacotes envolve a fragmentação de documentos, som, vídeo e texto em múltiplos pacotes, entrega desses pacotes através de vários trajetos de rede (similar ao correio usando os melhores esforços para realizar a entrega de forma precisa e a tempo), então, remontagem do conteúdo original e confirmação de que nada foi perdido ao longo do caminho. Uma comparação entre PSTNs com comutação de circuitos versus VoIP com comutação de pacotes é resumida na tabela a

Petição 870170079583, de 19/10/2017, pág. 37/709

30/425 seguir:

Rede PSTN Internet
Tecnologia Comutação de circuitos Comutação de pacotes
Conexão Conexão elétrica dedicada Cada pacote roteado pela Internet
Entrega de dados Tempo real (circuito) Melhor esforço (pacote)
Sinal Analógico ou digital Digital, IP, VoIP
Conteúdo Voz Voz, texto, dados, vídeo
Taxa de dados Baixa Alta
Verificação de erros Nenhuma ou mínima Extensiva
Efeito de linha partida Chamada quebrada ou picotada Chamada redirecionada
Efeito de falha de energia Rede entrega energia Batería reserva necessária

[0055] Deve ser mencionado aqui que, enquanto as PSTNs operam usando conexões de circuitos elétricos em tempo real, as redes com comutação de pacotes entregam conteúdo usando métodos de “melhor esforço” para encontrar uma maneira de entregar um pacote e uma carga útil, não diferente do correio usando caminhões e mensageiros de cartas diferentes para afinal entregar as correspondências, mesmo que esteja atrasado para chegar. Para entender melhor o método pelo qual as redes com comutação de pacotes alcançam esse objetivo, é necessário analisar mais profundamente a função e o papel de cada camada no modelo OSI de sete camadas para redes.

Camada OSI1 - Camada física (PHY) [0056] A camada física descrita pela Camada OSI 1 aborda a operação do hardware usado para facilitar a comunicação. Embora seja a camada mais básica, descrevendo apenas a transmissão elétrica, de rádio e óptica, é também a mais diversificada, com cada descrição detalhada específica de um determinado hardware. Visto amplamente, o hardware de comunicação pode ser dividido em dois tipos: a comunicação de largura de banda alta usada para os tubos de alto volume de tráfego que conectam servidores que formam a estrutura principal da Internet, ou seja, a “nuvem”, e conexões de largura de banda menores que completam a comunicação local entre dispositivos ou conectam o enlace de “última milha” da nuvem a consumidores, empresas e máquinas.

[0057] A Figura 5A ilustra, por exemplo, comunicação de largura de banda alta entre servidores POP 21A e 21B conectados através de torres de

Petição 870170079583, de 19/10/2017, pág. 38/709

31/425 micro-ondas 98, fibras ópticas 91 e satélites de micro-ondas 93. A comunicação por micro-ondas requer enlaces diretos de linha de visão entre as torres de micro-ondas 96A e 96B. As torres estão conectadas como mostrado aos servidores POP 21A e 21B por conexões com fio 97A e 97B. Da mesma forma, a comunicação por satélite requer enlaces ascendentes e enlaces descendentes de micro-ondas 95A e 95B entre o satélite 93 e as antenas parabólicas 92A e 92B conectadas aos servidores POP 21A e 21B. Como no exemplo anterior, as conexões com fio 94A e 94B conectam os servidores 21Ae21B às antenas parabólicas 92A e 92B. Os servidores 21A e 21B também podem se conectar diretamente usando uma conexão óptica de largura de banda 90 transportada em fibras ópticas 91. Enquanto os cabos terrestres e submarinos compreendiam anteriormente grandes conduítes de múltiplos condutores de fio de cobre, a largura de banda limitada e o alto custo do cobre aceleraram uma migração global para a fibra óptica.

[0058] A Figura 5B ilustra vários exemplos do enlace de “última milha” da nuvem 22 que compreende os servidores 21B e21Cea conexão de largura de banda alta 23, e uma grande variedade de computadores, telefones, rádios e “coisas” conectadas. Conforme mostrado, as conexões com fio podem compreender fibra óptica 91 e cabo coaxial 105 e, em menor grau, fio de cobre de par trançado. As conexões sem fio podem ser transmitidas por vários meios, incluindo a torre de rádio celular 18, a torre de rádio bidirecional 15, o ponto de acesso WiFi 26 e o satélite 93.

[0059] Como alguns exemplos, o servidor 21C que atua como um gateway de nuvem se conecta pela conexão de fibra 24 à estação base LTE 17 que conduz a torre de rádio 18 para a comunicação celular 28 que se conecta ao telefone celular 32, ao tablet 33 ou ao notebook 35. O servidor 21C também se conecta ao roteador WiFi público 100 que transmite o WiFi 29 ao telefone celular 32, tablet 33 ou notebook 35.

[0060] O servidor 21C conecta-se ao sistema de transmissão de

Petição 870170079583, de 19/10/2017, pág. 39/709 / 425 modem a cabo CMTS 101 que, por sua vez, se conecta pelo cabo coaxial 105 ao conversor digital (TV STB) 102 acionando a TV 39 usando o HDMI 107 e o modem a cabo 103. O modem a cabo 103 gera dois tipos diferentes de saídas - voz e digital de alta velocidade (HSD). A saída de voz pode ser usada com o telefone sem fio 5 enquanto o HSD aciona o desktop 36, bem como o tablet 33, o aparelho doméstico 34 e o telefone celular (não mostrado) através do sinal WiFi 29 gerado pelo ponto de acesso WiFi doméstico 26. O modem a cabo 103 pode, em alguns casos, produzir HSD como Ethernet 104 com fio para o desktop 36. Altemativamente, o TV STB 102 pode receber seus sinais através do enlace de satélite 95 compreendendo as antenas parabólicas 92A e 92B com o satélite 93. Coletivamente, o TV STB 102 e as várias saídas do modem a cabo 103 criam rede de comunicação doméstica 100.

[0061] O servidor 21C também pode se conectar a dispositivos de comunicação profissionais através de sinais de rádio bidirecionais 20 que acionam os rádios 16A e 16B da estação base TETRA ou EDACS 14 e da torre de rádio 15 ou através do PBX corporativo 8 que acionam telefones de mesa 9. Uma vez que a maioria dos sistemas de rádio bidirecional e troca de ramal privado não são baseados em técnicas de comutação de pacotes e não usam números de telefone públicos para o roteamento de chamadas, as informações são perdidas sempre que os dados são enviados entre o servidor 21C e o PBX 8 ou a estação base de rádio 14. O mesmo acontece com a ponte PSTN 3 conectada ao POTS 6, uma vez que o POTS não foi projetado para lidar com uma mistura de voz e dados.

[0062] O papel da camada física ou PHY varia nos sistemas, dependendo se a comunicação é um para um, um para muitos ou muitos para muitos. Na comunicação um para um, ilustrada conceitualmente na Figura 6A, dois e apenas dois dispositivos eletrônicos 140A e 140B se comunicam diretamente uns com os outros usando uma conexão dedicada elétrica, óptica ou de RF para realizar uma conexão ponto a ponto. Ao usar um protocolo de

Petição 870170079583, de 19/10/2017, pág. 40/709 / 425 comunicação prescrito e predefinido instalado nas interfaces 143A e 143B, uma interface de hardware somente pode ser estabelecida entre dispositivos para realizar a comunicação. Mais especificamente, os dados gerados a partir do conjunto de circuitos eletrônicos 141A são transferidos para a interface de comunicação de camada física 143A conectada através de sinais elétricos, de RF ou ópticos 144 a uma interface de comunicação física 143B construída de forma idêntica. Os dados recebidos são processados pelo conjunto de circuitos eletrônicos 141B e, em alguns casos, uma resposta é retomada à interface 143A no dispositivo 140A.

[0063] Uma vez que na comunicação um para um há apenas dois dispositivos, não há necessidade de incluir software para direcionar o tráfego, identificar dispositivos ou decidir quais dispositivos respondem às instruções. Exemplos de tal comunicação ponto-a-ponto dedicada incluem barramentos de comunicação em série como o RS232 originalmente usado para conectar impressoras a computadores desktop e o simples controle em série ou barramento S2C (patente U.S. número 7.921.320) usado para controlar o brilho da luz de fundo do LED nos visores de telefones celulares.

[0064] A comunicação ponto-a-ponto dedicada oferece várias vantagens. Em primeiro lugar, é fácil de implementar e, se desejado, pode ser executada inteiramente em hardware, mesmo dentro de um único circuito integrado, sem necessidade de um núcleo de unidade de processamento central (CPU). Altemativamente, a interface pode ser implementada no firmware, ou seja, software específico de hardware, exigindo apenas um poder de processamento mínimo da CPU para executar um conjunto de instruções limitado para gerenciar a troca de dados. Em segundo lugar, sem a necessidade de gerenciamento de tráfego, tais interfaces podem operar com taxas de dados muito altas. Por fim, oferece várias vantagens em segurança porque nenhum outro dispositivo compartilha a linha ou é capaz de “ouvir” sua comunicação. Nesse caso, a interface pode ser implementada para

Petição 870170079583, de 19/10/2017, pág. 41/709 / 425 “validar” ou “autenticar” a identidade de qualquer dispositivo no momento em que o dispositivo está conectado à sua porta e desativar a porta se a conexão for interrompida, mesmo por um instante. Os dispositivos que não são autenticados são ignorados e a porta permanece desligada até que um dispositivo válido substitua o dispositivo ofensor.

[0065] A relação entre dois dispositivos na comunicação um para um pode ser gerenciada de duas maneiras fundamentalmente diferentes. Na comunicação “par-a-par”, cada dispositivo possui autoridade de tomada de decisão igual e o controle da troca de comunicação geralmente é priorizado por ordem de chegada. Altemativamente, em uma configuração “mestreescravo”, o dispositivo mestre assume o controle do processo de tomada de decisão e o escravo tem que fazer solicitações e receber aprovação do dispositivo mestre para iniciar qualquer ação.

[0066] Uma interface somente PHY um para muitos é ilustrada na Figura 6B onde três ou mais dispositivos 140A, 140B e 140C estão conectados entre si por linha de comunicação comum, mostrada como um “barramento” de dados 144. Cada dispositivo inclui o conjunto de circuitos eletrônicos 141 A, 141B ou 141C conectado pelas linhas de dados correspondentes 142A, 142B e 142C às interfaces físicas 143A, 143B e 143C. Nessa configuração, os dados comunicados a partir de qualquer dispositivo são passados para todos os outros dispositivos conectados ao barramento ou ao meio de comunicação. Por exemplo, se o dispositivo 140C envia dados para o barramento 144, ambos os dispositivos 140A e 140B receberão a comunicação, se o dispositivo 140B enviar dados para o barramento 144, os dispositivos 140A e 140C receberão a comunicação e assim por diante. A comunicação onde todos ouvem é conhecida como “difusão”, um meio similar à difusão de estações de TV transmitindo conteúdo a muitos receptores de TV.

[0067] No vernáculo moderno, a difusão de um para muitos é

Petição 870170079583, de 19/10/2017, pág. 42/709 / 425 conhecida como multidifusão. A difusão de um para muitos somente PHY da Camada 1 intrinsecamente não é uma forma segura de comunicação, porque o difusor não tem idéia de quem está ouvindo. Na Segunda Guerra Mundial, a difusão foi usada para enviar informações a tropas, frotas e submarinos em canais inseguros usando “encriptação” projetados para impedir a capacidade de um ouvinte interpretar uma mensagem usando um algoritmo secreto para embaralhar a informação. Se um ouvinte não autorizado é capaz de “quebrar o código”, a segurança está seriamente comprometida, não só porque o intruso pode interceptar comunicados confidenciais, mas porque o difusor não sabe que ele é capaz de fazê-lo. Assim, nas implementações somente PHY da Camada 1, a comunicação de um para muitos sofre várias desvantagens principais, a saber:

• Qualquer dispositivo capaz de se conectar ao barramento ou meio de comunicação pode receber ou monitorar o conteúdo da comunicação, mesmo que representem um destinatário não intencional ou uma ameaça de segurança;

• O dispositivo que envia a informação, ou seja, o “dispositivo transmissor” não tem ideia do que outros dispositivos estão ouvindo;

• O dispositivo transmissor não pode confirmar se os dados enviados foram recebidos corretamente e com precisão; e • A transmissão do tráfego de comunicação para destinatários não intencionais ou desinteressados desperdiça a valiosa largura de banda do canal de comunicação forçando os destinatários a receber mensagens que eles não querem, precisam ou se importam.

[0068] O problema da conectividade com múltiplos dispositivos usando uma implementação somente PHY é ainda mais exacerbado em um para muitos e especialmente em comunicação de muitos para muitos dispositivos devido à concorrência pela largura de banda do canal e na

Petição 870170079583, de 19/10/2017, pág. 43/709 / 425 determinação da priorização de qual dispositivo está autorizado a transmitir. Para evitar colisões de dados, casos em que vários dispositivos tentam difundir simultaneamente, a comunicação somente PHY deve adotar uma hierarquia predeterminada de direitos de prioridade para cada dispositivo que compartilha o canal ou o meio de comunicação. Em um projeto da unidade de processamento central ou CPU, vários métodos são combinados para gerenciar a comunicação dentro da CPU e entre a CPU e a memória. Esses conceitos incluem o princípio de um “barramento de endereços” usado para identificar qual dispositivo ou a localização de memória com a qual a CPU está tentando se comunicar, um “barramento de dados” usado para transportar os dados separadamente do endereço e uma ou mais linhas de “interrupção” usadas para identificar quando alguma tarefa deve ser realizada.

[0069] Dessa maneira, uma CPU pode reagir dinamicamente às tarefas necessárias, permitindo que a CPU se comunique e suporte múltiplos periféricos, conforme necessário, absolvendo a CPU de qualquer responsabilidade de constantemente pesquisar ou solicitar informações de estado de seus periféricos conectados. Em operação, sempre que um componente periférico precisa de atenção, ele gera um sinal de “interrupção”, isto é, uma solicitação de serviço por curto-circuito elétrico de uma conexão compartilhada, a linha de interrupção, para terra, momentaneamente. Depois de gerar a interrupção, o periférico espera que a CPU pergunte ao dispositivo do que ele precisa de uma maneira análoga à luz do botão “chamar comissário” em um avião. Uma vez que a rotina de serviço de interrupção geralmente permite que a CPU termine o que está fazendo antes de atender o dispositivo de interrupção, esse método não é bom para lidar com o tratamento prioritário de eventos em tempo real que exigem atenção imediata. [0070] Para aumentar a capacidade de comunicação baseada em interrupção para aplicativos em tempo real, a arquitetura da CPU introduziu o conceito de uma linha de prioridade chamada “interrupção não mascarável”

Petição 870170079583, de 19/10/2017, pág. 44/709 / 425 para forçar a CPU a parar o que está fazendo e imediatamente atender um evento de prioridade alta ou em tempo real, por exemplo, uma mensagem entrando em um roteador ou uma chamada entrando em um telefone celular. Como o tratamento VIP para um pequeno número de passageiros em uma cabine de primeira classe, embora esses métodos funcionem para um número limitado de dispositivos conectados à comunicação central ou ao dispositivo mestre, a abordagem não evolui para lidar com um grande número de usuários, nem é compatível com sistemas distribuídos por pares onde não há controle centralizado.

[0071] Expandindo o princípio da CPU de um endereço de dispositivo, as Camadas OSI 2, 3 e 4 também utilizam a “identidade” do dispositivo como um componente chave no direcionamento do tráfego de comunicação entre dispositivos. Por exemplo, a Camada 2, a camada de enlace de dados, identifica as conexões de entrada e saída usando o acesso à mídia ou os endereços MAC, a Camada 3, a camada de rede, roteia pacotes através da rede usando endereços IP e a Camada 4, a camada de transporte, usa endereços de porta para identificar que tipo de dados está sendo transportado, por exemplo, e-mail, páginas da web, arquivos, etc. Em uma CPU, o barramento de endereços, os barramentos de dados e as linhas de interrupção compreendem linhas separadas, também conhecidas como conexão de porta “paralela”. Embora as portas paralelas sejam eficazes na maximização das taxas de dados para interconexões dentro de um único chip ou para conexões de alta velocidade de curta distância em uma placa-mãe de computador, o grande número de linhas é caro e impraticável para comunicação de longa distância.

[0072] Em vez disso, a comunicação em série, a entrega de informações em pacotes transmitidos ao longo do tempo, forma o método predominante para a comunicação eletrônica hoje. O pacote IP mostrado anteriormente na Figura 4 contém todos os dados de roteamento e

Petição 870170079583, de 19/10/2017, pág. 45/709 / 425 comunicação necessários para entregar conteúdo, carga útil 84, entre um remetente e um destinatário através de uma rede de comunicação, local ou globalmente. Cada pacote IP contém os endereços necessários, incluindo as informações da camada de enlace de dados no cabeçalho do enlace de dados 81, as informações de endereço IP no cabeçalho IP 82 e as informações do endereço da porta no cabeçalho TCP/UDP 83, exceto que elas são arranjadas sequencialmente e recebidas em ordem ao longo do tempo 86 em vez de serem enviadas simultaneamente em paralelo.

Camada OSI 2 - Camada de enlace de dados [0073] Para superar os problemas mencionados acima no controle do fluxo de informações na comunicação com múltiplos dispositivos somente PHY, o modelo OSI de sete camadas inclui a abstração de uma Camada 2 ou camada de “enlace de dados”. Em essência, a camada de enlace de dados executa os deveres de um guarda de trânsito, direcionando o fluxo de dados e decidindo quais dados em um barramento de dados compartilhado ou meio compartilhado são destinados a um dispositivo específico. O papel da camada de enlace de dados da Camada 2 é exemplificado na Figura 7A onde os dispositivos 145A, 145B e 145C compartilham uma conexão comum ou “barramento” 144, mas cada um tem sua própria interface de comunicação de camada de enlace de dados 146A, 146B e 146C que suporta apenas uma comunicação de enlace de dados 147 de cada vez. Portanto, embora muitos dispositivos estejam conectados juntos na camada física, isto é, compartilhando um barramento de hardware comum, na camada de enlace de dados apenas dois deles estão conectados um ao outro ao mesmo tempo. Especificamente, se o dispositivo 145A desejar se comunicar exclusivamente com o dispositivo 145B, isto é, o enlace de dados 147 ocorre apenas entre o dispositivo A e o dispositivo B mesmo que o dispositivo C esteja conectado em um nível físico aos outros dois.

[0074] Ao introduzir o hardware ou o software relacionado à Camada

Petição 870170079583, de 19/10/2017, pág. 46/709 / 425 como uma interface de camada de enlace de dados nos três dispositivos, isto é, interfaces de enlace de dados 146A, 146B e 146C, os dados enviados através do barramento de dados 144 podem ser inspecionados e filtrados para limitar a comunicação entre o remetente e os dispositivos receptores pretendidos. Os outros dispositivos conectados ao barramento, embora ainda recebam os mesmos dados, os ignoram e não tomam nenhuma ação como resultado da recepção da mensagem de entrada. Esse protocolo é usado pela interface periférica em série ou pelo barramento SPI, onde vários dispositivos estão conectados a um “barramento de dados” comum, o barramento que transporta os dados, mas apenas respondem se seu endereço particular aparecer nas linhas de endereço. Dessa forma, o barramento SPI é usado para controlar LEDs em sistemas de luz de fundo de TV LCD, permitindo o controle independente de cada cadeia de LEDs no visor da TV para facilitar o controle de brilho e “atenuação local” para conteúdo de vídeo HD e UHD de alto contraste. O mesmo conceito também é usado em arquiteturas de barramento de memória de computador para selecionar qual banco de memória está sendo lido ou gravado, em slots de expansão PCI Express em computadores e no barramento CAN usado em automóveis.

[0075] Do mesmo modo, o conceito da camada de enlace de dados é usado na comunicação sem fio Bluetooth de fones de ouvido sem fio, altofalantes, câmeras de vídeo, etc., onde somente dispositivos emparelhados, dispositivos anteriormente autorizados ou “ligados”, podem se comunicar entre si. No protocolo Bluetooth, o processo de ligação, etapas que estabelecem o enlace de dados, ocorre independentemente de e antes de qualquer comunicação de dados real. Uma vez que a ligação está completa, os dois dispositivos ligados podem, pelo menos teoricamente, se comunicar sem serem perturbados por outras conversas Bluetooth que ocorrem simultaneamente entre outras partes. Na realidade, o barramento de comunicação Bluetooth 144 representa um canal de frequência de rádio

Petição 870170079583, de 19/10/2017, pág. 47/709 / 425 compartilhado de largura de banda e capacidade de dados limitados. Definido pelo comitê de padrões Bluetooth e atribuído por consentimento mútuo da FCC e seus órgãos equivalentes estrangeiros, todos os dispositivos compatíveis com Bluetooth difunde na mesma banda de frequência compartilhada ou “canal”. Cada difusão simultânea consome uma porção da largura de banda disponível e da taxa de dados do canal. Apesar das transmissões sobrepostas, os dados não colidem desde que o canal não se tome excessivamente cheio. Para minimizar o risco de colisões de dados e para contornar os desafios de superpopulação e disponibilidade de canais, a comunicação Bluetooth é intencionalmente limitada a distâncias muito curtas e taxas de dados extremamente baixas.

[0076] Na arquitetura de barramento descrita anteriormente, a conexão física é uma linha comum, conexão elétrica ou meio conectado diretamente ou compartilhado entre vários dispositivos. Em uma arquitetura de barramento, qualquer dispositivo conectado ao barramento consome energia do barramento para comunicar e degradar o desempenho do barramento, mesmo que seja por uma pequena quantidade. Esse fenômeno, degradando gradualmente o desempenho do barramento com cada conexão de dispositivo adicional é conhecido como “carregamento”. No caso de o carregamento ser muito grande, o barramento já não pode operar dentro dos limites de desempenho especificados, e a comunicação falhará, tomando-se muito lenta ou apresentando uma alta taxa de erro. O número máximo de dispositivos que podem ser conectados a uma linha ou barramento antes que ele não atinja sua classificação de desempenho especificada é chamado de “fan out” do barramento ou conexão. Para aliviar o risco de carregamento, o barramento pode ser dividido em inúmeros segmentos, cada um operando de maneira ponto a ponto, onde a integridade do sinal é reforçada ou armazenada em buffer em magnitude antes de enviá-lo para outros dispositivos. Do ponto de vista da conectividade, os dados ou o sinal que está sendo comunicado, o

Petição 870170079583, de 19/10/2017, pág. 48/709 / 425 enlace de dados, é o mesmo que nas arquiteturas de barramento, mas a força elétrica, óptica ou de sinal de rádio, os dados PHY, é consistentemente mantida a um nível constante independente do número de dispositivos conectados.

[0077] Tal rede conectada que compreende conexões ponto a ponto com sinais reforçados é a arquitetura do concentrador mostrada na Figura 7B, onde os dispositivos A, B e C mostrados na forma simplificada por pilhas de comunicação 146A, 146B e 146C, respectivamente, são usados para conectarse um ao outro através de um barramento de reforço de sinal ou “concentrador” 148. O concentrador reproduz com fidelidade o seu conteúdo de sinal de entrada sem modificar, filtrar ou interpretar o fluxo de dados, em seguida, emite uma versão reforçada do mesmo sinal em linhas conectadas a outros dispositivos.

[0078] Cada dispositivo se conecta ao concentrador 148 através da sua própria linha de comunicação dedicada, especificamente 151 A, 151B e 151C conectando a pilha de comunicação do dispositivo periférico 146A à pilha de comunicação do concentrador 150A, a pilha de comunicação do dispositivo 146B à célula de comunicação do concentrador 150B e a pilha de comunicação do dispositivo 146C à pilha de comunicação do concentrador 150C, respectivamente. Por sua vez, as pilhas de comunicação dentro do concentrador 148 se conectam a um barramento interno de alta velocidade 149 para interconectar os dispositivos conectados ao concentrador. Embora os dados da camada PHY percorram todos através do cubo 148 e do barramento de dados interno 149, a comunicação de camada de enlace de dados da Camada 2 147 funciona como se apenas a pilha de comunicação 146A no dispositivo A fale exclusivamente com a pilha de comunicação 146B no dispositivo B e não com o dispositivo C. Entretanto, os dados da camada PHY são entregues a todos os dispositivos conectados ao concentrador e com atrasos de propagação idênticos. Além disso, uma vez que não há como saber

Petição 870170079583, de 19/10/2017, pág. 49/709 / 425 qual dispositivo está difundindo e quais estão ouvindo, o dispositivo concentrador deve suportar a comunicação multidirecional. Os concentradores para Ethernet e Thunderbolt operam de tal maneira. Em outros concentradores, por exemplo, para o “barramento em série universal” ou USB, o concentrador possui uma entrada e um número de saídas, tipicamente de duas a seis, usando diferentes conectores USB conformados para distinguir os dois tipos e a direção padrão do fluxo de dados.

[0079] Outro método para interconectar dispositivos para prover reforço de sinal é a arquitetura de “encadeamento em série” mostrada na Figura 7C onde os Dispositivos A, B e C estão conectados de forma sucessiva com uma pilha de comunicação do Dispositivo A 152A conectada à pilha de comunicação do Dispositivo B 152B através da conexão do barramento físico 151A e com a pilha de comunicação do Dispositivo B 152B conectado à pilha de comunicação do Dispositivo C 152C através da conexão do barramento físico 15IB, e com a pilha de comunicação do Dispositivo C 152C conectada através da conexão do barramento físico 152C ao próximo dispositivo conectado no encadeamento em série, se houver. Para esclarecer o fato de que a conexão física, e literalmente o próprio conector mecânico em sistemas com fio, são distintos, as pilhas de comunicação 152A, 152B e 152C contêm, cada uma, duas interfaces físicas da Camada 1, mas apenas uma camada de enlace de dados da Camada 2.

[0080] Na operação de encadeamento em série, os dados PHY fluem da camada de enlace de dados da pilha de comunicação 152A para a sua interface PHY e, em seguida, através de um cabo que constitui conexão de barramento físico 151A na interface PHY da pilha de comunicação 152B, para sua camada de enlace de dados, para baixo na segunda interface PHY do Dispositivo B, através de um cabo que constitui conexão de barramento físico 151B, para a interface PHY da pilha de comunicação 152C, e até sua camada de enlace de dados. Assim, enquanto o sinal físico passa por todos os três

Petição 870170079583, de 19/10/2017, pág. 50/709 / 425 dispositivos mostrados, a camada de enlace de dados conecta apenas a pilha de comunicação 152A do Dispositivo A à pilha de comunicação 152C do Dispositivo C, onde o Dispositivo B ignora os dados que está carregando. Exemplos de comunicação de rede baseados em arquitetura de encadeamento em série incluem Firewire, ou seja, IEEE1394, interface digital musical ou MIDI e o token ring agora obsoleto usado pelos computadores pessoais baseados em Windows inicial. Uma característica positiva dos dispositivos de encadeamento em série é que não há necessidade de um dispositivo extra, ou seja, o concentrador ou toda a fiação de rede que se conecte a ele. Um atributo negativo da arquitetura de encadeamento em série é que o atraso de propagação entre dispositivos aumenta com cada dispositivo pelo qual os dados passam, causando desempenho inconsistente especialmente em aplicativos de alta velocidade em tempo real.

[0081] Em todos os três exemplos, a arquitetura de barramento, a arquitetura do concentrador e a arquitetura de encadeamento em série, os dados da camada PHY são enviados a todos os dispositivos conectados à rede, mesmo que não seja o destinatário pretendido. O próprio dispositivo executa a identificação e filtragem de pacotes, onde compara o endereço dos dados que recebe em seu próprio endereço, tipicamente pré-programado como um endereço permanente fixo usando memória não volátil, comutadores micromecânicos ou pontes de fio no dispositivo ou em um de seus ICs. Quando um dispositivo específico reconhece um pacote de dados que contém um destino que corresponde ao endereço dele, ele responde, caso contrário ignora completamente o pacote. O endereço do dispositivo no pacote deve cumprir o protocolo de comunicação que está sendo usado, seja MIDI, USB, IEEE1394, Thunderbolt, etc. No caso em que o pacote usa o Protocolo de Internet como sua camada de enlace de dados, o endereço recebe um nome específico chamado “acesso à mídia” ou endereço MAC, para ser descrito mais adiante nesta descrição.

Petição 870170079583, de 19/10/2017, pág. 51/709 / 425 [0082] Um atributo chave das arquiteturas de barramento, concentrador e encadeamento em série mostradas é que os dados que estão sendo difundidos na camada PHY, isto é, os sinais elétricos, de RF ou ópticos são enviados para cada dispositivo conectado. Esse método consome valiosa largura de banda de rede, enviando pacotes desnecessariamente para dispositivos que não os necessitam e para os quais não se destinam. A medida que a Ethernet emergia como o padrão predominante para a rede local ou a conectividade LAN, essa largura de banda de rede desperdiçada foi identificada e, em última análise, eliminada pela introdução de um “comutador” de rede.

[0083] Em implementações da LAN, como a mostrada no exemplo de três dispositivos da Figura 8A, um comutador LAN 159 é inserido entre a camada PHY de comunicação das interfaces de comunicação 146A, 146B e 146C contidas nos dispositivos 145A, 145B e 145C. Em contraste com a conexão de barramento mostrada anteriormente na Figura 7A, com um único barramento de dados compartilhado 144 que interconecta os dispositivos, a adição do comutador LAN 159 quebra o barramento em três conexões ponto a ponto discretas, a saber, conexão PHY 148A entre o dispositivo 145A e o comutador 159, conexão PHY 148B entre o dispositivo 145B e o comutador 159, conexão PHY 148C entre o dispositivo 145C e o comutador 159, e assim por diante. Conforme mostrado, cada conexão física ocorre ponto a ponto, entre apenas dois dispositivos, com os dispositivos intermediários responsáveis por passar o fluxo de dados em série para seus dispositivos conectados adjacentes.

[0084] O princípio pode aumentar para qualquer número de dispositivos e a operação do comutador LAN 159 pode ser unidirecional ou bidirecional e half-duplex ou full duplex. Em operação, para estabelecer o enlace de dados 147 exclusivamente entre as interfaces de comunicação 146A e 146B dos dispositivos conectados em rede 145A e 145B, o comutador LAN

Petição 870170079583, de 19/10/2017, pág. 52/709 / 425

159 estabelece uma conexão de camada física apenas entre os dois dispositivos de comunicação 145A e 145B. Como tal, a conexão da camada PHY é estabelecida exclusivamente entre os dois dispositivos de comunicação, nomeadamente o dispositivo 145A e o dispositivo 145B, mas sem outros dispositivos conectados em rede, por exemplo, dispositivo 145C. Um dos benefícios de usar o comutador LAN 159 é que o dispositivo 145C não se preocupa em ouvir a conversa de outras comunicações que ocorrem na rede e sua interface de comunicação 146C permanece livre até que seja chamado.

[0085] Um segundo benefício do uso do comutador LAN 159 é que o sinal que entra no comutador LAN 159 é reforçadoantes de ser enviado para um dispositivo conectado à rede adjacente, de modo que nenhum carregamento, degradação do sinal ou impacto de velocidade resulte da conexão de mais dispositivos ao comutador LAN 159. Portanto, o fan out do comutador LAN 159 é essencialmente ilimitado, determinado apenas pelo número de conexões no comutador LAN.

[0086] Uma representação esquemática do comutador LAN 159 está ilustrada na Figura 8B, compreendendo as linhas 160A a 160F. No ponto de interseção em cada combinação de duas linhas está um ponto de cruzamento LAN 161, que representa um comutador e um amplificador bidirecional. Por exemplo, o ponto de cruzamento AB interconecta a linha B 160B à linha A 160A, o ponto de cruzamento BE interconecta a linha B 160B à linha E 160E, o ponto de cruzamento CE interconecta a linha C 160C à linha E 160E e assim por diante. Em comunicação normal, cada linha está conectada a no máximo apenas uma outra linha para criar um par de interconexão. Uma vez que um dispositivo está localizado, uma tabela de roteamento dos endereços MAC da Camada 2 (não mostrada) é mantida com o comutador LAN para acompanhar quais dispositivos estão conectados e a qual conector. A tabela essencialmente mapeia o endereço MAC para sua conexão física com o

Petição 870170079583, de 19/10/2017, pág. 53/709 / 425 comutador LAN, estabelecendo uma relação precisa entre a Camada 2, a camada de enlace de dados e a Camada 1, a camada PHY. A tabela é dinâmica, portanto, se um dispositivo estiver desconectado e outro estiver conectado, a tabela de roteamento do endereço MAC será atualizada automaticamente no comutador LAN 159.

[0087] Em casos especiais em que uma difusão de dados é enviada a todos os dispositivos da rede, por exemplo, na inicialização, onde um dispositivo pode estar procurando outro, mas não identificou sua localização no comutador LAN, cada dispositivo pode ser interconectado simultaneamente com apenas uma fonte que difunde os dados e o resto dos dispositivos que os recebem. Devido aos amplificadores incorporados, mesmo no modo de difusão, cada sinal é armazenado em buffer e não resulta em degradação de integridade de velocidade ou sinal.

[0088] A terceira e mais importante vantagem de usar o comutador LAN 159 é aumentar drasticamente a largura de banda da rede geral, permitindo que várias conversas ocorram de forma simultânea e independente entre pares de dispositivos como ilustrado na Figura 8C. No exemplo, os dispositivos 145A, 145B, 145C e 145F estão conectados ao comutador LAN 159 com linhas físicas 160A, 160B, 160C e 160F, respectivamente. Através da camada de enlace de dados 2, os dispositivos 160A e 160B estabelecem um canal de comunicação dedicado AB através do emparelhamento 164, ao mesmo tempo que os dispositivos 160C e 160F estabelecem um canal de comunicação dedicado CF através do emparelhamento 165. Na comunicação do dispositivo 145A a 145B, os dados são enviados ao longo da linha 160A através do ponto de cruzamento LAN “ligado” 162 e através da linha 160B para o dispositivo 145B. Simultaneamente, na comunicação do dispositivo 145C ao dispositivo 145F, os dados são enviados ao longo da linha 160C através do ponto de cruzamento LAN ligado 163 e da linha 160F para o dispositivo 145F. Todas as outras conexões de ponto de cruzamento LAN

Petição 870170079583, de 19/10/2017, pág. 54/709 / 425 permanecem desligadas mesmo que os dispositivos estejam conectados às outras linhas.

[0089] Dessa maneira, dois canais de comunicação independentes, ou “conversas”, podem ocorrer a taxas de dados completas no emparelhamento AB 164 e emparelhamento CF 165 sem esperar para compartilhar um barramento de dados comum. Assim, no exemplo mostrado, a largura de banda da rede conectando quatro dispositivos é duplicada usando o comutador LAN 159 e uma arquitetura LAN em comparação com o uso de uma arquitetura de rede de barramento, concentrador ou encadeamento em série. Em um comutador LAN com “n” linhas e conexões, o número máximo de conversas simultâneas é então “n/2”, em comparação com as redes alternativas usando conexões em série que só podem suportar uma única conversa por vez.

[0090] Deve-se observar que quando dois dispositivos estão conectados, por exemplo, dispositivos 145A e 145B no emparelhamento AB 164, a comunicação usando uma única linha é apenas half duplex porque apenas um dispositivo pode “falar” ao mesmo tempo, enquanto o outro escuta. Se for necessária uma comunicação full duplex, o número de linhas e conexões de ponto de cruzamento no comutador LAN 159 deve ser duplicado, com o dispositivo 145A tendo a sua saída conectada à entrada de 145B e, em paralelo, com o dispositivo 145B com a sua saída conectada à entrada de 145A. Assim, uma conversação full duplex do dispositivo A para ο dispositivo B envolve simultaneamente dois emparelhamentos - um emparelhamento AB em que o dispositivo A envia dados para o dispositivo B e um emparelhamento BA em que o dispositivo B envia dados para o dispositivo A, cada um em linhas diferentes e através de conexões de ponto de cruzamento únicas.

[0091] Embora a ilustração da Figura 8C possa implicar que as linhas 160A a 160F representam fios e plugues de um conector elétrico, a descrição

Petição 870170079583, de 19/10/2017, pág. 55/709 / 425 é igualmente válida, mesmo que as linhas representem comunicação por rádio ou óptica. Na comunicação por rádio, cada linha pode, por exemplo, representar uma banda de frequência única, ou “subcanal” usado para transportar dados de uma linha, e onde 20 frequências de rádio, bandas ou subcanais podem ser usados para transportar até 10 conversas diferentes simultaneamente e de forma independente. Na comunicação óptica, cada linha pode representar um comprimento de onda diferente da luz ou um esquema de modulação exclusivo. A interface de rádio ou óptica converte a comunicação eletromagnética de volta em sinais elétricos dentro dos dispositivos de comunicação. Assim, dessa maneira, um comutador LAN pode ser usado para intensificar a largura de banda de qualquer meio de comunicação configurado pela rede.

[0092] Embora vários protocolos e padrões tenham surgido para direcionar o tráfego e transportar dados em redes com comutação de pacotes, surgiram vários padrões generalizados que precisam de maiores explicações. Seja amplamente adotado ou evoluindo a partir de padrões antigos existentes, esses protocolos de comunicação e seu hardware associado, discutidos abaixo, incluem:

• Ethernet (IEEE802.3) para redes de comunicação elétricas • WiFi (802.11) para redes de comunicação por rádio de alcance próximo • 4G / LTE para redes de comunicação por rádio de longo alcance • DOCSIS3 para redes de comunicação baseadas em cabo e fibra [0093] Ethernet (IEEE802.3) - Quando as conexões elétricas são usadas para formar uma LAN em redes modernas, a maioria das redes proprietárias é substituída por um padrão IEEE802.3 aceito globalmente conhecido como Ethernet. A especificação Ethernet prescreve o pacote de

Petição 870170079583, de 19/10/2017, pág. 56/709 / 425 dados usado pela Camada 2 de enlace de dados, bem como define as conexões elétricas, tensões, taxas de dados, velocidades de comunicação e até mesmo os plugues conectores e os soquetes físicos. Portanto, Ethernet é, como padrão, uma especificação tanto da Camada 2 de enlace de dados e quanto da Camada PHY 1. A especificação do conteúdo de um pacote de dados Ethernet, como um pacote Ethernet da Camada 1 188 ou um pacote Ethernet da Camada 2 189, é ilustrada graficamente como dados em série na Figura 9 representada da esquerda para a direita na direção do aumento do tempo 86. A tabela associada 190 descreve a função de cada bloco ou subpacotes no pacote Ethernet.

[0094] O pacote Ethernet da Camada 2 189 como mostrado contém o endereço MAC de destino 182, o endereço MAC de origem 183, um bloco LAN virtual opcional 184, o bloco Ethertype 185, a verificação de quadro 186 e a carga útil 187, representando os dados reais que estão sendo transportados pelo pacote Ethernet. Para garantir as especificações de velocidade, o tamanho do pacote Ethernet da Camada 2 pode, de acordo com a especificação Ethernet, variar de 64B a 1.518B para transportar uma carga útil de 42B para 1500B. No caso de o bloco VLAN opcional 184 estar incluído no pacote, o comprimento do pacote aumenta em 4B com um comprimento Ethernet da Camada 2 máximo de 1.522B.

[0095] O pacote Ethernet da Camada 1 188 combina todo o conteúdo do pacote Ethernet da Camada 2 189 com um cabeçalho que inclui SFD 181 para sincronização e preâmbulo 180 como um cabeçalho de quadro de dados. O comprimento máximo do pacote Ethernet da Camada 1 188 é então 8B mais longo do que o pacote Ethernet da Camada 2 189, variando de um tamanho mínimo de 72B a um comprimento máximo de 1.526B sem a opção VLAN ou 1.530B com o bloco VLAN 184 incluído.

[0096] Em operação, o propósito do preâmbulo 180 como um subcampo de cabeçalho de quadro de dados da Camada 1 é auxiliar o

Petição 870170079583, de 19/10/2017, pág. 57/709

50/425 hardware na identificação inicial de que um dispositivo está tentando enviar dados. O cabeçalho do quadro de início SFD 181, outro artefato da Camada 1, é usado para sincronizar os dados de pacotes de entrada aos relógios de temporização para permitir a leitura dos dados de forma confiável. Após estes dois blocos do pacote Ethernet da Camada 1 188 serem recebidos, o pacote Ethernet da Camada 2 189 começa com o endereço MAC de destino 182 e o endereço MAC de origem 183, descrevendo para qual dispositivo conectado à LAN os dados estão indo e de onde vêm. O comutador LAN é inteligente e capaz de rotear dados de acordo com esses endereços. O bloco VLAN 184 é opcional e, se presente, facilita a filtragem dos pacotes particionando-os em sub-redes ou redes de área local virtual de acordo com a especificação IEEE 802.1Q. O Ethertype 185 especifica o formato dos dados como o tipo de dados ou seu comprimento dependendo do formato. Ethertype 185 e VLAN 184 seguem um formato que impede a confusão sobre se os dados opcionais da VLAN 184 estão inseridos ou não.

[0097] Depois de todos esses dados de cabeçalho serem recebidos, a carga útil 187 contém os dados reais que estão sendo entregues pelo pacote Ethernet. Esses dados podem estar em conformidade com o Protocolo de Internet e podem conter dados que encapsulam o conteúdo da Camada 3 para Camada 7 conforme descrito no modelo OSI. Altemativamente, em sistemas personalizados, a carga útil 187 pode conter protocolos proprietários de hardware ou fabricantes específicos. Se todos os dados necessários não puderem ser enviados no tamanho máximo de pacote de 1.500B permitido pelo padrão Ethernet, a carga útil pode ser dividida em pedaços ou enviada usando um protocolo alternativo, por exemplo, um quadro Jumbo que pode transportar até 9.000B de dados, seis vezes maior que o de um pacote Ethernet padrão. A verificação de quadros 186 carrega informações simples relacionadas à verificação de erros para o pacote Ethernet da Camada 2 189, mas não os dados da Camada 1 para o preâmbulo 180 ou SFD 181. A

Petição 870170079583, de 19/10/2017, pág. 58/709

51/425 verificação de quadros 186 utiliza um algoritmo de verificação de redundância cíclica de 32 bits (32b), capaz de detectar alterações não intencionais em dados brutos do pacote Ethernet da Camada 2 189.

[0098] O padrão físico para Ethernet inclui fibra elétrica e óptica, sendo o cabo elétrico o mais comum hoje. As taxas de dados evoluíram ao longo do tempo de 10Mbps a 100Mbps para mais recentemente IGbps até lOOGbps, chamado “Gigabit Ethernet”. Os cabos Ethernet utilizam conectores RJ-45 facilmente reconhecidos para proteger conexões entre comutadores LAN e dispositivos como servidores, desktops, notebooks, conversores digitais e modems. Em alguns casos, a Ethernet pode ser usada para fornecer energia a um dispositivo, conhecido como “power over Ethernet” ou POE.

[0099] WiFi (802.11) - Em muitos casos, a Ethernet é empregada para estabelecer uma conexão de rede sem fio com dispositivos móveis, usando um enlace de rádio de curta distância. Ao longo do tempo, os enlaces sem fio proprietários foram substituídos por um protocolo de comunicação de curta distância padronizado definido pelo padrão IEEE802.il, comercialmente chamado de WiFi. Muitas vezes, fundindo o roteador e a funcionalidade de comutação com receptores e transmissores de rádio, os roteadores WiFi agora são comuns em lares, escritórios, empresas, cafés e locais públicos.

[00100] O enlace de rádio mostrado na Figura 10 ilustra a combinação de duas redes interconectadas, uma que compreende “acesso Ethernet MAC” 200A e a outra que inclui um enlace de rádio, a saber, “ponto de acesso de rádio” 200B. O conjunto de circuitos de interface e o bloco de firmware relacionado 202 proveem a interface PHY da Camada 1, ou seja, a ponte física 204A e 204B entre a rede elétrica e a rede de rádio, bem como facilitam o enlace de dados da Camada 2 205A e 205B entre o protocolo Ethernet e o protocolo de rádio, por exemplo WiFi. Na operação, os dados provenientes da Ethernet 201 entram na pilha de comunicação 203A, com os sinais físicos que se conectam à interface 202 através da conexão PHY 204 da Camada 1 e das

Petição 870170079583, de 19/10/2017, pág. 59/709

52/425 informações de enlace de dados da Camada 2 passadas através da conexão 205A.

[00101] Após o processamento, os dados são passados da interface 202 para a pilha de comunicação 203B do ponto de acesso de rádio 200B, com sinais físicos que se conectam através da conexão PHY da Camada 1 204B e informações de enlace de dados da Camada 2 passadas através da conexão 205B. Essas informações são então passadas na conexão 204 para o transceptor de rádio e difundidas em qualquer um dos vários “n” canais de rádio através dos rádios 206A a 206N como saída na antena de rádio 207. Ao receber sinais de rádio, o trajeto de dados é o mesmo, mas em direção oposta à descrição mencionada acima.

[00102] A interface 202 também pode atuar como um comutador LAN para suportar a comunicação simultânea em diferentes canais de rádio que pode ocorrer com diferentes dispositivos conectados à Ethernet simultaneamente, caso em que mais de um cabo Ethernet 201 está conectado ao dispositivo de enlace de rádio. Altemativamente, várias conversas de rádio podem ser enviadas sequencialmente através de uma conexão Ethernet única para um dispositivo a montante, usando Camada 3 e Camada 4 para gerenciar o roteamento dos pacotes para diferentes destinatários.

[00103] Um dispositivo e protocolo padronizado para comunicação de rádio de curta distância é uma rede de área local sem fio ou um dispositivo WLAN que opera de acordo com a especificação IEEE802.il. Tais dispositivos, comercialmente conhecidos como WiFi, são usados para acesso à Internet sem fio e para sistemas de distribuição sem fio ou WDS, ou seja, conexões de rádio usadas para substituir conexões com fio onde o cabeamento é inconveniente, difícil ou dispendioso de implantar. Além da especificação mestre IEEE802.il, subversões como 802.11a, 802.11η, 802.11ac etc. são usadas para especificar frequências portadoras, canais, esquemas de modulação, taxas de dados e alcance de comunicação por RF. Um resumo das

Petição 870170079583, de 19/10/2017, pág. 60/709 / 425 subversões do padrão 802.11 aprovado pelo IEEE no momento deste aplicativo está listado na tabela a seguir:

Versão 802.11 Data de liberação Freq. portadora GHz Canal BWMHz Taxa de WdadbStnáxo/ Mbps N°de MIMO •KKKKtnáXS::/:::/ Modulaçao Alcance em ambientes internos m Alcance em ambientes externos m
a Set 99 5 20 6 a 54 Nenhum OFDM 35 120
3,7 - 5.000
b Set 99 2,4 22 1 all Nenhum DSSS 35 140
g Jun 03 2,4 20 6 a 54 Nenhum OFDM DSSS 38 140
n Out 09 2,4 ou 5 20 7,2 a 72,2 5 OFDM 70 250
40 15 a 150
ac Dez 13 5 20 7,2 a 96,3 8 OFDM 35 -
40 15 a 200
80 32,5 a 433,3
160 65 a 866,7
ad Dez 12 60 2.160 6.912 Nenhum OFDM de portadora única ou baixa potência - -

[00104] Como mostrado, o WiFi opera principalmente a 2,4 GHz e 5Ghz, com 3,7 GHz projetado para o roteamento WDS de longa distância até agora adotado apenas pelos EUA. A portadora de 60 GHz é recém-adotada e projetada para taxas de dados Gigabit consistentes com a conexão a outras redes de taxa de bits altas como Gigabit Ethernet e fibra/cabo usando DOCSIS 3. Para suportar a operação paralela de múltiplos usuários comuns em cafés e locais públicos, 802.11η e 802.11g oferecem conectividade paralela de 5 canais e 8 canais de múltiplas entradas e múltiplas saídas ou MIMO. Para obter alta largura de banda, o WiFi usa principalmente OFDM ou multiplexação por divisão de frequências ortogonais como um método de codificação de dados digitais em múltiplos canais de subportadoras ortogonais pouco espaçados.

[00105] Em operação, a OFDM separa um único sinal em subportadoras, dividindo um sinal extremamente rápido em inúmeros sinais lentos. A ortogonalidade nesse contexto significa que os canais de subportadoras adjacentes não se sobrepõem, evitando a confusão quanto a qual canal os dados são destinados. As inúmeras subportadoras são então coletadas no receptor e recombinadas para reconstituir uma transmissão de alta velocidade. Como a taxa de dados nos canais de subportadoras é menor

Petição 870170079583, de 19/10/2017, pág. 61/709

54/425 do que um único canal de alta velocidade, a susceptibilidade de sinal à distorção e a interferência é reduzida, tomando o método adequado para uma comunicação de RF confiável, mesmo em ambientes ruidosos ou em longas distâncias. Com exceção da banda especial de 3,7 GHz, o WiFi é limitado a curto alcance de 70 m em ambientes internos e 250 m em ambientes externos com potências de difusão mais altas. WiFi carece de capacidade de transferência celular, de modo que seu uso na comunicação móvel de longa distância é problemático e relegado à tecnologia ETE descrita abaixo.

[00106] Em WiFi usando a modulação OFDM, os dados transmitidos são organizados em “símbolos”, um tipo de representação de dados que naturalmente comprime muitos estados digitais em um número menor de símbolos. Os símbolos são então transmitidos a uma “taxa de símbolos” baixa para prover imunidade à perda de dados relacionada aos problemas de transporte da portadora. Essa abordagem garante uma taxa de bits mais alta com uma taxa de erro menor, uma QoS melhorada e uma sensibilidade reduzida às flutuações de força do sinal, fantasma de RF e ruído ambiente ou EMI. Um símbolo pode ser qualquer modulação, como uma frequência, tom ou padrão de pulso específico que se correlaciona com cada símbolo específico, onde uma sequência de símbolos em uma duração fixa pode ser convertida em um fluxo de dados a uma taxa de bits superior à taxa de símbolos. O método é análogo aos sinalizadores de semáforo onde o sinalizador pode ser movido para uma das dezesseis posições fixas em duração definida, por exemplo, em um segundo. A taxa de símbolos, também conhecida como a taxa “baud”, é então um símbolo por segundo, ou um baud, onde o termo um baud é definido como “o número de mudanças de símbolo distintas feitas no meio de transmissão por segundo”. Como o sinalizador pode ter 16 valores diferentes, em forma binária, oito estados são equivalentes a 4 bits, porque 24 = 16 estados. Em seguida, uma taxa de símbolos de 1 por segundo ou 1 baud é igual a uma taxa de bits de dados de 4bps, quatro vezes

Petição 870170079583, de 19/10/2017, pág. 62/709 / 425 superior à taxa de símbolos. Da mesma forma, usando 16 tons diferentes para representar os símbolos, uma taxa de símbolos de 10M símbolos por segundo pode resultar em uma taxa de bits de dados digitais de 40Mbps.

[00107] O número de símbolos empregados afeta, no entanto, não apenas a taxa de bits, mas a taxa de erro e QoS de comunicação também. Por exemplo, se muitos símbolos forem empregados, pode ser difícil para o processador de sinal digital do rádio ou DSP discernir com precisão os símbolos em um ambiente ruidoso e a taxa de erro de dados aumentará, exigindo a retransmissão dos dados para manter uma soma de verificação válida na verificação CRC dinâmica do pacote. Usar menos símbolos em qualquer taxa de símbolo toma mais fácil discernir um do outro, mas, por sua vez, diminui a taxa de bits digital e a largura de banda de comunicação. Por analogia, se o sinalizador do semáforo só pode ser movido para uma das quatro posições em vez de dezesseis, é mais fácil de ver em uma tempestade, de modo que a chance de um erro de comunicação, isto é, a leitura errada, é bastante diminuída. Mas usando apenas uma das quatro posições do sinalizador, a taxa baud ainda é de 1 símbolo por segundo, mas a taxa de dados de bits cai para apenas 2 bps porque 22 = 4. Então, há uma compensação intrínseca entre taxa de dados de bits e taxa de erro de bits que o WiFi pode modular ao ajustar dinamicamente a taxa de símbolos. Uma compensação similar é feita na comunicação de rádio LTE.

[00108] Nas versões 802.11 a, g e n, um novo símbolo pode ser transmitido a cada 4 microssegundos, ou a 250.000 baud para cada canal de subportadora. O WiFi emprega 64 canais de subportadora, de modo que, teoricamente, a taxa máxima de símbolos deve ser de 16M baud na capacidade de canal total. Mas, para proteger a interferência entre canais, apenas 48 dos 64 canais de subportadora estão realmente disponíveis, reduzindo a taxa de símbolos para 12M baud na capacidade de canal total. Nas comunicações de rádio modernas, os símbolos são convertidos em bits

Petição 870170079583, de 19/10/2017, pág. 63/709 / 425 em níveis múltiplos, os níveis mudam dinamicamente com as condições de comunicação de RF usando uma variedade de esquemas de modulação de fase resumidos na tabela abaixo:

Modulação de fase Condições do canal de rádio Bits por Símbolo Taxa de símbolos por subportadora Taxa de símbolos WiFi máx. multicanal Taxa de bits máx. WiFi
BPSK Ruidosas ou distantes 1 250k baud 12M baud 12 Mbps
QPSK Boas, médio alcance 2 24 Mbps
16-QAM Muito boas, curto alcance 4 48 Mbps
64-QAM Excelente, grande proximidade 6 72 bps

em que a relação entre taxa de símbolos e taxa de bits é definida pela seguinte equação” (Taxa de dados de bits) / (Taxa de símbolos) = Bits por símbolo em que a taxa de dados de bits é medida em bits por segundo ou bps e a taxa de símbolos é medida em símbolos por segundo ou “baud”. Dos esquemas de modulação de fase mostrados, “chaveamento de fase binário ou BPSK funciona melhor em longas distâncias e em ambientes de rádio ruidosos, mas usa um método puramente binário de um bit por símbolo, como tal, está limitado a baixas taxas de dados. Em boas condições de rádio, a taxa de dados excede a taxa de símbolos, ou seja, bits por símbolo > 1 e a taxa de bits do rádio pode ser aumentada em qualquer lugar de duas a seis vezes a taxa BPSK, dependendo das condições de rádio, ausência de EMI, distâncias mais curtas entre transceptores e potência de difusão do rádio. Por exemplo, em boas condições ou para enlaces de rádio de médio alcance, métodos de “chaveamento de fase em quadrature” ou QPSK oferecem o dobro da taxa de dados de BPSK com 2 bits por símbolo. Em condições muito boas limitadas à operação de curto alcance, “modulação de amplitude em quadrature de 16 níveis”, chamada 16-QAM, pode ser usada para aumentar a taxa de bits para 4 vezes a taxa de símbolos que oferece 48Mbps em comunicações WiFi. Sob excelentes condições de rádio sem ruído, a taxa de dados pode aumentar para 6 bits por símbolo usando 64-QAM, ou seja, modulação de amplitude em quadrature de 64 níveis. Os esquemas de modulação de fase em comunicação

Petição 870170079583, de 19/10/2017, pág. 64/709 / 425 são bem conhecidos dos versados na técnica e não serão discutidos mais adiante nesta descrição.

[00109] No caso de 802.11b e 802.11g, outro esquema de modulação empregado é o espectro espalhado de sequência direta ou DSSS, onde o termo “espalhamento” refere-se ao fato de que em DSSS os sinais operacionais ocorrem sobre a largura de banda total, ou seja, o espectro, da frequência de transmissão do dispositivo do rádio. Em DSSS, conjunto circuitos de modulação utilizam uma cadeia contínua de símbolos de código de pseudorruído menores que um bit de informação para deslocamento de fase de uma onda senoidal pseudoaleatoriamente antes da transmissão e para subtrair o mesmo ruído do sinal do receptor. O resultado da filtragem é que o ruído não correlacionado é completamente removido e a comunicação pode ocorrer de forma confiável mesmo na presença de ruído de rádio e EMI, mesmo com razões de sinal para ruído abaixo da unidade. Como o espectro espalhado utiliza a banda de rádio completa, esses métodos não são mais preferidos em relação ao OFDM e não são empregados nas mais recentes implementações WiFi.

[00110] Além de estipular os detalhes da camada PHY em bandas de rádio e esquemas de modulação, o padrão 802.11 também define o formato do pacote de dados em série necessário ao se comunicar com os rádios WiFi. Em comparação com o pacote Ethernet, o cabeçalho do pacote WiFi é mais complexo, em parte porque deve especificar os endereços das estações de recebimento e de transmissão de rádio, bem como um ou dois endereços de rede. A estrutura de dados de um pacote WiFi é ilustrada na Figura 11, ilustrada graficamente como dados em série representados da esquerda para a direita na direção do aumento do tempo 86. A tabela associada 242 descreve a função de cada bloco ou subpacote no pacote WiFi. Como um pacote Ethernet, o quadro de dados inclui informações de enlace de dados da Camada 2 encapsuladas em um quadro de dados da Camada 1 com um

Petição 870170079583, de 19/10/2017, pág. 65/709 / 425 cabeçalho da Camada 1.

[00111] O cabeçalho da Camada 1 compreende um preâmbulo 230 de 10B de comprimento e SFD 231 de 2B de comprimento, bem como um PLCP 232 de 2B de comprimento. Embora o PLCP seja considerado como contendo os dados da Camada 1 e da Camada 2, aqui será considerado como dados da Camada 1. Juntos, o cabeçalho da Camada 1 pode ser considerado 14B de comprimento e o restante do pacote de WiFi constitui dados da Camada 2 variando em comprimento de 34B para cargas úteis vazias para 2.346B para um comprimento máximo de carga útil 241 de 2.312B. Com um comprimento máximo de carga útil de 2.312B, o pacote WiFi é maior do que os pacotes Ethernet, que, em formato padrão, são limitados a apenas cargas úteis de 1.500B de comprimento. Os componentes do pacote WiFi da Camada 2 como mostrado incluem o controle de quadro 233, a duração 234, os endereços MAC da estação base de rádio 1 e 2 mostrados como blocos 235 e 236 respeitosamente, os endereços MAC condicionais 3 e 4 mostrados como blocos 237 e bloco opcional 239 respectivamente, sequência 238 e verificação de quadros 240.

[00112] Em operação, o propósito do preâmbulo 230 como um subcampo de cabeçalho de quadro de dados da Camada 1 é auxiliar o hardware na identificação inicial de que um dispositivo está tentando enviar dados. O cabeçalho do quadro de início SFD 231, outro artefato da Camada 1, é usado para sincronizar os dados de pacotes de entrada aos relógios de temporização para permitir a leitura dos dados de forma confiável. Após esses dois blocos, o procedimento de convergência de camada física ou PLCP 232 fornece informações relativas ao comprimento do pacote, a taxa de dados e a verificação de erros do cabeçalho.

[00113] O controle de quadros 233, o primeiro dado da Camada 2 puramente de enlace de dados, define o tipo de versão do pacote Wi-Fi, ou seja, se ele contém informações relacionadas ao gerenciamento, comandos de

Petição 870170079583, de 19/10/2017, pág. 66/709 / 425 controle, dados ou recursos reservados, incluindo os bits de controle “Para DS / De DS” usados para determinar se o rádio funciona como um ponto de acesso ou um sistema de distribuição sem fio. A duração 234, também conhecida como “duração e ID”, define a duração do vetor de alocação de rede ou a duração do NAV, ou seja, quanto tempo o meio de RF estará ocupado antes que outra estação possa concorrer pelo meio, exceto no modo de economia de energia, onde contém informações identificando sua “ID da estação” usada para reconhecer seus avisos ao verificar a atividade. Seguindo as informações de Duração, os blocos de Endereço 1 e Endereço 2 235 e 236 definem os endereços da estação base, essencialmente os endereços MAC do transceptor de rádio.

[00114] Especificamente, o Endereço 1 no bloco 235 contém o endereço da estação de recepção do BSS, enquanto o Endereço 2 no bloco 236 contém o endereço da estação de transmissão do BSS. Na comunicação de dois rádios cujo endereço de rádio é carregado no Endereço 1 e o Endereço 2 depende da configuração “Para DS / De DS” definida no bloco 233 que define o controle do quadro. O Endereço 3 definido no bloco 237 é usado para ligar o rádio a uma rede física, por exemplo, usando Ethernet, descrevendo essencialmente a origem dos dados que estão sendo difundidos ou, em alternativa, onde os dados que estão sendo recebidos estão indo. Como tal, o endereço presente no Endereço 3 também depende da configuração “Para DS / De DS” definida no pacote WiFi. Para garantir a interoperabilidade com conexões Ethernet, os endereços WiFi são de 6B de comprimento, o mesmo dos endereços MAC usados em LANs Ethernet.

[00115] Para definir a direção dos dados e para poder reordenar os pacotes recebidos fora de ordem, ou seja, afetados por atrasos de fase de rádio, o bloco Sequência 238 contém números de sequência e fragmento que definem o quadro do pacote. A menos que o pacote WiFi seja identificado como um pacote de sistema de distribuição WDS ou sem fio, o Endereço 239

Petição 870170079583, de 19/10/2017, pág. 67/709

60/425 opcional é excluído do pacote WiFi. Após os blocos de controle de endereço e sequência, a carga útil 241 contém o conteúdo real que está sendo entregue pelo pacote WiFi, incluindo dados da Camada OSI 3 a Camada 7. Posteriormente, a Verificação de Quadros 240 que utiliza um algoritmo de verificação de redundância cíclica de 32 bits (32b) é usada para detectar mudanças não intencionais nos dados brutos do pacote Ethernet da Camada 2. [00116] Conforme descrito, quando um rádio WiFi é usado como um “ponto de acesso”, por exemplo, provendo uma conexão de rádio de um dispositivo móvel à Internet, apenas são necessários três endereços MAC - o rádio transmissor, o rádio receptor e a conexão Ethernet. A ordenação dos endereços depende da direção do fluxo de dados conforme definido pela configuração “Para DS / From DS”. O termo DS é um acrônimo para o sistema de distribuição, a rede com fio ou a conexão Ethernet à qual o rádio está conectado. A ordenação dos endereços em um pacote WiFi no caso do ponto de acesso WiFi é ilustrada na Figura 12A, em que a figura superior representa o caso em que o rádio móvel, neste notebook de exemplo 260, está enviando dados de forma sem fio para o ponto de acesso WiFi 261 e para o sistema de distribuição através da Ethernet 265, e em que a figura inferior representa o caso em que os dados do sistema de distribuição são roteados para o ponto de acesso WiFi 261 via Ethernet 265, em seguida, enviados de forma sem fio para o notebook 260.

[00117] Referindo-se novamente à figura superior, em operação, dados são enviados a partir do rádio WiFi no notebook 260 usando o sinal de RF 264 transmitido da antena 262A e recebido pela antena 262B do sistema de estação base ou BSS no ponto de acesso WiFi 261, o qual, por sua vez, envia o pacote para o sistema de distribuição via Ethernet 265. Neste caso, a Sequência 238 contém os bits “Para DS / De DS” mostrados na tabela 263 onde o bit “Para DS” está configurado para o 1 binário e o bit “De DS” é reiniciado para 0 binário. Em tal caso, o Endereço 1 no bloco 235, o endereço

Petição 870170079583, de 19/10/2017, pág. 68/709

61/425

MAC do destino do rádio, contém o endereço do receptor WiFi BSS, o

Endereço 2 no bloco 236, o endereço MAC de origem de rádio, contém ο endereço de rádio transmissor do notebook e o Endereço 3 no bloco 237 contém o endereço MAC de destino de qualquer dispositivo conectado ao sistema de distribuição usando Ethernet 265.

[00118] Referindo-se à figura inferior, onde o fluxo de dados está na direção oposta, os endereços MAC de origem e do destino de rádio são trocados e o endereço da Internet muda de um endereço de destino MAC para um endereço de origem MAC. Neste caso, a Sequência 238 contém os bits “Para DS / De DS” mostrados na tabela 263, onde o bit “Para DS” é reiniciado para 0 binário e o bit “De DS” é definido como 1 binário, pelo que o Endereço 1 no bloco 235, o endereço MAC de destino de rádio, contém o endereço do endereço de rádio de recebimento do notebook, o Endereço 2 no bloco 236, o endereço MAC de origem de rádio, contém o endereço do transmissor do WiFi BSS e o Endereço 3 no bloco 237 contém o endereço MAC de origem de qualquer dispositivo conectado usando Ethernet 265. Em operação, os pacotes de dados são enviados através do sistema de distribuição de um dispositivo conectado à rede e através da Ethernet 265 para o sistema de estação base BSS no ponto de acesso WiFi 261 que, por sua vez, difunde o sinal de RF 264 transmitido da antena 262B para ser recebido pela antena 262A no rádio WiFi do notebook 260.

[00119] A especificação WiFi também provê o uso de rádios Wi-Fi com a finalidade de implementar um sistema de distribuição sem fio ou WDS como mostrado na Figura 12B. Em princípio, um WDS é uma realização sem fio de uma rede com fio, ou seja, uma versão de RF de um cabo de rede. Para implementar um WDS, no entanto, é necessário um endereço adicional, Endereço 4 contido no bloco 239, no roteamento de pacotes. Em termos simplificados, o roteamento de pacotes através de um sistema de distribuição sem fio WiFi requer sequencialmente usar quatro endereços MAC, pelo que

Petição 870170079583, de 19/10/2017, pág. 69/709

62/425 (1) um pacote de entrada de um endereço de origem MAC de rede se conecta via Ethernet a (2) um endereço MAC de origem de rádio transmissor, que por sua vez, conecta-se de modo sem fio a (3) um endereço MAC de destino receptor, que finalmente envia o pacote via Ethernet para (4) um endereço de destino MAC de rede. Para operar um rádio Wi-Fi no modo WDS, o bloco de Sequência do pacote WiFi 238 contém dados mostrados na tabela 263 onde “Para DS” e “De DS” são definidos para um estado de 1 binário.

[00120] A direção dos dados de um pacote é então facilmente determinada pelo uso dos quatro endereços MAC, dois para a rede do sistema de distribuição e dois para o rádio WiFi. Referindo-se ao gráfico mais alto na Figura 12B, um pacote de entrada recebido em Ethernet 269A é recebido pela estação base WiFi WDS A, 268A, difundido como sinal RF 264 da antena 262A de rádio transmissor, recebido pela antena 262B da estação base WiFi WDS B de rádio receptor 262B e encaminhado via Ethernet 269B para o endereço MAC de destino. Para controlar o roteamento, o Endereço 1 no bloco 235 representa o endereço MAC de destino do enlace de rádio, ou seja, o endereço WiFi WDS B, o Endereço 2 no bloco 236 contém o endereço de origem do enlace de rádio, ou seja, o endereço WiFi WDS A, o Endereço 3 no bloco 237 representa o endereço MAC de destino Ethernet encaminhado na Ethernet 269B e o Endereço 4 no bloco 239 contém o endereço de origem Ethernet recebido na Ethernet 269A.

[00121] Para dados que fluem na direção oposta da estação base WiFi WDS B 268B para a estação base WiFi WDS A 268A mostrada no gráfico inferior da Figura 12B, os endereços de origem e de destino são simplesmente trocados, pelo que o Endereço 1 no bloco 235 representa o endereço MAC de destino do enlace de rádio, ou seja, o endereço WiFi WDS A, o Endereço 2 no bloco 236 contém o endereço de origem do enlace de rádio, ou seja, o endereço Wi-Fi WDS B, o Endereço 3 no bloco 237 representa o endereço MAC de destino Ethernet encaminhado na Ethernet

Petição 870170079583, de 19/10/2017, pág. 70/709 / 425

269A e o Endereço 4 no bloco 239 contém o endereço de origem Ethernet recebido na Ethernet 269B.

[00122] Dessa forma, o pacote WiFi espelha o quadro de dados Ethernet que compreende o Endereço 3 como endereço MAC de destino, e o Endereço 4 como endereço MAC de origem, como se o enlace de rádio não estivesse nem presente no roteamento. Como tal, um sistema de distribuição sem fio implementado WiFi se comporta como uma rede com fio no roteamento de pacotes através de uma rede com comutação de pacotes. Além disso, a função dos bits de controle “Para DS / De DS” permite que o mesmo rádio WiFi funcione como um enlace de dados bidirecional, ou seja, um WDS, ou bidirecionalmente como um ponto de acesso de rede.

[00123] Telefonia 4G / Evolução a longo prazo (LTE) - Assim como a telefonia com fio migrou de redes telefônicas com comutação de circuitos para comunicação com comutação de pacotes, substituindo POTS e PSTNs, primeiro por redes digitais proprietárias e baseadas em hardware, como ISDN e, posteriormente, com redes baseadas em Protocolo de Internet executadas em nuvens de computador gerenciadas de modo privado, a comunicação sem fio também evoluiu. Como ilustrado na Figura 13, a evolução da comunicação celular digital começou com o serviço de mensagens simples e de voz ou serviços SMS 290 entregues através de redes com comutação de circuitos denominadas GSM, um acrônimo originalmente para “Groupe Spécial Mobile” e, posteriormente, alterado para “Sistema Global para Comunicações Móveis”. Considerada a segunda geração ou o 2G de telefonia sem fio, o GSM otimizado para comunicação de voz full duplex substituiu as redes analógicas originais ou 1G usando um protocolo de acesso múltiplo por divisão de tempo (TDMA). A próxima melhoria na telefonia, mostrada pelo bloco 291, surgiu para aumentar a capacidade do GSM, oferecendo maior largura de banda e adicionando recursos como mensagens multimídia (MMS). Ainda dependendo da tecnologia de rede com comutação de circuitos, as

Petição 870170079583, de 19/10/2017, pág. 71/709

64/425 redes aprimoradas foram vistas como uma melhoria de meia etapa, conforme refletido pelo nome 2,5G.

[00124] O primeiro passo para a telefonia móvel 3G ocorreu com a introdução do “serviço geral de rádio por pacotes” ou o GPRS, transitando a infraestrutura sem fio e o software do telefone para uma rede de comunicação com comutação de pacotes, intensificado os serviços de voz, SMS e MMS com push to talk ou PTT, acesso à Internet sempre ligado, protocolo de aplicativo sem fio ou WAP, e mais, como mostrado pelo bloco 292. Com base em acesso múltiplo por divisão de código ou CDMA, o GPRS também intensificou a qualidade da chamada, aumentou a capacidade da rede e melhorou o desempenho do sistema. Por exemplo, o envio de mensagens SMS através do GPRS entregava mensagens pelo menos o triplo da taxa de GSM. Em 384kbps, o desempenho do CDMA foi 40 vezes mais rápido do que as soluções GSM anteriores.

[00125] A mudança para o CDMA foi um evento significativo, pois envolveu a substituição e reinstalação da infraestrutura de comunicação móvel do mundo inteiro com novos transceptores e antenas. Uma vez implantado, o WCDMA permitiu um segundo passo, ainda mais significativo na telefonia 3G com a introdução do UMTS, o “sistema universal de telecomunicações móveis”, um padrão desenvolvido pelo Projeto de Parceria de 3a Geração ou 3GPP abrangendo uma abordagem mais global e inclusiva para a definição e implantação de uma rede verdadeiramente universal e protocolo padronizado. Para intensificar sua capacidade e expandir a largura de banda da rede, o UMTS adotou um novo protocolo, acesso múltiplo por divisão de código de banda larga ou tecnologia de acesso de rádio WCDMA, para oferecer maior eficiência espectral e largura de banda para operadoras de redes móveis, sem necessidade de substituição do investimento em hardware 3G. As redes iniciais ofereceram taxas de enlace descendente de pico de 3,6 Mbps.

Petição 870170079583, de 19/10/2017, pág. 72/709 / 425 [00126] Coincidentemente, o desenvolvimento simultâneo do LED branco e conjunto de circuitos de acionamento LED em miniatura eficientes permitiu pela primeira vez o uso de visores a cores em dispositivos móveis e deu origem ao telefone inteligente. O telefone inteligente foi um catalisador crítico para a movimentação comercial de largura de banda da rede, pois os visores a cores de maior qualidade criaram demanda imediata para acesso rápido à Internet, downloads de filmes, fotografia de alta resolução, difusão multimídia e até mesmo transferência contínua de vídeo em tempo real limitada. Para atender a demanda, o acesso a pacotes de alta velocidade (HSPA), também conhecido como 3,5G, foi implantado em redes atualizadas, reforçando as velocidades de upload e enlace descendente embora ainda usando técnicas de modulação WCDMA. O lançamento ocorreu em fases com o acesso a pacotes de download de alta velocidade ou HSDPA lançado primeiro como o 3GPP Release 5 e o acesso a pacotes de upload de alta velocidade ou HSUPA disponibilizados logo depois no 3GPP Release 6. As taxas de dados de pico melhoraram para cerca de 14Mbps no enlace descendente e aproximadamente 5,8Mbps no enlace ascendente, mas variam dramaticamente geograficamente dependendo da infra-estrutura.

[00127] Mesmo antes de o HSUPA poder ser amplamente implantado, as operadoras de celular migraram para o HSPA+ como primeiro definido e padronizado no 3GPP Release 8, também conhecido como “Evolução a longo prazo 3GPP” ou LTE. A tecnologia representa uma rede apenas com comutação de pacotes com base em “acesso múltiplo por divisão de frequência ortogonal” ou OFDMA, com base no mesmo método OFDM empregado em Wi-Fi como discutido anteriormente. Embora o OFDM tenha sido desenvolvido para comunicação ponto a ponto de usuário único, o OFDMA pode ser considerado como sua versão multiusuário porque tem a capacidade de atribuir dinamicamente um subconjunto de suas subportadoras a usuários individuais.

Petição 870170079583, de 19/10/2017, pág. 73/709 / 425 [00128] As implantações iniciais de LTE baseadas em HSPA+ começaram em 21Mbps. Em 2008, o setor de comunicações da União Internacional de Telecomunicações-Rádio ou ITUR especificou um conjunto de requisitos para padrões 4G, denominado especificações internacionais de telecomunicações móveis avançadas ou IMTA, estabelecendo requisitos mínimos de velocidade máxima para o serviço 4G em 100Mbps para comunicação de alta mobilidade, como de trens e carros e IGbps para comunicação de baixa mobilidade, como pedestres e usuários estacionários.

[00129] Uma vez que os primeiros sistemas LTE baseados em HSPA+ não atendiam a especificação de velocidade IMTA, tais primeiros precedentes 4G não foram oficialmente reconhecidos como telefonia 4G apesar do fato de eles utilizarem a modulação OFDMA e as redes inteiramente com comutação de pacotes. Consequentemente, não há consenso quanto a considerar a tecnologia HSPA+ como telefonia com comutação de pacotes de 3G tardia ou 4G inicial. Até mesmo o nome 3.9G foi sugerido. Independentemente dos problemas de nomenclatura, a telefonia 4G mostrada no bloco 293 hoje refere-se à comunicação com comutação de pacotes com base na modulação OFDMA e em várias implementações da mesma. Apesar das variações técnicas e históricas dos protocolos de dados e do uso de redes sem fio não homogêneas, no vernáculo popular os termos 4G, LTE e 4G / LTE são usados de forma ambígua e intercambiável.

[00130] As altas taxas de dados e o desempenho relativamente robusto da telefonia 4G / LTE são em grande parte devido aos seus métodos de modulação e estrutura do quadro de dados. Como mostrado na Figura 14A, a modulação 4G compreende uma largura de banda até 20MHz em tomo de uma frequência portadora central, tipicamente na faixa de 700MHz a 2,6GHz, subdividida em bandas de frequência de subportadora, onde a comunicação de enlace descendente é subdividida em muitas bandas estreitas 296A a 296N necessárias para implementar os canais de subportadora exigidos pelo

Petição 870170079583, de 19/10/2017, pág. 74/709 / 425

OFDMA. Para economizar energia em dispositivos móveis, a comunicação de enlace ascendente é subdividida em menos bandas largas 295A a 295N e emprega uma versão de canal único de tecnologia de acesso múltiplo por divisão de frequência ou SC-FDMA. As várias bandas 295A a 295N são usadas para suportar simultaneamente vários usuários, mas ao contrário do OFDMA, não são empregadas para dividir um fluxo de dados de alta velocidade em muitos. Como resultado, as taxas de dados de upload de SCFDMA são necessariamente mais lentas do que as taxas de dados de download baseadas em OFDMA.

[00131] As frequências portadoras licenciadas, listadas na tabela a seguir, variam de acordo com a região onde os telefones de um país podem não funcionar em outro país, a menos que seja usado um telefone multibanda ou mundial projetado para roaming global.

Região Frequências (MHz) Bandas
América do Norte 700, 750, 800, 850, 1900, 1700/2100 (AWS), 2500, 2600 4, 7, 12, 13, 17, 25,26,41
América do Sul 2500 3, 7, 20
Europa 800, 900, 1800, 2600 3, 7, 20
Ásia 1800, 2600 1,3,5,7, 8, 11, 13,40
Austrália / NZ 1800, 2300 3,40

[00132] As frequências licenciadas acima estão sujeitas a alterações com base nas comissões de comunicação que gerenciam o licenciamento de radiofrequência nas várias regiões.

[00133] Mostrada na Figura 14B, a camada PHY 4G compreende rajadas de dados de RF de 10ms de comprimento para formar o pacote 4G ou quadro 300. Cada quadro 300 é subdividido em 20 intervalos de 0,5ms de duração contendo 7 símbolos OFDM 302. Cada símbolo 304 é separado dos outros por um prefixo cíclico 303 e contém cinquenta blocos de recursos 305 numerados de 0 a 49 com cada bloco 306 compreendendo 84 elementos de recursos 307 contendo 7 símbolos e 12 subportadoras. Essa estrutura de dados suporta uma codificação flexível usada para realizar altas taxas de bits, prover redundância e mitigar erros.

[00134] A Figura 15 ilustra o encapsulamento do conteúdo da Camada

Petição 870170079583, de 19/10/2017, pág. 75/709 / 425 do enlace de dados dentro do quadro de dados 4G 299 para modulação OFDMA usado para downloads de dados 4G. Existe um pacote de dados 4G similar para uploads SC-FDMA, mas não está incluído aqui por causa da sua similaridade com o pacote mostrado. Conforme mostrado, cada pacote de dados da Camada PHY 1 ou “quadro de dados” 299 compreende um quadro de 10ms 300 com vinte intervalos de 0,5ms 301 encapsulando a Camada 2 de enlace de dados. O conteúdo do enlace de dados da Camada 2 de um pacote 4G está aninhado em três profundidades, compreendendo • Subcamada MAC para controle de acesso à mídia • Subcamada RLC para “controle de enlace de rádio” • Subcamada PDCP para “protocolo de convergência de dados de pacotes” [00135] A subcamada MAC da Camada 2 compreende o cabeçalho MAC 303, um quadro único de SDUs MAC 304 e o preenchimento de tempo 305, onde o termo SDU é um acrônimo para unidades de dados de serviço. O cabeçalho MAC 303 inclui os endereços MAC de origem e destino necessários para a conexão de rádio. Cada quadro único de SDUs MAC 304, por sua vez, contém “PDUs RLC” da Camada 2 306, um acrônimo para “unidade de dados de protocolo de controle de enlace de rádio” usado para controlar a operação de rádio. Especificamente, as PDUs RLC 306 contêm o cabeçalho RLC 307 especificando informações sobre operação e protocolos de rádio e encapsulam as informações da “unidade de dados do serviço de controle de enlace de rádio”, isto é, SDUs RLC 308 de quadro único como sua carga útil aninhada. Após a conclusão das SDUs RLC 308 no tempo 309, novos dados de controle de enlace de rádio com o cabeçalho RLC 311 e outro conjunto de SDUs RLC começam após um curto período de atraso 310. O resultado é um fluxo de dados sequencial de SDRs RLC multiquadros 319 onde os dados para blocos K e K+l 313 e 314 são transportados exclusivamente por SDUs RLC de um único quadro 308, e onde o bloco 314

Petição 870170079583, de 19/10/2017, pág. 76/709 / 425 de K+2 é composto pelos dois blocos 308 do quadro atual e 312 do próximo.

[00136] Na subcamada de protocolo de conversão de dados de pacotes da Camada 2, cada bloco SDU contém uma combinação de um cabeçalho PDCP e uma SDU PDCP. Por exemplo, o bloco K 313 compreende o cabeçalho PDCP 312A e SDU PDCP 323, o bloco K+l 314 compreende o cabeçalho PDCP 321B e SDU PDCP 324 e o bloco K+2 315 compreende o cabeçalho PDCP 321C e SDU PDCP 325, formando coletivamente PDUs PDCP 320. O conteúdo das SDUs PDU 323, 324, 325, por sua vez, contém a carga útil 330 do pacote 4G, a saber, blocos de dados 333, 334 e 335 incluindo dados de rede, transporte e camada de aplicativo. Hoje, todo o processamento mencionado acima necessário para montar, transmitir, receber e decodificar a comunicação 4G / LTE é realizado em um único IC de comunicação dedicado ou processador de sinal digital (DSP).

[00137] Usando o protocolo 4G da Camada 2 mencionado acima, o 4G oferece inúmeros aprimoramentos em relação às redes antecessoras e padrões de comunicação, incluindo:

• A capacidade de utilizar tecnologia de múltiplas entradas e múltiplas saídas ou MIMO para maximizar as taxas de dados e garantir alta conectividade QoS;

• O uso de rádios baseados em software para se conectar a várias redes de rádio simultaneamente, de modo a identificar dinamicamente os parâmetros de serviço mais adequados, por exemplo, custo, QoS e capacidade, entre outros, para um determinado aplicativo;

• O uso de estações base que suportam transferências intra e intertecnologia, garantindo continuidade do serviço com interrupção zero ou mínima, sem perda notável na qualidade do serviço; e • A capacidade de acessar serviços e aplicativos em diferentes redes móveis e sem fio simultaneamente.

[00138] Os aplicativos da comunicação 4G / LTE incluem

Petição 870170079583, de 19/10/2017, pág. 77/709 / 425 transferência contínua de vídeo HD e UHD, computação em nuvem, armazenamento baseado em nuvem de alta capacidade e backups online, acesso à web mais rápido, capacidade de enviar e receber grandes arquivos de e-mail e muito mais.

[00139] Redes DOCSIS3 / Cabo e fibra - Até recentemente, a TV a cabo e os sistemas de distribuição de vídeo por fibra com comutação de pacotes atrasavam o resto da indústria de comunicação ao adotar a difusão digital e a tecnologia com comutação de pacotes. Com a rápida adoção do lançamento da terceira geração da “especificação da interface de serviço de dados por cabo” ou DOCSIS3, no entanto, a capacidade da rede de cabo melhorou drasticamente, oferecendo a capacidade única de atender uma grande quantidade de clientes com vários canais de comunicação de largura de banda alta simultaneamente. O DOCSIS3 simultaneamente provê comunicação digital bidirecional de alta velocidade e acesso à Internet, VoIP, além de suportar vários canais de transferência contínua de vídeo de alta definição, incluindo centenas de canais de TV de difusão e premium, TV de unidifusão para pay-per-view e downloads IPTV.

[00140] Um exemplo de uma rede de cabo e fibra baseada em DOCSIS3 que suporta múltiplos usuários independentes é ilustrado na Figura

16. Na distribuição por cabo, a difusão de conteúdo e gerenciamento de comunicação do cliente é direcionada a partir de um dispositivo de central de recepção de cabo central conhecido como “sistema de terminação de modem a cabo” ou CMTS 350. Vários dispositivos alimentam o conteúdo para o CMTS 350, incluindo uma central de recepção de vídeo 351 que entrega TV de rede, sistema IPTV 352 entregando um unidifusão pay-per-view, além de downloads de IPTV e filmes, sistema VoIP 353 para telefonia e Internet 20 para conectividade na Web e na nuvem. As informações agregadas que compreendem o protocolo digital de alta velocidade (HSD), voz sobre Internet (VoIP), difusão e IPTV são enviadas aos clientes como múltiplos

Petição 870170079583, de 19/10/2017, pág. 78/709 / 425 canais 354 transportados em um único cabo coaxial ou fibra óptica.

[00141] Os pacotes de dados distribuídos a partir do CMTS 350 são então conectados a uma variedade de assinantes e os dispositivos, incluindo um modem a cabo incorporado no conversor digital CM / STB 357, são conectados à TV de alta definição 39 ou um modem a cabo CM 358 é usado para fornecer comunicação por voz para o telefone 37 e conectividade digital de alta velocidade para desktop 38 e transmissor WiFi doméstico 26. De maneira semelhante às redes de barramento e concentrador, o conteúdo agregado transportado nos canais 354 são todos carregados no mesmo cabo ou fibra e recebidos por todos os dispositivos conectados ao CMTS.

[00142] Com o DOCSIS3, o sistema de terminação do modelo de cabo CMTS350 tomou-se uma rede comutada onde todo o conteúdo não é necessariamente distribuído a cada assinante. Esse recurso conhecido como “agrupamento” permite que o CMTS 350 controle quais canais podem ser recebidos por vários dispositivos conectados do assinante. Conforme mostrado, os canais agrupados 355 transportam conteúdo para TV 39 e IPTV, enquanto os canais agrupados 356 transportam conteúdo e voz digital de alta velocidade. O modem a cabo combinado e o conversor digital CM / STB 359 podem acessar os agrupamentos 355 e 356 úteis na TV 39 é uma TV inteligente, enquanto o modelo de cabo CM 360 usado para o desktop 36, o telefone 37 e o WiFi doméstico 26 só estão conectados aos canais agrupados HSD / VoIP 356, uma vez que não requer conectividade de vídeo.

[00143] Como os exemplos anteriores de Ethernet, WiFi e 4G / LTE, a distribuição de conteúdo usando DOCSIS3 por cabo e fibra é bidirecional capaz de operação full duplex, tudo implementado usando a tecnologia com comutação de pacotes. Ao empregar luz em vez de sinais elétricos ou de micro-ondas para transportar informações na sua camada PHY, a fibra óptica, em particular, oferece uma largura de banda superior em comparação com outras formas de comunicação. A pilha de comunicação OSI para DOCSIS3

Petição 870170079583, de 19/10/2017, pág. 79/709 / 425 em um sistema de distribuição de cabo é ilustrada na Figura 17 que ilustra a conectividade PHY da Camada 1, o enlace de dados da Camada 2 e a rede da Camada 3 sobreposta para o dispositivo de terminação do modem a cabo CMTS 101, bem como exemplos de dispositivos conectados por cabo, por exemplo, modem a cabo CM 103 ou conversor digital STB 102. Especificamente, o dispositivo de terminação de modem a cabo CMTS 101 contém uma interface de rede PHY da Camada 1 361 conectada a servidores em nuvem 22 e Internet 20, ou altemativamente a uma central de recepção de vídeo 351, sistema IPTV 352 ou sistema VoIP 352 mostrado na figura anterior. A combinação da interface de rede 361 e da camada de enlace de dados 366 compreende a pilha de comunicação de interface de dispositivo de CMTS 101.

[00144] Na Camada 2 de enlace de dados, os dados são passados da pilha de comunicação da interface de rede para a pilha de comunicação da interface de rede de cabo através da função de encaminhamento 370, especificamente no controle de nível de enlace LLC 369. O controle de nível de enlace LLC 369 compreende um protocolo independente de hardware definido de acordo com a especificação 802.2 do IEEE. Os dados do pacote são então modificados pela segurança do enlace 368 para fornecer uma segurança de pacotes limitada, principalmente para impedir a visualização não autorizada de conteúdo, como difusões de unidifusão pay-per-view. Os pacotes de dados são então formatados de acordo com DOCSIS3 para incluir endereços MAC de cabo 367 de forma similar ao exemplo mostrado pela ponte de rádio WiFi da Figura 10. A interface de cabo PHY da Camada 1 362 envia então os quadros de dados através da rede de distribuição 102 que compreende o cabo coaxial 104 ou a fibra óptica 91 para a interface de cabo PHY da Camada 1 correspondente 363 dentro do modem a cabo CM 103 ou do conversor digital STB 102. A interface de cabo 363 representa a camada PHY da pilha de comunicação da interface de rede de cabo do modem a cabo

Petição 870170079583, de 19/10/2017, pág. 80/709 / 425

CM 103 ou conversor digital STB 102.

[00145] Ao receber um pacote de dados, a interface de cabo MAC 371 então interpreta os endereços MAC do cabo, passando sua carga útil para a segurança do enlace 372 para a desencriptação e, finalmente, para o controle de camada de enlace independente de hardware LLC 373 para interpretação. Os dados de entrada para a pilha de comunicação de rede de cabo CM ou STB são então passados através de ligação em ponte transparente 374 para a pilha de comunicação de interface de dispositivo CM ou STB, especificamente para o controle de camada de enlace independente do dispositivo LLC 375 de acordo com a especificação para IEEE 802.2. O pacote é passado para o bloco MAC HSD e IPTV 376 ou para o bloco MAC WiFi 802.11 para atualizar os endereços MAC do pacote. No caso da comunicação WiFi, o pacote de dados é passado do bloco 802.11 MAC 377 para a interface de rádio WiFi da Camada PHY 1 365 para transmissão no rádio WiFi 26. No caso de conexões com fio, o pacote de dados é então passado do bloco MAC HSD e IPTV 376 para o bloco de interface Ethernet ou HDMI 364 para conexão à TV 39 ou ao desktop 36.

[00146] Semelhante ao OFDM usado em WiFi ou OFDMA usado na comunicação 4G / LTE, a comunicação DOCSIS3 emprega várias frequências ortogonais, ou seja, não sobrepostas, seja no espectro de micro-ondas ou óptico de radiação eletromagnética, em que codifica e transmite suas informações. Ao invés de atribuir conteúdo especificamente dedicado a cada canal, o DOCSIS3 suporta a “codificação trellis”, a capacidade de alocar e realocar dinamicamente conteúdo, incluindo vídeo, dados de alta velocidade e voz em todos os canais de frequência disponíveis. Como mostrado em vários exemplos de codificação da Figura 18 utilizando 1 a 6 canais, pacotes de dados que representam um determinado tipo de conteúdo podem ser atribuídos a um único canal ou alocados em múltiplos canais. Os dados são arranjados tanto por canais 385 quanto por intervalos de tempo 386. No

Petição 870170079583, de 19/10/2017, pág. 81/709 / 425 exemplo rotulado como m = 1 (QPSK), os intervalos de tempo to a tg são codificados em um único canal para fornecer conteúdo de uma única fonte n°

1. No exemplo rotulado como m = 2 (8-QAM), dois canais codificados usando 8-QAM são utilizados para fornecer conteúdo de duas fontes. O método de modulação, modulação de amplitude em quadratura ou QAM, é o mesmo empregado pelo WiFi discutido anteriormente e não será repetido aqui. A fonte n° 1 fornece dados dos tempos to a t4 depois da fonte n° 2 de t4 a tg. No exemplo rotulado como m = 3 (16-QAM), três canais codificados usando 16-QAM são utilizados para fornecer dados de três fontes. Ao mesmo tempo que a fonte # 2 fornecendo conteúdo 390 no canal m = 1 do tempo to a tg, a fonte n° 1 fornece conteúdo 391a dos tempos to a t4 nos canais m =2, enquanto a fonte n° 2 fornece conteúdo 391b de t4 a tg.

[00147] No exemplo rotulado como m = 5 (64QAM), seis canais codificados usando 64QAM são utilizados para fornecer conteúdos de cinco fontes. Por exemplo, nos dois subcanais de m = 5 rotulados como m = 2, o conteúdo da fonte n° 3 é fornecido dos tempos to a t4 e o conteúdo da fonte n° 3 é fornecido dos tempos t4 a tg. Enquanto isso nos subcanais rotulados como m = 4, o conteúdo da fonte n° 1 é fornecido em quatro canais para os tempos to a t2 e então em apenas três canais do tempo t2 ao tempo t3. O conteúdo da fonte n° 2 começa no tempo t = t2 em apenas um dos quatro canais e então aumenta para m = 4 no tempo t3. No exemplo rotulado como m = 6 (128QAM), o conteúdo 389 da fonte n° 3 é fornecido em dois canais de seis do tempo to a t4 enquanto os outros quatro canais são usados para fornecer conteúdo 388a da fonte n° 1 do tempo to a t2 e usados para fornecer conteúdo 388b da fonte n° 2 do tempo t2 a t4. Nos exemplos mostrados, a codificação trellis provê ao operador de cabo flexibilidade máxima no gerenciamento de largura de banda e alocação de conteúdo.

[00148] No pacote de dados correspondente usado no DOCSIS3, mostrado na Figura 19, a camada PHY 1 compreende o quadro de dispositivo

Petição 870170079583, de 19/10/2017, pág. 82/709 / 425 de mídia física 390 de comprimento e duração variáveis, contendo dados MAC da Camada 2 de enlace de dados compreendendo o preâmbulo 391, carga útil de comprimento variável ou senhas 392 e tempo de proteção 393. O preâmbulo 391 contém um preâmbulo a montante ou um preâmbulo a jusante, dependendo da direção da comunicação. No caso de um preâmbulo a montante, o preâmbulo 391 contém o cabeçalho PMD do dispositivo de mídia físico 398, o cabeçalho MAC 399 e a PDU de dados 400. No caso do preâmbulo a jusante, o preâmbulo 391 contém cabeçalho MPEG 401, cabeçalho MAC 399 e PDU de dados 400. O conteúdo da carga útil de comprimento variável 392 pode compreender uma senha curta 394 ou uma senha longa 397.

[00149] A senha curta 394 contém a carga útil 395A compreendendo os dados A e a correção de erro 396A contendo FEC A. No caso da senha longa 397, a carga útil é dividida em múltiplos blocos de carga útil 395A, 395B e 395C que carregam os dados A, os dados B e os dados C, respectivamente, com cada carga útil contendo seus próprios blocos de verificação de erros 396A, 396B e 396C, incluindo os dados correspondentes FEC A, FEC B e FEC C. Após a verificação de erros, os dados fornecidos do DOCSIS3 incluem os blocos de dados 395A, 395B e 395C no caso de uma senha longa e apenas um bloco de dados 295A no caso de uma senha curta.

[00150] Dessa maneira DOCSIS3 entrega de forma flexível dados através de uma rede a cabo usando o protocolo de dados com comutação de pacotes.

Camada OSI 3 - Camada de rede (Internet) [00151] Conforme descrito anteriormente, as cargas úteis de dados podem ser entregues através de uma variedade de configurações de hardware da Camada PHY 1 e protocolos de interface da Camada 2 de enlace de dados. Enquanto as Camadas 1 e 2 são específicas para dispositivos, a Camada 3, a camada de rede, provê uma forma de comunicação independente do

Petição 870170079583, de 19/10/2017, pág. 83/709 / 425 dispositivo, ubíqua e agnóstica para a rede PHY usada para transportar o sinal e os dados. A comunicação da Camada 3 é ilustrada na Figura 20 onde três dispositivos conectados em rede 420A, 420B e 420C compreendendo computação e funcionalidade de armazenamento de dados 423A, 423B ou 423C compartilham a conectividade da Internet 421. Como tal, a pilha de comunicação 422A, 422B e 422C de cada dispositivo conecta os dispositivos uns aos outros usando a rede 421 da Camada 3, que, exceto nos sistemas proprietários, geralmente representa a Internet.

[00152] Para garantir a interoperabilidade em redes com comutação de pacotes operando em várias plataformas, redes e sistemas de hardware, o modelo OSI prescreve um protocolo bem definido organizado em sete camadas, conforme mostrado na Figura 21. Como mencionado anteriormente, como a babushka ou a boneca russa onde cada boneca de madeira contém outra boneca menor dentro dela, os pacotes de dados ou “datagramas” para redes com comutação de pacotes são arranjados de forma semelhante, onde a Camada 1, o pacote de camada PHY ou “quadro” contém todas as outras camadas dentro da sua carga útil, incluindo os dados da camada de enlace da Camada 2, que por sua vez encapsulam uma carga útil compreendendo Camadas 3 a 7, incluindo pacotes de rede da Camada 4, e assim por diante.

[00153] Em maior detalhe, o quadro 430 da Camada 1 contém todos os dados da camada física ou PHY que compreende sinais elétricos, de rádio ou ópticos. Incorporado dentro dos dados da camada PHY 430, está o controle de acesso à mídia ou a informação da camada de enlace de dados na Camada 2, que inclui o cabeçalho MAC 431, a carga útil MAC 432 e o rodapé MAC 433. A carga útil MAC 432 encapsula a camada de rede (Internet) ou o pacote IP na Camada 3, que inclui o cabeçalho de protocolo de Internet ou o IP 434 e a carga útil IP 435. A carga útil IP 435 encapsula o datagrama da camada de transporte ou os dados da Camada 4 compreendendo o cabeçalho de

Petição 870170079583, de 19/10/2017, pág. 84/709 / 425 transporte 436 e a carga útil de transporte 437. A carga útil de transporte 437 encapsula todos os dados de aplicativo 438 para as camadas de aplicativo 5 a consistentes com o modelo OSI mostrado anteriormente na Figura 4.

[00154] Em operação, após receber um pacote de dados IP mostrado na Figura 21, o dispositivo conectado à rede e o firmware interpretam os dados da Camada 1 e Camada 2 e ignoram qualquer informação contida na carga útil MAC 432. O software de rede, por sua vez, interpreta os endereços IP, roteamento e controle contidos nos dados da Camada IP 3, mas ignora o conteúdo da carga útil IP 435. O software da Camada 4 de transporte interpreta as informações contidas na carga útil IP 435 como um “datagrama” de camada de transporte que compreende o cabeçalho de transporte 436 e a carga útil de transporte 437, fornecendo qualquer handshaking necessário entre as partes comunicantes para assegurar a entrega confiável do pacote IP. A carga útil de transporte 437 encapsula informações que compreendem dados de aplicativo 438 para os aplicativos de camada superior restantes, incluindo pacotes contendo dados para Camada de sessão 5, Camada de apresentação 6 e Camada de aplicativo 7. Em resumo, a Camada 1 e a Camada 2 estão preocupadas com o estabelecimento de conexões físicas e regras para dispositivos conectados em rede, as Camadas 3 e 4 estão preocupadas com a identificação do destinatário de um pacote IP e confirmando a sua entrega e a Camada 5 até a Camada 8 contêm a informação real sendo entregue como uma carga útil de dados. Por conseguinte, o hardware e o firmware da Camada 1 e Camada 2 não têm interesse no conteúdo dos dados que estão sendo enviados ou em seu aplicativo, o software de rede da Camada 3 e Camada 4 não se preocupa com quais dispositivos físicos estão enviando os pacotes nem o que é o conteúdo dos pacotes e as Camadas 5 a 7 não se importam com como foi o envio do pacote ou a confirmação da recepção. Desta maneira, o roteamento de um datagrama de conteúdo desconhecido pode ser gerenciado em redes com comutação de

Petição 870170079583, de 19/10/2017, pág. 85/709 / 425 pacotes sem qualquer preocupação com o hardware usado no envio do pacote ou no uso pretendido dos dados do pacote.

[00155] Para manter a interoperabilidade, os pacotes enviados através de redes usam um formato padronizado conhecido como Protocolo de Internet ou IP, mesmo nos casos em que a rede real não está diretamente conectada à Internet. A conectividade da Camada 3 pode compreender qualquer coleção de dispositivos conectados a uma rede comum com comutação de pacotes usando pacotes IP, incluindo comunicação sobre (1) servidores hospedados ou privados conectados diretamente à Internet, (2) redes fechadas privadas ou “intranets” não conectadas à Internet, ou (3) redes fechadas conectadas à Internet através de “tradutores de endereço de rede” ou NATs descritos mais adiante neste pedido. No primeiro caso, qualquer endereço IP usado na Internet deve ser registrado e licenciado para um cliente como um endereço de Internet exclusivo e válido. Nos dois últimos casos, o endereço IP tem significado apenas na rede isolada, onde o uso deles está destinado e não está registrado como endereço da Internet. As tentativas de usar endereços IP não registrados na Internet resultarão em erros de conexão.

[00156] Como mostrado na Figura 22, cada pacote IP contém dois elementos, um cabeçalho IP 434 e uma carga útil IP 435. O cabeçalho IP 434 geralmente compreende uma das duas versões bem estabelecidas - uma para “protocolo de Internet versão quatro” ou IPv4 e outra para “protocolo de Internet versão seis” ou IPv6. Os primeiros 4 bits do cabeçalho IP 434 contido com o preâmbulo 440 ou 444 do cabeçalho fornecem um código binário para a versão Internet do pacote em que 0100 mostrado como campo de dados 447 representa a versão 4 e 0110 mostrado pelo campo de dados 448 representa a versão 6. No caso de o IPv4 ser selecionado, o preâmbulo 440 compreende um campo de 12B de comprimento que inclui os bits de versão 447, seguido do endereço de origem longo 4B 441, do endereço de destino longo 4B 442 e do campo de opções longo 8B 443. No caso de o IPv6 ser selecionado, o

Petição 870170079583, de 19/10/2017, pág. 86/709 / 425 preâmbulo 444 compreende um campo de 8B de comprimento que inclui os bits de versão 448, seguido pelo endereço de origem longo 16B 445 e pelo endereço de destino longo 16B 448. Ao contrário do IPv4, a versão 6 não tem campo de opção.

[00157] Importantemente, o preâmbulo IPv4 440 e o preâmbulo 444 do IPv6 diferem em comprimento, conteúdo e formato e devem ser considerados separadamente. Além disso, o campo de endereço IP do IPv6 é de 16B de comprimento, com a habilidade de especificar de forma exclusiva um número quase incontável de endereços IP, isto é, 2128. Em comparação, o IPv4 tem apenas 4B de comprimento e pode especificar apenas 232 endereços. Devido ao número limitado de combinações no IPv4, outras informações são necessárias para identificar e separar redes de clientes, conforme especificado no preâmbulo 440. O IPv6 não requer a necessidade de fornecer tal distinção. A maioria das redes modernas e roteadores de IP hoje são capazes de suportar IPv4 e IPv6.

[00158] Protocolo de Internet IPv4 - Analisando mais detalhes na construção de pacotes de dados do datagrama IPv4 450, a Figura 23 ilustra uma representação gráfica bidimensional de tempo arranjado sequencialmente da esquerda para a direita por colunas e de cima para baixo por linhas, especificamente onde para cada linha, o tempo é ilustrado por bytes ou octetos 0 a 3 (ou, altemativamente, representados por bits de 0 a 31) e, de cima para baixo, cada linha é rotulada com um octeto de deslocamento onde a linha superior rotulada “0” é seguida pela linha rotulada “4”, depois “8”, depois “12” etc. Para ler corretamente os dados sequenciais do datagrama 450, o pacote começa na linha de octeto de deslocamento rotulada “0”, da esquerda para a direita, os primeiros dados enviados ou recebidos compreendendo o preâmbulo 451 contém o campo “versão” mencionado acima, seguido pelos campos “IHL, DSCP, ECN” e “comprimento total”. Seguindo imediatamente a partir daí, os dados do próximo deslocamento de

Petição 870170079583, de 19/10/2017, pág. 87/709

80/425 linha rotulados como linha de octeto de deslocamento “4” são lidos compreendendo os campos rotulados como “identificação, sinalizadores, deslocamento de fragmentos”. Finalmente, a última linha rotulada “8” no preâmbulo 450 contém os campos “tempo de vida, protocolo e soma de verificação”. Após o preâmbulo, o datagrama inclui um endereço IP de origem de 4B, um endereço IP de destino de 4B e na linha rotulada como octeto de deslocamento 20, um campo “opções”. O último campo no datagrama 450 compreende o pacote de carga útil de comprimento variável 435. Embora o exemplo mostre um comprimento de 4B, o comprimento da carga útil é variável.

[00159] A Tabela 451 provê um breve resumo das informações contidas nos campos do datagrama IPv4. Conforme mencionado anteriormente, o campo de versão de quatro bits de comprimento (4b) define o protocolo de Internet para o 0100 binário para a versão 4. O campo IHL especifica o número de palavras de 32b no cabeçalho IP 434, o comprimento do pacote IPv4 450, excluindo a carga útil 435, variando em valor de 20B a 62B. O DSCP compreende um campo de 6b que define o serviço diferenciado para controlar a qualidade de serviço de comunicação ou QoS. ECN representa um campo 4b para avisos de congestionamento explícito ou ECNs descrevendo a condição de carregamento da rede. O comprimento total descreve o comprimento total do datagrama de pacotes IPv4, incluindo o cabeçalho IP 434 e a carga útil IP 435, variando de um comprimento mínimo de 20B a um comprimento máximo de 65.535B. O comprimento máximo do pacote pode ser limitado a datagramas menores pelo protocolo de enlace de dados da Camada 2 para um meio PHY específico. O campo de “identificação” de 2B identifica de forma exclusiva um grupo de fragmentos de um único datagrama IP para permitir a remontagem de um pacote com segmentos recebidos fora de ordem, usados em conjunto com os “sinalizadores” de 3b e “sinalizadores deslocados” de 13b usados para

Petição 870170079583, de 19/10/2017, pág. 88/709

81/425 gerenciar a fragmentação de pacote. O campo TTL ou “tempo de vida” de 1B limita o tempo de vida dos datagramas na rede para evitar imortais, pacotes que não podem ser entregues ao destino pretendido, mas nunca expiram. O campo TTL especifica o número máximo de roteadores que qualquer pacote específico pode percorrer antes de ser descartado como não entregue. Cada vez que o pacote atravessa um roteador, a contagem de TTL é diminuída em uma contagem.

[00160] O campo 460, o campo “protocolo” de 1B, descreve o tipo de dados contidos na carga útil do pacote IPv4 435. Em alguns casos, esses dados proveem instruções específicas, por exemplo, para verificar a condição da rede ou o atraso de propagação, para serem executadas como um pacote da Camada 3, enquanto que em outras instâncias a carga útil pode ser identificada como contendo protocolo de transporte da Camada 4 usado para gerenciar entrega e confirmação de pacotes, incluindo protocolos de transporte padrão ICMP, IGMP, TCP, UDP ou outros formatos proprietários. Em essência, o campo de protocolo é uma descrição de datagrama da Camada 4 em um pacote IPv4 da Camada 3, ligando intimamente a camada OSI 3 à Camada 4 no Protocolo de Internet. O campo de soma de verificação do cabeçalho é usado para garantir que os dados do cabeçalho estejam corretos para que o pacote não seja entregue ao destino errado. Ele compreende uma soma de verificação de 16 bits usada para detectar erros e queda de dados. Coletivamente, os campos mencionados acima formam o preâmbulo do pacote IPv4 440.

[00161] Os dois campos a seguir, o endereço IP de origem e o endereço IP de destino, tem 4B de comprimento e podem ser representados em vários formatos. O formato tradicional, denominado formato decimal pontilhado, compreende quatro números decimais separados por pontos decimais, por exemplo, 192.0.2.235 ou em forma hexadecimal pontilhada como 0xC0.0x00.0x02.0xEB onde cada byte, isto é, octeto, é precedido de Ox e

Petição 870170079583, de 19/10/2017, pág. 89/709 / 425 individualmente convertido em forma hexadecimal. O endereço de 32 bits também pode ser convertido em seu equivalente decimal 3221226219 ou em um único número hexadecimal 0xC00002EB como a concatenação dos octetos a partir do formato hexadecimal pontilhado. Detalhes adicionais dos formatos de endereço IPv4 podem ser obtidos consultando http://en.wikipedia.org/wiki/IPv4 ou outras referências similares. O campo “opção” de 4B, ativo apenas quando o campo IHL está definido para 6 a 15, raramente é usado por causa de riscos de segurança que ele cria.

[00162] Protocolo de Internet IPv6 - Por causa do esgotamento do endereço IP, um novo conjunto de endereços IP foi instigado, chamado de protocolo de Internet versão seis. A construção de pacotes de dados do datagrama IPv6 453, conforme mostrado na Figura 24, como sua versão quatro antecessora, compreende dois elementos, um cabeçalho IP 434 e uma carga útil IP 435, exceto que o cabeçalho é significativamente mais simples e os endereços IP são significativamente mais longos. Especificamente, o preâmbulo 444 de IPv6 compreende apenas 8 bytes de comprimento, enquanto os endereços IPv6 445 e 446 têm 16 bytes de comprimento.

[00163] A Tabela 454 provê um breve resumo das informações contidas nos campos do datagrama IPv6. Como mencionado anteriormente, o campo de versão de quatro bits (4b) define o protocolo de Internet para o 0110 binário para a versão 6. O campo de “classe de tráfego” de 1B inclui um subcampo de 6b que especifica serviços diferenciados e 2b para gerenciamento de congestionamento ECN semelhante à versão 4. O campo de “rótulo de fluxo” de 20b minimiza a fragmentação mantendo o trajeto de dados para evitar a reordenação em aplicativos em tempo real. O “comprimento da carga útil” de 2B especifica o comprimento da carga útil 435 em bytes (octetos). O campo 460, o “próximo cabeçalho” de 1B, especifica o tipo de conteúdo na carga útil 435. Como o campo “protocolo” no IPv4, o campo “próximo cabeçalho” no IPv6 provê essencialmente

Petição 870170079583, de 19/10/2017, pág. 90/709 / 425 informações sobre o conteúdo da carga útil IP 435. Em alguns casos, este conteúdo compreende uma ação, por exemplo, para verificar os atrasos na rede e compreende os dados da Camada 3. Em outros casos, o conteúdo compreende o protocolo de transporte da Camada 4 usado para gerenciar a entrega e a confirmação de pacotes, incluindo protocolos de transporte padrão ICMP, IGMP, TCP, UDP ou outros formatos proprietários. Como “tempo de vida” no IPv4, o “limite de salto” 1B de em um pacote IPv6 especifica o número máximo de roteadores que um pacote pode percorrer antes de ser descartado como um imortal. Cada vez que o pacote atravessa um roteador, a contagem é diminuída em um.

[00164] Os dois campos a seguir, cada um com 16B de comprimento, especificam o endereço IP de origem 445 e o endereço IP de destino 446. Como mencionado anteriormente, o propósito dos endereços IP mais longos é superar o esgotamento de IP ocorrido no IPv4. Este problema é ilustrado na Figura 25 para endereços IP 469 contrastando três classes de endereços IPv4 de 4B para o endereço IPv6 sem classe de 16B de comprimento 458. Como o endereço IPv6 é capaz de 2128 ou 3,403xl038 combinações únicas, não há necessidade de quebrar os endereços em classes alocadas especificamente para redes e clientes. Em contraste, devido às combinações limitadas disponíveis no IPv4, os endereços foram subdivididos em “classes”, onde hoje a Classe A até a Classe C ainda são de uso comum.

[00165] Conforme mostrado, a Classe A compreende um campo de rede de 1B de comprimento 456A e um campo de cliente de 3B de comprimento 457A com endereços IPv4 variando de 0.0.0.0 a 127.255.255.255 para suportar 128 redes e 16.777.216 (aproximadamente 224) clientes. Os usuários de classe A podem incluir qualquer provedor de grande porte de IP, empresa de telecomunicações ou provedor de vídeo. Os endereços de Classe B compreendem um campo de rede de 2B de comprimento rotulado 456B e um campo de cliente de 2B de comprimento

Petição 870170079583, de 19/10/2017, pág. 91/709 / 425 rotulado 457B com endereços IPv4 variando de 128.0.0.0 a 191.255.255.255 para suportar 16.384 (aproximadamente 214) redes e 65.536 (aproximadamente 216) clientes. Os usuários de Classe B podem incluir empresas com grande número de sites. Os endereços de Classe C compreendem um campo de rede de 3B de comprimento rotulado 456C e um campo de cliente de 2B de comprimento rotulado 457C com endereços IPv4 variando de 192.0.0.0 a 223.255.255.255 para suportar 2.097.152 (aproximadamente 221) redes e 256 (isto é, 28) clientes. Os usuários de classe C geralmente compreendem entidades de pequenas empresas.

[00166] Durante o roteamento de um pacote através da rede ou da Internet, o processamento de cada campo no cabeçalho IP 434 ocorre em uma base de necessidade de conhecimento. Por exemplo, cada roteador precisa conhecer a versão de IP, o comprimento do pacote e a soma de verificação do pacote para verificar erros. Da mesma forma, o tempo de salto ou o tempo de vida também são processados pelos roteadores intermediários para abortar imortais. Os roteadores intermediários, no entanto, não precisam interpretar todos os campos do cabeçalho IP 434. Especificamente, o campo 460, o campo “protocolo” no IPv4 ou “próximo cabeçalho” no IPv6 tem significado apenas para os endereços IP de envio e destino. Os roteadores intermediários não precisam saber o conteúdo da carga útil IP 435 e, portanto, não processam a informação. Quando um pacote finalmente alcança seu endereço IP de destino, somente então o dispositivo ou o servidor destinatário pretendido lerá o valor do campo 460 no cabeçalho IP 434 para interpretar que tipo de dados é encapsulado na carga útil IP 435. Como mostrado na Figura 26, qualquer valor válido no campo 460 pode resultar em uma ação relacionada a uma carga útil da camada de rede da Camada 3 ou, altemativamente, a uma carga útil da camada de transporte da Camada 4. No caso de o código contido no campo 460 não ser reconhecido pelo endereço IP de destino, o servidor ou dispositivo destinatário descartará o pacote como imperfeito.

Petição 870170079583, de 19/10/2017, pág. 92/709 / 425 [00167] Nos casos em que o campo 460 contém as cargas úteis da camada de rede da Camada 3 como instruções executáveis, a carga útil IP 435 instrui à rede a tarefa a ser executada. Por exemplo, quando o campo 460 contém o equivalente dos números decimais 1 ou 2 mostrados como protocolo ou os próximos campos de cabeçalho 461 ou 462, a carga útil IP 435 conterá instruções correspondentes para os utilitários de rede ICMP ou IGMP, respectivamente. Caso o campo 460 contenha o equivalente ao número decimal 6 mostrado como protocolo ou próximo campo de cabeçalho 463, a carga útil IP 435 conterá dados 475 para uma carga útil usando o protocolo de transporte TCP da Camada 4. Da mesma forma, caso o campo 460 contenha o equivalente ao número decimal 6 mostrado como protocolo ou ao próximo campo de cabeçalho 464, a carga útil IP 435 conterá dados 476 para uma carga útil usando o protocolo de transporte UDP da Camada 4. As cargas úteis da Camada 4 serão discutidas na seção subsequente desta descrição. Outros códigos menos comuns e proprietários também existem. Se o campo 460 contiver um protocolo ou próximo código de cabeçalho que é um código registrado padronizado, então as redes públicas, pelo menos teoricamente, devem responder adequadamente ao código e interpretar corretamente a carga útil. Nos casos em que o código é proprietário, apenas as redes proprietárias e o roteador personalizado podem interpretar o código e tomar as medidas adequadas em conformidade.

[00168] No caso em que o campo 460 contém o equivalente ao número decimal 1 mostrado como protocolo ou próximo campo de cabeçalho, a carga IP útil 435 carrega um utilitário de rede específico 435 chamado ICMP ou “protocolo de mensagem de controle da Internet” usado por dispositivos de rede, como servidores, roteadores, pontos de acesso, etc. para acessar atrasos de propagação de rede, para indicar que um serviço solicitado não está disponível ou identificar que um roteador ou hospedeiro não pode ser alcançado. O protocolo atribuído ou o próximo identificador de cabeçalho, o

Petição 870170079583, de 19/10/2017, pág. 93/709 / 425 número decimal 1, é diferente de UDP e TCP, na medida em que o ICMP geralmente não é usado para trocar informações entre sistemas ou aplicativos de usuários finais, exceto no caso de realizar determinados diagnósticos de rede. Conforme mostrado na Figura 26 para o pacote IP correspondente aos dados 461, o pacote ICMP compreende um cabeçalho de quatro partes com o tipo 465, o código 466, a soma de verificação 467 e o restante do cabeçalho ICMP 468, seguido dos dados ICMP 469.

[00169] Os campos “tipo” 465 e “código” 466 juntos facilitam a entrega de várias mensagens de controle. Elaborando, mensagens de controle tipo = 3 significam que o destino IP não é acessível, onde o código descreve por que não era acessível, por exemplo, para código = 0, a rede de destino não era acessível, código = 1 o hospedeiro de destino não era acessível, código 3 a porta de destino não era acessível e, para código = 9, a rede é proibida administrativamente, etc. Quando tipo = 5, o pacote pode ser redirecionado pelo qual código = 0 significa redirecionar o datagrama para a rede, código = 1 significa redirecionar o datagrama para o hospedeiro, etc. “Solicitação de eco” tipo = 8 seguido de “resposta de eco” tipo = 0 em conjunto executam a função “ping” importante e bem conhecida, análogo a um sonar submarino que toca para verificar o atraso de propagação da rede. Outras funções importantes incluem “traceroute” para o código = 30, código de “solicitação de nome de domínio” = 37, código de resposta de nome de domínio = 38, código de solicitação de marca temporal = 13 e código de resposta de marca temporal = 14. Para código de problemas de entrega = 11 significa que o “tempo de entrega excedeu”, código = 12 significa “cabeçalho IP incorreto”, e código = 4 ou “extinção da fonte” é usado em casos de controle de congestionamento. O conteúdo dos dados ICMP 469 pode conter mensagens ou pode ser usado simplesmente para carregar a rede com pacotes maiores para investigar se os problemas especificamente podem estar afetando grande entrega de carga útil.

Petição 870170079583, de 19/10/2017, pág. 94/709 / 425 [00170] Também mostrada na Figura 26, quando o campo 460 contém o equivalente ao número decimal 2 mostrado como protocolo ou próximo campo de cabeçalho, a carga IP útil 435 carrega um utilitário de rede específico 435 chamado IGMP, um acrônimo para o “protocolo de gerenciamento de grupo na Internet”. Ao contrário do ICMP usado nos diagnósticos de rede das redes IPv4 e IPv6, o IGMP é usado apenas na multidifusão IPv4 para aplicativos de rede de um para muitos, como jogos ou transferência contínua em linha. O termo IGMPv4 não é usado no entanto, porque o patrimônio do IGMP evoluiu a partir de encarnações anteriores da Internet. Em vez disso, IGMPv2 e IGMPv3 são os únicos protocolos suportados hoje. Também no IPv6, a multidifusão é transmitida pelo ICMPv6 usando a descoberta de ouvintes de multidifusão e não diretamente através do encapsulamento IGMP nulo. O pacote IGMP contém um cabeçalho de quatro campos que inclui “tipo” 470, “MRT” 471, “soma de verificação” 472 e “endereço de grupo IGMP” 473, seguido de dados IGMP 474.

[00171] No IGMP, o campo do tipo 470 descreve a natureza do pacote como comandos de “consulta de associação, relatório de associação ou deixar grupo”, “MRT” 471 ou o tempo máximo de resposta define o limite de tempo máximo para receber um relatório até 100ms e soma de verificação 472, uma soma complementar de 16 bits de todo o pacote IGMP. Para a difusão, o IGMPv2 envia o pacote IGMP e seus dados IGMP de carga útil 474 para o endereço de grupo IGMP 473 de acordo com a configuração da mensagem “tipo” 470, onde uma “consulta geral” envia uma multidifusão para todos os hospedeiros, ou seja, 224.0.0.1 e “deixar grupo” do mesmo modo envia uma mensagem a todos os roteadores, ou seja, 224.0.0.2. No IGMPv2 “consulta específica do grupo” e “relatório de associação”, apenas o grupo que está sendo consultado ou relatado está envolvido no comunicado. No IGMPv3, uma consulta de associação mais abrangente é possível definindo todas as partes conectadas.

Petição 870170079583, de 19/10/2017, pág. 95/709 / 425 [00172] Além de ICMP e IGMP, outros datagramas compreendem protocolos proprietários onde os endereços IP de origem e de destino devem ser configurados para se comunicar usando um formato exclusivo, caso contrário, a carga útil IP 435 geralmente inclui dados seguindo protocolos

TCP ou UDP da Camada 4 de transporte.

Camada OSI 4 - Camada de transporte [00173] A função da Camada de transporte OSI 4 é ilustrada na Figura 27 onde três dispositivos conectados em rede 480A, 480B e 480C contendo blocos de computação e armazenamento de dados 483A, 483B e 483C com pilhas de comunicação correspondentes 482A, 482B e 482C compartilham uma rede comum 481. A camada de transporte garante que a comunicação 484 só ocorre entre a pilha de comunicação 482A no dispositivo A e a pilha de comunicação 482B no dispositivo B. O objetivo da camada de transporte é controlar a comunicação entre os dois dispositivos conectados e prover contexto para o tipo de dados de aplicativo sendo entregues pelos pacotes IP e o serviço a ser executado. Então, em essência, a rede 481 da Camada OSI 3 permite a conexão de qualquer combinação de dispositivos e a camada de transporte da Camada OSI 4 garante a comunicação de dois dispositivos específicos.

[00174] Os dois protocolos de transporte predominantes usados hoje são TCP e UDP. No “protocolo de controle de transmissão” ou TCP, uma conexão de comunicação entre dispositivos é garantida por um processamento de handshaking, confirmando que um pacote IP foi entregue de forma confiável e precisa em uma rede com comutação de pacotes antes de enviar o próximo pacote. Usando handshaking de TCP, uma “conexão” pode ser assegurada mesmo em um sistema de comunicação com comutação de pacotes “sem conexão”, que compreende uma rede de área local, uma intranet ou a Internet pública. O TCP assegura a entrega confiável, com verificação de erros, devidamente ordenada de uma série de bytes digitais com alta precisão,

Petição 870170079583, de 19/10/2017, pág. 96/709 / 425 mas sem garantia de entrega a tempo. O TCP é usado para fornecer cargas úteis insensíveis ao tempo, que compreendem uma variedade de programas de computador, arquivos, texto, vídeo e comunicação de voz, incluindo e-mail, transferências de arquivos, navegadores da web, funções de terminal remoto e shells seguros. Para as cargas úteis sensíveis ao tempo, outros protocolos mais adequados para aplicativos em tempo real, como UDP, são preferidos.

[00175] Protocolo de Controle de Transmissão (TCP) - Operando na Camada de transporte OSI 7, TCP funciona em um nível intermediário para a Camada de rede ou Internet 3 e as camadas de aplicativo superiores. Na entrega de pacotes IP, o TCP pode corrigir o comportamento de rede imprevisível devido ao congestionamento da rede, pacotes descartados, balanceamento de carga de tráfego e entregas fora de ordem. O TCP detecta estes e outros problemas, solicita a retransmissão de dados perdidos conforme necessário, reorganiza os dados fora de ordem e até mitiga o congestionamento de rede moderado possível. Os pacotes IP entregues pela camada de transporte TCP podem ser referidos como datagramas TCP/IP. Durante a entrega de pacotes, um temporizador é usado para monitorar o tempo de entrega. No caso de o tempo expirar antes do envio do pacote, é feita uma solicitação para retransmitir o pacote. Os pacotes TCP são encapsulados dentro das cargas úteis dos pacotes IP. Os pacotes TCP recebidos são armazenados em buffer e remontados para entrega em aplicativos.

[00176] Para identificar o aplicativo ou o serviço para o qual um pacote TCP se destina, o TCP utiliza a identificação digital chamada de “porta”. Uma porta é um número usado para identificar de maneira exclusiva uma transação através de uma rede, especificando o hospedeiro e o serviço executado. As portas são empregados pelo TCP ou pelo UDP para diferenciar entre vários serviços IP e aplicativos diferentes, como serviço web (HTTP), serviço de correio (SMTP) e transferência de arquivos (FTP). Os dispositivos de

Petição 870170079583, de 19/10/2017, pág. 97/709

90/425 comunicação utilizam uma combinação de ambos os endereços IP da Camada e as portas da Camada 4 para controlar a troca de informações da rede física que compreende Camada PHY 1 e Camada 2 do enlace de dados, com as

Camadas de aplicativos OSI superiores 5 e acima.

[00177] Cada pacote TCP 500, mostrado na Figura 28A, compreende um cabeçalho TCP 506 e sua carga útil TCP 507. Os detalhes das funções do cabeçalho TCP 506 estão resumidos na tabela 508 mostrada na Figura 28B, onde o cabeçalho TCP 506 compreende a porta de origem 501, a porta de destino 502, o número de sequência 503, o número de reconhecimento 504, bem como os campos “deslocamento, reserva, sinalizadores, tamanho da janela, ponteiro urgente e opções”. Também inclui soma de verificação 505 para confirmar a integridade do pacote. O número de sequência 503 é usado para acompanhar a ordem de vários pacotes e depende do estado do sinalizador SYN no campo “sinalizadores” do cabeçalho TCP 506. O campo “reconhecimento” é usado no processo de handshaking. Se o sinalizador ACK no campo “sinalizadores” do cabeçalho TCP 506 estiver definido como binário, o campo de reconhecimento é o próximo número de sequência que o receptor espera, e depois reconhece o recebimento de todos os pacotes subsequentes.

[00178] O “deslocamento” de dados especifica o tamanho do cabeçalho TCP 506, ou seja, o comprimento do cabeçalho desde o início do datagrama TCP 500 até o início da carga útil TCP 507 conforme especificado no número de palavras de 2B (32 bits) variando de 5 palavras de 2B a 15 palavras de 2B. Os bits reservados não são usados neste momento. O campo sinalizadores contém nove sinalizadores binários relacionados, em parte, com ocultação, congestionamento, urgência, reconhecimento de pacotes, função push, redefinição de conexão, sequenciamento e sem mais dados do remetente. O tamanho da janela especifica o número máximo de bytes que o remetente está disposto a receber em um pacote. A soma de verificação

Petição 870170079583, de 19/10/2017, pág. 98/709

91/425 compreende uma soma de verificação de 2B (16b) para verificação de erros tanto do cabeçalho TCP 506 e carga útil TCP 507. Se o sinalizador URG estiver definido como um binário, o campo “ponteiro urgente” indica o último byte de dados urgente a ser enviado.

[00179] Na comunicação por pacotes baseada no TCP/IP, o handshaking é uma característica fundamental para garantir a integridade dos dados. Como mostrado na Figura 29 no tempo t = 0, o notebook 510 envia um pacote TCP/IP para o servidor web 531 enviando o cabeçalho TCP 512A, a carga útil TCP 513A e o tempo de percurso 514A em conjunto, exigindo duração Ata, seguido de um reconhecimento do servidor web 511 para o notebook 510, que compreende o cabeçalho TCP 512B e o campo nulo 513B que exige duração Atb. Junto, o intervalo combinado ti = Ata + Atb representa o tempo mínimo para enviar e confirmar um pacote TCP/IP, aproximadamente o dobro do tempo da entrega inicial do pacote. Então, e somente então, um 2o pacote pode ser entregue, incluindo cabeçalho TCP 512C e carga útil TCP 513C. No caso de um pacote estar corrompido ou perdido, o pacote deve ser reenviado e confirmado, aumentando a duração da entrega de ti para 2ti. Caso o pacote precise ser reenviado “n” várias vezes, a duração de apenas um pacote compreende nti. O atraso de tempo variável usando o transporte TCP é extremamente problemático ao entregar pacotes sensíveis ao tempo, como vídeo ou VoIP.

[00180] Em resumo, os pacotes TCP/IP têm as seguintes características:

• Confiável - entrega de garantia TCP/IP através do gerenciamento de reconhecimento, verificação de erros, solicitações de retransmissão e recursos de tempo limite • Pesado - TCP/IP utiliza um pacote de camada de transporte grande com um cabeçalho complexo longo e requer pelo menos três pacotes apenas para estabelecer um “soquete” de conexão entre um

Petição 870170079583, de 19/10/2017, pág. 99/709 / 425 hospedeiro e um cliente.

• Taxa variável/lenta - Por causa do handshaking, a taxa de dados de TCP/IP é variável e significativamente mais lenta do que o UDP, tomando o TCP sem atrativo para aplicativos em tempo real, como vídeo e VoIP.

• Ordenado - O TCP armazena em buffer e reordena todos os pacotes recebidos fora de ordem • Controle de congestionamento - o TCP oferece vários recursos para gerenciar o congestionamento não disponível no UDP.

• Verificação de erros - os pacotes TCP/IP são verificados quanto à integridade se eles são recebidos e retransmitidos se algum pacote for descartado ou chegar corrompido.

[00181] Protocolo de Datagrama de Usuário (UDP) - Como uma alternativa ao TCP, o “protocolo de datagrama de usuário” ou UDP emprega um modo de transmissão sem conexão, um com um protocolo mínimo e nenhuma verificação de handshaking da entrega de pacotes. Sensível às instabilidades subjacentes de uma rede, o UDP não oferece reconhecimentos de entrega, nem qualquer pedido de pacote ou proteção duplicada. Contudo, utiliza somas de verificação para confirmar a integridade dos dados. O UDP é mais adequado em aplicativos sensíveis ao tempo ou para fins em que a verificação e correção de erros não são necessárias ou são realizadas ex post facto no aplicativo, evitando a sobrecarga desse processamento no nível da rede.

[00182] O pacote UDP 529 mostrado na Figura 30 compreende cabeçalho UDP 520 e carga útil UDP 524. O cabeçalho UDP 520 descrito na tabela 525 compreende apenas quatro campos, um endereço de porta de origem de 2B de comprimento 521, um endereço de porta de destino de 2B de comprimento 521, campo de “comprimento” 523 e soma de verificação 523. Os endereços de porta UDP utilizam o mesmo formato que os pacotes

Petição 870170079583, de 19/10/2017, pág. 100/709 / 425

TCP/IP. O campo de comprimento de pacote UDP 523 varia de um comprimento mínimo de 8B a um comprimento máximo de 65.535B em IPv6.

Para considerações práticas, o maior comprimento de soma de verificação é limitado a um protocolo ligeiramente menor de 65.507B no IPv4.

[00183] A soma de verificação de 2B 523 é usada para a detecção de erros do comprimento combinado de dados de carga útil UDP 524 mais do cabeçalho UDP 520, modificado algoritmicamente em um pseudocabeçalho para incluir endereços IP e outros campos emprestados do cabeçalho IP. O pseudocabeçalho nunca existe explicitamente no datagrama, mas é criado, ou seja, sintetizado algoritmicamente a partir dos dados disponíveis no cabeçalho IP e no cabeçalho UDP, apenas para fins de verificação de erros. O formato do pseudocabeçalho e os valores de soma de verificação diferem para os pacotes UDP baseados em IPv4 e IPv6. Enquanto o recurso de soma de verificação é opcional no IPv4, seu uso é obrigatório no IPv6. Quando não estiver em uso, o campo é carregado com um valor digital 0. Após o cabeçalho UDP 520, a carga útil UDP 524 segue com um comprimento variável variando de 0B a 65.507B em IPv4.

[00184] Em resumo, tanto o UDP como o TCP/IP podem ser usados para o transporte de camada 4 de um pacote IP que atravessa uma rede de comunicação com comutação de pacotes. Os pacotes UDP possuem as seguintes características:

• Não confiável - O UDP não garante a entrega nem pode sensorear pacotes perdidos. O UDP não possui a mecânica para identificar pacotes perdidos, para solicitar a retransmissão ou para monitorar condições de tempo limite durante a entrega.

• Leve - UDP utiliza uma pequena camada de transporte com um cabeçalho de tamanho mínimo que não possui muitos recursos TCP e sobrecarga de pacotes associados • Rápido - Como um artefato de seu tamanho pequeno, os

Petição 870170079583, de 19/10/2017, pág. 101/709 / 425 pacotes UDP podem ser entregues rapidamente e não requerem confirmação de entrega de handshaking ou retransmissão de pacotes perdidos ou corrompidos. As taxas de dados são mínimas, o dobro do TCP e quatro vezes mais rápidas que os casos envolvendo a retransmissão de pacotes TCP. Em redes instáveis, a solicitação de retransmissão pode bloquear completamente qualquer entrega de pacotes TCP • Desordenado - os pacotes de pedidos recebidos podem não ser a mesma ordem em que foram enviados. O aplicativo deve ser inteligente o suficiente para reordenar os pacotes fora de sequência.

• Sem controle de congestionamento - diferente de um artefato de sua pequena sobrecarga de pacotes, o UDP não evita o congestionamento, a menos que essa medida de controle de congestionamento seja implementada no nível do aplicativo.

• Verificação de erros - Os pacotes UDP são verificados para integridade apenas se forem recebidos. Se eles estiverem com erro, os pacotes são descartados sem qualquer solicitação de retransmissão.

[00185] Uso de Portas de Camada 4 - As portas desempenham um papel importante na implementação da Camada 4, a camada de transporte, na comunicação de rede com comutação de pacotes. Entre outros benefícios, as portas ajudam a identificar os aplicativos ou serviços providos por um servidor ou dispositivo, ajudam a permitir que vários usuários interajam com o mesmo servidor sem intercalar as comunicações do cliente individual, proveem um meio para suportar comunicações full duplex usando diferentes pares de portas para trocas de hospedeiro para cliente e cliente para hospedeiro, e ajudam a facilitar a operação de NATs, tradutores de endereços de rede, para aumentar o número de endereços IP disponíveis para usuários, limitando o custo e o número de conexões necessárias diretamente à Internet.

[00186] Um exemplo de uma troca hospedeiro-cliente de datagramas é ilustrado na Figura 31A, onde o dispositivo do cliente 526B, um tablet ou

Petição 870170079583, de 19/10/2017, pág. 102/709 / 425 notebook, solicita uma página da web do hospedeiro 526A, tipicamente um servidor web. Na troca, o cliente 526B envia um datagrama IP que compreende um cabeçalho IP da Camada 3 529 que tem um endereço IP 527B com um valor numérico “Endereço IP B” para um servidor hospedeiro em um endereço IP 527A com um valor numérico “Endereço IP A”. Encapsulado dentro da carga útil do datagrama da Camada 3, o cliente também envia um cabeçalho de transporte da Camada 4 530 contendo seu próprio número de porta de origem 528A com um valor ad hoc de 9.999. A solicitação de porta é enviada para a porta de hospedeiro 80 - uma porta HTTP reservada 528A usada para downloads de páginas da web no navegador. Portanto, embora o número da porta solicitante 9.999 seja arbitrariamente atribuído de maneira ad. hoc a partir do próximo número da porta aberta, a porta de destino 80 tem um significado específico para o serviço solicitado como uma solicitação de página da web.

[00187] Uma versão simplificada do datagrama IP usado para esta solicitação de página da web é ilustrada na parte inferior da Figura 31A compreendendo o cabeçalho IP da Camada 3 529, o cabeçalho de transporte da Camada 4 530 e a carga útil do pacote IP 536. Dentro do cabeçalho IP da Camada 3 529, o endereço IP de origem 531 tem um valor numérico “Endereço IP B”, e o endereço IP de destino 532 tem um valor “Endereço IP A”. Dentro do cabeçalho de transporte da Camada 4 530, a porta de origem 533 tem um valor numérico da porta “9.999”, e a porta de destino 534 tem um valor numérico da porta n° “80”. A carga útil do pacote IP 536 contém o campo 535 da carga útil (dados) que compreende os dados do aplicativo da Camada 5 até Camada 7.

[00188] A Figura 31B ilustra a resposta para a solicitação de serviços do cliente. Conforme mostrado, todas as direções das setas são revertidas e todos os endereços IP de origem e destino e os números de portas são trocados da ilustração anterior. Na troca, um datagrama IP que contém um

Petição 870170079583, de 19/10/2017, pág. 103/709 / 425 cabeçalho IP da Camada 3 537 é enviado a partir de um endereço IP de origem 531 com um valor numérico “Endereço IP A” para um endereço IP de destino 532 com um valor numérico “Endereço IP B”. Encapsulado dentro do datagrama da Camada 3, um cabeçalho 538 de transporte da Camada 4 inclui a porta de origem 533 que tem um valor numérico da porta n° 80 e uma porta de destino 534 com um valor numérico da porta n° 9.999. Incorporado na carga útil do pacote IP 539, a resposta à solicitação de serviços é a carga útil (dados) 536 que pode conter o código HTML para criar uma página da web.

[00189] Então, enquanto alguns números de portas são abertos e atribuídos conforme necessário na eleição do servidor, outros são reservados para uso em pacotes UDP, para pacotes TCP ou para ambos. Uma lista de números de portas reservadas oficiais comuns está listada na Figura 31C incluindo a bem-conhecida porta 80 para navegação via HTTP usando apenas TCP, porta 20 para transferências de arquivos, telnet na porta 23, e-mail POP3 para TCP apenas na porta 110, e-mail IMAP3 na porta 220 e uma variedade de versões seguras, como HTTPS, IMAPS, FTP sobre TSL/SSL, etc. Recentemente, foi revelado que a segurança SSL, o método intrínseco de segurança da camada de transporte, é vulnerável a certos tipos de ataques, como descrito em uma das manchetes no início deste pedido. A porta 7, usada para as funções de eco e ping da Camada 4, foi amplamente substituída pela função ICMP da Camada 3.

[00190] A tabela na Figura 31D ilustra faixas de números de portas e seu uso. Conforme mostrado, os números de portas reservados geralmente ocorrem na faixa de portas n° 0 a 1.023 como “portas do sistema”, enquanto que para as portas n° acima de 49.152, as portas geralmente são abertas e disponíveis gratuitamente. Na faixa intermediária, para portas entre 1.024 e 49.151, grandes blocos estão abertos e disponíveis para alocação de porta dinâmica, mas algumas portas reservadas também estão presentes. Mais comumente, grandes corporações podem relatar seu uso dedicado de portas

Petição 870170079583, de 19/10/2017, pág. 104/709 / 425 selecionadas em seu software, mas não registrar oficialmente os números de portas. De qualquer forma, os números de portas “oficiais” e reservados, embora não sejam rigorosamente policiados, recebem apoio generalizado porque as empresas querem assegurar a interoperabilidade de seus sistemas e softwares com a Internet e outros negócios.

[00191] As portas também são usadas para facilitar “firewalls”, impedindo ou, pelo menos, inibindo o acesso não autorizado a um computador, servidor ou dispositivo para um serviço específico. Por exemplo, qualquer servidor localizado em uma intranet, ou seja, em uma rede privada localizada atrás de um NAT ou protegido por uma caixa de segurança de rede dedicada, pode ser limitado a tipos específicos de solicitações de serviço iniciados pela Internet. Por exemplo, o firewall pode ser configurado para bloquear solicitações da porta 80, desativando solicitações de serviço HTTP e impedindo downloads de páginas da Internet. Altemativamente, o firewall pode ser configurado para permitir apenas solicitações de serviço da porta 25 da Internet, sem que outras portas estejam habilitadas. Em tais casos, o firewall permite protocolo de transferência de correio simples ou solicitações de serviço SMTP, permitindo enviar e-mails da intranet para e da Internet, mas bloqueia todos os outros tipos de transações. O problema com medidas de firewall tão rigorosas é que a segurança adicionada bloqueia muitas transações válidas, impedindo que funcionários e fornecedores no campo acessem informações importantes necessárias para executar seu trabalho.

[00192] Outro uso de portas é ajudar a atrasar a data para o esgotamento da porta nos endereços IP IPv4. Em vez de atribuir a todos os vários endereços IP dedicados para cada dispositivo pessoal, os provedores de serviços de Internet ou ISP, como provedores de cabo, operadores WiFi públicos, operadoras de telefonia celular e outros, têm a capacidade de reciclar os endereços IP da Internet de forma dinâmica e empregar endereços IP privados para se comunicar entre o seu gateway de internet e seus clientes

Petição 870170079583, de 19/10/2017, pág. 105/709 / 425 privados. Desta maneira, um único endereço IP da Internet pode atender até

65.534 usuários para uma sub-rede Classe B ou 254 usuários para uma subrede Classe C, desde que a banda larga de conexão a montante seja suficientemente rápida para suportar o tráfego.

[00193] O dispositivo que executa este endereço IP único para a conversão e comunicação bidirecional de muitos endereços IP é chamado de “tradutor de endereço de rede” ou NAT. Mostrado na Figura 32A, NAT 550 compreende um bloco de tradução de endereço IP e n° de porta 554 e duas pilhas de comunicação compreendendo pilha de comunicação conectada à Internet 553A e pilha de comunicação de sub-rede Classe C 553B. A pilha de comunicação conectada à Internet 553A se conecta a todos os outros dispositivos conectados à Internet, como o servidor 22A, o roteador 27 e o servidor web 511 através da rede pública 531. Na camada de transporte 4, a pilha de comunicação 553A gerencia comunicações simultâneas com vários dispositivos, como 557A e 557B. No exemplo mostrado, a rede não pública 552 conecta vários dispositivos domésticos, como o notebook 35, o refrigerador 34, o desktop 35 e o roteador WiFi doméstico 62A à pilha de comunicação de sub-rede Classe C 553B. Na rede privada, os protocolos de transporte da Camada 4 gerenciam a comunicação entre a pilha de comunicação 553B e os dispositivos conectados à rede, por exemplo, conexões da Camada 4 556A e 556B. Ao suportar a troca de informações entre as redes privadas e públicas, o endereço IP e o bloco de tradução de portas 554 constroem dinamicamente uma tabela de tradução ad. hoc 555 para mapear cada transmissão de pacotes de rede privada para a rede pública e vice-versa.

[00194] A operação de um NAT é ilustrada na Figura 32B onde o desktop 36 e o notebook 35 conectados a uma rede privada “por trás do NAT” tentam comunicar-se simultaneamente com o servidor web 21A e o servidor de e-mail 27 conectados na Internet através de apenas um único endereço IP

Petição 870170079583, de 19/10/2017, pág. 106/709 / 425 público conectado à Internet. No exemplo mostrado, o notebook 35 tem um endereço IP designado aqui como “NB” e atribuição de porta dinâmica, o desktop 36 tem um endereço IP designado aqui como “DT” e atribuição de porta dinâmica, o servidor web 21A tem um endereço IP designado aqui como “Sl” e usa a porta 80 para serviços de páginas da web baseadas em HTTP e o servidor de e-mail 27 tem um endereço IP designado aqui como “S2” e usa a porta 110 para serviços de e-mail baseados em IMAP. Na Internet, o NAT 550 tem um endereço IP público “N” e usa a atribuição de porta dinâmica.

[00195] Em operação, o notebook 35 inicia uma solicitação de página da web pelo pacote IP 560A a partir do endereço IP de origem “NB” e da porta arbitrária n° 9999 para o servidor web 21A no endereço IP de destino Sl e na porta n° 80. Ao mesmo tempo, o desktop 36 inicia uma solicitação de email pelo pacote IP 561A a partir do endereço IP de origem “DT” e da porta arbitrária n° 10200 para o servidor de e-mail 27 no endereço IP de destino S2 e na porta n° 110. Ao receber essas solicitações, o NAT 550 mapeia as mensagens de entrada para uma conexão de Internet de saída, mapeando a tradução de endereços na tabela de tradução 555. O NAT então encaminha a solicitação do notebook 35, mantendo o endereço IP de destino Sl e o número de porta 9999, mas trocando as informações de origem do notebook 35 para NAT 550 com um endereço IP de origem traduzido de “N” e uma porta de origem 20000 para criar o pacote IP de Internet 560B.

[00196] De maneira similar, o NAT 550 traduz a solicitação do desktop 36 para o servidor de e-mail 27, mantendo o endereço IP de destino S2 e o número de porta 9999, mas trocando as informações de origem do desktop 36 para NAT 550 com um endereço IP de origem traduzido de “N” e uma porta de origem n° 20400 para criar o pacote IP de Internet 561B. Desta forma, o servidor web 21A e o servidor de e-mail 27 pensam que estão se comunicando com o NAT 550 e não tem ideia sobre qualquer solicitação que

Petição 870170079583, de 19/10/2017, pág. 107/709

100/425 venha do notebook 35 e do desktop 36. De fato, os endereços IP usados por dispositivos como endereços “NB” ou “DT” conectados na sub-rede NAT não são endereços válidos na Internet e não podem ser conectados diretamente sem a intervenção do NAT 550.

[00197] Uma vez que o servidor web 21A recebe solicitando o pacote IP 560B, ele responde enviando o código HTML para a construção de uma página da Web, roteado pelo pacote IP 560C do endereço IP de origem “Sl” e da porta “80” para um endereço IP de destino “N” e porta n° 20000. Ao se referir à tabela de tradução 555, o NAT sabe que as respostas à porta n° 20000 correspondem à solicitação do notebook 35 e encaminha a mensagem trocando seu endereço IP de destino e n° de porta para o do notebook, nomeadamente o endereço IP “NB” e a porta n° 9999 para criar o pacote IP 560D de resposta.

[00198] Paralelamente a esta transação, ao receber a solicitação do pacote IP 560B do NAT 550, o servidor de e-mail 27 responde enviando o código IMAP contendo e-mail, roteado pelo pacote IP 561C do endereço IP de origem “S2” e porta n° 110 para um endereço IP de destino “N” e porta n° 20400. Ao se referir à tabela de tradução 555, o NAT sabe que as respostas à porta n° 20400 correspondem à solicitação do desktop 36 e encaminha a mensagem trocando seu endereço IP de destino e n° de porta para o do desktop, nomeadamente o endereço IP “DT” e a porta n° 10200 para criar o pacote IP 561D de resposta. Desta maneira, vários usuários podem abordar separadamente vários dispositivos e sites conectados à Internet por meio de um único endereço IP.

[00199] Outros Protocolos de Transporte de Camada 4 - Além do TCP e UDP, há uma falta geral de consenso sobre se outros protocolos comuns de transporte operam como protocolos da Camada 4 únicos e independentes, se eles operam como superconjuntos da Camada 4 de TCP e UDP, ou se eles são simplesmente programas de aplicativos de camada

Petição 870170079583, de 19/10/2017, pág. 108/709

101/425 superior em execução no UDP e TCP.

[00200] Um desses protocolos, “protocolo de controle de congestionamento de datagramas” ou DCCP é um protocolo de camada de transporte orientado a mensagens para gerenciar o controle de congestionamento útil para aplicativos com restrições de tempo na entrega de dados, como mídia de transferência contínua e jogos online multijogadores, mas não possui sequenciação para pacotes fora de ordem disponíveis no TCP. Embora possa ser empregado de forma autônoma, outra aplicação do DCCP é fornecer recursos de controle de congestionamento para aplicativos baseados em UDP. Além de transportar o tráfego de dados, o DCCP contém tráfego de reconhecimento informando o remetente quando um pacote chegou e se eles foram marcados por uma “notificação de congestionamento explícito” ou ECN.

[00201] Outra tentativa de gerenciar a entrega a tempo de pacotes, especificamente texto, é LCM ou “comunicação e empacotamento leve” com base na opção multidifusão do UDP. Em contraste com unidifusão UDP, uma vantagem da multidifusão UDP é que múltiplos aplicativos se comportam consistentemente em um único hospedeiro ou se espalham em várias plataformas. Além de procurar minimizar a latência da rede, outros protocolos da Camada 4 são usados para “tunelamento” de dados para criar redes privadas virtuais ou VPNs, operando na e através da Internet. Um desses protocolos baseados em UDP é encapsulamento de roteamento genérico ou GRE, protocolo de tunelamento ponto a ponto ou PPTP, mecanismo de encapsulamento de soquete seguro ou SSTM, shell seguro ou SSH e outros. Algumas implementações de VPN pretendiam melhorar a segurança, no entanto, de fato aumentam a latência da rede.

[00202] Além dos protocolos de transporte da Camada 4 padronizados mencionados acima de UDP e TCP, não está claro qual é a taxa de adoção de protocolos proprietários e quais as compensações que eles fazem para garantir

Petição 870170079583, de 19/10/2017, pág. 109/709

102/425 baixa latência à custa da corrupção de pacotes IP ou garantir a segurança em detrimento do aumento da latência.

Camadas OSI 5, 6 e 7 - Camadas de aplicativo [00203] Enquanto o n° de porta identifica o tipo de serviço solicitado, o aplicativo deve entender a natureza dos dados encapsulados como uma carga útil da Camada 4. Agir com base no conteúdo do pacote entregue é o papel das camadas de aplicativos OSI superiores, as Camadas 5, 6 e 7. A interconexão de múltiplos dispositivos em uma camada de aplicativo é ilustrada graficamente no diagrama de blocos da Figura 33 onde três dispositivos 570A, 570B e 570C cada um com computação separada e capacidade de armazenamento de dados 573A, 573B e 573C estão conectados por correspondentes pilhas de comunicação 572A, 572B e 572C compartilhando conectividade de camada de aplicativo 571. Na realidade, os dispositivos incluem conexões em todas as camadas OSI, mas, por motivos de simplicidade, apenas a conexão da camada de aplicativo é mostrada.

[00204] Além da conexão com uma rede com comutação de pacotes, a regra principal para dispositivos para estabelecer comunicação nas camadas de aplicativo é a mesma ou o aplicativo compatível deve existir em todos os dispositivos de comunicação. Por exemplo, um programa bancário não consegue entender um programa de videogame, um programa de CAD não pode interpretar transferência contínua de vídeo HD, um reprodutor de música não pode realizar negócios no mercado de ações, e assim por diante. Embora muitos programas de aplicativos sejam personalizados ou de propriedade de uma empresa ou fornecedor, vários aplicativos e serviços são onipresentes e, em alguns casos, até mesmo autorizados governamentalmente para operar em um ambiente de código aberto. Por exemplo, quando a Microsoft tentou vincular seu servidor de correio do Outlook de forma explícita e exclusiva ao Microsoft Windows, os tribunais da União Européia decidiram que tais ações violavam leis antitruste e forçavam a Microsoft a lançar seu aplicativo de

Petição 870170079583, de 19/10/2017, pág. 110/709

103/425 correio como um programa autônomo com conexões bem definidas para o ambiente operacional em que opera. Pouco tempo depois, vários programas concorrentes de correio surgiram em várias plataformas de computação usando os protocolos e recursos de correio da Microsoft.

[00205] A distinção entre as camadas de aplicativo 5, 6 e 7 são sutis. Como consequência, muitas pessoas se referem às camadas coletivamente no modelo OSI de 7 camadas como “camadas de aplicativos”, “camadas superiores” ou mesmo apenas como Camada 7. Na última interpretação, a Camada 7 é vista como a aplicação verdadeira e as Camadas 5 e 6 são consideradas camadas usadas para atendê-la, de forma semelhante às chamadas de sub-rotinas em um programa de computador. Para tomar as questões ainda mais confusas, uma descrição alternativa de cinco camadas de redes com comutação de pacotes que competem com o modelo OSI de 7 camadas combina as três camadas de aplicativo em uma camada, chamada de camada 5, mas mais próxima em construção da camada 7 no modelo OSI.

[00206] Camada de Sessão 5 - No modelo OSI de 7 camadas, a Camada 5 é chamada de “camada de sessão”, coordenando diálogos entre aplicativos, incluindo a gestão de comunicação full-duplex, half-duplex ou simplex, além de prover verificação, recuperação e terminação graciosa de sessões TCP. Também estabelece, gerencia e termina as conexões para aplicativos remotos explicitamente em ambientes de aplicativos que usam “chamadas de procedimento remoto” ou RPC. A Camada 5 também trata de gerenciar sessões de aplicativo cruzado quando um aplicativo solicita acesso ao processo de outro aplicativo, por exemplo, importando um gráfico do Excel para o PowerPoint. Outro aplicativo da Camada 5, “soquete seguro” ou SOCKS, é um protocolo de Internet usado para rotear pacotes IP entre um servidor e cliente através de um servidor proxy e para executar “autenticação” para restringir o acesso do servidor a apenas usuários autorizados. Baseandose na identidade do usuário para conferir ou negar acesso e privilégios, a

Petição 870170079583, de 19/10/2017, pág. 111/709

104/425 segurança SOCKS é, portanto, tão robusta quanto os processos de autenticação empregados.

[00207] Em operação, o SOCKS atua como um proxy, roteando conexões TCP através de um endereço IP arbitrário e provendo serviço de encaminhamento para pacotes UDP. Nos casos em que um cliente é bloqueado do acesso do servidor por um firewall, usando SOCKS o cliente pode entrar em contato com o proxy SOCKS, a rede do cliente solicitando a conexão que o cliente deseja fazer para entrar em contato com o servidor. Uma vez aceito pelo servidor, o proxy SOCKS abre uma conexão através do firewall e facilita a comunicação entre o servidor e o cliente como se o firewall não existisse. Operando em uma camada mais baixa do que proxies baseados em HTTP, SOCKS usa um método de handshake para informar o software proxy sobre a conexão que o cliente está tentando fazer sem interpretar ou reescrever cabeçalhos de pacotes. Uma vez que a conexão é feita, o SOCKS opera de forma transparente para os usuários da rede. Uma versão mais recente do SOCKS, chamada SOCKS4, aprimorou o software para que clientes possam especificar um nome de domínio de destino em vez de exigir um endereço IP.

[00208] Não sendo mais robusto do que o processo de autenticação usado para identificar um usuário autorizado, o SOCKS pode ser convertido por hackers e criminosos em meios para derrotar as medidas de segurança do firewall. Para combater esta exposição, o SOCKS5 foi desenvolvido para oferecer uma maior quantidade de opções de autenticação, bem como para adicionar suporte para o encaminhamento UDP usando pesquisas de DNS. O SOCKS5 também foi atualizado para suportar endereços IPv4 e IPv6 IP. Durante o handshaking e a negociação de sessão, tanto o cliente como o servidor identificam por número os métodos disponíveis para autenticação, a saber:

0x00: Sem autenticação

Petição 870170079583, de 19/10/2017, pág. 112/709

105/425

0x01: Métodos de GSSAPI

0x02: Nome de usuário/senha

0x03-0x7F: Métodos atribuídos pela IANA

0x80-0xFE: métodos reservados para uso privado [00209] Depois que a negociação for concluída e um método de autenticação for selecionado, a comunicação pode começar. O procedimento de autenticação mais simples nome de usuário/senha demonstrou ser intrinsecamente inseguro e fácil de ser quebrado, especialmente em senhas tipo PIN de quatro caracteres. Como uma “interface de programa de aplicativo de serviço de segurança genérica” alternativa ou GSSAPI não é, por si só, um método de segurança, mas uma interface padronizada IETF que invoca uma biblioteca de software contendo códigos de segurança e métodos de autenticação, principalmente escritos por fornecedores de serviços de segurança de segurança. Usando a GSSAPI, os usuários podem mudar seus métodos de segurança sem a necessidade de reescrever qualquer código de aplicativo. As chamadas de procedimento incluem a obtenção da chave de criptografia secreta ou de prova de identidade do usuário, gerando um token de cliente ou desafio para enviar para o servidor e recebendo um token de resposta, convertendo dados de aplicativos em um token de mensagem seguro ou encriptado e restaurando, etc. Altemativamente, “autoridade de números atribuídos pela Internet” ou IANA, uma divisão da ICANN sem fins lucrativos, ou seja,’’corporação de Internet para nomes e números atribuídos”, atribuiu determinados métodos sob sua licença para garantir a estabilidade e a segurança da rede.

[00210] Camada de apresentação 6 - A Camada 6 gerencia a representação sintática de dados e objetos, incluindo a manutenção de um acordo sobre codificação de caracteres, áudio, vídeo e formatos gráficos. Em essência, a camada de apresentação, às vezes chamada de camada de sintaxe, prepara ou traduz arquivos e objetos incorporados em um formulário

Petição 870170079583, de 19/10/2017, pág. 113/709

106/425 utilizável por um determinado aplicativo e “apresenta” os dados para a Camada de aplicativo 7. Por exemplo, se um objeto gráfico for recebido em um formato não compreensível por um determinado aplicativo, o software da camada de apresentação, sempre que possível, converte ou transforma o formato para ser aceitável por um determinado aplicativo. Por outro lado, a Camada 6 pode converter objetos formatados proprietários em formatos padrão e encapsulá-los antes de passá-los para a Camada de sessão 5. Desta maneira, a Camada 6 estabelece um contexto sintático entre aplicativos diferentes para mover dados para cima e para baixo da pilha de comunicação e protocolo. Por exemplo, um gráfico criado no Adobe Illustrator ou AutoCAD pode ser importado e incorporado em uma apresentação do PowerPoint ou em um documento de e-mail baseado em HTTP.

[00211] A Camada 6 também é responsável pela encriptação, ou seja, formatar e encriptar dados antes de enviar através de uma rede e, inversamente, desencriptar dados e reformatá-los antes de apresentá-los à camada de aplicativo. Por exemplo, ao receber um arquivo de dados delimitado por tabulação enviado em formato encriptado pela Internet, a Camada 6, uma vez que desencriptou o arquivo de acordo com as chaves de desencriptação negociadas, pode reformatar os dados para importação em uma planilha baseada em linha-coluna, por exemplo, Excel, ou uma base de dados relacionais, como Oracle. Para intensificar a segurança, a encriptação e a desencriptação pela Camada 6 podem ser restritas a remetentes e destinatários autorizados cuja identidade é confirmada a priori através de um procedimento de autenticação da Camada 5. A segurança de tais comunicados não é melhor do que a encriptação usada para obscurecer o arquivo de dados e o processo de autenticação usado para confirmar o direito de acesso de um usuário ao arquivo de dados.

[00212] Embora o software da camada de apresentação possa ser desenvolvido em uma base personalizada completa para um dispositivo ou

Petição 870170079583, de 19/10/2017, pág. 114/709

107/425 sistema operacional específico, para transportabilidade e interoperabilidade, o código pode ser construído empregando regras básicas de codificação de “notação de sintaxe abstrata, versão 1” ou ASN.l, incluindo recursos como converter um arquivo de texto codificado em EBCDIC para um arquivo codificado em ASCII, ou serializar objetos e outras estruturas de dados de e para XML. Como um protocolo de apresentação da Camada 5, ASN.l mapeia dados estruturados para regras de codificação específicas, por exemplo, transformando um número inteiro em uma cadeia de bits a ser transmitida e decodifica a sequência de bits usando “regras de codificação XML” também conhecidas como XER. Exemplos de vários formatos abrangidos pelas operações da Camada 6 incluem:

• Texto incluindo formatos ASCII e EBCDIC • Gráficos incluindo PNG, JPG, GIF, BMP, EPS • Som e vídeo, incluindo MP4, WMV, MOV, AVI, MIDI • Documentos incluindo PDF, DOC, PPT, HTML, XML, MIME, compressão (por exemplo, ZIP) • Transferência contínua, incluindo RTP, RTSP, RTMP • Encriptação incluindo TLS/SSL, SSH [00213] Camada de Aplicativo 7 - No modelo OSI de sete camadas, a Camada 7, a camada de “aplicativo” facilita a interface entre um usuário, cliente ou dispositivo com um hospedeiro, servidor ou sistema. Como a camada de aplicativos é mais próxima do usuário, ela facilita a interface entre o usuário e o hospedeiro. No caso em que o usuário é humano e o hospedeiro é um dispositivo eletrônico, como um telefone celular ou computador, esta interface é facilitada através de pressionamentos de teclas, toque ou gestos usando um teclado ou tela sensível ao toque ou às vezes através de voz. As interfaces de tela sensível ao toque, originalmente chamadas de GUIs, ou interface gráfica do usuário, deram origem em grande parte ao termo UI/UX que significa interface de usuário/experiência do usuário, um projeto de

Petição 870170079583, de 19/10/2017, pág. 115/709

108/425 interface baseado no estudo da interação homem-máquina. Em máquina para máquina ou M2M e máquina para infra-estrutura ou M2X, a interface humana é substituída por dispositivos de hardware diferentes que falam diferentes idiomas da máquina.

[00214] Independentemente dessas diferenças, a camada de aplicativo deve permitir que humanos e máquinas ou múltiplas máquinas conversem entre si de uma forma reconhecível. Uma vez que o modelo OSI lida com a pilha de comunicação e protocolo, essas interfaces ficam fora do escopo do modelo OSI, mas ainda desempenham um papel importante na negociação de uma conversa, incluindo a identificação de parceiros de comunicação, a determinação da disponibilidade de recursos e a sincronização de comunicação. Ao identificar parceiros de comunicação, a Camada 7 deve determinar se uma outra parte tem o software certo instalado, tem permissão de se comunicar e possui as credenciais corretas.

[00215] Em alguns casos, pode exigir que o nível 5 primeiro autentique a identidade da outra parte antes de iniciar qualquer troca de dados. Essa confirmação pode ser realizada no momento da solicitação de troca de informações, ou negociada a priori através de um processo de ligação, ou usando a validação AAA, um procedimento de três etapas que significa autenticação, autorização e administração. Em aplicativos de comunicação como telefones celulares que usam VoIP, o software do aplicativo também deve testar para confirmar que a rede está disponível e suficientemente estável para fazer uma ligação, ou seja, estabelecer uma sequência de pacotes IP enviados e recebidos com latência aceitavelmente pequena para suportar uma conversa com níveis aceitáveis de QoS. Na sincronização de comunicação, toda comunicação entre aplicativos requer cooperação que seja gerenciada pela camada de aplicativo.

[00216] Alguns exemplos de implementações de camada de aplicativo incluem emulação de terminal, serviços de e-mail, gerenciamento de rede,

Petição 870170079583, de 19/10/2017, pág. 116/709

109/425 navegadores web, gerenciamento de arquivos, backup e serviços de armazenamento em nuvem, drivers periféricos que compreendem:

• Gerenciamento de arquivos incluindo FTP, FTAM, SFTP, NNTP, IRC, SIP, ZIP • Navegadores web incluindo HTTP (por exemplo, Safari, Firefox, Chrome, Outlook, Netscape, etc.) • Serviços de e-mail incluindo SMTP, IMAP, POP3 junto com Microsoft Outlook, Apple Mail, Google Gmail, Yahoo, Hotmail, etc.

• Serviços de comunicação e difusão, incluindo implementações personalizadas SIP, NNTP, IRC e “over-the-top” ou OTT • Gerenciamento de rede incluindo DNS, SNMP, DHCP, SNMP, BGP, LDAP, CMIP • Emulação de terminal incluindo Telnet • Serviços de backup e armazenamento em nuvem incluindo NFS e versões comerciais Android, iOS, Apple Time Machine, Apple iCloud, Carbonite, Barracuda, Dropbox, Google Drive, Microsoft One Drive, Box • Drivers periféricos incluindo impressora, scanner, câmera, flashcards • Aplicativos de segurança como Symantec, Norton, AVG [00217] Para aplicativos de computadores e smartphones, por exemplo, os aplicativos mais comuns, como sublinhados, incluem transferências de arquivos, transferências de hipertexto para navegação na web, serviços de email e pesquisas de DNS para converter nomes de domínio em endereços IP. Por causa da sua onipresença, esses aplicativos genéricos têm portas dedicadas atribuídas a esses serviços.

[00218] Aplicativos de gerenciamento de arquivos - Um aplicativo comum de Nível 7, o programa de transferência de arquivos ou FTP, usado para enviar arquivos ou baixar dados. Os arquivos, uma vez baixados, são “gravados” em uma unidade de armazenamento não volátil para uso posterior.

Petição 870170079583, de 19/10/2017, pág. 117/709

110/425

Se os arquivos incluem o código executável, o programa de download e instalação, juntamente com o sistema operacional do dispositivo, abre e instala o software no diretório de aplicativos no computador ou dispositivo móvel.

[00219] Esse processo é ilustrado na Figura 34, onde o notebook 35 que tem um endereço IP numérico “NB” e atribuição de porta dinâmica solicita um arquivo do servidor de arquivos 21A enviando o pacote IP 580 como uma solicitação FTP usando o transporte TCP, para a porta n° 21, a porta de controle FTP do servidor de arquivos. O pacote IP 580 resultante inclui o endereço IP de destino “Sl”, a porta de destino n° 21, junto com o endereço IP de origem “NB” e sua porta ad. hoc n° 9999. Uma vez que a porta n° 21 representa a porta de controle para solicitar serviços de transferência de arquivos, o servidor de arquivos 21A sabe que o notebook 35 está solicitando um arquivo e espera que as informações de login confirmem o endereço IP e o número da porta de destino do pacote.

[00220] Em uma sessão FTP ativa, o notebook 35 envia o endereço de destino e n° de porta de destino para o arquivo solicitado, de forma análoga ao fornecimento de instruções de fiação para uma transferência bancária que inclua um código SWIFT e um número de conta. O pacote IP 581 resultante inclui o endereço IP do notebook “NB” e sua porta n° 9999 como a informação de origem e o endereço IP do servidor “Sl” como o destino. O número de porta de destino do pacote é alterado para a porta n° 20 para negociar o canal de dados FTP separado da conexão do comando.

[00221] Em resposta, o servidor de arquivos 21A abre então a carga útil do pacote IP para determinar o nome do arquivo e, opcionalmente, o trajeto do arquivo que está sendo solicitado e, depois de localizar o arquivo 583, o encapsula em um pacote IP 582 responsivo e envia o pacote de volta através dos dados para o notebook 35 trocando os endereços IP e as portas, ou seja, onde o destino se toma o endereço IP “NB” na porta n° 9999 e a origem

Petição 870170079583, de 19/10/2017, pág. 118/709

111/425 se toma o endereço IP “Sl” e a porta n° 20. Como as duas transações anteriores, o pacote IP usa TCP como mecanismo de transporte.

[00222] Uma vez que o notebook 35 recebe o arquivo, ele é extraído da carga útil do pacote 582 e possivelmente convertido usando a Camada de apresentação 6 no arquivo de dados 583 para armazenamento ou para fazer o upload no sistema operacional 585 do notebook. Se assim for, o programa ou outro programa, um utilitário no sistema operacional, carrega 583 o código executável do arquivo 583 para criar o programa de aplicativo 586.

[00223] Dois problemas persistem com a implementação original de uma transferência de arquivos FTP ativa. Em primeiro lugar, uma vez que a porta de comando FTP n° 21 é um padrão aberto, os hackers costumam usá-la para tentar falsificar sua identidade e baixar arquivos não autorizados ou, de outra forma, causar ataques de negação de serviço que impedem o dispositivo de operar. O outro problema com uma transferência FTP ativa é que o pacote IP 582 enviado do servidor de arquivos pode ser bloqueado por um NAT ou firewall, interceptando sua entrega ao notebook 35. Uma variante deste procedimento, chamado FTP passivo, pode contornar o problema do firewall, mas agora a maioria dos roteadores NAT é consciente de FTP e suporta transferências de arquivos com credenciais ou autenticação adequadas.

[00224] Além dos serviços de FTP disponíveis na porta n° 20 ou, em alternativa, “protocolo de transferência de arquivo seguro” também conhecido como protocolo de transferência de arquivos SSH. A transferência utiliza o shell seguro ou a porta SSH n° 22, o mesmo usado para logins seguros e encaminhamento de porta seguro. Os aplicativos alternativos de transferência de arquivos incluem o “acesso e gerenciamento de transferência de arquivos” ou FTAM menos adotados e a compactação de dados usando ZIP e outros algoritmos.

[00225] Navegadores Web e Servidores Web - Outra ampla classe de aplicativos de Camada 7 compreende programas que usam uma técnica de

Petição 870170079583, de 19/10/2017, pág. 119/709

112/425 formatação especializada chamada “hipertexto”. Esses aplicativos incluem “servidores web” que armazenam documentos de hipertexto; “navegadores web” que os leem e exibem; e um protocolo de transferência de comunicação especializado com atribuições dedicadas de portas registradas para facilitar o acesso rápido. Um componente-chave, o navegador web é um programa de comunicação orientado graficamente projetado para baixar e exibir documentos de hipertexto da Internet, da intranet ou de outras redes com comutação de pacotes. O companheiro de rede do navegador, o servidor web, é um computador de alta velocidade usado para distribuir documentos de hipertexto para navegadores que solicitam acesso aos seus arquivos. O hipertexto também pode ser usado para exibir e-mails com formatação incorporada não disponível a partir de visualizadores de e-mail simples.

[00226] Em operação, os navegadores não estabelecem conexão direta com outros navegadores, mas trocam informações através de intermediários que compõem um ou mais servidores web acessíveis por ambos. Para publicar um documento, um usuário simplesmente “publica” o documento ou a imagem em uma “página da Web” hospedada em qualquer servidor conectado à Internet ou a qualquer outra rede ou nuvem privada ou pública. O usuário que publica o documento decide quem tem acesso aos arquivos postados e se eles têm ou não privilégios de somente leitura ou de edição. O servidor web que hospeda os documentos pode ser de propriedade ou gerenciado pelo editor do documento, ou pode representar uma parte desinteressada não envolvida no conteúdo postado e no projeto da página web.

[00227] Os documentos baseados em hipertexto utilizam um idioma de formato de documento especializado chamado HTML ou “linguagem de marcação de hipertexto” para exibir conteúdo textual, gráfico e de vídeo de forma que seja ajustado dinamicamente para melhor se ajustar à janela em que será exibida. A função de HTML é baixar o material a ser exibido e formatálo dinamicamente em uma base página por página. Cada página pode conter

Petição 870170079583, de 19/10/2017, pág. 120/709

113/425 campos estáticos e dimensionados dinamicamente com texto carregado a partir de software codificado ou baixado de um arquivo ou banco de dados. Embora mais complicado de projetar e escrever, a vantagem de usar um banco de dados para conteúdo de páginas HTML é que o banco de dados pode ser atualizado com frequência ou regularmente e a página da Web será ajustada automaticamente. Caso contrário, cada página da Web deve ser reprojetada à medida que o conteúdo muda. O HTML também especifica a localização de objetos, incluindo rodapés de localização fixa, cabeçalhos, barras laterais e campos, bem como objetos flutuantes que o texto envolve dinamicamente.

[00228] Os próprios objetos podem representar objetos gráficos ou fotos estáticas, gráficos animados, vídeos flash, arquivos de áudio, vídeos e filmes em HD, e muito mais. Como o texto, a formatação pode ser codificada ou vinculada dinamicamente. Objetos vinculados podem ser traduzidos usando funções de Camada de Apresentação 5 de um formato ou tipo de objeto para outro dinamicamente. Por exemplo, um campo predefinido dentro de uma planilha pode ser convertido em um instantâneo estático ou gráfico no momento em que a página é desenhada. Outros objetos também podem compreender enlaces diretos para outros servidores e sites da Web e quando clicados podem transferir informações sobre o computador do visualizador da página da Web, informações pessoais e de contato, ou preferências e interesses, com ou sem aprovação prévia do visualizador. Em essência, clicar em um link é considerado uma aprovação tácita dos termos e condições do hospedeiro da página da web vinculada. Por exemplo, clicar em um banner de anúncio de um novo carro pode enviar informações para um banco de dados para pessoas interessadas em comprar carros novos e resultar em e-mails indesejados de “spam” para que as promoções de carros novos sejam enviadas para o e-mail pessoal do visualizador. Em páginas da web dinâmicas, o conteúdo dos campos de publicidade de banner pode, a partir desse momento,

Petição 870170079583, de 19/10/2017, pág. 121/709

114/425 começar automaticamente a exibir publicidade automotiva - tudo baseado em uma única ação de um visualizador clicando em um link e visualizando um anúncio. As empresas de marketing na Internet vendem essas informações sobre usuários para comerciantes e anunciantes, mesmo sem saber se a coleção do comportamento de um espectador é real ou não intencional.

[00229] Importante, em documentos baseados em hipertexto, grande parte do texto e quase todos os objetos usados para construir uma página da web solicitada não estão incluídos no download HTML inicial de uma página da Web, mas são carregados depois que a página HTML inicial é. Os documentos e objetos não são carregados usando o protocolo de FTP acima mencionado, mas em vez disso utilizam um processo mais dinâmico chamado HTTP ou “protocolo de transferência de hipertexto”. O HTTP representa um aplicativo e um formato de dados que operam na Camada de apresentação 6 e atendendo aos aplicativos da Camada 7, como navegadores web.

[00230] Na Camada 4, a camada de transporte, o HTTP opera em seu próprio n° de porta reservado para acessar a web, especificamente a porta n° 80. Como a porta n° 80 é frequentemente autorizada e desbloqueada por firewalls ou software de segurança, como a porta FTP 21, a porta 80 é um alvo favorito para hackers que desejam obter documentos ou acesso não autorizado ou para iniciar ataques de “negação de serviço”, um ataque malintencionado em um servidor para impedir que ele suporte funções normais, forçando-o a atender solicitações de FTP ou HTTP sem sentido de um hacker ou adversário.

[00231] O procedimento para baixar uma página via HTTP é ilustrado na Figura 35A onde o notebook 35, com um endereço IP “NB” e uma porta ad hoc n° 9999, solicita um documento HTML do servidor web 21A no endereço IP “Sl” usando o pacote IP 590. Para solicitar uma página da Web, o pacote IP 590 especifica a porta n° 80 do servidor web. Em resposta, o servidor web 21A anexa uma carga útil HTML e retorna o pacote IP 591

Petição 870170079583, de 19/10/2017, pág. 122/709

115/425 trocando os endereços e os números de portas do pacote 591, nomeadamente onde a fonte é agora a porta n° 80 no endereço IP 9999 e o destino é agora a porta n° 9999 no endereço IP “NB”. Os dados HTML são transportados usando uma conexão baseada em TCP para garantir alta confiabilidade da carga útil.

[00232] Depois de receber o código HTML, o navegador no notebook lê o arquivo HTML e identifica uma por uma as chamadas IP para baixar conteúdo na página da Web. No exemplo mostrado, a primeira chamada para gráficos é para baixar o conteúdo do mesmo servidor web 21A como o primeiro download, então o notebook 35 prepara o pacote IP 592 novamente para o endereço IP de destino “Sl” e a porta n° 80. Como a porta do notebook é atribuída dinamicamente, a fonte do pacote IP 592 muda para a porta ad hoc # 10001, mas permanece do endereço IP “NB”. Como resposta, o servidor web 21A encapsula JPEGs na carga útil do pacote IP 593, trocando os endereços de origem e de destino para que a fonte seja a porta n° 80 do endereço IP “Sl” com um destino da porta 10001 no endereço IP “NB”. Ao receber o pacote IP 593, o navegador no notebook desenrola a carga útil, converte o formato de gráficos usando a Camada de apresentação 6 em um formato compatível com o navegador, depois dimensiona e instala as imagens na página do navegador, ou seja, o aplicativo da Camada 7.

[00233] Conforme ilustrado, a próxima solicitação de download de objeto na página HTML não é do servidor web Sl, mas de um servidor completamente diferente, especificamente servidor de mídia 511 com um endereço IP “S5”. Como tal, o navegador web no notebook 35 prepara o pacote IP 594 como outra solicitação HTTP para a porta de destino n° 80, desta vez no endereço IP de destino “S5”. Enquanto o endereço IP de origem permanece “Sl”, com a atribuição de porta dinâmica, o n° de porta de origem novamente muda, desta vez para a porta n° 10020. Em resposta, o servidor de mídia 511 prepara o pacote IP 595 a partir de uma fonte com o endereço IP

Petição 870170079583, de 19/10/2017, pág. 123/709

116/425 “S5” e o endereço da porta 80, para o endereço IP mais recente do notebook “NB” e a porta n° 10030. A carga útil anexada encapsulada no pacote IP 595 contém MPEGs. Uma vez recebida, a camada de apresentação 6 prepara os arquivos, entrega-os para o aplicativo da Camada 7, onde o aplicativo do navegador os instala e continua a ler o código HTML e a montar a página da Web até que esteja completa.

[00234] Portanto, usando HTML, o conteúdo de uma página da Web não é construído a partir de um único download como um arquivo enviado usando o FTP, mas é construído usando uma sucessão de chamadas para diferentes servidores, cada um entregando conteúdo específico. Esse conceito é ilustrado graficamente na Figura 35B, onde a página gerada em HTML 591, texto e JPEG 593 são baixados da porta n° 80 do servidor web “Sl”, o vídeo MPEG 595 é baixado da porta n° 80 do servidor de mídia 511 e a foto PNG 596 e JPEG 597 vêm da porta 80 do servidor de arquivo 27. Desta maneira, uma página da Web é construída a partir de múltiplas fontes. Além do código HTML que solicita os vários elementos textuais, gráficos e de áudio e vídeo, não há comando ou controle central responsável pela criação do documento. Se, por exemplo, um servidor exibe uma resposta lenta devido ao seu próprio carregamento de congestionamento de tráfego, a pintura da página 591 pode ser suspensa, parando por algum tempo antes de ser concluída. Essa interrupção pode não ter nada a ver com o hospedeiro da página da Web, por exemplo, o Yahoo, mas pode ser causada pelos servidores vinculados chamados pelas páginas da Web HTML, por exemplo, dos servidores de notícias da CNN ou da Fox.

[00235] Um risco de páginas web HTML é a oportunidade para hackers e malwares coletarem informações sobre um usuário, especificamente se um link for redirecionado para um phishing em um site pirata para informações pessoais, sob as circunstâncias favoráveis de ser um negócio ético válido em sinceras necessidades do endereço da casa, número de cartão

Petição 870170079583, de 19/10/2017, pág. 124/709

117/425 de crédito, PIN, número de segurança social de um usuário, etc.

[00236] A World Wide Web - Uma aplicação extremamente popular, se não universal, de HTML é a navegação na web para documentos disponíveis na World Wide Web, especificamente os endereços da web alcançados digitando um endereço em um navegador começando com as letras “www”. Em operação, cada vez que um usuário digita um endereço da Web, também conhecido como um “localizador de recursos uniforme” ou URL na barra de endereço de um navegador, por exemplo, “http://www.yahoo.com”, o navegador envia uma consulta ao roteador localizado imediatamente acima para determinar o endereço IP alvejado. Esse processo, ilustrado anteriormente na Figura 3, compreende o notebook 60 que envia um pacote de IP para o roteador 62A com uma solicitação de porta n° 53, o número da porta que identifica uma solicitação de serviços para pesquisa de DNS. O roteador 62A encaminha a solicitação de DNS ao roteador do servidor de nomes de domínio 62A, que por sua vez fornece o endereço IP numérico do domínio alvejado. Se, por exemplo, o servidor 66A é o servidor web do Yahoo com um endereço IP numérico “Sll”, o servidor DNS 71 retomará esse endereço IP ao roteador 62A e o pacote IP é construído com um endereço IP “Sll” e uma porta de destino da página da web n° 80.

[00237] Deve-se observar que embora muitos documentos estejam acessíveis na World Wide Web, nem todos os documentos da Internet são postados na web. Algumas páginas da Web, por exemplo, quando acessíveis através de redes públicas, não usam o prefixo www, principalmente para desencorajar os hackers de buscá-los. Outros servidores web utilizam redes privadas ou intranets escondidas atrás de um firewall e são acessíveis apenas por trás do firewall ou através do acesso usando um pipe ou túnel encriptado conhecido como “rede privada virtual” ou VPN. Para entender a propriedade única da World Wide Web, é importante compreender o seu desenvolvimento e evolução, responsável por seus benefícios e força, bem como por suas

Petição 870170079583, de 19/10/2017, pág. 125/709

118/425 deficiências e vulnerabilidades.

[00238] Historicamente, antes da invenção da World Wide Web e do navegador, a comunicação através da Internet baseava-se principalmente no email e em transferências de arquivos usando o protocolo FTP. Então, em 1989, Tim Berners-Lee demonstrou a primeira comunicação bem-sucedida da Internet entre um cliente e um servidor usando “protocolo de transferência de hipertexto” ou HTTP. Posteriormente, no Centro Nacional de Aplicativos de Supercomputação da Universidade de Illinois Urbana-Champaign, Marc Andreesen desenvolveu o primeiro navegador completo chamado Mosaic, conhecido pela sua interface intuitiva pioneira, suporte a vários protocolos de Internet, compatibilidade com ambientes Macintosh e Microsoft Windows, suporte compatível com versões anteriores de protocolos anteriores, como FTP, NNTP e gopher, bem como instalação fácil, estabilidade robusta e boa confiabilidade. De importância fundamental, o Mosaic foi o primeiro navegador a exibir imagens e texto em uma página em vez de abrir gráficos em uma janela separada.

[00239] O Mosaic foi comercializado rapidamente no Netscape Navigator e, em muitos aspectos, responsável por alimentar a revolução da Internet e o uso generalizado de sites para aplicações pessoais e empresariais. Embora inúmeros navegadores existam hoje, o Firefox, um descendente direto do Mosaic e Netscape, bem como o Microsoft Explorer, o Apple Safari e o Google Chrome representam hoje os navegadores mais usados. Outra classe de aplicativo, o mecanismo de pesquisa na web, surgiu simultaneamente para facilitar a busca de documentos e conteúdo na World Wide Web. Mecanismos de pesquisa como Google e Yahoo Search dominam o mercado hoje.

[00240] A medida que as empresas se aproximavam da Internet, o comércio eletrônico nasceu com vendas e compras na web surgindo em sites genéricos como Amazon, eBay, Bames & Noble, Best Buy e recentemente

Petição 870170079583, de 19/10/2017, pág. 126/709

119/425

Alibaba. A fragmentação do mercado logo se seguiu com vendedores especializados em um tipo específico de produto ou serviço, em vez de oferecer um site genérico de comércio eletrônico. Por exemplo, os comerciantes comerciais baseados em compras comparativas de viagens e transporte, como a Priceline, Expedia, Orbitz e Saber, apareceram rapidamente junto com os próprios e-marketplaces dedicados das companhias aéreas. Para os usuários que desejam fazer o download de “conteúdo” que inclui música, vídeo, livros eletrônicos, jogos e software, fornecedores como iTunes e AppStore, Walmart, Amazon MP3, Google Play, Sony Unlimited Music, Kindle Fire e Windows Store oferecem serviços online. Os serviços de transferência contínua de áudio e vídeo, como iTunes, Google Play, Netflix, Hulu Plus, Amazon Prime, juntamente com iHeart radio e os provedores a cabo, como o Comcast Xfinity, estão se tomando cada vez mais populares, especialmente com os serviços WiFi oferecidos em aviões, ônibus, limusines e em terminais e cafeterias em todo o mundo.

[00241] Apesar das preocupações com a privacidade e a segurança, as crianças e os adultos da geração mais nova apresentam uma tremenda quantidade de informações pessoais em sites públicos. Chamada de “mídia social”, a indústria começou com sites que suportam publicação, atualizações e edição de documentos convenientes, onde os indivíduos publicam suas opiniões e experiências pessoais cronologicamente em diários da web ou “blogs”. O YouTube, em seguida, possibilitou os aspirantes a artistas com publicar e distribuir vídeos caseiros. O Facebook expandiu essa tendência, oferecendo recursos de blog cronologicamente combinados com postagens de fotos e vídeos em um formato interativo onde os espectadores de sua página inicial publicam comentários incluindo quando “curtem” algo que leram ou viram. O Facebook também expandiu o gerenciamento de contatos, pesquisando listas de contatos das pessoas para adicionar amigos ao Facebook e permitindo que o proprietário da conta “seja amigo” de alguém solicitando

Petição 870170079583, de 19/10/2017, pág. 127/709

120/425 acesso a sua página inicial ou ignore-os. Ao alcançar os gerentes de contatos pessoais das pessoas, o número de usuários do Facebook cresceu exponencialmente, permitindo que as pessoas com informações de contato desatualizadas redescobrissem umas às outras nas mídias sociais. Os mesmos métodos de mídia social foram então adaptados para encontros, formação de casais ou obtenção de serviços sexuais (legais ou ilegais), e no mundo profissional para os colegas da indústria de contato, por exemplo, usando Linkedln.

[00242] Com base na mesma filosofia de código aberto que as redes com comutação de pacotes de Internet e OSI, a World Wide Web não possui nenhum comando ou controle central e, como tal, permanece desregulamentada, dificultando que qualquer governo ou agência reguladora controle, limite ou censure seu conteúdo. Além disso, ao publicar informações pessoais, tornou-se mais fácil para os criminosos “cercar” um alvo coletando suas informações públicas para adivinhar melhor suas senhas, assistir suas atividades e até rastrear seu paradeiro usando GPS e informações de transações. Em alguns casos, por exemplo, em um serviço de contato e referência de código aberto chamado Craig’s List, predadores sexuais e assassinos dissimulavam sua identidade e intenções para recrutar vítimas de seus crimes perversos. Além de criminosos e hackers que usam a World Wide Web e as mídias sociais para monitorar seus alvos, as recentes revelações de notícias mostraram que os governos também rastreiam e monitoram os emails, chamadas de voz, sites, blogs e até movimentos diários dos cidadãos, sem causa provável ou um mandado aprovando-os para fazê-lo. Um argumento usado para justificar tais intrusões é que a informação livremente distribuída em um site público ou através de uma rede pública é “alvo fácil” e que a necessidade de prevenir preventivamente o crime e o terrorismo antes de acontecer, como “crime futuro” no popular filme “Minority Report”, é, por si só, justificativa para uma vigilância e espionagem tão agressiva.

Petição 870170079583, de 19/10/2017, pág. 128/709

121/425 [00243] Como reação ao roubo de identidade e a tais invasões governamentais indesejadas, os consumidores estão migrando para sites como o Snapchat e os serviços de telefone que denunciam segurança e privacidade aprimoradas, exigindo confirmação ou “autenticação” da outra parte como alguém que você conhece e confia. Essas “zonas de confiança”, como agora as chamam, ainda dependem, no entanto dos métodos de segurança disponíveis para redes de comunicação com comutação de pacotes. Conforme evidenciado na seção de abertura deste pedido, essas redes, protocolos de comunicação, sites e armazenamento de dados não são, no entanto, seguros, caso contrário, não havería tantos casos relatados de crime cibernético na imprensa hoje.

[00244] Aplicativos de E-mail - Um dos aplicativos mais comuns e mais antigos em redes com comutação de pacotes é correio eletrônico ou “email”. Esse processo é ilustrado na Figura 36, onde o notebook 35 que tem um endereço IP numérico “NB” e atribuição de porta dinâmica manda pacote IP de e-mail 601 para servidor de e-mail 600. Além de sua carga útil de e-mail SMTP encapsulada, o pacote IP de e-mail 60 baseado em TCP inclui o endereço IP de destino “S9”, a porta de destino n° 21 ou, altemativamente, a porta n° 465, juntamente com o endereço IP de origem “NB” e sua porta ad hoc n° 10500. Enquanto a porta n° 21 representa serviços de e-mail usando protocolo de transferência de correio simples ou SMPT, a porta rí 465 representa a sua versão “segura” SMTPS com base na tecnologia SSL. Notícias recentes relataram, no entanto, que se descobriu que o SSL é quebrável e não completamente imune aos hackers.

[00245] Em resposta ao recebimento do pacote IP 601 de e-mail, o servidor de e-mail 600 reconhece sua recepção ao retomar o pacote IP 602 contendo a confirmação SMTP enviada para um endereço IP de destino “NB” na porta 10500 do servidor de e-mail 600 no endereço IP de origem “S9” usando a porta n° 21 ou usando a porta SSL n° 46. Enquanto isso, o servidor

Petição 870170079583, de 19/10/2017, pág. 129/709

122/425 de e-mail 600 simultaneamente empurra o e-mail como uma mensagem IMAP no pacote IP 605 do endereço IP de origem “S9” e da porta IMAP n° 220 para o desktop 36 no endereço IP de destino “DT” e porta ad hoc n° 12000. Ao receber a mensagem de e-mail, o desktop 36 confirma a mensagem IMAP ao servidor de e-mail 600 com o pacote IP 604 do endereço IP de origem “DT” na porta n° 12000 para o endereço IP de destino “S9” e a porta 220. Como tal, a entrega de e-mail envolve uma transação de três partes envolvendo o remetente do notebook 35, o servidor de e-mail 600 e o destinatário no desktop 36. Na comunicação, o remetente utiliza um protocolo SMTP e o destinatário da mensagem utiliza o protocolo IMAP para confirmar a mensagem. O intercâmbio IMAP atualiza o banco de dados no servidor e na área de trabalho para garantir a correspondência de seus registros de arquivos. Como o servidor de e-mail atua como um intermediário, há uma oportunidade de interceptar o comunicado, interceptando o notebook para o pacote IP 601 do servidor ou o servidor para o pacote IP 60 do desktop ou hackeando o próprio arquivo armazenado no servidor de e-mail 600. Altemativamente, os aplicativos de “correio antigo simples” ou POP3 também podem ser empregados para entrega de correio, mas sem sincronização do servidor de arquivos.

[00246] Outros Aplicativos da Camada 7 - Além de gerenciamento de arquivos, navegadores Web, servidores de DNS e funções de e-mail, existem inúmeros outros aplicativos, incluindo a emulação de terminal usando Telnet, gerenciamento de rede, drivers periféricos, utilitários de backup, programas de segurança, além de aplicativos de comunicação e difusão. Por exemplo, os aplicativos de backup incluem o “sistema de arquivos de rede” baseado em TCP ou NFS, agora em sua quarta encarnação, bem como software de backup comercial, incluindo versões personalizadas para Android, iOS, Apple Time Machine, Apple iCloud, Carbonite, Barracuda, Dropbox, Google Drive, Microsoft One Drive, Box. Em operação, o armazenamento em nuvem

Petição 870170079583, de 19/10/2017, pág. 130/709

123/425 armazena dados em uma unidade conectada à rede de forma semelhante a um servidor de e-mail. Os dados podem ser recuperados pelo proprietário do arquivo, ou se os privilégios permitirem, por um terceiro. Como as transações de e-mail, existem inúmeras oportunidades para hackear os dados durante o transporte e quando armazenados no servidor.

[00247] Os aplicativos de comunicação e difusão incluem “protocolo de iniciação de sessão” ou SIP, um protocolo de sinalização amplamente usado para controlar sessões de coms de multimídia como voz e VoIP, “Internet relay chat” ou IRC, um protocolo de camada de aplicativo para transferir mensagens na forma de texto, bem como o “protocolo de transferência de notícias em rede” do NNTP, um protocolo de aplicativo usado para transportar artigos de notícias entre servidores de notícias e para postar artigos. As operadoras “over-the-top” ou OTT, como Skype, Line, KakaoTalk, Viper, WhatsApp e outros, utilizam aplicativos personalizados para entregar texto, imagens e voz pela Internet usando VoIP.

[00248] Outros aplicativos incluem drivers periféricos personalizados para impressoras, scanners, câmeras, etc. Os aplicativos de rede incluem “protocolo de gerenciamento de rede simples” ou SNMP, um protocolo padrão da Internet para gerenciar dispositivos em redes IP, incluindo roteadores, comutadores, matrizes de modems e servidores, “protocolo de gateway de fronteira” ou aplicativos BGP como portas externas padronizadas para trocar informações de roteamento e acessibilidade entre sistemas de Internet autônomos e” protocolo de acesso de diretório leve” ou LDAP para gerenciar diretórios, permitindo o compartilhamento de informações sobre serviços, usuários, sistemas, redes e aplicativos disponíveis em redes privadas e intranets. Uma característica dos aplicativos conectados ao LDAP é que um único login fornece acesso a vários dispositivos conectados em uma única intranet. Outros aplicativos de rede incluem CMIP, ou o “protocolo comum de informação de gerenciamento”.

Petição 870170079583, de 19/10/2017, pág. 131/709

124/425 [00249] Outro aplicativo de rede importante é DHCP ou “protocolo de configuração do hospedeiro dinâmico”. O DHCP é usado para solicitar endereços IP de um servidor de rede que vão desde redes domésticas e roteadores WiFi para redes corporativas, redes de campus e regiões ISPs, ou seja, provedores de serviços de Internet. O DHCP é usado tanto para IPv4 como para IPv6.

Qualidade de Serviço [00250] Ao considerar o desempenho de uma rede, vários fatores são considerados, nomeadamente, • Taxa de dados, ou seja, largura de banda • Qualidade de serviço • Segurança de rede e dados • Privacidade do usuário [00251] Das considerações acima, as taxas de dados são facilmente quantificadas em milhões de bits por segundo ou Mbps. A qualidade do serviço ou QoS, por outro lado, inclui vários fatores, incluindo latência, qualidade de som, estabilidade da rede, operação intermitente ou interrupções frequentes do serviço, falhas de sincronização ou conexão, baixa potência do sinal, aplicativos travados e redundância funcional da rede durante condições de emergência.

[00252] Para programas, arquivos e verificações relacionadas à segurança, a precisão dos dados é um fator crítico. Os fatores que são importantes dependem da natureza da carga útil que está sendo transportada em uma rede com comutação de pacotes. Em contraste, para voz e vídeo que compõem aplicativos em tempo real, os fatores que afetam o tempo de entrega de pacotes são fundamentais. Os fatores de qualidade e como eles afetam vários aplicativos, como vídeo, voz, dados e texto, são ilustrados de maneira qualitativa na tabela mostrada na Figura 37. Uma boa condição de rede tipificada por uma forma de onda de pacote IP de taxa de dados alta

Petição 870170079583, de 19/10/2017, pág. 132/709

125/425 consistente 610A é aquela em que há atrasos de tempo mínimos, intensidade do sinal forte e limpa, sem distorção de sinal, operação estável e sem perda de transmissão de pacotes. As redes intermitentes representadas pela menor forma de onda de pacotes de taxa de dados 610B com intermitências ocasionais afetam as funções de vídeo de forma mais significativa, causando downloads de vídeo dolorosamente lentos e tomando inaceitável a transferência contínua de vídeo. As redes congestionadas que operam taxas de transmissão de dados efetivas mais baixas com interrupções de curto prazo regulares exemplificadas pela forma de onda de pacotes IP 610C não só degradam severamente o vídeo com movimentos intermitentes irregulares, imagens difusas e cor e brilho impróprios, mas também começam a degradar a comunicação de som ou voz com distorção, eco, e até frases inteiras perdidas de uma conversa ou trilha sonora. Em redes congestionadas, no entanto, os dados ainda podem ser entregues usando TCP por solicitações repetidas de redifusões.

[00253] Ilustradas pela forma de onda de pacote IP 610D, as redes instáveis apresentam baixas taxas de transferência de dados com inúmeras interrupções de dados de durações imprevisíveis. As redes instáveis também incluem pacotes IP corrompidos, representados pelos pacotes sombreados em cor escura na forma de onda 610D, que no transporte baseado em TCP devem ser reenviados e no transporte UDP são simplesmente descartados como dados corrompidos ou impróprios. Em algum nível de degradação da rede, mesmo os e-mails tomam-se intermitentes e a sincronização de arquivo IMAP falha. Devido ao seu formato de dados leve, a maioria dos SMS e mensagens de texto serão entregues, embora com algum atraso na entrega, mesmo com grave congestionamento da rede, mas os anexos não conseguirão fazer o download. Em redes instáveis, todo aplicativo falhará e pode até resultar em congelamento de uma operação normal de computador ou celular, esperando que um arquivo esperado seja entregue. Nesses casos, o vídeo congela, o som

Petição 870170079583, de 19/10/2017, pág. 133/709

126/425 toma-se tão picotado que se toma ininteligível, as conexões VoIP caem repetidamente, até mais de uma dúzia de vezes, em uma chamada de alguns minutos e, em alguns casos, não conseguem se conectar completamente. Da mesma forma, os e-mails ficam travados ou congelados com ícones de computador girando e girando interminavelmente. As barras de progresso param totalmente. Mesmo as mensagens de texto são rejeitadas e “não entregues”.

[00254] Embora muitos fatores possam contribuir para a instabilidade da rede, incluindo falhas de energia em servidores chave e super POPs, volumes de chamadas sobrecarregados, transmissão de arquivos de dados enormes ou filmes UHD e durante ataques significativos de negação de serviço em servidores ou redes selecionados, os principais fatores usados para rastrear a QoS de uma rede são a taxa de queda de pacotes e latência de pacotes. Os pacotes descartados ocorrem quando um pacote IP não pode ser entregue e “esgota” como um imortal, ou onde um roteador ou servidor detecta um erro de soma de verificação no cabeçalho do pacote IP. Se o pacote usar UDP, o pacote é perdido e o aplicativo da Camada 7 deve ser inteligente o suficiente para saber que algo foi perdido. Se TCP for usado para o transporte da Camada 4, o pacote será solicitado para a retransmissão, além de adicionar o carregamento a uma rede potencialmente já sobrecarregada.

[00255] O outro fator que determina a QoS, atraso de propagação, pode ser medido quantitativamente de várias maneiras, seja como um atraso de pacote IP de nó para nó, ou unidirecionalmente de origem para destino, ou, altemativamente, como o atraso de ida e volta de origem para destino e de volta à origem. Os efeitos do atraso de propagação na entrega de pacotes usando protocolos de transporte UDP e TCP são contrastados na Figura 38. A medida que o atraso da propagação da rede intermodal aumenta, o tempo necessário para realizar uma comunicação de ida e volta, como na conversação VoIP, aumenta. No caso do transporte UDP 621, o atraso de ida

Petição 870170079583, de 19/10/2017, pág. 134/709

127/425 e volta aumenta linearmente com o atraso de propagação. Uma vez que longos atrasos de propagação se correlacionam com taxas de erro de bit mais altas, o número de pacotes UDP perdidos aumenta, mas, como o UDP solicita o reenvio de pacotes descartados, o tempo de ida e volta permanece linear com atraso aumentado. O transporte TCP 620 mostra um tempo de ida e volta substancialmente mais longo para cada pacote enviado do que o UDP devido ao handshaking necessário para confirmar a entrega do pacote. Se a taxa de erro de bit permanece baixa e a maioria dos pacotes não requer reenvio, o atraso de propagação TCP aumenta linearmente com atraso de propagação intermodal, mas a uma taxa maior, ou seja, a inclinação da linha do TCP 620. Se, no entanto, a rede de comunicação se tornar instável à medida que o atraso de propagação aumenta, então o tempo de ida e volta resultante do transporte TCP mostrado pela linha 622 cresce exponencialmente devido à necessidade do protocolo de retransmissão de pacotes descartados. Como tal, o TCP é contraindicado para aplicativos sensíveis ao tempo, como VoIP e transferência contínua de vídeo.

[00256] Uma vez que toda a comunicação de pacotes é estatística, sem dois pacotes com o mesmo tempo de propagação, a melhor forma de estimar a latência de única direção de uma rede é a medição do tempo de ida e volta de um grande número de pacotes IP de tamanho similar e dividindo por dois para estimar a latência de direção única. Latências inferiores a 100ms são excelentes, até 200ms são consideradas muito boas, e até 300ms ainda são consideradas aceitáveis. Para atrasos de propagação de 500 ms, facilmente encontrados por aplicativos OTT em execução na internet, os atrasos tomamse desconfortáveis para os usuários e interferem em conversas normais. Na comunicação de voz, em particular, tais atrasos de propagação longos soam “ruins” e podem resultar em reverberação, criando um áudio de som “vibrante” ou metálico, interrompendo a conversa normal enquanto a outra parte aguarda para obter sua resposta ao seu último comentário e

Petição 870170079583, de 19/10/2017, pág. 135/709

128/425 possivelmente resultando em discurso deturpaod ou ininteligível.

[00257] Para ser claro, a latência de única direção de uma comunicação é diferente do teste de ping realizado pelo utilitário ICMP da Camada 3 (como o teste de rede livre em http://www.speedtest.net) em parte porque os pacotes ICMP são geralmente leves em relação aos pacotes IP reais, porque o teste de ping não emprega o recurso de “solicitação para reenviar” do TCP e, por não haver garantia sobre uma rede pública da Internet de que a rota do teste de ping coincidirá com a rota de pacotes real. Em essência, quando o ping experimenta um longo atraso, algo está errado com a rede ou algum enlace entre o dispositivo e a rede, por exemplo, no roteador WiFi, ou na última milha, mas um bom resultado de ping, por si só, não pode garantir um baixo atraso de propagação de um pacote real.

[00258] A fim de melhorar a segurança da rede, os métodos de encriptação e verificação são frequentemente empregados para evitar hackear, detectar ou espionar. Mas encriptação pesada e vários protocolos de encriptação de chaves constantemente reconfirmando a identidade de partes de conversas criam atrasos adicionais e, assim, aumentam a latência efetiva da rede, degradando a QoS à custa de melhorar a segurança.

Segurança cibernética e privacidade cibernética [00259] As outras duas principais considerações nas comunicações são a segurança cibernética e privacidade cibernética. Embora relacionados, os dois problemas são um pouco diferentes. “A segurança cibernética, incluindo segurança de rede, segurança do computador e comunicações seguras, compreende métodos empregados para monitorar, interceptar e impedir acesso não autorizado, uso indevido, modificação ou negação de um computador ou rede de comunicações, recursos acessíveis pela rede ou os dados contidos nos dispositivos conectados à rede. Esses dados podem incluir informações pessoais, dados biométricos, registros financeiros, registros de saúde, comunicações privadas e gravações, bem como imagens fotográficas

Petição 870170079583, de 19/10/2017, pág. 136/709

129/425 privadas e gravações de vídeo. Os dispositivos conectados à rede incluem telefones celulares, tablets, notebooks, desktops, servidores de arquivos, servidores de e-mail, servidores web, bancos de dados, armazenamento de dados pessoais, armazenamento em nuvem, aparelhos conectados à Internet, carros conectados, bem como dispositivos publicamente compartilhados usados por um indivíduo como terminais de ponto de venda ou POS, bombas de gás, caixas eletrônicos, etc.

[00260] Claramente, criminosos cibernéticos e hackers de computador que tentam obter acesso não autorizado a informações seguras estão cometendo um crime. Se os dados obtidos ilegalmente contiverem informações privadas pessoais, o ataque também é uma violação da privacidade pessoal da vítima. Por outro lado, no entanto, as violações da privacidade podem ocorrer sem a necessidade de crime cibernético e, na verdade, podem ser imparáveis. No mundo conectado à rede de hoje, o uso não autorizado de informações privadas de uma pessoa pode ocorrer sem a necessidade de uma violação de segurança. Em muitos casos, as empresas que coletam dados para um propósito podem optar por vender sua base de dados para outros clientes interessados em usar os dados para outra finalidade. Mesmo quando a Microsoft comprou o Hotmail, era bem sabido que a lista de correspondência foi vendida para anunciantes interessados em enviar spam para clientes potenciais. Se essas ações devem ser consideradas como uma violação da privacidade cibernética é uma questão de opinião.

[00261] A “privacidade cibernética”, incluindo a privacidade da Internet, a privacidade do computador e a comunicação privada envolve o direito ou o mandato pessoal de um indivíduo de controlar suas informações pessoais e privadas e seu uso, incluindo a coleta, armazenamento, exibição ou compartilhamento de informações com outros. A informação privada pode envolver informações de identidade pessoal, incluindo altura, peso, idade, impressões digitais, tipo de sangue, número da carteira de motorista, número

Petição 870170079583, de 19/10/2017, pág. 137/709

130/425 de passaporte, número de seguridade social ou qualquer informação pessoal útil para identificar um indivíduo, mesmo sem saber o nome deles. No futuro, mesmo o mapa de DNA de um indivíduo pode se tomar uma questão de registro legal. Além de informações de identificação pessoal, informações privadas não pessoais podem incluir quais marcas de roupas que compramos, quais sites frequentamos, se fumamos, bebemos ou possuímos uma arma, que tipo de carro conduzimos, quais doenças podemos ter contraído em nossa vida, se a nossa família tem um histórico de certas doenças ou dores, e até mesmo por que tipo de pessoas somos atraídos.

[00262] Essas informações privadas, quando combinadas com registros públicos relacionados a renda pessoal, impostos, ações de propriedade, registros criminais, violações de trânsito e qualquer informação publicada em sites de redes sociais, constituem um conjunto de dados poderoso para as partes interessadas. A coleção intencional de grandes conjuntos de dados que capturam informações demográficas, pessoais, financeiras, biomédicas e comportamentais e minando os dados para padrões, tendências e correlações estatísticas de hoje são conhecidos como “grandes dados”. O setor de saúde, incluindo companhias de seguros, prestadores de cuidados de saúde, empresas farmacêuticas e até mesmo advogados de negligência, estão intensamente interessados em informações pessoais armazenadas como dados grandes. As empresas de produtos automotivos e de consumo também querem acesso a essas bases de dados para direcionar sua estratégia de mercado e orçamentos publicitários. Nas eleições recentes, até mesmo os políticos começaram a procurar dados importantes para entender melhor as opiniões dos eleitores e os pontos de controvérsia política a serem evitados.

[00263] A questão da privacidade cibernética não é se dados grandes hoje capturam informações pessoais (já é procedimento padrão), mas se o conjunto de dados retém seu nome ou informações de identidade pessoal suficientes para identificá-lo mesmo sem saber seu nome. Por exemplo,

Petição 870170079583, de 19/10/2017, pág. 138/709

131/425 originalmente, o governo dos EUA declarou que as informações pessoais coletadas pelo site health.gov usadas para se inscrever na Lei de Cuidado ao Paciente serão destruídas uma vez que as contas médicas privadas foram configuradas. Em seguida, em uma revelação recente, divulgou-se que uma corporação terceirizada que facilitava a coleta de dados para o governo dos Estados Unidos havia assinado anteriormente um contrato do governo que lhe concedia o direito de reter e usar os dados coletados, o que significa que os dados privados pessoais divulgados ao governo dos EUA não são, de fato, privados.

[00264] Como ponto final, deve-se mencionar que a vigilância é praticada tanto pelos governos como pelos sindicatos do crime usando métodos tecnológicos similares. Embora os criminosos claramente não tenham o direito legal de reunir esses dados, o caso da vigilância não autorizada do governo é mais sombrio, variando dramaticamente de país para país. A NSA dos Estados Unidos, por exemplo, aplicou repetidamente pressão sobre a Apple, Google, Microsoft e outros para fornecer acesso a suas nuvens e bancos de dados. Mesmo os funcionários do governo tiveram conversas e comunicados ouvidos e interceptados. Quando perguntado se o Skype, uma divisão da Microsoft, monitora o conteúdo de seus chamadores, o diretor de informática da empresa respondeu abruptamente “sem comentários”.

[00265] Métodos de Crime Cibernético e Vigilância Cibernética Concentrando-se no tema da segurança cibernética, existem muitos meios para obter acesso não autorizado a dados de dispositivos, redes e computadores. Como um exemplo, a Figura 39 ilustra uma variedade de tecnologias de malware e hackers usadas para cometer crime cibernético e alcançar intrusões não autorizadas em redes supostamente seguras.

[00266] Por exemplo, um indivíduo que usa um tablet 33 conectado à Internet pode querer fazer uma ligação para o telefone do escritório comercial 9, enviar uma mensagem para a TV 36, ligar para um amigo no país ainda

Petição 870170079583, de 19/10/2017, pág. 139/709

132/425 usando uma rede POTS com comutação de circuitos com o telefone 6 ou baixar arquivos do armazenamento web 20 ou enviar e-mails através do servidor de e-mail 21A. Embora todos os aplicativos representem aplicativos normais da internet e interconectividade global, muitas oportunidades de vigilância, crime cibernético, fraude e roubo de identidade existem através de toda a rede.

[00267] Por exemplo, para o tablet 33 que se conecta à rede através da antena de rádio celular 18 e da estação de base LTE 17 ou através da antena de rádio de curto alcance 26 e da estação base de WiFi pública 100, um intruso não autorizado pode monitorar o enlace de rádio. Da mesma forma, a chamada LTE 28 pode ser monitorada ou “detectada” por um receptor de rádio interceptante ou um detector 632. O mesmo detector 632 pode ser ajustado para monitorar as comunicações WiFi 29 e na extremidade receptora no cabo 105 entre o cabo CMTS 101 e o modem a cabo 103.

[00268] Em alguns casos, a chamada LTE também pode ser interceptada por uma torre falsa pirata 638, estabelecendo um trajeto de comunicação desviado 639 entre o tablet 38 e a torre celular 18. As comunicações enviadas através da rede com comutação de pacotes para o roteador 27, o servidor 21A e o servidor 21B e o armazenamento em nuvem 20 também estão sujeitas aos ataques man-in-the-middle 630. Os grampos telefônicos 637 podem interceptar chamadas na linha POTS do gateway PSTN 3 para o telefone 6 e também na linha PBX corporativa do servidor 8 do PBX para o telefone do escritório 9.

[00269] Através de uma série de falhas de segurança, o spyware 631 pode instalar-se no tablet 33, no roteador 27, na ponte PSTN 3, no armazenamento em nuvem 20, no cabo CMTS 101 ou no desktop 36. O cavalo de troia 634 pode se instalar no tablet 33 ou desktop 36 para phish para senhas. O worm 636 também pode ser usado para atacar o desktop 36, especialmente se o computador executa o sistema operacional Microsoft com

Petição 870170079583, de 19/10/2017, pág. 140/709

133/425 capacidade X ativa habilitada. Finalmente, para lançar ataques de negação de serviço, o vírus 633 pode atacar qualquer número de dispositivos conectados em rede, incluindo servidores com 21 A, 21Be21C, desktop 36 e tablet 33.

[00270] Na Figura 40, o gráfico é simplificado e exibido em relação a qual porção da rede de comunicação e infra-estrutura que cada forma de malware opera. Na nuvem 22 mostrada contendo o servidor 21A, o enlace de fibra 23 e o servidor 21B, ataques cibernéticos podem incluir vírus 633, ataques man-in-the-middle 630, vigilância do governo 640 e ataques de negação de serviço 641. A última milha da rede de comunicação oferece uma oportunidade ainda maior para malwares e ataques cibernéticos, divididos em três seções, a rede/companhia telefônica local, o último enlace e o dispositivo. A rede/companhia telefônica local, conforme mostrado, inclui fibra de alta velocidade 24, roteador 27, cabo CMTS 101, cabo/fibra 105, modem a cabo 103, antena WiFi 26 e torre de rádio LTE 25. Nesta parte da rede, o detector de rádio 632, o spyware 631, o vírus 633 e os ataques man-in-the-middle 630 são todos possíveis.

[00271] No último enlace, a conexão local ao dispositivo, a conexão de rede inclui o enlace fixo 104, WiFi 29 e o enlace LTE/rádio 28 sujeito a spyware 631, detector de rádio 632, grampo telefônico 637 e torre falsa 638. O próprio dispositivo, incluindo, por exemplo, o tablet 33, o notebook 35, o desktop 36, mas que também pode incluir smartphones, TVs inteligentes, terminais POS, etc. está sujeito a uma série de ataques, incluindo spy ware 631, cavalo de Troia 634, vírus 633 e worm 636.

[00272] Tais métodos de vigilância e dispositivos de espionagem estão disponíveis no mercado comercial e on-line. A Figura 41A ilustra dois desses dispositivos, o dispositivo 650 usado para monitorar o tráfego em redes de área local Ethernet e o dispositivo 651 provendo os mesmos recursos para monitorar dados WiFi. Dois dispositivos comercialmente disponíveis, 652 e 653, usados para monitorar comunicações celulares são mostrados na Figura

Petição 870170079583, de 19/10/2017, pág. 141/709

134/425

41B. Embora no gráfico de rede da Figura 39, a detecção 632 de conexões de nuvem de fibra óptica 23 não foi identificada como uma ameaça, durante a pesquisa era evidente que um detector de invasão de dados não invasivo para comunicações ópticas, ou seja, um onde a fibra não precisa ser cortada ou sua operação normal prejudicada mesmo temporariamente, agora existe. Como mostrado na Figura 41C, o dispositivo 655 executa a detecção de comunicação de fibra óptica capturando vazamento de luz em uma curva acentuada na fibra óptica 656. Desde que o revestimento protetor seja removido de antemão, a inserção da fibra óptica 656 dentro de uma braçadeira no dispositivo 655 força a fibra 656 em um pequeno raio em U onde a luz 657 escapa para o fotossensor 659 que é transportado pelo cabeamento eletrônico 660 para o laptop 661 para análise.

[00273] Além de usar métodos de hackeamento e vigilância, uma grande variedade de spyware comercial está prontamente disponível para monitorar conversas de telefone celular e comunicações na Internet. A tabela mostrada na Figura 42 compara a funcionalidade dos 10 programas de spyware mais bem avaliados, benefícios de publicidade, como a habilidade de espionar beneficentemente seus funcionários, seus filhos e seu cônjuge. O conjunto de recursos é surpreendentemente abrangente, incluindo espionagem de chamadas, fotos e vídeos, mensagens SMS/MMS, mensagens instantâneas de terceiros, e-mails, rastreamento de localização GPS, uso da Internet, caderno de endereços, eventos do calendário, erros, aplicativos de controle e até recursos de controle remoto, juntamente com um número assustadoramente convincente de formas de violar a privacidade cibernética.

[00274] Na verdade, os ataques cibernéticos tomaram-se muito frequentes; são rastreados diariamente. Um desses sites de rastreamento, mostrado na Figura 43, exibe brechas de segurança e ataques digitais em um mapa global incluindo a localização, duração e tipo de ataque montado. O lançamento de um ataque cibernético geralmente envolve várias etapas ou

Petição 870170079583, de 19/10/2017, pág. 142/709

135/425 combinação de técnicas, incluindo:

• Detecção de pacotes IP • Interrogação de portas • Perfilagem • Impostores • Sequestro de pacotes • Infecções cibernéticas • Vigilância • Administração de piratas [00275] Detecção de Pacotes IP - Usando dispositivos de monitoramento de rádio, um criminoso cibernético pode obter informações significativas sobre um usuário, suas transações e suas contas. Como mostrado na Figura 44, os conteúdos de um pacote IP podem ser obtidos ou “detectados” em qualquer lugar no trajeto entre dois usuários. Por exemplo, quando o usuário 675A envia um arquivo, por exemplo, uma foto ou texto, no pacote IP 670 do seu notebook 35 para o telefone celular 32 de seu amigo 675B, o pirata cibernético 630 pode descobrir o pacote IP em qualquer número de lugares, interceptando o último enlace do remetente 673A, interceptando a rede local do remetente 672A, monitorando a nuvem 671, interceptando a companhia telefônica local 672B do destinatário, ou interceptando o último enlace 673B do receptor. Os dados observáveis contidos no pacote IP interceptado 670 incluem os endereços MAC da Camada 2 dos dispositivos usados na comunicação, os endereços da Camada 3 do remetente da parte receptora, isto é, o destino do pacote, incluindo o protocolo de transporte, por exemplo, UDP, TCP, etc. sendo usados. O pacote IP também contém o número da porta da Camada 4 dos dispositivos de envio e recepção que potencialmente definem o tipo de serviço que está sendo solicitado e o próprio arquivo de dados. Se o arquivo não estiver encriptado, os dados contidos no arquivo também podem ser lidos diretamente pelo pirata

Petição 870170079583, de 19/10/2017, pág. 143/709

136/425 cibernético 630.

[00276] Se a carga útil não estiver encriptada, informações de texto como números de conta, sequências de login e senhas podem ser lidas e, se valiosas, roubadas e pervertidas para fins criminosos. Se a carga útil contiver informações de vídeo ou pictográficas, é necessário algum trabalho adicional para determinar qual formato de aplicativo de Camada 6 o conteúdo emprega, mas, uma vez identificado, o conteúdo pode ser visualizado, postado publicamente ou possivelmente usado para chantagear uma ou ambas as partes da comunicação. Tais ataques cibernéticos são chamados de “ataque man-in-the-middle” (homem no meio) porque o pirata cibernético não conhece pessoalmente nenhuma das partes da comunicação.

[00277] Conforme descrito anteriormente, uma vez que o roteamento de pacotes IP na nuvem é imprevisível, o monitoramento da nuvem 671 é mais difícil porque o pirata cibernético 630 deve capturar a informação importante do pacote IP quando ele o encontra pela primeira vez, porque os pacotes subsequentes podem não seguir a mesma rota e o pacote detectado. Interceptar dados na última milha tem maior probabilidade de observar uma sucessão de pacotes relacionados que compõem a mesma conversa, porque os roteadores locais normalmente seguem uma tabela de roteamento prescrita, pelo menos até que os pacotes atinjam um POP fora do próprio operador do cliente. Por exemplo, um cliente da Comcast provavelmente passará os pacotes IP até a cadeia de roteamento usando uma rede inteiramente Comcast até que o pacote se mova geograficamente para além do alcance da Comcast e da região do serviço ao cliente.

[00278] Se uma sucessão de pacotes entre os mesmos dois endereços IP ocorrer por um tempo suficientemente longo, uma conversa inteira pode ser recriada de forma fragmentada. Por exemplo, se as mensagens de texto SMS forem passadas pela mesma rede na última milha, o pirata cibernético 630 pode identificar através dos endereços IP e dos números de porta que

Petição 870170079583, de 19/10/2017, pág. 144/709

137/425 vários pacotes IP que transportam o texto representam uma conversa entre os mesmos dois dispositivos, ou seja, o celular 32 e o notebook 35. Assim, mesmo que um número de conta e uma senha fossem enviados por mensagens de texto em mensagens diferentes ou enviados de forma incompleta por vários pacotes, a consistência dos identificadores de pacotes ainda permite que um pirata cibernético remonte a conversa e roube as informações da conta. Uma vez que as informações da conta são roubadas, eles podem transferir dinheiro para um banco fora da costa ou mesmo usurpar a autoridade da conta alterando a senha da conta e questões de segurança, ou seja, usando roubo de identidade temporariamente.

[00279] Mesmo que a carga útil esteja encriptada, o resto do pacote IP 670, incluindo os endereços IP e os números da porta, não está. Depois de detectar repetidamente uma grande quantidade de pacotes de IP, um pirata cibernético com acesso a um poder de computação suficiente pode, através da força bruta, tentar sistematicamente cada combinação até quebrar a senha de encriptação. Uma vez que a chave está quebrada, o pacote e todos os pacotes subsequentes podem ser descriptografados e usados pelo pirata cibernético 630. A probabilidade de quebrar uma senha de login por “adivinhação de senha” melhora grandemente se a detecção de pacotes for combinada com a “perfilagem” de conta e usuário descrita abaixo. Observa-se que nos “ataques man-in-the-middle”, os dispositivos de comunicação normalmente não estão envolvidos porque o pirata cibernético não tem acesso direto a eles.

[00280] Interrogação de Portas - Outro método para invadir um dispositivo é usar seu endereço IP para interrogar muitas portas da Camada 4 e ver se qualquer solicitação recebe uma resposta. Como ilustrado na Figura 45, uma vez que o pirata cibernético 680 se identifica a partir de detecção de pacotes ou outros meios diferentes do telefone celular 32 com um endereço IP “CP” é o dispositivo alvo, o pirata cibernético 680 lança uma sequência de interrogações para portas no telefone celular 32 procurando qualquer porta

Petição 870170079583, de 19/10/2017, pág. 145/709

138/425 aberta ou não segura, porta de serviço ou manutenção ou backdoor de aplicativos. Enquanto o programa de interrogação de um hacker pode fazer um ciclo sistematicamente por cada n° de porta, os ataques geralmente se concentram em portas notoriamente vulneráveis, como a porta n° 7 para ping, a porta n° 21 para FTP, a porta n° 23 para a emulação de terminal telnet, a porta n° 25 para e-mail simples e assim por diante. Conforme mostrado, ao enviar pacotes sucessivamente 680A, 680B, 680C e 680D, o pirata cibernético 660 aguarda uma resposta do telefone celular 32, que neste exemplo ocorreu da solicitação 680D. Cada vez que uma resposta é enviada, o pirata aprende mais sobre o sistema operacional do dispositivo alvejado.

[00281] No processo de interrogação de porta, o pirata cibernético 630 não quer expor sua identidade real, então usam um pseudoendereço disfarçado, listado simbolicamente aqui como “PA” para receber mensagens, mas que não é rastreável até eles pessoalmente. Altemativamente, os criminosos cibernéticos podem usar um computador e uma conta roubados, então parece que outra pessoa está tentando hackear o dispositivo alvejado e, se rastreado, leva os investigadores a uma pessoa inocente e não a eles.

[00282] Perfilagem - A perfilagem de usuário e conta é o processo em que um pirata cibernético executa pesquisa usando informações publicamente disponíveis para aprender sobre um alvo, suas contas e seu histórico pessoal, a fim de quebrar senhas, identificar contas e determinar ativos. Uma vez que um hacker obtém o endereço IP de um alvo usando detecção ou outros meios, o utilitário traceroute pode ser usado para encontrar o servidor DNS da conta do dispositivo. Então, utilizando a função “Quem é” na Internet, o nome do proprietário da conta pode ser descoberto. No perfil, um criminoso cibernético pesquisa na Internet para reunir todas as informações disponíveis sobre o proprietário da conta. As fontes de informação incluem registros públicos, tais como escrituras públicas, cadastro de automóveis, casamentos e divórcios, ônus fiscais, bilhetes de estacionamento, violações de trânsito, registros

Petição 870170079583, de 19/10/2017, pág. 146/709

139/425 criminais, etc. Em muitos casos, sites de universidades e sociedades profissionais também incluem endereço residencial, endereços de e-mail, números de telefone e data de nascimento de um indivíduo. Ao pesquisar sites de redes sociais como Facebook, Linked In, Twitter e outros, um criminoso cibernético pode acumular informações detalhadas e significativas, incluindo familiares e amigos, nomes de animais de estimação, endereços domésticos anteriores, colegas de classe, eventos importantes na vida de alguém, bem como arquivos fotográficos e de vídeo, incluindo eventos embaraçosos, segredos de família e inimigos pessoais.

[00283] O próximo passo do pirata cibernético é usar este perfil para “adivinhar” as senhas de um usuário com base em seu perfil para hackear o dispositivo alvo e outras contas do mesmo indivíduo. Uma vez que um criminoso cibernético quebra a senha de um dispositivo, a probabilidade é grande de que consigam invadir outras contas porque as pessoas tendem a reutilizar suas senhas para facilitar a memorização. Nesse ponto, pode ser possível roubar a identidade de uma pessoa, transferir dinheiro, tomá-la alvo de investigações policiais e, essencialmente, destruir a vida de alguém ao roubar toda a sua riqueza. Por exemplo, conforme descrito na seção de abertura desta descrição, acumulando uma longa lista de senhas de contas roubadas, os criminosos cibernéticos usaram as mesmas senhas para comprar ilegalmente milhões de dólares de ingressos premium para concertos e eventos esportivos usando as mesmas senhas e informações de login.

[00284] Impostores - Quando um pirata cibernético personifica alguém que não é ou usa credenciais de segurança cibernética obtidas ilegalmente para obter acesso à comunicação e a arquivos sob a falsa pretensão de ser um agente ou dispositivo autorizado, o pirata cibernético está agindo como um “impostor”. O tipo impostor de ataque cibernético pode ocorrer quando um criminoso cibernético tem informações suficientes ou acessa a conta de um indivíduo para usurpar a conta de uma vítima, enviando mensagens em seu

Petição 870170079583, de 19/10/2017, pág. 147/709

140 / 425 nome e deturpando-as como o proprietário da conta hackeada. Recentemente, por exemplo, um amigo pessoal de um dos inventores teve sua conta de mensagens pessoais do “Line” hackeada. Depois de assumir a conta, o criminoso cibernético enviou mensagens deturpadas a seus amigos dizendo que “ela tinha sofrido um acidente de carro e precisava de dinheiro como um empréstimo de emergência”, incluindo instruções de transferência para onde enviar o dinheiro. Não sabendo que a conta havia sido hackeada, seus amigos achavam que o pedido era real e se apressaram em ajudá-la financeiramente. Para evitar suspeitas, o pedido enviado a cada amigo era inferior a $1.000 USD. Felizmente, pouco antes da transferência de dinheiro, uma de suas amigas a ligou para verificar as informações de transferência, e a fraude foi descoberta. Sem a ligação, ninguém nunca saberiaa que os pedidos eram de um impostor e o proprietário da conta Line nunca sabería que a transferência tinha sido enviada ou mesmo solicitada.

[00285] Outra forma de deturpação ocorre quando um dispositivo concedeu privilégios de segurança e está habilitado para trocar informações com um servidor ou outro dispositivo conectado à rede e, por algum meio, um dispositivo pirata cibernético se disfarça como o servidor autorizado, pelo qual o dispositivo da vítima entrega voluntariamente arquivos e informações para o servidor pirata que não percebeu que o servidor é um impostor. Esse método foi supostamente usado para atrair celebridades a fazer backup de arquivos de imagens particulares com iCloud, exceto que a nuvem de backup era um impostor.

[00286] Outra forma de impostor ocorre quando alguém com acesso físico ao telefone de uma pessoa ou navegador aberto realiza uma transação de impostor, como enviar um e-mail, atender uma chamada telefônica, enviar uma mensagem de texto da conta ou dispositivo de outra pessoa. A parte receptora presume que está conectada a um dispositivo ou conta conhecida, que a pessoa que opera esse dispositivo ou conta é seu dono. O impostor pode

Petição 870170079583, de 19/10/2017, pág. 148/709

141/425 ser uma brincadeira, como um amigo publicando comentários embaraçosos do Facebook ou pode ser de natureza mais pessoal, onde o cônjuge de alguém responde chamadas pessoais ou intercepta mensagens de texto privadas de natureza privada. O resultado do acesso não autorizado pode levar ao ciúme, ao divórcio e aos processos legais vingativos. Deixar um dispositivo temporariamente sem supervisão em um escritório ou café, por exemplo, para correr para o banheiro, apresenta outro risco para um impostor acessar rapidamente informações pessoais ou corporativas, enviar e-mails não autorizados, transferir arquivos ou baixar algum tipo de malware no dispositivo, conforme descrito na seção a seguir intitulada “infecções”.

[00287] O ataque cibernético baseado em impostores também é significativo quando um dispositivo é roubado. Em tais casos, mesmo que o dispositivo esteja desconectado, o ladrão tem muito tempo para quebrar o código de login. O recurso “encontrar o meu computador”, que deve localizar o dispositivo roubado na rede e limpar os arquivos de um computador na primeira vez que o pirata cibernético faz logon no dispositivo, já não funciona porque os criminosos experientes em tecnologia hoje sabem ativar o dispositivo apenas onde não há conexão celular ou WiFi. Esse risco é especialmente grande no caso dos telefones celulares, onde a segurança da linha é um número de identificação pessoal simples de quatro dígitos ou PIN. E apenas uma questão de tempo para quebrar um PIN, pois existem apenas 9999 combinações possíveis.

[00288] O problema principal ao proteger qualquer dispositivo é impedir o acesso a impostores. Evitar impostores requer um meio robusto para autenticar a identidade de um usuário em intervalos regulares e para garantir que eles só estão autorizados a acessar as informações e os privilégios de que precisam. A segurança do dispositivo muitas vezes é o elo mais fraco da cadeia. Quando a segurança de um dispositivo é derrotada, a necessidade de segurança de rede robusta é um ponto de discussão.

Petição 870170079583, de 19/10/2017, pág. 149/709

142 / 425 [00289] Sequestro de Pacotes - O sequestro de pacotes compreende um ataque cibernético onde o fluxo normal de pacotes através da rede é desviado através de um dispositivo hostil. Esse exemplo é mostrado na Figura 46, onde o notebook 35 com um endereço IP “NB” e uma porta ad hoc n° 9999 está enviando um arquivo como pacote IP 670 para um telefone celular (não mostrado) com um endereço IP “CP” e uma porta de dados FTP n° 20. Em circunstâncias normais, o pacote IP 670 atravessaria uma rota do notebook 35 para o roteador WiFi 26 e para o roteador 27 conectado pela conexão 24 com fio de alta velocidade ao servidor 22A na nuvem.

[00290] Se, no entanto, a integridade do roteador 27 foi comprometida por um ataque cibernético do pirata cibernético 630, o pacote IP 670 pode ser regravado no pacote IP 686A, por razões de clareza mostradas em forma abreviada, onde apenas os endereços IP e os números de portas são mostrados. Para desviar o pacote IP, o endereço de destino e o n° de porta são alterados do celular para o dispositivo pirata cibernético 630, especificamente para o endereço IP “PA” e a porta n° 20000. O dispositivo pirata cibernético 630 obtém qualquer informação que precisa da carga útil do pacote IP e possivelmente altera o conteúdo da carga útil do pacote IP. A carga útil fraudulenta pode ser usada para cometer qualquer número de crimes fraudulentos, para coletar informações ou para baixar malware no celular, descrito posteriormente no tópico “infecções”.

[00291] O pacote sequestrado, pacote IP 686B, é então readaptado para aparecer como o pacote IP original 670 com o endereço IP de origem “NB” da porta n° 9999 enviado para o endereço IP do telefone celular “CP” na porta n° 20, exceto que o pacote percorre a conexão com fio 685B em vez da conexão com fio 24. Altemativamente, o pacote IP sequestrado pode ser retornado ao roteador comprometido 27 e depois enviado para a nuvem através da conexão via fio 24. Para maximizar o benefício criminal do sequestro de pacotes, o pirata cibernético 630 precisa ocultar sua identidade

Petição 870170079583, de 19/10/2017, pág. 150/709

143 / 425 no sequestro de pacotes e por isso eles disfarçam o verdadeiro roteamento do pacote IP, então, mesmo a função ICMP da Camada 3 “traceroute” teria dificuldade em identificar o verdadeiro trajeto da comunicação. Se, no entanto, o sequestro adiciona um atraso notável no roteamento de pacotes, a latência incomum pode levar a uma investigação por um operador de rede.

[00292] Infecções Cibernéticas - Uma das categorias mais insidiosas de ataque cibernético é a de “infecções cibernéticas”, a instalação de malwares em dispositivos alvejados ou a rede pela qual coletar informações, cometer fraudes, redirecionar o tráfego, infectar outros dispositivos, prejudicar ou desligar sistemas, ou causar falhas de negação de serviço. As infecções cibernéticas podem ser espalhadas por e-mails, arquivos, sites, extensões de sistema, programas de aplicativos ou através de redes. Uma classe geral de malware, “spyware”, descrita na tabela da Figura 42 reúne todos os tipos de informações transacionais e transmite-as a um pirata cibernético. No caso de “phishing”, uma página da Web ou um shell de aplicativo que aparece como uma página de login familiar pede login ou informações pessoais, em seguida, encaminha a informação para um pirata cibernético. Ainda outras infecções de malware podem assumir o controle de hardware, por exemplo, controlar um roteador para executar o sequestro de pacotes mencionado acima. Nesses casos, o pirata cibernético está tentando obter informações ou controlar de forma benéfica para seus próprios propósitos.

[00293] Outra classe de infecções cibernéticas que compõem vírus, worms e cavalos de Troia é projetada para substituir arquivos críticos ou para executar funções sem sentido repetidamente para evitar que um dispositivo faça suas tarefas normais. Basicamente para negar serviços, degradar o desempenho ou matar completamente um dispositivo. Essas infecções malévolas são intrinsecamente destrutivas e usadas para fins vingativos, para desativar os negócios de um concorrente da operação normal, ou

Petição 870170079583, de 19/10/2017, pág. 151/709

144 / 425 simplesmente motivados por diversão por um hacker que quer ver se é possível.

[00294] Vigilância - Interceptação e vigilância vão além do crime cibernético. Em tais casos, um detetive particular ou um conhecido é contratado ou coagido para instalar um dispositivo ou programa nos dispositivos pessoais do alvo para monitorar suas conversas de voz, troca de dados e localização. O risco de ser pego é maior porque o detetive deve ter acesso temporário ao dispositivo alvo sem que o sujeito saiba. Por exemplo, estão comercialmente disponíveis cartões SIM que podem copiar os privilégios de acesso à rede de um telefone, mas simultaneamente transmitem informações para um criminoso cibernético que monitora as chamadas do alvo e o tráfego de dados.

[00295] Outras formas de vigilância envolvem o uso de câmeras de vídeo clandestinas para monitorar todas as ações e chamadas telefônicas de uma pessoa, bem como as localizadas nos cassinos. Através do monitoramento de vídeo, a senha ou o PIN de um dispositivo podem ser aprendidos simplesmente observando os pressionamentos de teclas de um usuário durante seu processo de login. Com câmeras suficientes no lugar, eventualmente, uma vez será gravado o processo de login. Para acessar uma rede de câmeras sem levantar suspeitas, um pirata cibernético pode hackear um sistema de vigilância de câmera existente em edifícios, lojas ou nas ruas, e através do acesso à rede de outra pessoa monitorar o comportamento de vítimas inocentes. A combinação de vigilância por vídeo com a detecção de pacotes fornece um conjunto de dados ainda mais abrangente para subsequentemente iniciar ataques cibernéticos.

[00296] Administração Pirata (Infiltração) - Outro meio pelo qual os piratas cibernéticos são capazes de obter informações é hackeando e obtendo acesso aos direitos de administração do sistema de um dispositivo, servidor ou rede. Então, ao invés de obter acesso não autorizado a uma conta de um

Petição 870170079583, de 19/10/2017, pág. 152/709

145 / 425 usuário, ao hackear o login do administrador do sistema, acesso e privilégios significativos ficam disponíveis para o pirata cibernético sem o conhecimento daqueles que usam o sistema. Uma vez que o administrador do sistema atua como uma polícia do sistema, não há ninguém para pegar sua atividade criminosa - em essência; em um sistema ou rede com administração corrompida, não há ninguém capaz de policiar a polícia.

[00297] Conclusão - A onipresença e a interoperabilidade que a Internet, as redes com comutação de pacotes e a adoção quase universal do modelo de rede de iniciativa de código aberto de sete camadas tem nos últimos vinte anos permitiu que a comunicação global se expandisse em uma escala sem paralelo, conectando uma ampla gama de dispositivos que vão desde telefones inteligentes a tablets, computadores, TVs inteligentes, carros e até aparelhos domésticos e lâmpadas. A adoção global do Protocolo de Internet ou IP como base para conectividade Ethernet, celular, WiFi e TV a cabo não só tem comunicação unificada, mas simplificou muito o desafio para hackers e criminosos cibernéticos que tentam invadir tantos dispositivos e sistemas quanto possível. Dada a multiplicidade de métodos de software e hardware agora disponíveis para atacar as redes de comunicação de hoje, claramente nenhum método de segurança é suficiente como uma única defesa. Em vez disso, o que é necessário é uma abordagem sistemática para proteger cada dispositivo, último enlace, rede/companhia telefônica local e rede em nuvem para garantir sua proteção contra ataques cibernéticos sofisticados. Os métodos utilizados devem fornecer a segurança cibernética intrínseca e a privacidade cibernética sem sacrificar QoS, latência de rede, vídeo ou qualidade de som. Embora a encriptação continue a ser um elemento importante para desenvolver esta próxima geração em comunicação e armazenamento de dados seguros, a segurança da rede não deve depender unicamente de metodologias de encriptação.

Sumário da Invenção

Petição 870170079583, de 19/10/2017, pág. 153/709

146 / 425 [00298] De acordo com esta invenção, os dados (que são definidos de forma ampla para incluir texto, áudio, vídeo, gráficos e todos os outros tipos de informações ou arquivos digitais) são transmitidos através de uma rede de Rede e Protocolo de Comunicação Dinâmicos Seguros (SDNP) ou “nuvem”. A nuvem SDNP inclui uma pluralidade de “nós”, às vezes denominados “nós de mídia”, que são hospedados individualmente em servidores ou outros tipos de computadores ou equipamentos digitais (coletivamente chamados aqui de “servidores”) localizados em qualquer lugar do mundo. E possível que dois ou mais nós estejam localizados em um único servidor. Normalmente, os dados são transmitidos entre os nós de mídia por luz transportada por cabos de fibra óptica, por ondas de rádio no espectro de micro-ondas ou rádio, por sinais elétricos conduzidos em fios de cobre ou cabo coaxial, ou por comunicação por satélite, mas a invenção inclui amplamente quaisquer meios pelos quais os dados digitais podem ser transmitidos de um ponto para outro. A rede SDNP inclui a nuvem SDNP, bem como os enlaces de “última milha” entre a nuvem SDNP e dispositivos cliente, como telefones celulares, tablets, notebooks e computadores, dispositivos eletrônicos de cliente móvel, bem como dispositivos e aparelhos de Internet das Coisas, automóveis e outros veículos. A comunicação de última milha também inclui torres de telefone celular, cabo ou fibra em casa e roteadores WiFi públicos.

[00299] Enquanto em trânsito entre os nós de mídia na nuvem SDNP, os dados são na forma de “pacotes”, cadeias discretas de bits digitais que podem ser de comprimento fixo ou variável, e os dados são disfarçados empregando as seguintes técnicas: embaralhamento, encriptação ou divisão — ou seus processos inversos, desembaralhamento, desencriptação e mistura. (Observação: Conforme usado aqui, a menos que o contexto indique o contrário, a palavra “ou” é usada em seu sentido conjuntivo (e/ou).) [00300] Embaralhamento implica reordenar os dados dentro de um pacote de dados; por exemplo, os segmentos de dados A, B e C que aparecem

Petição 870170079583, de 19/10/2017, pág. 154/709

147 / 425 nessa ordem no pacote são reorganizados na sequência C, A e B. O reverso da operação de embaralhamento é chamado de “desembaralhamento” e envolve a reorganização dos dados dentro de um pacote para a ordem em que apareceu originalmente - A, B e C no exemplo acima. A operação combinada de desembaralhamento e, em seguida, a codificação de um pacote de dados é chamada de “reembaralhamento”. Ao reembaralhar um pacote que foi anteriormente embaralhado, o pacote pode ser embaralhado de uma maneira que é igual ou diferente da operação anterior de embaralhamento.

[00301] A segunda operação, “encriptação”, é a codificação dos dados em um pacote em uma forma, chamada texto cifrado, que pode ser entendida apenas pelo remetente e outras partes autorizadas, e quem deve executar a operação inversa - “desencriptação” - para fazê-lo. A operação combinada de desencriptar um pacote de dados de texto cifrado e, em seguida, encriptá-lo novamente, normalmente, mas não necessariamente, usando um método diferente do método usado na encriptação anteriormente, é aqui chamado de “reencriptação”.

[00302] A terceira operação, “divisão”, como o nome indica, envolve dividir o pacote em dois ou mais pacotes menores. A operação inversa, “mistura”, é definida como a recombinação de dois ou mais pacotes divididos de volta em um único pacote. A divisão de um pacote que foi dividido anteriormente e, em seguida, a mistura pode ser feita de uma maneira que é igual ou diferente da operação de divisão anterior. A ordem das operações é reversível, pelo que a divisão pode ser desfeita por mistura e, inversamente, a mistura de múltiplas entradas em uma saída pode ser desfeita por divisão para recuperar os componentes constituintes. (Observação: Uma vez que o embaralhamento e desembaralhamento, encriptação e desencriptação, e divisão e mistura são processos inversos, o conhecimento do algoritmo ou método que foi usado para executar um é tudo o que é necessário para executar o inverso. Portanto, ao se referir a um algoritmo particular de

Petição 870170079583, de 19/10/2017, pág. 155/709

148 / 425 embaralhamento, encriptação ou divisão aqui, será entendido que o conhecimento desse algoritmo permite executar o processo inverso.) [00303] De acordo com a invenção, um pacote de dados que passa através de uma nuvem SDNP é embaralhado ou encriptado, ou está sujeito a uma ou a ambas as operações em combinação com a divisão. Além disso, os dados de “lixo” (isto é, sem sentido) podem ser adicionados ao pacote, quer para tomar o pacote mais difícil de decifrar ou para fazer o pacote se conformar a um comprimento requerido. Além disso, o pacote pode ser analisado, isto é, separado em pedaços distintos. Na linguagem computacional, analisar é dividir uma declaração de linguagem de computador, instrução de computador ou arquivo de dados em partes que podem ser úteis para o computador. A análise também pode ser usada para obscurecer a finalidade de uma instrução ou pacote de dados, ou para organizar dados em pacotes de dados com comprimentos de dados especificados.

[00304] Embora o formato dos pacotes de dados siga o Protocolo de Internet, dentro da nuvem SDNP, os endereços dos nós de mídia não são endereços de Internet padrão, ou seja, eles não podem ser identificados por nenhum servidor DNS da Internet. Assim, embora os nós de mídia possam tecnicamente receber pacotes de dados pela Internet, os nós de mídia não reconhecerão os endereços ou responderão a consultas. Além disso, mesmo que os usuários da Internet entrem em contato com um nó de mídia, eles não poderíam acessar ou examinar os dados dentro do nó de mídia porque o nó de mídia pode reconhecê-los como impostores sem as credenciais de identificação necessárias como nó de mídia SDNP. Especificamente, a menos que um nó de mídia seja registrado como um nó SDNP válido executado em um servidor qualificado no servidor de nomes SDNP ou sua função equivalente, os pacotes de dados enviados desse nó para outros nós de mídia SDNP serão ignorados e descartados. De maneira semelhante, apenas clientes

Petição 870170079583, de 19/10/2017, pág. 156/709

149 / 425 registrados em um servidor de nomes SDNP podem entrar em contato com um nó de mídia SDNP. Como servidores não registrados, os pacotes de dados recebidos de fontes diferentes dos clientes SDNP registrados serão ignorados e descartados imediatamente.

[00305] Em uma modalidade relativamente simples, chamada de “única rota”, o pacote de dados atravessa um único trajeto através de uma série de nós de mídia na nuvem SDNP, e é codificado no nó de mídia onde ele entra na nuvem e desembaralhado no nó de mídia onde o pacote sai da nuvem (esses dois nós são chamados de “nós de gateway” ou “nós de mídia de gateway”). Em uma modalidade um pouco mais complexa, o pacote é reembaralhado em cada nó de mídia usando um método de embaralhamento diferente do que foi usado no nó de mídia anterior. Em outras modalidades, o pacote também é encriptado no nó de gateway onde ele entra na nuvem e desencriptado no nó de gateway onde ele sai da nuvem e, além disso, o pacote pode ser reencriptado em cada nó de mídia que passa na nuvem. Uma vez que um determinado nó usa o mesmo algoritmo cada vez que embaralha ou encripta um pacote, esta modalidade é descrita como embaralhamento e encriptação “estático”.

[00306] Em um caso em que o pacote é submetido a duas ou mais operações, por exemplo, é embaralhado e encriptado, as operações inversas são preferencialmente realizadas em uma ordem oposta às próprias operações, isto é, na sequência inversa. Por exemplo, se o pacote é embaralhado e encriptado antes de deixar um nó de mídia, ele primeiro é desencriptado e depois desembaralhado quando ele chega ao seguinte nó de mídia. O pacote é recriado em sua forma original somente enquanto ele está dentro de um nó de mídia. Enquanto o pacote está em trânsito entre nós de mídia, ele é embaralhado, dividido ou misturado, ou encriptado.

[00307] Em outra modalidade, chamada de transporte de dados “multirotas”, o pacote é dividido no nó de gateway e os pacotes múltiplos

Petição 870170079583, de 19/10/2017, pág. 157/709

150/425 resultantes atravessam a nuvem em uma série de trajetos “paralelos”, sem nenhum dos trajetos compartilharem um nó de mídia com outro trajeto, exceto nos nós de gateway. Os vários pacotes são então misturados para recriar o pacote original, normalmente no modo de saída de gateway. Assim, mesmo se um hacker pudesse entender o significado de um único pacote, eles teriam apenas uma parte de toda a mensagem. O pacote também pode ser embaralhado e encriptado no nó de gateway, antes ou depois de ser dividido, e os vários pacotes podem ser reembaralhados ou reencriptados em cada nó de mídia que eles passam.

[00308] Ainda em outra modalidade, os pacotes não percorrem apenas um único trajeto ou uma série de trajetos paralelos na nuvem SDNP, mas em vez disso os pacotes podem percorrer uma grande variedade de trajetos, muitos dos quais se cruzam entre si. Uma vez que nesta modalidade, uma imagem dos trajetos possíveis se assemelha a uma malha, é chamado de “transporte em malha”. Tal como com as modalidades descritas acima, os pacotes podem ser embaralhados, encriptados e divididos ou misturados à medida que eles passam através dos nós de mídia individuais na nuvem SDNP.

[00309] As rotas dos pacotes através da rede SDNP são determinadas por uma função de sinalização, que pode ser realizada por segmentos dos próprios nós de mídia ou, preferivelmente, em modalidades de “canal duplo” ou “canal triplo”, por nós de sinalização separados executados em servidores de sinalização dedicados. A função de sinalização determina a rota de cada pacote à medida que ele sai do dispositivo cliente transmissor (por exemplo, um telefone celular), com base na condição (por exemplo, atrasos de propagação) da rede e a prioridade e urgência da chamada, e informa cada um dos nós de mídia ao longo da rota que receberá o pacote e instruirá o nó onde enviá-lo. Cada pacote é identificado por uma etiqueta e a função de sinalização instrui cada nó de mídia qual etiqueta aplicar a cada um dos

Petição 870170079583, de 19/10/2017, pág. 158/709

151/425 pacotes que envia. Em uma modalidade, a etiqueta de dados está incluída em um cabeçalho ou subcabeçalho SDNP, um campo de dados anexado a cada subpacote de dados usado para identificar o subpacote. Cada subpacote pode conter segmentos de dados de uma ou várias fontes armazenadas em “slots” de dados específicos no pacote. Múltiplos subpacotes podem estar presentes dentro de um pacote de dados maior durante o transporte de dados entre dois nós de mídia.

[00310] A função de roteamento está alinhada com as funções de divisão e mistura, uma vez que um pacote é dividido, as rotas respectivas de cada um dos subpacotes em que está dividido devem ser determinadas e o nó onde os subpacotes são recombinados (misturados) deve ser instruído para misturá-los. Um pacote pode ser dividido uma vez e, em seguida, misturado, como em modalidades multirotas, ou pode ser dividido e misturado várias vezes à medida que ele prossegue através da rede SDNP para o nó de gateway de saída. A determinação de em qual nó um pacote será dividido, em quantos subpacotes serão divididos, as rotas respectivas dos subpacotes e em que nó os subpacotes serão misturados para recriar o pacote original estão sob o controle da função de sinalização, seja executada ou não por servidores de sinalização separados. Um algoritmo de divisão pode especificar quais segmentos de dados em uma comunicação devem ser incluídos em cada um dos subpacotes e a ordem e posições dos segmentos de dados nos subpacotes. Um algoritmo de mistura inverte esse processo no nó onde os subpacotes são misturados para recriar o pacote original. Claro, se assim for instruído pela função de sinalização, esse nó também pode dividir o pacote de novo de acordo com um algoritmo de divisão diferente correspondente ao tempo ou estado quando ocorre o processo de divisão.

[00311] Quando um nó de mídia é instruído pela função de sinalização para enviar uma pluralidade de pacotes para um nó de mídia de destino específico no “próximo salto” através da rede, se estes pacotes são pacotes

Petição 870170079583, de 19/10/2017, pág. 159/709

152/425 divididos (subpacotes) ou se pertencem a diferentes mensagens, o nó de mídia pode combinar os pacotes em um único pacote maior, especialmente quando vários subpacotes compartilham um nó de mídia de destino comum para o próximo salto (análogo aos correios colocando um grupo de letras destinado a um único endereço em uma caixa e enviando a caixa para o endereço).

[00312] Em modalidades “dinâmicas” da invenção, os nós de mídia individuais na nuvem SDNP não usam os mesmos algoritmos ou métodos de embaralhamento, encriptação ou divisão em pacotes sucessivos que passam por eles. Por exemplo, um determinado nó de mídia pode embaralhar, encriptar ou dividir um pacote usando um algoritmo de embaralhamento, encriptação ou divisão, e então embaralhar, encriptar ou dividir o próximo pacote usando um algoritmo diferente de embaralhamento, encriptação ou divisão. A operação “dinâmica” aumenta consideravelmente as dificuldades enfrentadas pelos potenciais hackers, porque eles têm apenas um curto período de tempo (por exemplo, 100msec) para entender o significado de um pacote, e mesmo que sejam bem-sucedidos, a utilidade de seus conhecimentos seria de curta duração.

[00313] Em modalidades dinâmicas, cada nó de mídia está associado ao que é conhecido como “servidor DMZ”, que pode ser visto como uma parte do nó que está isolado da parte de transporte de dados e que possui um banco de dados contendo listas ou tabelas (“seletores”) de possíveis algoritmos de embaralhamento, encriptação e divisão que o nó de mídia pode aplicar aos pacotes de saída. O seletor faz parte de um conjunto de informações chamadas de “segredos compartilhados”, uma vez que a informação não é conhecida até mesmo para os nós de mídia, e que todos os servidores DMZ têm os mesmos seletores em um determinado momento.

[00314] Quando um nó de mídia recebe um pacote que foi embaralhado, em modalidades dinâmicas, ele também recebe uma “semente” que é usada para indicar ao nó de recepção qual algoritmo deve ser usado para

Petição 870170079583, de 19/10/2017, pág. 160/709

153/425 desembaralhamento do pacote. A semente é um valor numérico disfarçado que não tem significado por si só, mas é baseado em um estado em constante mudança, como o tempo em que o pacote foi codificado pelo nó de mídia anterior. Quando o nó anterior embaralhou o pacote, o servidor DMZ associado gerou a semente com base no estado. Claro, esse estado também foi usado pelo seu servidor DMZ associado ao selecionar o algoritmo a ser usado no embaralhamento do pacote, que foi enviado para o nó de mídia de envio na forma de uma instrução sobre como embaralhar o pacote. Assim, o nó de envio recebeu tanto as instruções sobre como embaralhar o pacote quanto a semente a ser transmitida para o próximo nó de mídia. Um gerador de sementes que opera dentro do servidor DMZ gera a semente usando um algoritmo baseado no estado no momento em que o processo é executado. Embora o gerador de sementes e seus algoritmos façam parte dos segredos compartilhados do nó de mídia, a semente gerada não é secreta porque, sem acesso aos algoritmos, a semente numérica não tem significado.

[00315] Assim, o próximo nó de mídia na rota do pacote recebe o pacote embaralhado e a semente que é derivada do estado associado ao pacote (por exemplo, o tempo em que foi embaralhado). A semente pode ser incluída no próprio pacote ou pode ser enviada para o nó de recepção antes do pacote, na mesma rota que o pacote ou através de outra rota, como por exemplo através de um servidor de sinalização.

[00316] Independentemente de como ele recebe a semente, o nó de recepção envia a semente para seu servidor DMZ. Uma vez que esse servidor DMZ tem um seletor ou tabela de algoritmos de embaralhamento que fazem parte dos segredos compartilhados e, portanto, é o mesmo que o seletor no servidor DMZ do nó de envio, ele pode usar a semente para identificar o algoritmo que foi usado no embaralhamento do pacote e pode instruir o nó de recepção como desembaralhar o pacote. O nó de recepção, assim, recria o pacote em sua forma desembaralhada, recuperando assim os dados originais.

Petição 870170079583, de 19/10/2017, pág. 161/709

154/425

Tipicamente, o pacote será embaralhado novamente de acordo com um algoritmo de embaralhamento diferente antes de ser transmitido para o próximo nó. Em caso afirmativo, o nó de recepção funciona com o seu servidor DMZ para obter um algoritmo de embaralhamento e semente, e o processo é repetido.

[00317] Assim, à medida que o pacote atravessa a rede SDNP, ele é embaralhado de acordo com um algoritmo de embaralhamento diferente por cada nó, e uma nova semente é criada em cada nó que permite que o próximo nó desembaralhe o pacote.

[00318] Em uma modalidade alternativa da invenção, o estado real (por exemplo, tempo) pode ser transmitido entre nós (isto é, o nó de envio não precisa enviar uma semente para o nó de recepção). Os servidores DMZ associados aos nós de mídia de envio e recepção contêm geradores de números ocultos (novamente, parte dos segredos compartilhados) que contêm algoritmos idênticos em qualquer momento. O servidor DMZ associado ao nó de envio usa o estado para gerar um número oculto e o número oculto para determinar o algoritmo de embaralhamento de um seletor ou tabela de possíveis algoritmos de embaralhamento. O nó de envio transmite o estado para o nó de recepção. Ao contrário das sementes, os números ocultos nunca são transmitidos pela rede, mas continuam sendo uma comunicação exclusivamente privada entre o nó da mídia e seu servidor DMZ. Quando o nó de mídia de recepção recebe o estado de um pacote de dados de entrada, o gerador de números oculto em seu servidor DMZ associado usa o estado para gerar um número oculto idêntico, que é usado com o seletor ou tabela para identificar o algoritmo a ser usado no desembaralhamento do pacote. O estado pode ser incluído no pacote ou pode ser transmitido do nó de envio ao nó de recepção antes do pacote ou através de outra rota.

[00319] As técnicas usadas em encriptação dinâmica e divisão são semelhantes às usadas no processo de embaralhamento dinâmico, mas em

Petição 870170079583, de 19/10/2017, pág. 162/709

155/425 encriptação dinâmica são usadas “chaves” em lugar de sementes. Os segredos compartilhados detidos pelos servidores DMZ incluem seletores ou tabelas de algoritmos de encriptação e divisão e geradores de chaves. No caso da encriptação de chave simétrica, o nó de envio transmite uma chave para o nó de mídia de recepção que pode ser usado pelo servidor DMZ do nó de recepção para identificar o algoritmo usado na encriptação do pacote e assim desencriptar o arquivo. No caso da encriptação de chave assimétrica, o nó de mídia solicitando informações, ou seja, o nó de recepção primeiro envia uma chave de encriptação ao nó que contém o pacote de dados a ser enviado. O nó de mídia de envio então encripta os dados de acordo com essa chave de criptografia. Somente o nó de mídia de recepção que gera a chave de encriptação mantém a chave de desencriptação correspondente e a capacidade de desencriptar o texto cifrado criado usando a chave de encriptação. Importantemente, na encriptação assimétrica, o acesso à chave de encriptação usada para encriptação não provê nenhuma informação sobre como desencriptar o pacote de dados.

[00320] No caso da divisão, o nó de mídia onde o pacote foi dividido transmite uma semente para o nó de mídia onde os subpacotes resultantes serão misturados e o servidor DMZ associado ao nó de mistura usa essa semente para identificar o algoritmo de divisão e, portanto, o algoritmo a ser usado na mistura dos subpacotes.

[00321] Como indicado acima, em modalidades de canal duplo ou triplo, a função de sinalização é realizada por um nó de sinalização que opera em um grupo separado de servidores conhecido como servidores de sinalização. Em tais modalidades, as sementes e as chaves podem ser transmitidas através dos servidores de sinalização em vez do nó de mídia de envio diretamente para o nó de mídia de recepção. Assim, o nó de mídia de envio pode enviar uma semente ou chave para um servidor de sinalização, e o servidor de sinalização pode encaminhar a semente ou a chave para o nó de

Petição 870170079583, de 19/10/2017, pág. 163/709

156/425 mídia de recepção. Conforme observado acima, os servidores de sinalização são responsáveis por projetar as rotas do pacote, de modo que o servidor de sinalização conhece o próximo nó de mídia ao qual cada pacote é direcionado. [00322] Para tomar as coisas mais difíceis para os potenciais hackers, a lista ou a tabela de possíveis métodos de embaralhamento, divisão ou encriptação em um seletor podem ser “reorganizadas” periodicamente (por exemplo, por hora ou diariamente) de tal forma que os métodos correspondentes a sementes ou chaves particulares sejam alterados. Assim, o algoritmo de encriptação aplicado por um dado nó de mídia a um pacote criado no tempo ti no Dia 1 pode ser diferente do algoritmo de encriptação que aplica a um pacote criado ao mesmo tempo ti no Dia 2.

[00323] Cada um dos servidores DMZ normalmente está fisicamente associado a um ou mais nós de mídia no mesmo “farm de servidores”. Conforme mencionado acima, um nó de mídia pode solicitar instruções sobre o que fazer com um pacote recebido ao prover seu servidor DMZ associado com uma semente ou chave (com base, por exemplo, no tempo ou no estado em que o pacote foi criado), mas o nó de mídia não pode acessar os segredos compartilhados ou qualquer outro dado ou código dentro do servidor DMZ. O servidor DMZ responde a tais solicitações usando a semente ou a chave para determinar o método que o nó de mídia deve usar no desembaralhamento, desencriptação ou mistura de um pacote. Por exemplo, se o pacote foi embaralhado e o nó de mídia quiser saber como desembaralhá-lo, o servidor DMZ pode examinar uma lista (ou seletor) de algoritmos de embaralhamento para encontrar o algoritmo particular que corresponde à semente. A DMZ então instrui o nó de mídia a desembaralhar o pacote de acordo com esse algoritmo. Em suma, a mídia transmite consultas incorporadas em sementes ou chaves para o servidor DMZ, e o servidor DMZ responde a essas consultas com instruções.

[00324] Enquanto os nós de mídia são acessíveis através da Internet

Petição 870170079583, de 19/10/2017, pág. 164/709

157/425 (embora eles não tenham endereços IP reconhecidos pelo DNS), os servidores

DMZ estão completamente isolados da Internet tendo apenas conexões de rede locais através de fios ou fibra óptica para os servidores de mídia conectados à rede.

[00325] Em modalidades “de canal único”, as sementes e as chaves são transmitidas entre o nó de mídia de envio e o nó de mídia de recepção como parte do próprio pacote de dados ou podem ser transmitidas em um pacote separado antes do pacote de dados na mesma rota como o pacote de dados. Por exemplo, ao encriptar um pacote, o nó de mídia n° 1 pode incluir no pacote uma chave de encriptação com base no tempo em que a encriptação foi realizada. Quando o pacote chega ao nó de mídia rí 2, o nó de mídia n° 2 transmite a chave ao seu servidor DMZ associado e o servidor DMZ pode usar a chave para selecionar um método de desencriptação em seu seletor e para executar a desencriptação. O nó de mídia n° 2 pode então perguntar ao seu servidor DMZ como ele deve encriptar o pacote novamente, antes de transmiti-lo ao nó de mídia n° 3. Mais uma vez, o servidor DMZ consulta o seletor, informa o nó de mídia rí 2 qual método deve usar na encriptação do pacote e entrega ao nó de mídia n° 2 uma chave que reflete um estado correspondente ao método de encriptação. O nó de mídia n° 2 executa a encriptação e transmite o pacote encriptado e a chave (separadamente ou como parte do pacote) para o nó de mídia n° 3. A chave pode então ser usada de maneira similar pelo nó de mídia n° 3 para desencriptar o pacote, e assim por diante. Como resultado, não existe um único método de desencriptação estática que um hacker possa usar na decifração dos pacotes.

[00326] O uso de tempo ou uma condição de “estado” dinâmico no exemplo acima como o determinante do método de embaralhamento, encriptação ou divisão a ser incorporado na semente ou na chave é apenas ilustrativo. Qualquer parâmetro de mudança, por exemplo, o número de nós através dos quais o pacote passou, também pode ser usado como o “estado”

Petição 870170079583, de 19/10/2017, pág. 165/709

158/425 na semente ou chave para selecionar o método particular de embaralhamento, encriptação ou divisão a ser usado.

[00327] Em modalidades “de canal duplo”, as sementes e as chaves podem ser transmitidas entre os nós de mídia através de um segundo canal de “comando e controle” composto por servidores de sinalização em vez de serem transportados diretamente entre os nós de mídia. Os nós de sinalização também podem fornecer aos nós de mídia informações de roteamento e informar os nós de mídia ao longo da rota de um pacote como o pacote deve ser dividido ou misturado com outros pacotes, e eles instruem cada nó de mídia a aplicar uma “etiqueta” de identificação para cada pacote transmitido para que o(s) próximo(s) nó(s) de mídia possam reconhecer o(s) pacote(s). Os servidores de sinalização preferivelmente fornecem um dado nó de mídia com apenas o último e próximo nó de mídia de um pacote que atravessa a rede. Nenhum nó de mídia individual conhece toda a rota do pacote através da nuvem SDNP. Em algumas modalidades, a função de roteamento pode ser dividida entre dois ou mais servidores de sinalização, com um servidor de sinalização determinando a rota para um nó de mídia particular, um segundo servidor de sinalização determinando a rota a partir de lá para outro nó de mídia e, assim, para o nó de gateway de saída. Desta maneira, nenhum servidor de sinalização único conhece o roteamento completo de um pacote de dados.

[00328] Em modalidades de “canal triplo”, um terceiro grupo de servidores - chamado “servidores de nomes” - é usado para identificar elementos dentro da nuvem SDNP e para armazenar informações sobre a identidade de dispositivos conectados à nuvem SDNP e seus correspondentes endereços IP ou SDNP. Além disso, os servidores de nomes monitoram constantemente os nós de mídia na nuvem SDNP, mantendo, por exemplo, uma lista atual de nós de mídia ativos e uma tabela de atrasos de propagação entre cada combinação de nós de mídia na nuvem. Na primeira etapa na

Petição 870170079583, de 19/10/2017, pág. 166/709

159/425 realização da chamada, um dispositivo cliente, como um tablet, pode enviar um pacote IP para um servidor de nomes, solicitando um endereço e outras informações para o destino ou pessoa a ser chamada. Além disso, um servidor de nomes dedicado separado é usado para operar como um primeiro contato sempre que um dispositivo se conecta pela primeira vez, ou seja, se registra, na nuvem.

[00329] Como um benefício de segurança adicional, as “zonas” de segurança separadas, que possuem diferentes seletores, geradores de sementes e chaves e outros segredos compartilhados podem ser estabelecidas dentro de uma única nuvem SDNP. As zonas adjacentes são conectadas por nós de mídia de ponte, que possuem os segredos compartilhados de ambas as zonas e têm a capacidade de traduzir dados formatados de acordo com as regras de uma zona em dados formatados de acordo com as regras para a outra zona e vice-versa.

[00330] Da mesma forma, para a comunicação entre diferentes nuvens SDNP, hospedadas por diferentes provedores de serviços, o enlace de comunicação full-duplex (ou seja, bidirecional) é formado entre servidores de ponte de interface em cada nuvem. Cada servidor de ponte de interface tem acesso aos segredos compartilhados relevantes e outros itens de segurança para cada nuvem.

[00331] Técnicas de segurança semelhantes podem ser aplicadas na “última milha” entre uma nuvem SDNP e um dispositivo cliente, como um telefone celular ou um tablet. O dispositivo cliente normalmente é colocado em uma zona de segurança separada da nuvem, e primeiro deve ser autorizado o cliente SDNP, uma etapa que envolve a instalação no dispositivo cliente de um pacote de software específico para a zona de segurança do dispositivo, geralmente via download de um servidor de administração de SDNP. O dispositivo cliente está vinculado à nuvem SDNP através de um nó de mídia de gateway na nuvem. O nó de mídia de gateway tem acesso aos segredos

Petição 870170079583, de 19/10/2017, pág. 167/709

160/425 compartilhados pertencentes à zona de segurança tanto da nuvem quanto do dispositivo do cliente, mas o dispositivo cliente não tem acesso aos segredos compartilhados pertencentes à nuvem SDNP.

[00332] Como um nível adicional de segurança, os dispositivos clientes podem trocar sementes e chaves diretamente entre si através dos servidores de sinalização. Assim, um dispositivo cliente transmissor pode enviar uma semente e/ou uma chave diretamente para o dispositivo cliente receptor. Em tais modalidades, o pacote recebido pelo dispositivo cliente receptor estará na mesma forma embaralhada ou encriptada que o pacote deixando o dispositivo cliente emissor. O dispositivo cliente receptor pode, portanto, usar a semente ou a chave que recebe do dispositivo cliente emissor para desembaralhar ou desencriptar o pacote. A troca de sementes e chaves diretamente entre dispositivos clientes é, além do próprio embaralhamento e encriptação dinâmicos da rede SDNP e criptografia, e isso representa um nível adicional de segurança chamado segurança aninhada.

[00333] Além disso, um dispositivo cliente ou o nó de gateway com o qual se comunica pode misturar pacotes que representam o mesmo tipo de dados — por exemplo, pacotes de voz, arquivos de mensagens de texto, documentos, peças de software, ou que representam tipos de informação diferentes, por exemplo, um pacote de voz e um arquivo de texto, um pacote de texto e uma imagem de vídeo ou foto — antes que os pacotes atinjam a rede SDNP e o nó de gateway de saída ou o dispositivo cliente de destino possam dividir o pacote misturado para recuperar os pacotes originais. Isto é, além de qualquer embaralhamento, encriptação ou divisão que ocorre na rede SDNP. Nesses casos, o dispositivo cliente emissor pode enviar ao dispositivo cliente receptor uma semente instruindo-o como dividir o pacote de modo a recriar os pacotes originais que foram misturados no dispositivo cliente emissor ou no nó de mídia de gateway. A realização de misturas e divisões sucessivas pode incluir uma sequência linear de operações ou,

Petição 870170079583, de 19/10/2017, pág. 168/709

161/425 altemativamente, utilizar uma arquitetura aninhada, onde os clientes executam suas próprias medidas de segurança, assim como a nuvem SDNP.

[00334] Uma vantagem importante da invenção descrita é que não existe um único ponto de controle na rede SDNP e que nenhum nó ou servidor na rede possui uma imagem completa sobre como uma determinada comunicação está ocorrendo ou como ela pode estar mudando dinamicamente.

[00335] Por exemplo, os nós de sinalização que funcionam em servidores de sinalização conhecem a rota (ou, em alguns casos, apenas uma parte de uma rota) pela qual uma comunicação está ocorrendo, mas eles não têm acesso ao conteúdo de dados que está sendo comunicado e não sabem quem são os reais chamadores ou clientes. Além disso, os nós de sinalização não têm acesso aos segredos compartilhados nos servidores DMZ de um nó de mídia, então eles não sabem como os pacotes de dados em trânsito são encriptados, embaralhados, divididos ou misturados.

[00336] Os servidores de nomes SDNP conhecem os números de telefone ou os endereços IP dos chamadores, mas não têm acesso aos dados que estão sendo comunicados ou ao roteamento dos vários pacotes e subpacotes. Como os nós de sinalização, os servidores de nomes não têm acesso aos segredos compartilhados nos servidores DMZ de um nó de mídia, então eles não sabem como os pacotes de dados em trânsito são encriptados, embaralhados, divididos ou misturados.

[00337] Os nós de mídia SDNP realmente transportando o conteúdo de mídia não tem ideia de quem são os chamadores se comunicando nem sabem a rota que os vários subpacotes fragmentados estão tomando através da nuvem SDNP. Na verdade, cada nó de mídia sabe apenas quais pacotes de dados esperar chegar (identificados por suas etiquetas ou cabeçalhos) e onde enviá-los em seguida, ou seja, o “próximo salto”, mas os nós de mídia não sabem como os dados são encriptados, embaralhados, misturados ou

Petição 870170079583, de 19/10/2017, pág. 169/709

162/425 divididos, nem sabem como selecionar um algoritmo ou desencriptar um arquivo usando um estado, uma semente numérica ou uma chave. O knowhow necessário para processar corretamente os segmentos de dados dos pacotes de dados de entrada é conhecido apenas pelo servidor DMZ, usando seus segredos compartilhados, algoritmos não acessíveis pela rede ou pelo próprio nó de mídia.

[00338] Outro aspecto inventivo da invenção descrita é a sua capacidade de reduzir a latência da rede e minimizar o atraso de propagação para prover qualidade superior de serviço (QoS) e eliminar chamadas com eco ou descartadas controlando o tamanho dos pacotes de dados, ou seja, enviar mais pacotes de dados menores em paralelo através da nuvem, em vez de depender de uma conexão de alta largura de banda. O roteamento dinâmico da rede SDNP usa seu conhecimento dos atrasos de propagação nó-para-nó da rede para selecionar dinamicamente a melhor rota para qualquer comunicação nesse momento. Em outra modalidade, para clientes de alta prioridade, a rede pode facilitar o roteamento de corrida, enviando mensagens duplicadas em forma fragmentada através da nuvem SDNP selecionando apenas os dados mais rápidos para recuperar o som original ou conteúdo de dados.

[00339] Entre as muitas vantagens de um sistema SDNP de acordo com a invenção, em modalidades paralelas e de “transporte em malha”, os pacotes podem ser fragmentados à medida que transitam a nuvem SDNP, impedindo que potenciais hackers entendam uma mensagem, mesmo que sejam capazes de decifrar um subpacote individual ou grupo de subpacotes, e em modalidades “dinâmicas”, os métodos de embaralhamento, encriptação e divisão aplicados aos pacotes estão em constante mudança, negando a um potencial hacker qualquer benefício significativo de decifrar com sucesso um pacote em um determinado momento. Inúmeras vantagens adicionais de modalidades da invenção serão facilmente evidentes para os versados na técnica a partir de uma revisão da descrição a seguir

Petição 870170079583, de 19/10/2017, pág. 170/709

163/425

Breve Descrição dos Desenhos [00340] Nos desenhos listados abaixo, componentes que são geralmente semelhantes recebem os mesmos números de referência. No entanto, é notado que nem todos os componentes a que um determinado número de referência é atribuído são necessariamente idênticos a outro componente com o mesmo número de referência. Por exemplo, uma operação de encriptação com um número de referência particular não é necessariamente idêntica a outra operação de encriptação com o mesmo número de referência. Além disso, grupos de componentes, por exemplo, servidores em uma rede que são identificados coletivamente por um único número de referência não são necessariamente idênticos um ao outro.

[00341] Fig. 1 é uma representação esquemática de uma rede telefônica baseada em circuitos.

[00342] Fig. 2 é uma representação esquemática de uma rede de comunicação baseada em pacotes.

[00343] Fig. 3 é uma representação esquemática de um roteamento de pacotes em uma rede de comunicação baseada em pacotes.

[00344] Fig. 4 é uma representação gráfica da construção de um pacote IP para comunicação através de uma rede com comutação de pacotes.

[00345] Fig. 5A é uma representação esquemática de uma rede de comunicação que ilustra exemplos de conectividade de alta largura de banda da Camada física 1.

[00346] Fig. 5B é uma representação esquemática de uma rede de comunicação que ilustra exemplos de conectividade de última milha da Camada física 1.

[00347] Fig. 6A é uma representação esquemática de uma conexão da Camada física 1 entre dois dispositivos.

[00348] Fig. 6B é uma representação esquemática de uma conexão da Camada física 1 compartilhada entre três dispositivos.

Petição 870170079583, de 19/10/2017, pág. 171/709

164/425 [00349] Fig. 7A é uma representação esquemática de uma conexão da

Camada 2 de enlace de dados entre três dispositivos usando uma arquitetura de barramento.

[00350] Fig. 7B é uma representação esquemática de uma conexão da Camada 2 de enlace de dados entre três dispositivos usando uma arquitetura de concentrador.

[00351] Fig. 7C é uma representação esquemática de uma conexão da Camada 2 de enlace de dados entre três dispositivos usando uma arquitetura de encadeamento em série.

[00352] Fig. 8A é uma representação esquemática de uma conexão da Camada 2 de enlace de dados entre três dispositivos incluindo um comutador de rede.

[00353] Fig. 8B é uma representação esquemática simplificada comutador de rede.

[00354] Fig. 8C é uma representação esquemática da operação de comutador de rede.

do um da [00355] Fig. 9 é uma representação gráfica de uma construção

Camada 2 de enlace de dados de um pacote IP usando um protocolo Ethernet.

[00356] Fig. 10 é uma representação esquemática simplificada de ponte de rede Ethernet para rádio.

[00357] Fig. 11 é uma representação gráfica da construção da Camada de enlace de dados de um pacote IP usando protocolo WiFi.

esquemática [00358] Fig. 12A é uma representação bidirecional de um ponto de acesso de rede WiFi.

[00359] Fig. 12B é uma representação bidirecional de um repetidor WiFi.

[00360] Fig. 13 é uma representação esquemática da da operação operação evolução de gráfica da comunicação telefônica, de texto e de dados por redes celulares.

[00361] Fig. 14A é uma representação gráfica do particionamento de

Petição 870170079583, de 19/10/2017, pág. 172/709

165/425 frequência em redes de comunicação 4G / LTE.

[00362] Fig. 14B é uma representação gráfica da codificação OFDM usada na comunicação por rádio 4G / LTE.

[00363] Fig. 15 é uma representação gráfica da construção de enlace de dados da Camada 2 de um pacote IP usando protocolo 4G / LTE.

[00364] Fig. 16 é uma representação esquemática da rede de comunicação por modem a cabo.

[00365] Fig. 17 é uma representação esquemática da construção da Camada 2 de enlace de dados de uma rede de comunicação por modem a cabo.

[00366] Fig. 18 é uma representação gráfica da codificação trellis usada nos modems a cabo DOCSIS.

[00367] Fig. 19 é uma representação gráfica da construção da Camada de enlace de dados de um pacote de comunicação usando protocolo DOCSIS.

[00368] Fig. 20 é uma representação esquemática de uma conexão da Camada 3 de rede entre três dispositivos.

[00369] Fig. 21 é uma representação gráfica de pacotes de comunicação encapsulados de acordo com o modelo OSI de 7 camadas.

[00370] Fig. 22 é uma representação gráfica da construção da Camada da rede comparando pacotes de comunicação para IPv4 e IPv6.

[00371] Fig. 23 é uma representação gráfica de um pacote IP de acordo com o protocolo IPv4.

[00372] Fig. 24 é uma representação gráfica de um pacote IP de acordo com o protocolo IPv6.

[00373] Fig. 25 é uma representação gráfica dos campos de endereço construídos de acordo com os protocolos IPv4 e IPv6.

[00374] Fig. 26 é uma representação gráfica do protocolo / próximo campo de cabeçalho em um pacote IP e sua carga útil correspondente.

Petição 870170079583, de 19/10/2017, pág. 173/709

166/425 [00375] Fig. 27 é uma representação esquemática de uma conexão da

Camada 4 de transporte entre três dispositivos.

[00376] Fig. 28A é uma representação gráfica de uma construção de

Camada 4 de transporte de um pacote IP usando protocolo TCP.

[00377] Fig. 28B é uma tabela que descreve os campos do protocolo TCP.

[00378] Fig. 29 é uma representação gráfica de uma sequência de transferência de pacote TCP.

[00379] Fig. 30 é uma representação gráfica de uma construção de Camada 4 de transporte de um pacote IP usando protocolo UDP.

[00380] Fig. 31A é uma representação esquemática da comunicação da Camada 4 de transporte do cliente ao hospedeiro.

[00381] Fig. 31B é uma representação esquemática da comunicação da Camada 4 de transporte do hospedeiro ao cliente.

[00382] Fig. 31C é uma tabela que descreve alocações comuns de porta UDP e TCP.

[00383] Fig. 31D é uma tabela que descreve blocos alocados para endereços de portas reservados e ad hoc usados por UDP e TCP.

[00384] Fig. 32A é uma representação esquemática de um tradutor de aplicativo de rede (NAT).

[00385] Fig. 32B é uma representação esquemática da operação de um tradutor de aplicativo de rede.

[00386] Fig. 33 é uma representação esquemática de três dispositivos conectados com as Camada 5, Camada 6 e Camada 7 de aplicativo.

[00387] Fig. 34 é uma representação esquemática do download de conteúdo usando o aplicativo da Camada 7 para o protocolo de transferência de arquivos (HTTP).

[00388] Fig. 35A é uma representação esquemática de downloads de páginas da web usando o aplicativo da Camada 7 usando protocolo de

Petição 870170079583, de 19/10/2017, pág. 174/709

167/425 transferência de hipertexto ou HTTP.

[00389] Fig. 35B é uma representação gráfica de uma página da web

HTML construída a partir de downloads de vários servidores.

[00390] Fig. 36 é uma representação esquemática do aplicativo da

Camada 7 para e-mail baseado em IMAP.

[00391] Fig. 37 é uma tabela que compara a qualidade do serviço (QoS) para condições de rede variáveis.

[00392] Fig. 38 é um gráfico do tempo de ida e volta (RTT) como uma função do atraso de propagação intra-nó da rede.

[00393] Fig. 39 é um diagrama esquemático de vários exemplos de malwares em uma rede de comunicação.

[00394] Fig. 40 é uma representação simplificada da conectividade de rede da nuvem e da última milha e malware usado em ataques cibernéticos.

[00395] Fig. 41A ilustra dispositivos eletrônicos capazes de monitorar a comunicação Ethernet e WiFi.

[00396] Fig. 41B ilustra dispositivos eletrônicos capazes de monitorar a comunicação por telefone celular.

[00397] Fig. 41C ilustra um dispositivo eletrônico capaz de monitorar a comunicação por fibras ópticas.

[00398] Fig. 42 é uma tabela que compara dez recursos de programa de spyware disponíveis comercialmente.

[00399] Fig. 43 é um mapa mundial que mostra incidentes de ataque cibernético em um único dia.

[00400] Fig. 44 ilustra possíveis detecções de pacotes IP e ataques man-in-the-middle em uma rede com comutação de pacotes.

[00401] Fig. 45 ilustra um ataque cibernético usando descoberta baseada em interrogação de porta.

[00402] Fig. 46 ilustra um ataque cibernético utilizando sequestro de pacotes IP.

Petição 870170079583, de 19/10/2017, pág. 175/709

168/425 [00403] Fig. 47 é uma representação esquemática de encriptação de chave dupla.

[00404] Fig. 48A é uma representação esquemática de uma rede privada virtual.

[00405] Fig. 48B ilustra a pilha de comunicação de uma rede privada virtual.

[00406] Fig. 48C é um diagrama esquemático que mostra uma chamada VoIP feita por uma VPN ad hoc.

[00407] Fig. 49A é um diagrama esquemático que mostra uma chamada de VoIP over-the-top feita pela Internet.

[00408] Fig. 49B é um diagrama esquemático que mostra uma chamada VoIP feita por uma rede par-a-par.

[00409] Fig. 50 é um diagrama esquemático que mostra o transporte convencional de pacotes em uma rede.

[00410] Fig. 51A é um diagrama esquemático que mostra o processo de embaralhamento de pacotes.

[00411] Fig. 51B é um diagrama esquemático que mostra o processo de desembaralhamento de pacotes.

[00412] Fig. 51C é um diagrama esquemático que mostra vários algoritmos de embaralhamento de pacotes.

[00413] Fig. 51D é um diagrama esquemático que mostra embaralhamento de pacote paramétrico estático.

[00414] Fig. 51E é um diagrama esquemático que mostra o embaralhamento dinâmico com um número oculto.

[00415] Fig. 51F é um diagrama esquemático que mostra embaralhamento de pacotes dinâmico usando dithering.

[00416] Fig. 52 é um diagrama esquemático que mostra embaralhamento de pacote estático em uma rede linear.

[00417] Fig. 53 é um diagrama esquemático que mostra o processo de

Petição 870170079583, de 19/10/2017, pág. 176/709

169/425 reembaralhamento de pacotes.

[00418] Fig. 54 é um diagrama esquemático que mostra embaralhamento de pacote dinâmico em uma rede linear.

[00419] Fig. 55A é um diagrama esquemático que mostra o processo de encriptação de pacotes.

[00420] Fig. 55B é um diagrama esquemático que mostra o processo de desencriptação de pacotes.

[00421] Fig. 56 é um diagrama esquemático que mostra o processo de embaralhamento encriptado e sua função inversa.

[00422] Fig. 57 é um diagrama esquemático que mostra embaralhamento encriptado estático em uma rede linear.

[00423] Fig. 58 é um diagrama esquemático que mostra o processo de reempacotamento DUSE que compreende reembaralhamento e reencriptação.

[00424] Fig. 59 é um diagrama esquemático que mostra embaralhamento encriptado dinâmico em uma rede linear.

[00425] Fig. 60A é um diagrama esquemático que mostra o processo de divisão de pacotes de comprimento fixo.

[00426] Fig. 60B é um diagrama esquemático que mostra o processo de mistura de pacotes de comprimento fixo.

[00427] Fig. 61A é um diagrama esquemático que mostra vários métodos de mistura de pacotes.

[00428] Fig. 61B é um diagrama esquemático que mostra mistura de pacotes concatenados.

[00429] Fig. 61C é um diagrama esquemático que mostra mistura de pacotes intercalados.

[00430] Fig. 62A é um diagrama esquemático que mostra um método de mistura depois embaralhamento.

[00431] Fig. 62B é um diagrama esquemático que mostra um método de embaralhamento depois mistura.

Petição 870170079583, de 19/10/2017, pág. 177/709

170/425 [00432] Fig. 63 é um diagrama esquemático que mostra mistura embaralhada estática em uma rede linear.

[00433] Fig. 64 é um diagrama esquemático que mostra mistura embaralhada dinâmica em uma rede linear.

[00434] Fig. 65 é um diagrama esquemático que representa vários processos de pacotes encriptados.

[00435] Fig. 66A é um diagrama esquemático que mostra mistura embaralhada encriptada dinâmica em uma rede linear.

[00436] Fig. 66B é um diagrama esquemático que mostra mistura embaralhada estática com encriptação dinâmica em uma rede linear.

[00437] Fig. 66C é um diagrama esquemático que mostra embaralhamento de mistura dinâmica e encriptação em uma rede linear usando o método “retornar ao normal”.

[00438] Fig. 66D é um detalhamento esquemático do método retomar ao normal DUS-MSE.

[00439] Fig. 67A é um diagrama esquemático que mostra mistura de pacotes de saída única.

[00440] Fig. 67B é um diagrama esquemático que mostra mistura de pacotes de múltiplas saídas.

[00441] Fig. 67C é um diagrama esquemático que mostra divisão de pacotes de comprimento variável.

[00442] Fig. 67D é um diagrama esquemático que mostra divisão de pacotes de comprimento fixo.

[00443] Fig. 67E é um fluxograma que ilustra um algoritmo de mistura.

[00444] Fig. 67F é um fluxograma que ilustra um algoritmo de divisão.

[00445] Fig. 67G é um fluxograma que ilustra um algoritmo de mistura e embaralhamento de duas etapas.

[00446] Fig. 67H é um fluxograma que ilustra um algoritmo de mistura

Petição 870170079583, de 19/10/2017, pág. 178/709

171/425 / embaralhamento híbrido.

[00447] Fig. 671 é um fluxograma que ilustra uma identificação de etiqueta.

[00448] Fig. 68A é um diagrama esquemático que representa vários tipos de roteamento de pacotes.

[00449] Fig. 68B é um diagrama esquemático que representa transporte linear ou de rota única.

[00450] Fig. 68C é um diagrama esquemático que representa transporte paralelo ou de múltiplas rotas.

[00451] Fig. 68D é um diagrama esquemático que representa transporte de rota em malha.

[00452] Fig. 68E é um diagrama esquemático que representa uma modalidade alternativa de transporte de rota em malha.

[00453] Fig. 69 é um diagrama esquemático que mostra o transporte de múltiplas rotas estático.

[00454] Fig. 70 é um diagrama esquemático que mostra o embaralhamento de múltiplas rotas estático.

[00455] Fig. 71A é um diagrama esquemático que mostra o embaralhamento de múltiplas rotas dinâmico.

[00456] Fig. 71B é um diagrama esquemático que representa várias combinações de embaralhamento e divisão.

[00457] Fig. 71C é um diagrama esquemático que representa mistura, divisão, embaralhamento e encriptação aninhada.

[00458] Fig. 72 é um diagrama esquemático que mostra o método de embaralhamento estático depois divisão e encriptação dinâmica.

[00459] Fig. 73 é um diagrama esquemático que mostra transporte de múltiplas rotas embaralhado estático com encriptação dinâmica.

[00460] Fig. 74 é um diagrama esquemático que representa várias combinações de métodos de divisão, embaralhamento e encriptação.

Petição 870170079583, de 19/10/2017, pág. 179/709

172/425 [00461] Fig. 75 é um diagrama esquemático que mostra o roteamento em malha estático de comprimento variável.

[00462] Fig. 76 é um diagrama esquemático que mostra o roteamento em malha embaralhado estático de comprimento variável.

[00463] Fig. 77A é um diagrama esquemático que mostra operação de mistura e divisão de comprimento variável para transporte em malha.

[00464] Fig. 77B é um diagrama esquemático que mostra operação de mistura e divisão de comprimento fixo para transporte em malha.

[00465] Fig. 77C é um diagrama esquemático que mostra várias combinações de conectividade de nó de comunicação em uma rede em malha.

[00466] Fig. 77D é um diagrama esquemático que representa conectividade de nó de rede em malha não planar.

[00467] Fig. 78A é um diagrama esquemático que mostra mistura e divisão reembaralhada.

[00468] Fig. 78B é um diagrama esquemático que mostra uma mistura desembaralhada de entradas em malha.

[00469] Fig. 78C é um diagrama esquemático que mostra uma operação de divisão e embaralhamento para saídas em malha.

[00470] Fig. 78D é um diagrama esquemático que mostra reembaralhamento e remistura para transporte em malha.

[00471] Fig. 79A é um diagrama esquemático que mostra mistura e divisão embaralhada de comprimento fixo para transporte em malha.

[00472] Fig. 79B é um diagrama esquemático que mostra uma modalidade alternativa de mistura e divisão embaralhada de comprimento fixo para transporte em malha.

[00473] Fig. 80 é um diagrama esquemático que mostra o roteamento em malha embaralhado estático de comprimento variável.

[00474] Fig. 81A é um diagrama esquemático que mostra mistura e divisão encriptada.

Petição 870170079583, de 19/10/2017, pág. 180/709

173/425 [00475] Fig. 81B é um diagrama esquemático que mostra uma mistura desencriptada de entradas em malha.

[00476] Fig. 81C é um diagrama esquemático que mostra divisão e encriptação para saídas em malha.

[00477] Fig. 82A é um diagrama esquemático que mostra um pacote encriptado de reembaralhamento para transporte em malha.

[00478] Fig. 82B é um diagrama esquemático que mostra operação de desencriptação, desembaralhamento e mistura (DUM) para entradas em malha.

[00479] Fig. 82C é um diagrama esquemático que mostra operação de divisão, embaralhamento e encriptação (SSE) para saídas em malha.

[00480] Fig. 83A é um diagrama esquemático que mostra um nó de mídia SDNP para transporte em malha.

[00481] Fig. 83B é um diagrama esquemático que mostra um nó de mídia SDNP de única rota.

[00482] Fig. 83C é um diagrama esquemático que mostra um nó de mídia SDNP de passagem de única rota.

[00483] Fig. 83D é um diagrama esquemático que mostra um nó de mídia SDNP para replicação de rota redundante.

[00484] Fig. 83E é um diagrama esquemático que mostra um nó de mídia SDNP que realiza embaralhamento de única rota.

[00485] Fig. 83F é um diagrama esquemático que mostra um nó de mídia SDNP que realiza desembaralhamento de única rota.

[00486] Fig. 83G é um diagrama esquemático que mostra um nó de mídia SDNP que realiza reembaralhamento de única rota.

[00487] Fig. 83H é um diagrama esquemático que mostra um nó de mídia SDNP que realiza encriptação de única rota.

[00488] Fig. 831 é um diagrama esquemático que mostra um nó de mídia SDNP que realiza desencriptação de única rota.

Petição 870170079583, de 19/10/2017, pág. 181/709

174/425 [00489] Fig. 83J é um diagrama esquemático que mostra um nó de mídia SDNP que realiza reencriptação de única rota.

[00490] Fig. 83K é um diagrama esquemático que mostra um nó de mídia SDNP que realiza encriptação embaralhada de única rota.

[00491] Fig. 83L é um diagrama esquemático que mostra um nó de mídia SDNP que realiza desencriptação desembaralhada de única rota.

[00492] Fig. 83M é um diagrama esquemático que mostra um nó de mídia SDNP que realiza reempacotamento de única rota.

[00493] Fig. 83N é um diagrama esquemático que mostra uma entrada de gateway SDNP em malha.

[00494] Fig. 830 é um diagrama esquemático que mostra uma saída de gateway SDNP em malha.

[00495] Fig. 83P é um diagrama esquemático que mostra uma entrada de gateway SDNP embaralhada e uma saída de gateway SDNP desembaralhada.

[00496] Fig. 83Q é um diagrama esquemático que mostra uma entrada de gateway SDNP encriptada e uma saída de gateway SDNP desencriptada.

[00497] Fig. 83R é um diagrama esquemático que mostra uma entrada de gateway SDNP encriptada embaralhada e uma saída de gateway SDNP desencriptada desembaralhada.

[00498] Fig. 83S é um diagrama esquemático que mostra os gateways SDNP que executam reembaralhamento em malha e reencriptação em malha [00499] Fig. 84A é um diagrama esquemático que mostra interconexões de nó de mídia SDNP.

[00500] Fig. 84B é um diagrama esquemático que mostra uma nuvem SDNP.

[00501] Fig. 84C é um diagrama esquemático que mostra uma comunicação encriptada entre nós de mídia SDNP.

[00502] Fig. 84D é um diagrama esquemático que mostra comunicação

Petição 870170079583, de 19/10/2017, pág. 182/709

175/425 encriptada inter-nós SDNP.

[00503] Fig. 85A é um diagrama esquemático que mostra uma nuvem

SDNP com conectividade de última milha a um cliente de telefone celular.

[00504] Fig. 85B é um diagrama esquemático que mostra um gateway

SDNP com uma conexão não segura de última milha.

[00505] Fig. 85C é um diagrama esquemático que mostra um gateway

SDNP com uma conexão segura de última milha.

[00506] Fig. 85D é um diagrama esquemático que mostra uma modalidade alternativa de um gateway SDNP com uma conexão segura de última milha.

[00507] Fig. 86 é um diagrama esquemático que representa vários clientes conectados a uma nuvem SDNP.

[00508] Fig. 87 é um diagrama esquemático de roteamento de pacotes em uma nuvem SDNP.

[00509] Fig. 88A é um diagrama esquemático que mostra roteamento de pacotes começando em uma nuvem SDNP.

[00510] Fig. 88B é um diagrama esquemático que mostra o primeiro roteamento de pacotes de salto de nuvem em uma nuvem SDNP.

[00511] Fig. 88C é um diagrama esquemático que mostra o segundo roteamento de pacotes de salto de nuvem em uma nuvem SDNP.

[00512] Fig. 88D é um diagrama esquemático que mostra o terceiro roteamento de pacotes de salto de nuvem em uma nuvem SDNP.

[00513] Fig. 88E é um diagrama esquemático que mostra roteamento de pacotes de um gateway de nuvem SDNP.

[00514] Fig. 88F é um diagrama esquemático que resume o roteamento de pacotes em uma nuvem SDNP para uma sessão específica.

[00515] Fig. 89A é um diagrama esquemático que mostra roteamento de pacotes de uma sessão alternada começando em uma nuvem SDNP.

[00516] Fig. 89B é um diagrama esquemático que mostra o primeiro

Petição 870170079583, de 19/10/2017, pág. 183/709

176/425 salto de nuvem de um roteamento de pacotes de sessão alternada em uma nuvem SDNP.

[00517] Fig. 89C é um diagrama esquemático que mostra o segundo salto de nuvem de um roteamento de pacotes de sessão alternada em uma nuvem SDNP.

[00518] Fig. 89D é um diagrama esquemático que mostra o terceiro salto de nuvem de um roteamento de pacotes de sessão alternada em uma nuvem SDNP.

[00519] Fig. 89E é um diagrama esquemático que mostra o quarto salto de nuvem de um roteamento de pacotes de sessão alternada em uma nuvem SDNP.

[00520] Fig. 88F é um diagrama esquemático que mostra roteamento de pacotes de uma sessão alternada de um gateway de nuvem SDNP.

[00521] Fig. 88G é um diagrama esquemático que resume o roteamento de pacotes de sessão alternada em uma nuvem SDNP.

[00522] Fig. 90 é um diagrama esquemático que mostra o conteúdo do pacote SDNP disponível para ataques man-in-the-middle e detecção de pacotes.

[00523] Fig. 91A é um diagrama esquemático que representa graficamente o transporte de pacotes SDNP ao longo do tempo.

[00524] Fig. 91B é um diagrama esquemático que representa o transporte de pacotes SDNP ao longo do tempo em forma tabular.

[00525] Fig. 91C é um diagrama esquemático que representa graficamente um pacote SDNP de um pacote de sessão alternada transportado ao longo do tempo.

[00526] Fig. 92A é um diagrama esquemático que mostra o controle de pacotes SDNP de entrada para nó de mídia SDNP.

[00527] Fig. 92B é um diagrama esquemático que mostra o controle de pacotes SDNP de saída de nó de mídia SDNP.

Petição 870170079583, de 19/10/2017, pág. 184/709

177/425 [00528] Fig. 93 é um diagrama esquemático que mostra a seleção do algoritmo SDNP.

[00529] Fig. 94 é um diagrama esquemático que mostra o desordenamento regular do algoritmo SDNP.

[00530] Fig. 95A é um diagrama esquemático que mostra uma nuvem SDNP de múltiplas zonas.

[00531] Fig. 95B é um diagrama esquemático que mostra o gerenciamento de segurança de múltiplas zonas SDNP.

[00532] Fig. 95C é um diagrama esquemático que mostra a ponte SDNP full-duplex de múltiplas zonas.

[00533] Fig. 95D é um diagrama esquemático que mostra uma rede SDNP de múltiplas zonas compreendendo múltiplas nuvens.

[00534] Fig. 95E é um diagrama esquemático que representa um enlace não protegido entre nuvens SDNP.

[00535] Fig. 95F é um diagrama esquemático que mostra o uso de pontes SDNP full-duplex de múltiplas zonas para enlaces seguros de nuvem a nuvem.

[00536] Fig. 96A é um diagrama esquemático que mostra um gateway SDNP seguro e um enlace de última milha para o cliente do tablet.

[00537] Fig. 96B é um diagrama esquemático que mostra as funções da interface da nuvem.

[00538] Fig. 96C é um diagrama esquemático que mostra as funções da interface do cliente.

[00539] Fig. 96D é um diagrama esquemático que mostra as funções do cliente.

[00540] Fig. 97A é um diagrama esquemático que mostra elementos funcionais de um gateway de nuvem SDNP seguro.

[00541] Fig. 97B é um diagrama esquemático que mostra interconexão de elementos funcionais em um gateway de nuvem SDNP seguro.

Petição 870170079583, de 19/10/2017, pág. 185/709

178/425 [00542] Fig. 98 é um diagrama esquemático que mostra a interface de cliente em um gateway de nuvem SDNP seguro.

[00543] Fig. 99A é um diagrama esquemático que mostra o gerenciamento de chaves no transporte de múltiplas zonas.

[00544] Fig. 99B é um diagrama esquemático que mostra o gerenciamento de chaves no transporte de múltiplas zonas com transporte em nuvem SDNP embaralhado.

[00545] Fig. 99C é um diagrama esquemático que mostra o gerenciamento de chaves no transporte de múltiplas zonas com transporte embaralhado para SDNP e rotas únicas de última milha.

[00546] Fig. 99D é um diagrama esquemático que mostra o gerenciamento de chaves no transporte de múltiplas zonas com embaralhamento de extremidade a extremidade.

[00547] Fig. 99E é um diagrama esquemático que mostra o gerenciamento de chaves no transporte de múltiplas zonas com transporte embaralhado para SDNP e rotas únicas de última milha reembaralhadas.

[00548] Fig. 99F é um diagrama esquemático que mostra o gerenciamento de chaves no transporte de múltiplas zonas com reembaralhamento específico de zona.

[00549] Fig. 100A é um diagrama esquemático que mostra a entrega e a instalação do código SDNP.

[00550] Fig. 100B é um diagrama esquemático que mostra a entrega e a instalação de múltiplas zonas do código SDNP.

[00551] Fig. 101A é um diagrama esquemático que mostra a entrega de segredos SDNP para um servidor DMZ.

[00552] Fig. 101B é um diagrama esquemático que mostra a comunicação de canal de mídia baseada em segredo.

[00553] Fig. 101C é um diagrama esquemático que mostra entrega de segredo e chave pelo canal de mídia SDNP.

Petição 870170079583, de 19/10/2017, pág. 186/709

179/425 [00554] Fig. 102 é um diagrama esquemático que mostra o controle

SDNP dinâmico através de um servidor de sinalização SDNP.

[00555] Fig. 103A é um diagrama esquemático que mostra a entrega de chave e semente SDNP através de um servidor de sinalização SDNP.

[00556] Fig. 103B é um diagrama esquemático que mostra uma modalidade alternativa da entrega de chave e semente SDNP através de um servidor de sinalização SDNP.

[00557] Fig. 104 é um diagrama esquemático que mostra a entrega SDNP a um cliente.

[00558] Fig. 105A é um diagrama esquemático que mostra a entrega de chave e semente SDNP de canal único a um cliente.

[00559] Fig. 105B é um diagrama esquemático que mostra uma modalidade alternativa da entrega de chave e semente SDNP de canal único a um cliente.

[00560] Fig. 106 é um diagrama esquemático que mostra o desordenamento do algoritmo SDNP de cliente.

[00561] Fig. 107 é um diagrama esquemático que mostra a entrega de chave e semente SDNP de canal duplo a um cliente.

[00562] Fig. 108 é um diagrama esquemático que mostra a entrega de chave pública a um cliente SDNP.

[00563] Fig. 109 é um diagrama esquemático que mostra o transporte em malha SDNP de canal único.

[00564] Fig. 110A é um fluxograma que mostra a comunicação ad hoc SDNP do canal de mídia, parte 1.

[00565] Fig. 110B é um fluxograma que mostra a comunicação ad hoc SDNP do canal de mídia, parte 2.

[00566] Fig. HOC é um fluxograma que mostra a comunicação ad hoc SDNP do canal de mídia, parte 3.

[00567] Fig. 110D é um fluxograma que mostra a comunicação ad hoc

Petição 870170079583, de 19/10/2017, pág. 187/709

180/425

SDNP do canal de mídia, parte 4.

[00568] Fig. 110E é um fluxograma que mostra a comunicação ad hoc

SDNP do canal de mídia, parte 5.

[00569] Fig. 110F é um fluxograma que mostra a comunicação ad hoc

SDNP do canal de mídia, parte 6.

[00570] Fig. 111A é um fluxograma que resume a sequência de envio de pacotes ad hoc SDNP.

[00571] Fig. 111B é um mapa de rede que resume o roteamento de envio do SDNP.

[00572] Fig. 112A é um fluxograma que resume a sequência de resposta de pacotes ad hoc SDNP.

[00573] Fig. 112B é um mapa de rede que resume o roteamento de resposta do SDNP.

[00574] Fig. 113A é um diagrama esquemático que mostra a preparação de pacotes SDNP.

[00575] Fig. 113B é um diagrama esquemático que mostra uma modalidade alternativa da preparação de pacotes SDNP.

[00576] Fig. 114 é uma tabela que resume uma modalidade da arquitetura de pacotes SDNP.

[00577] Fig. 115 é um diagrama esquemático que mostra uma modalidade do transporte em malha SDNP de canal duplo, em que a função de sinalização dentro da nuvem é realizada pelos mesmos servidores que atuam como nós de mídia e a função de sinalização na primeira e última milhas é realizada por servidores de sinalização separados.

[00578] Fig. 116 é um diagrama esquemático que mostra uma modalidade alternativa do transporte em malha SDNP de canal duplo, em que a função de sinalização tanto na nuvem quanto na primeira e última milhas é realizada por servidores de sinalização separados.

[00579] Fig. 117 é um diagrama esquemático que mostra o transporte

Petição 870170079583, de 19/10/2017, pág. 188/709

181/425 em malha SDNP de canal triplo.

[00580] Fig. 118 é um diagrama esquemático que mostra o nó SDNP e o registro do dispositivo.

[00581] Fig. 119 é um diagrama esquemático que mostra o monitoramento de atraso de propagação em tempo real do SDNP.

[00582] Fig. 120 é um gráfico que ilustra o monitoramento de atraso de propagação de pacotes de teste.

[00583] Fig. 121 é um diagrama esquemático que mostra o transporte em malha SDNP de canal triplo.

[00584] Fig. 122 é um diagrama esquemático que mostra servidores de nomes redundantes SDNP.

[00585] Fig. 123 é um diagrama esquemático que mostra servidores de sinalização redundantes SDNP.

[00586] Fig. 124A é um fluxograma que mostra a comunicação SDNP de canal triplo, parte 1.

[00587] Fig. 124B é um fluxograma que mostra a comunicação SDNP de canal triplo, parte 2.

[00588] Fig. 124C é um fluxograma que mostra a comunicação SDNP de canal triplo, parte 3.

[00589] Fig. 124D é um fluxograma que mostra a comunicação SDNP de canal triplo, parte 4.

[00590] Fig. 124E é um fluxograma que mostra a comunicação SDNP de canal triplo, parte 5.

[00591] Fig. 125A é um fluxograma que resume uma sequência de envio de pacote de canal triplo SDNP.

[00592] Fig. 125B é um mapa de rede que resume um roteamento de envio de pacote de canal triplo SDNP.

[00593] Fig. 126A é um fluxograma que resume uma sequência de resposta de pacote de canal triplo SDNP.

Petição 870170079583, de 19/10/2017, pág. 189/709

182/425 [00594] Fig. 126B é um mapa de rede que resume um roteamento de resposta de pacote de canal triplo SDNP.

[00595] Fig. 126C é um fluxograma que resume uma modalidade alternativa da sequência de resposta de pacote de canal triplo SDNP.

[00596] Fig. 127 é um diagrama esquemático que mostra o préprocessamento de pacotes de nó SDNP.

[00597] Fig. 128 é um diagrama esquemático que mostra o reempacotamento SDNP.

[00598] Fig. 129A é um diagrama esquemático que mostra a reconstrução de pacotes em tempo real do último nó.

[00599] Fig. 129B é um diagrama esquemático que mostra a reconstrução de pacotes de último nó armazenada em buffer.

[00600] Fig. 129c é um diagrama esquemático que mostra a reconstrução de pacotes de cliente armazenada em buffer.

[00601] Fig. 129D é um fluxograma que resume a construção de pacotes de clientes.

[00602] Fig. 130 é um diagrama esquemático que mostra os pacotes de sinal de comando e controle SDNP.

[00603] Fig. 131 é um diagrama esquemático que mostra a descoberta de rota dinâmica SDNP.

[00604] Fig. 132A é um fluxograma que mostra pacotes de sinal de comando e controle, trajeto 1-1.

[00605] Fig. 132B é um fluxograma que mostra pacotes de sinal de comando e controle, trajeto 1-2.

[00606] Fig. 132C é um diagrama esquemático que mostra a reconstrução de pacotes SDNP.

[00607] Fig. 133A é um diagrama esquemático que mostra uma representação da camada OSI do transporte fragmentado SDNP.

[00608] Fig. 133B é um diagrama esquemático que mostra uma

Petição 870170079583, de 19/10/2017, pág. 190/709

183/425 representação da camada OSI do transporte fragmentado SDNP tunelado.

[00609] Fig. 134 é um diagrama esquemático que mostra o roteamento de corrida de pacotes SDNP.

[00610] Fig. 135 é uma tabela que compara a comunicação SDNP com outra comunicação de rede com comutação de pacotes.

Descrição da Invenção [00611] Após quase um século e meio de telefonia com comutação de circuitos, os sistemas e redes de comunicação de hoje, em apenas uma década, migraram todos para a comunicação com comutação de pacotes usando o protocolo de Internet transportado por dados Ethernet, WiFi, 4G/LTE e DOCSIS3 sobre cabo e fibra óptica. Os benefícios de misturar voz, texto, imagens, vídeo e dados são muitos, incluindo o uso de trajetos redundantes para garantir a entrega confiável de pacotes IP, ou seja, a razão pela qual a Internet foi criada em primeiro lugar, além de um nível incomparável de interoperabilidade do sistema e conectividade em todo o mundo. Com qualquer inovação, no entanto, a magnitude dos desafios que a nova tecnologia cria geralmente corresponde aos benefícios derivados.

Desvantagens dos provedores de comunicação existentes [00612] Conforme detalhado ao longo da seção de fundamentos desta descrição, a comunicação atual possui muitas desvantagens. Os sistemas de comunicação de alto desempenho hoje, que compreendem hardware digital personalizado pertencente às principais operadoras de longa distância do mundo, como AT&T, Verizon, NTT, Vodaphone, etc., geralmente oferecem qualidade de voz superior, mas com alto custo, incluindo taxas de assinatura mensais caras, tarifas de conexão, tarifas de longa distância, planos complexos de taxa de dados, taxas de roaming de longa distância e inúmeras tarifas de serviço. Como essas redes são privadas, a segurança real dos dados não é conhecida publicamente, e infrações de segurança, hacks e invasões geralmente não são relatadas ao público. Dado o número de grampos

Petição 870170079583, de 19/10/2017, pág. 191/709

184/425 telefônicos e invasões de privacidade relatadas na imprensa hoje, a segurança da comunicação da portadora privada continua suspeita, senão na sua nuvem privada, pelo menos em suas conexões de última milha.

[00613] “Provedores de serviços de Internet” ou ISPs formam outro elo na cadeia global de comunicações. Conforme descrito nos fundamentos desta invenção, a voz transmitida pela Internet usando VoIP, ou “protocolo de voz sobre a Internet” sofre de numerosos problemas de qualidade de serviço ou QoS, incluindo • A Internet, uma rede com comutação de pacotes, não foi projetada para entregar pacotes IP em tempo hábil ou para suportar aplicativos em tempo real com baixa latência e alta QoS • O roteamento de um pacote IP toma um trajeto imprevisível, resultando em atrasos em constante mudança, rajadas de altas taxas de erro de dados e chamadas descartadas inesperadas • O roteamento de pacotes IP é feito a critério do provedor de serviços de Internet, que controla a rede dentro do qual o pacote é roteado e pode ajustar o roteamento para equilibrar o carregamento de sua própria rede ou para servir melhor seus clientes VIP às custas de qualidade de conexão degradante de tráfego geral que atravessa sua rede.

• Os provedores superiores ou OTT, como Line, KakaoTalk, Viber, etc., que pegam uma carona na internet, agem como caroneiros na Internet e não têm controle sobre a rede ou fatores que afetam a QoS.

• Usar CODECs de áudio pesados que não proporcionam áudio de qualidade de voz compreensível, mesmo com taxas de dados moderadas • VoIP baseado no protocolo de transporte TCP sofre de alta latência e áudio degradado causado por atrasos induzidos durante o handshaking e redifusão de pacotes IP. O transporte UDP não auxiliado não garante a integridade da carga útil.

Petição 870170079583, de 19/10/2017, pág. 192/709

185/425 [00614] Além das questões de QoS, a segurança dos dispositivos e das redes de hoje é abismai, representando um nível totalmente inaceitável para suportar as necessidades futuras da comunicação global. Como detalhado nos fundamentos e mostrado anteriormente na Figura 40, a segurança da rede é propensa a uma grande variedade de ataques cibernéticos em dispositivos de comunicação, incluindo spy ware, cavalos de troia, infecções e phishing; no último enlace, incluindo spyware, detecção de pacotes IP, grampeamentos e interceptação de chamadas de torres de celulares “falsas” de piratas cibernéticas; e na porção de rede ou companhia telefônica local da conectividade de última milha, envolvendo spyware, detecção de pacotes de IP, infecções como vírus e ataques 'inan-in-the-middle'' de piratas cibernéticos. A própria nuvem está sujeita a acesso não autorizado ao quebrar a segurança em qualquer gateway da nuvem, por infecções como vírus, de piratas cibernéticos que lançam ataques man-in-the-middle, ataques de negação de serviço e vigilância governamental não autorizada. Em resumo, a segurança da comunicação de hoje está comprometida por inúmeras vulnerabilidades facilmente exploradas por piratas cibernéticos e úteis para cometer crime cibernético e violações da privacidade cibernética, incluindo:

• Revelar o destino de um pacote IP, incluindo o endereço IP de destino, o n° de porta de destino e o endereço MAC de destino.

• Revelar a origem de um pacote IP, incluindo o endereço IP de origem, o n° de porta de origem e o endereço MAC de origem.

• Revelar o tipo de transporte da Camada 4 empregado e pelo n° de porta o tipo de serviço solicitado e os dados do aplicativo encapsulados na carga útil do pacote IP.

• Em arquivos não criptografados, todos os dados de aplicativos e arquivos encapsulados na carga útil do pacote IP, incluindo informações pessoais e confidenciais, informações de login, senhas de aplicativos, registros financeiros, vídeos e fotografias.

Petição 870170079583, de 19/10/2017, pág. 193/709

186/425 • Um diálogo de comunicações, dando a uma parte cibernética a oportunidade repetida de quebrar arquivos criptografados • Inúmeras oportunidades para instalar malwares, incluindo programas de spyware e phishing e cavalos de Troia em dispositivos e roteadores de comunicação usando FTP, e-mail e infecções baseadas em páginas da Web [00615] Reiterando um ponto-chave, a fraqueza fundamentalmente intrínseca das redes de comunicação com comutação de pacotes usando o Protocolo de Internet mostrado na Figura 44 é que qualquer parte hostil ou pirata cibernético que intercepta o pacote IP 670 pode ver quais dispositivos estavam envolvidos na criação dos dados contidos no pacote IP, de onde veio o pacote IP, aonde o pacote IP está sendo enviado, como os dados estão sendo transportados, ou seja, UDP ou TCP, e que tipo de serviço está sendo solicitado, ou seja, que tipo de dados do aplicativo estão contidos na carga útil. A este respeito, um pirata cibernético pode determinar o “contexto” de uma conversa, melhorando a oportunidade de quebrar encriptação, quebrar a segurança da senha e obter acesso não autorizado a arquivos, dados e conteúdo de carga útil.

[00616] Encriptação - Para se defender contra a diversidade de ataques cibernéticos conforme descrito, os gerentes de rede atuais, os profissionais de TI e os programas de aplicativos dependem principalmente de uma única proteção - encriptação. A encriptação é um meio pelo qual converter conteúdo reconhecível também conhecido como “texto simples”, seja texto legível, programas executáveis, vídeos e imagens visíveis, ou áudio inteligível, em um tipo de arquivo alternativo conhecido como “texto cifrado”, que aparece como uma cadeia de caracteres textuais sem sentido.

[00617] O processo de encriptação, convertendo um arquivo desprotegido em um arquivo encriptado, envolve o uso de um algoritmo lógico ou matemático, chamado de cifra, para mudar os dados em elementos

Petição 870170079583, de 19/10/2017, pág. 194/709

187/425 textuais equivalentes sem revelar nenhum padrão aparente do processo de conversão da encriptação. O arquivo encriptado é então enviado através da rede ou do meio de comunicação até que seja recebido pelo dispositivo de destino. Ao receber o arquivo, o dispositivo receptor, usando um processo conhecido como “desencriptação”, subsequentemente decodifica a mensagem codificada para revelar o conteúdo original. O estudo de encriptação e desencriptação, conhecido como “criptografia”, combina elementos de matemática, incluindo teoria de números, teoria de conjuntos e projeto de algoritmos, com informática e engenharia elétrica.

[00618] Em simples tecnologias de encriptação de “chave única” ou “chave simétrica”, uma única palavra-chave ou frase conhecida a priori por ambas as partes pode ser usada para desbloquear o processo para encriptar e desencriptar um arquivo. Na Segunda Guerra Mundial, por exemplo, submarinos e navios oceânicos comunicados em canais de rádio abertos usavam mensagens encriptadas. Inicialmente, as encriptações eram baseadas em uma única chave. Ao analisar o padrão de código, criptólogos aliados às vezes eram capazes de revelar a palavra-chave ou padrão da encriptação e, posteriormente, conseguiam ler arquivos criptografados sem descoberta. A medida que os métodos de encriptação tomaram-se mais complexos, quebrar o código manualmente tomou-se mais difícil.

[00619] O código evoluiu para cifras mecânicas baseadas em máquinas, uma forma inicial de computação. Na época, a única maneira de quebrar o código era roubar uma máquina de cifra e usar as mesmas ferramentas para decifrar uma mensagem como as que encriptavam os arquivos. O desafio era como roubar uma máquina de cifra sem que o roubo fosse detectado. Se soubesse que uma máquina de código tinha sido comprometida, o inimigo simplesmente mudaria seu código e atualizaria suas máquinas de cifra já em operação. Este princípio é praticado ainda hoje - o ataque cibernético mais eficaz é aquele que não é detectado.

Petição 870170079583, de 19/10/2017, pág. 195/709

188/425 [00620] Com o advento da computação e da Guerra Fria, a encriptação tomou-se mais complexa, mas a velocidade dos computadores usados para quebrar códigos de encriptação também melhorou. Em cada etapa no desenvolvimento de comunicações seguras, a tecnologia e o know-how para encriptar informações e a capacidade de quebrar o código de encriptação evoluíram quase ao mesmo tempo. O principal passo evolutivo seguinte na encriptação ocorreu na década de 1970 com a inovação da encriptação de chave dupla, um princípio ainda em uso hoje. Um dos métodos de encriptação de chave dupla mais conhecidos é o criptossistema de chave pública RSA, que leva o nome de seus desenvolvedores Rivest, Shamir e Adleman. Apesar do reconhecimento publicado para a RSA, desenvolvedores contemporâneos desenvolveram de forma independente o mesmo princípio. O RSA emprega duas chaves criptográficas com base em dois grandes números primos mantidos em segredo do público. Um algoritmo é usado para converter esses dois números primos em uma chave de encriptação, aqui chamada de chave E, e um algoritmo matemático diferente é usado para converter os mesmos dois números primos secretos em uma chave secreta de desencriptação, aqui chamada também de chave D. O usuário de RSA que selecionou os números primos secretos, aqui chamado de “editor de chave”, distribui ou “publica” essa chave E gerada de forma algorítmica, compreendendo tipicamente entre 1024b a 4096b de tamanho, a qualquer pessoa que deseje encriptar um arquivo. Como essa chave possivelmente é distribuída para muitas partes em uma forma não encriptada, a chave E é conhecida como uma “chave pública”. [00621] As partes que desejam se comunicar com o editor de chave usam essa chave E pública em conjunto com um algoritmo disponível publicamente, geralmente oferecido sob a forma de software comercial, para encriptar qualquer arquivo a ser enviado para o editor de chave específico. Ao receber um arquivo criptografado, o editor de chave usa sua chave D secreta para desencriptar o arquivo, retornando-o ao texto simples. A característica

Petição 870170079583, de 19/10/2017, pág. 196/709

189/425 única do método de chave dupla em geral e o algoritmo RSA em particular é que a chave E pública usada para encriptar um arquivo não pode ser usada para desencriptação. Somente a chave D secreta possuída pelo editor de chave tem a capacidade de desencriptar arquivos.

[00622] O conceito de troca de chave dupla, chave dividida ou múltiplas chaves na encriptação e desencriptação de arquivos não está limitado especificamente a RSA ou a qualquer método algorítmico, mas especifica metodologicamente um método de comunicação como uma sequência de etapas. A Figura 47, por exemplo, ilustra uma troca de chave dupla na realização de comunicação através de uma rede de comunicação por pacotes. Como mostrado, o notebook 35 que deseja receber um arquivo seguro do telefone celular 32 primeiro gera duas chaves, chave E 690 para encriptação e chave D 691 para desencriptação usando algum algoritmo. O notebook 35, em seguida, envia a chave E 690 para o telefone celular 32 usando a comunicação de rede pública 692 carregando o pacote IP 695. O pacote IP 695 ilustra claramente na forma não encriptada, o endereço MAC, o endereço de origem IP “NB” e o endereço da porta n° 9999 do notebook 35 juntamente com o endereço IP de destino “CP”, porta n° 21 do telefone celular 32, bem como o protocolo de transporte TCP e uma cópia encriptada da chave E 690 como sua carga útil.

[00623] Usando um algoritmo ou pacote de software de encriptação acordado, o telefone celular 32 então processa o arquivo de texto simples 697A usando o algoritmo de encriptação 694A e a chave E de encriptação 690 para produzir um arquivo encriptado, ou seja, texto cifrado 698, carregado como carga útil do pacote IP 696 na comunicação segura 693 do telefone celular 32 ao notebook 35. Ao receber o pacote IP 696, o algoritmo 694B desencripta o arquivo usando a chave secreta de desencriptação, isto é, a chave D 691. Uma vez que a chave D 691 é feita de acordo com a chave E 690, o algoritmo 694B, em essência, emprega o conhecimento de ambas as

Petição 870170079583, de 19/10/2017, pág. 197/709

190/425 chaves para desencriptar o texto cifrado 698 de volta ao texto simples não encriptado 697B. Enquanto a carga útil do pacote IP 696 é protegida na forma de um arquivo encriptado, ou seja, o texto cifrado 698, o resto do pacote IP ainda não está encriptado, detectável e legível por qualquer pirata cibernético, incluindo o endereço IP de origem “CP” e a porta n° 20 e o endereço IP de destino “NB” e a porta associada n° 9999. Portanto, mesmo se a própria carga não puder ser aberta, a comunicação pode ser monitorada.

[00624] Redes Privadas Virtuais - Outro método de segurança, que depende também da encriptação, é o de uma “rede privada virtual” ou VPN. Em uma VPN, um túnel ou um tubo seguro é formado em uma rede usando pacotes IP encriptados. Em vez de apenas encriptar a carga útil, em uma VPN o pacote IP inteiro é encriptado e, em seguida, encapsulado em outro pacote IP não encriptado atuando como uma mula ou uma portadora transmitindo o pacote encapsulado de um gateway de VPN para outro. Originalmente, as VPNs foram usadas para conectar diferentes redes de área local em uma longa distância, por exemplo, quando as empresas que operam redes privadas em Nova York, Los Angeles e Tóquio desejavam interconectar suas várias LANs com a mesma funcionalidade como se compartilhassem uma rede privada global.

[00625] O conceito básico de VPN é ilustrado na Figura 48A onde o servidor 700, como parte de uma LAN que suporta vários dispositivos sem fio através de conexões de RF 704 e conexões com fio 701, é conectado por uma “rede privada virtual” ou VPN compreendendo o conteúdo 706 e o túnel de VPN 705 a um segundo servidor 707 que possui conexões com fio 708 para desktops 709A até 709C, para o notebook 711 e para a estação base WiFi 710. Além desses enlaces de largura de banda relativamente baixa, o servidor 707 também se conecta ao supercomputador 713 através de conexão de alta largura de banda 712. Em operação, o pacote IP externo 714 do servidor A, especificando um endereço IP de origem “S8” e a porta n° 500 é enviado para

Petição 870170079583, de 19/10/2017, pág. 198/709

191/425 o servidor Β no endereço IP de destino “S9” e na porta n° 500. Esse pacote IP extemo 714 descreve como os servidores 700 e 707 formam um túnel encriptado entre si para que os dados passem dentro. A carga útil VPN do pacote extemo 714 contém o pacote IP 715 da última milha, provendo comunicação direta entre o desktop 702B com o endereço IP de origem “DT” e a porta ad hoc correspondente n° 17001 e o notebook 711 com o endereço IP de origem “NB” e a porta ad hoc n° 21, uma solicitação para uma transferência de arquivo.

[00626] Para estabelecer esta transferência de forma segura usando uma rede privada virtual, o túnel de VPN 705 foi criado e a sessão iniciada antes da comunicação real foi enviada. Em aplicativos corporativos, o túnel de VPN 705 não é transportado pela Internet de forma ad hoc, mas geralmente é carregado por um ISP dedicado ou operadora possuindo sua própria rede de fibra e hardware. Esta operadora geralmente faz um acordo contratual anual ou de longo prazo com a empresa que exige serviços de VPN para garantir uma quantidade específica de largura de banda por um determinado custo. Idealmente, o enlace dedicado de alta velocidade se conecta diretamente ao servidor 700 e ao servidor 707 sem conexões intermediárias ou de “última milha” para perturbar o desempenho da VPN, QoS ou segurança.

[00627] Em operação, as VPNs tradicionais requerem um processo em duas etapas - um para criar ou fazer “login” à VPN e uma segunda etapa para transferir dados dentro do tubo ou túnel seguro. O conceito de tunelamento é ilustrado hierarquicamente na Figura 48B onde os pacotes IP externos transportados pelas pilhas de comunicação 720 e 721 formam uma conexão de VPN 722 nas Camadas 1 a Camadas 4, utilizam a Camada 5 para criar uma sessão VP virtual 723 e utilizam a Camada 6, a camada de apresentação, para facilitar a encriptação 725 para alcançar gateway de VPN para o tubo de gateway 705 entre o servidor 700 e 707. Enquanto a conexão VPN 722 usa o

Petição 870170079583, de 19/10/2017, pág. 199/709

192/425

Protocolo de Internet para enviar os pacotes IP, a Camada PHY 1 e a Camada 2 de enlace de dados da VPN geralmente são suportadas por uma operadora dedicada e que não usa roteamento imprevisível pela Internet. Os dados da camada de aplicativo 6 transferidos como comunicação de dispositivo para dispositivo 706 entre o desktop 702C e 709A, por exemplo, são fornecidos como dados tunelados 726 incluindo todas as sete camadas OSI necessárias para estabelecer a comunicação como se a VPN não estivesse presente.

[00628] Em operação, o pacote IP externo da pilha de comunicação 720 uma vez passado para o servidor 707 é aberto para revelar dados encapsulados 726, a verdadeira mensagem do pacote. Desta forma, a comunicação de extremidade a extremidade ocorre ignorando os detalhes usados para criar o túnel de VPN, exceto que o túnel de VPN deve ser formado antes de qualquer tentativa de comunicação e fechado após a conclusão da conversação. A falha em abrir o túnel de VPN primeiro resultará na transmissão não encriptada do pacote IP 715 suscetível à detecção de pacotes IP, ao sequestro, à infecção e a mais. A falha em fechar a VPN depois de uma conversa estar completa pode fornecer a um criminoso cibernético a oportunidade de ocultar sua atividade ilegal dentro do túnel de VPN de outra pessoa, e se interceptada, pode resultar em possíveis acusações criminais contra uma pessoa inocente.

[00629] Embora as VPNs sejam formas comuns para que múltiplas redes privadas de área local se interconectem entre si usando conexões privadas com capacidade dedicada e largura de banda, o uso de VPNs em redes públicas e na Internet é problemático para comunicações de duas partes. Um problema com VPNs é que a conexão VPN deve ser estabelecida a priori, antes que ela possa ser usada, e não pacote por pacote. Por exemplo, como mostrado na Figura 48C exemplificativa de uma chamada VoIP conectada através de uma rede com comutação de pacotes, antes de o telefone celular 730 entrar em contato com o destinatário da chamada desejada no telefone

Petição 870170079583, de 19/10/2017, pág. 200/709

193/425 celular 737, ele deve primeiro estabelecer uma sessão VPN seguindo as etapas 740 no algoritmo simplificado como mostrado. Ao fazê-lo, o telefone celular 730 com um aplicativo de conexão VPN envia pacotes IP para o hospedeiro de VPN 733 através de qualquer roteamento de última milha disponível, neste caso, a comunicação de rádio 741A para a estação base WiFi 731, seguida da comunicação com fio 741B para o roteador 732, em seguida, comunicação com fio 741C para o hospedeiro de VPN 733. Uma vez que a sessão entre o telefone celular 730 e o hospedeiro de VPN 733 é estabelecida, o telefone celular 730 instrui o hospedeiro de VPN 733 para criar um túnel de VPN 741 para o hospedeiro de VPN 734, a sessão da Camada 5 é negociada com o túnel encriptado pela Camada 6.

[00630] Uma vez que a conexão VPN está configurada, o telefone celular 730 de acordo com as etapas 745 relacionadas ao aplicativo faz uma chamada através de qualquer aplicativo de telefone VoIP. Nesta etapa, o aplicativo deve estabelecer um enlace de “chamada” na última milha do hospedeiro de VPN 734 para o telefone celular 737. Se o aplicativo VoIP não conseguir ou não for autorizado para tal, a chamada falhará e terminará imediatamente. Caso contrário, o pacote IP interno estabelecerá uma sessão da Camada 5 de aplicativo entre o celular 730 e o telefone celular de destino 737 e confirmará que os pacotes de teste IP são devidamente desencriptados e inteligíveis.

[00631] Para fazer uma chamada de acordo com a etapa 745, a chamada necessariamente vem de um aplicativo da Camada 7 executado no telefone e não das funções de discagem normais do telefone, porque o cartão SIM da operadora telefônica no telefone não é compatível com o túnel de VPN. Uma vez que a chamada é iniciada, o telefone celular 730 transmite uma sucessão de pacotes IP que representam pequenos pedaços ou “trechos” de som de acordo com seu aplicativo de comunicação. No exemplo mostrado, esses pacotes são enviados a partir do aplicativo no telefone celular 730 do

Petição 870170079583, de 19/10/2017, pág. 201/709

194/425 chamador através do enlace WiFi 746A para a estação base WiFi 731, em seguida, através da conexão com fio 746B para o roteador 732 e, finalmente, através da conexão com fio 746C para o hospedeiro de VPN 733. Os dados são então enviados de forma segura pela conexão 747 para o hospedeiro de VPN 735 através do túnel de VPN 742. Uma vez que sai do túnel de VPN, o hospedeiro de VPN envia os dados para a conexão com fio 748A para o roteador 735, depois pela conexão com fio 748B para o sistema de telefone celular e torre 736 que, por sua vez, chama 737 como uma chamada de telefone normal. O processo de chamada de um aplicativo de celular para um telefone que não está executando o mesmo aplicativo é chamado de recurso de “chamada fora”.

[00632] O exemplo anterior destaca outro problema com a conexão a uma VPN em uma rede pública - os enlaces de última milha do chamador no celular 730 para o hospedeiro de VPN 733 e a chamada do hospedeiro de VPN 734 para a pessoa que está sendo chamada no telefone celular 737 não fazem parte da VPN e, portanto, não garantem segurança, desempenho ou QoS de chamadas. Especificamente, a última linha do chamador, que inclui as conexões 746A, 746B e 746C, bem como as conexões de chamada 748A, 748B e 748C, estão abertas para detectar e sujeitas a ataques cibernéticos.

[00633] Uma vez que a chamada é completada e o telefone celular 737 desliga, a VPN 742 deve ser encerrada de acordo com a etapa 749 onde a Camada da VPN 5 coordena o fechamento da sessão VPN e o telefone celular 730 se desconecta do hospedeiro de VPN 733.

[00634] Mesmo seguindo as etapas prescritas, no entanto, não há garantia de que a realização de uma chamada ou o envio de documentos através de uma VPN pode não falhar por qualquer número de razões, incluindo:

• A VPN pode não funcionar com baixa latência suficiente para suportar aplicativos em tempo real, VoIP ou vídeo;

Petição 870170079583, de 19/10/2017, pág. 202/709

195/425 • A conexão de última milha da VPN do chamador para o gateway de VPN on do gateway de VPN para o destinatário da chamada pode não funcionar com baixa latência suficiente para suportar aplicativos em tempo real, VoIP ou vídeo;

• O gateway de VPN mais próximo para o chamador ou para o destinatário pretendido, ou seja, “a última milha” pode estar muito longe, possivelmente ainda mais longe do que a distância para o destinatário da chamada sem a VPN, expondo a conexão à latência excessiva, instabilidade de rede, roteamento descontrolado através de redes desconhecidas, QoS variável e inúmeras oportunidades para ataques man-in-the-middle na porção desprotegida da conexão;

• A conexão de última milha da VPN do gateway de VPN para o destinatário da chamada pode não suportar conexões de “chamada fora” e encaminhamento de pacotes ou enlaces de suporte para companhias telefônicas locais;

• As operadoras locais ou censuras governamentais podem bloquear chamadas ou conexões dentro ou fora de gateways de VPN conhecidos por razões de segurança nacional ou conformidade regulamentar;

• Usando VPNs corporativas, as chamadas VoIP podem ser limitadas para e somente de funcionários da empresa e usuários autorizados especificados, transações financeiras e transferência contínua de vídeo podem ser bloqueadas, e-mail privado para servidores públicos de e-mail, como Yahoo, Google, etc. podem ser bloqueados e inúmeros sites como YouTube, programas de bate-papo ou Twitter podem ser bloqueados de acordo com a política da empresa.

• Em casos de redes instáveis, uma VPN pode ficar aberta e manter uma sessão permanente conectada ao dispositivo de um chamador até que seja reinicializada manualmente pelo operador da VPN. Isso pode levar à perda de largura de banda para conexões subsequentes ou tarifas de conexão

Petição 870170079583, de 19/10/2017, pág. 203/709

196/425 caras.

[00635] Comparando Redes - Comparar a comunicação oferecida pelos provedores “over-the top” ou OTT, mostrada na Figura 49A, à de sistemas de comunicação que empregam redes públicas para se conectarem a uma VPN ad hoc, mostrada anteriormente na Figura 48C, revela rapidamente que, além do próprio enlace da VPN, a maioria dos dois sistemas de comunicação tem componentes e conexões quase idênticos. Especificamente, a última milha do chamador que compreende o telefone celular 730, a conexão de rádio WiFi 746A, a estação base WiFi 731, as conexões com fio 746B e 746C, e o roteador 732 representam a mesma conectividade de última milha em ambas as implementações. Da mesma forma, na última milha da outra parte, o telefone celular 737, a conexão do telefone celular 748C, a estação base da célula e a torre 736, as conexões com fio 748A e 748B e o roteador 735 são idênticos tanto para as versões da Internet como das VPN. A principal diferença é que, em uma rede pública, o túnel de VPN 742 com comunicação segura 747 entre os hospedeiros 733 e 734 da VPN é substituído por servidores/roteadores 752 e 754 que possuem conexão de comunicação insegura 755. Outra diferença é nas comunicações OTT, a chamada está instantaneamente disponível como descrito na etapa 750, onde é necessário usar as etapas adicionais 740 e 749 da VPN para configurar a VPN e finalizar a sessão VPN antes e após a chamada.

[00636] Em ambos os exemplos, as conexões de última milha oferecem QoS de chamada imprevisível, exposição à detecção de pacotes e risco de ataques cibernéticos. Como o servidor/roteadores 752 e 774 são provavelmente gerenciados por diferentes ISPs em diferentes locais, pode-se interpretar os servidores como nuvens diferentes existentes, ou seja, nuvens 751 e 753. Por exemplo, as redes publicamente abertas possuídas e operadas por Google, Yahoo, Amazon e Microsoft podem ser consideradas como nuvens diferentes, por exemplo, a “nuvem da Amazon”, apesar de estarem

Petição 870170079583, de 19/10/2017, pág. 204/709

197/425 todas interligadas pela Internet.

[00637] Uma topologia de rede concorrente, a rede par-a-par ou PPN mostrada na Figura 49B, compreende uma rede feita de um grande número de pares com roteamento de pacotes gerenciados pela PPN e não pelo roteador ou ISP. Embora as redes par-a-par existam no hardware há décadas, foi o Napster que popularizou o conceito como um meio para evitar o controle, os custos e a regulamentação dos provedores de serviços de Internet. Quando processado pelos reguladores governamentais dos EUA por violações de direitos autorais de música, os progenitores da Napster pularam do barco, invadindo a operadora OTT inicial, Skype. Naquela época, a rede do Skype converteu-se de um OTT tradicional em uma PPN tipo Napster.

[00638] Na operação da PPN, cada dispositivo que faz uma conexão de login com a PPN toma-se mais um nó na PPN. Por exemplo, se na geografia 761, o telefone celular 730 com o software de PPN instalado entra na rede par-a-par, parece que todos os outros dispositivos conectados na região se tomam parte da rede. As chamadas feitas por qualquer dispositivo saltam de um dispositivo para outro para chegar ao destino, outro dispositivo conectado à PPN. Por exemplo, se o telefone celular 730 usa sua conexão PPN para chamar outro dispositivo conectado à PPN, por exemplo, telefone celular 768, a chamada segue um trajeto tortuoso através de qualquer dispositivo(s) localizado(s) fisicamente na PPN entre as duas partes. Como mostrado, a chamada que emana do telefone celular 730 se conecta pelo WiFi 731 através da estação base WiFi 731 ao desktop 765A, depois ao notebook 766A, ao desktop 765B, depois ao desktop 765C e, finalmente, para o telefone celular 768 através da estação base do telefone celular e da torre 767. Desta maneira, todo o roteamento foi controlado pela PPN e a Internet não estava envolvida no gerenciamento do roteamento. Uma vez que ambas as partes utilizam, o software PPN usado para se conectar à rede também atua como o aplicativo para comunicação de voz baseada em VoIP.

Petição 870170079583, de 19/10/2017, pág. 205/709

198/425 [00639] No caso em que o telefone celular 730 tenta chamar um telefone celular do dispositivo não PPN 737 no outro lado do mundo, o roteamento pode necessariamente incluir a Internet em alguns enlaces, especialmente para enviar pacotes em oceanos ou serras. A primeira parte do roteamento na geografia 761 prossegue de maneira semelhante ao exemplo anterior, começando do telefone celular 730 e roteado através da estação base WiFi 731, desktop 765A, notebook 766A, desktops 765B e 765C. Neste ponto, se o notebook 766B estiver conectado à rede, a chamada será roteada através dele, caso contrário, a chamada deve ser roteada através da estação base do telefone celular e da torre 767 para o telefone celular 768 e, em seguida, voltar para a estação base e torre do telefone celular 767 antes de enviá-lo para a frente.

[00640] Se a chamada for transpacífica, os computadores e os telefones celulares não podem transportar o tráfego através do oceano, então a chamada é necessariamente roteada para a Internet para o servidor/roteador de terceiros 770 na nuvem 763 e adiante através da conexão 747 para o servidor/roteador de terceiros 771 na nuvem 764. A chamada, em seguida, deixa a Internet e entra na PPN na geografia 762 primeiro através do desktop 772, que, por sua vez, conecta-se ao WiFi 773, ao notebook 776 e à estação base 736. Uma vez que o WiFi 733 não executa o aplicativo PPN, o pacote real que entra no WiFi 773 deve viajar para o tablet 775 ou o telefone celular 774 e voltar para o WiFi 773 antes de ser enviado para a estação base do telefone celular e a torre 736 através de uma conexão com fio. Finalmente, a chamada de telefone celular 748C conecta-se ao telefone celular 737, que não é um dispositivo habilitado para PPN. A conexão constitui, portanto, uma “chamada fora” para o PPN porque ele sai da geografia de PPN 762. Usar essa abordagem de PPN, como uma VPN, envolve primeiro registrar um dispositivo de chamada na rede PPN de acordo com a etapa 760 ao completar um login PPN. Posteriormente, a chamada pode ser feita usando o aplicativo PPN de acordo

Petição 870170079583, de 19/10/2017, pág. 206/709

199/425 com a etapa 769. A vantagem da abordagem PPN é que pouco ou nenhum hardware é necessário para transportar uma chamada por uma longa distância, e que, como cada dispositivo conectado à PPN atualiza regularmente o operador de PPN quanto ao status, o carregamento e a latência, o operador de

PPN pode decidir o roteamento de um pacote para minimizar o atraso.

[00641] As desvantagens de tal abordagem são que os pacotes atravessam uma rede que compreende muitos nós desconhecidos que representam uma potencial ameaça de segurança e que têm um impacto imprevisível na latência de chamada e QoS de chamadas. Como tal, com exceção do Skype, as redes par-a-par operando na Camada 3 e superior não são comumente empregadas em redes de comunicação com comutação de pacotes.

[00642] Um resumo comparativo dos provedores VPN ad hoc, provedores OTT da Internet e redes pares PPN é contrastado abaixo.

Rede Internei OTT jsjsj/jsOPNífiOBiiií
Nós Servidores públicos/alojados Servidores/roteadores públicos Usuários de PPN
Capacidade do nó Infra-estrutura conhecida Infra-estrutura conhecida Mista, desconhecida
Largura de banda de nuvem Garantida Imprevisível Imprevisível
Largura de banda de última milha Dependente de provedor Dependente de provedor Dependente de PPN
Latência Ingerenciável Ingerenciável Melhor esforço
Estabilidade de rede Ingerenciável Ingerenciável, redundante Melhor esforço
Configuração de chamada Login complexo Nenhum solicitado Login
Identidade de usuário Nome de usuário Número de telefone Nome de usuário
QoS do VoIP Variável a boa Variável Variável
Segurança da nuvem Apenas carga útil encriptada Não encriptada Não encriptada
Segurança de última milha Não encriptada Não encriptada Não encriptada
Detectável Cabeçalho de pacote (nuvem) Pacote inteiro (última milha) Pacote inteiro Pacote inteiro

[00643] Como mostrado, enquanto a VPN e a Internet compreendem infra-estrutura fixa, os nós de uma rede par-a-par variam de acordo com quem está logado e quais dispositivos estão conectados à PPN. A largura de banda da nuvem, definida no contexto desta tabela como as conexões de longa distância de alta velocidade das redes, por exemplo, as redes que cruzam

Petição 870170079583, de 19/10/2017, pág. 207/709

200/425 oceanos e serras, são garantidas contratualmente somente no caso de VPNs e, de outra forma, são imprevisíveis. A largura de banda de última milha é dependente do provedor local para provedores de Internet e VPN, mas a PPN é totalmente dependente de quem está logado.

[00644] Latência, o atraso de propagação de pacotes de IP enviados sucessivamente não é gerenciável para OTTs e VPNs, porque o provedor não controla o roteamento na última milha, mas sim depende de operadores de rede ou companhia telefônica local, enquanto os PPNs têm capacidade limitada usando os melhores esforços para direcionar o tráfego entre os nós que estão online no momento em uma determinada geografia. Da mesma forma, para a estabilidade da rede, as PPNs têm a capacidade de redirecionar o tráfego para manter uma rede, mas dependem inteiramente de quem está logado. A Internet, por outro lado, é intrinsecamente redundante e quase certamente garante a entrega, mas não necessariamente em tempo hábil. A estabilidade da rede para uma VPN ad hoc depende do número de nós autorizados a se conectar ao hospedeiro de VPN. Se esses nós se desligam, a VPN é paralisada.

[00645] Do ponto de vista de uma configuração de chamada, a Internet está sempre disponível, as PPNs exigem a etapa extra de fazer logon na PPN antes de fazer uma chamada e as VPNs podem envolver um procedimento de login complexo. Além disso, a maioria dos usuários considera o uso do OTT de números de telefone em vez de IDs de login separados usados por VPNs e PPNs como uma característica benéfica importante na facilidade de uso. Todas as três redes listadas sofrem de QoS de VoIP variável, geralmente com retardamentos bem maiores que as operadoras de telefonia comerciais.

[00646] Do ponto de vista da segurança, as três opções são ruins com a última milha completamente exposta à detecção de pacotes com endereços e cargas úteis legíveis. As VPN oferecem encriptação da conexão da nuvem, mas ainda expõem os endereços IP dos hospedeiros de VPN. Como tal,

Petição 870170079583, de 19/10/2017, pág. 208/709

201 / 425 nenhuma opção de rede mostrada é considerada segura. Como tal, a encriptação é usada por vários aplicativos para tentar evitar hackers e ataques cibernéticos, seja como um protocolo de Camada 6 ou como uma porção incorporada do próprio aplicativo da Camada 7.

[00647] Superconfiança em Encriptação - Independentemente de se usada para encriptar pacotes IP ou estabelecer VPNs, a segurança de rede de hoje depende quase exclusivamente da encriptação e representa uma fraqueza nas redes de comunicação baseadas em comutação de pacotes. Por exemplo, vários estudos foram realizados em métodos para atacar encriptação RSA. Embora a limitação dos números primos a tamanhos grandes reduza grandemente o risco de quebrar o código de chave D de desencriptação usando métodos de força bruta, os métodos do fator polinomial foram demonstrados com sucesso para quebrar chaves com base em chaves menores com base em números primos. Existem preocupações de que a evolução da “computação quântica” acabará por conduzir a métodos práticos de quebrar chaves baseadas em RSA e outras chaves de encriptação em tempos razoáveis de ataque cibernético.

[00648] Para combater o risco sempre presente de quebra de código, surgiram novos algoritmos e métodos de encriptação de “chave maior”, como o “padrão avançado de encriptação” ou a cifra AES adotada pelo US NIST em 2001. Com base na cifra de Rijndael, o princípio de projeto conhecido como rede de permuta de substituição combina a substituição de caracteres e a permutação usando diferentes tamanhos de chave e bloco. Na sua atual encarnação, o algoritmo compreende tamanhos de blocos fixos de 128 bits com chaves compreendendo comprimentos variáveis de 128 bits, 192 bits e 256 bits, com o número correspondente de repetições usadas na transformação do arquivo de entrada variando em rodadas de 10, 12, e 14 ciclos, respectivamente. Como uma questão prática, a cifra AES pode ser executada de forma eficiente e rápida em qualquer software ou hardware para

Petição 870170079583, de 19/10/2017, pág. 209/709

202 / 425 qualquer tamanho de chave. No vernáculo de criptografia, uma encriptação baseada em AES usando uma chave 256b é chamada de encriptação AES256. A encriptação AES512 empregando uma chave 512b também está disponível. [00649] Embora cada nova geração suba o nível em criptografia para criar melhores métodos de encriptação e para quebrá-los mais rapidamente, os criminosos cibernéticos com fins lucrativos geralmente se concentram em seus alvos, em vez de simplesmente usar a computação para quebrar um arquivo encriptado. Conforme descrito anteriormente, usando a detecção de pacotes e a interrogação de portas, um pirata cibernético pode obter informações valiosas sobre uma conversa, um servidor corporativo ou mesmo um gateway de VPN. Através da perfilagem cibernética, pode ser mais fácil lançar um ataque cibernético nos computadores pessoais, notebooks e telefones celulares de um CFO ou CEO, em vez de atacar a própria rede. Enviar e-mails para os funcionários que instalam automaticamente malware e spyware ao abrir um link incorporado contorna completamente a segurança do firewall porque eles entram na rede a partir de “dentro”, onde os funcionários necessariamente devem se conectar e trabalhar.

[00650] A chance de quebrar a encriptação também melhora se os dados se movem através de uma rede sem alteração, isto é, estaticamente. Na rede da Figura 50, por exemplo, os dados subjacentes nos pacotes 790, 792, 794 e 799 permanecem inalterados à medida que os pacotes se movem através da rede. Cada pacote de dados mostrado compreende uma sequência de dados ou som arranjado de forma sequencial no tempo ou páginas inalteradas da sua ordem original quando foi criada. Se o conteúdo de um pacote de dados for textual, ler o arquivo de texto simples não encriptado na sequência 1A-1B1C-1D-1E-1F resultará em texto “legível” para o comunicado número “1”. Se o conteúdo de um pacote de dados é áudio, converter, ou seja, “reproduzir”, o arquivo de texto simples não encriptado na sequência 1A-1B-1C-1D-1E-1F através de um CODEC de áudio correspondente, essencialmente um

Petição 870170079583, de 19/10/2017, pág. 210/709

203/425 conversor D/A baseado em software, resultará em som para o arquivo de áudio número “1”.

[00651] Em ambos os casos, ao longo desta descrição, cada slot de dados representado por caixas de tamanho fixo compreende um número prescrito de bits, por exemplo, dois bytes (2B) de comprimento. O número exato de bits por slot é flexível, desde que cada nó de comunicação em uma rede saiba qual é o tamanho de cada slot de dados. Contido dentro de cada slot de dados estão os dados de áudio, vídeo ou texto, identificados nos desenhos como um número seguido de uma letra. Por exemplo, como mostrado, o primeiro slot do pacote de dados 790 contém o conteúdo IA onde o número “1” indica a comunicação específica n° 1 e a letra “A” representa a primeira parte dos dados na comunicação n° 1. Da mesma forma, o segundo slot do pacote de dados 790 contém o conteúdo 1B onde o número “1” indica que faz parte da mesma comunicação n° 1 e a letra “B” representa a segunda parte dos dados na comunicação n° 1, seguindo sequencialmente IA.

[00652] Se, por exemplo, o mesmo pacote de dados incluísse hipoteticamente o conteúdo “2A”, os dados representariam o primeiro pacote “A” em uma comunicação diferente, especificamente para a comunicação n° 2, não relacionada à comunicação n° 1. Pacotes de dados que contêm comunicações homogêneas, por exemplo, onde todos os dados são para comunicação n° 1 são mais fáceis de analisar e ler do que aqueles que misturam diferentes comunicações. Os dados arranjados de forma sequencial na ordem apropriada facilitam que um invasor cibernético interprete a natureza dos dados, seja áudio, texto, gráficos, fotos, vídeo, código executável, etc.

[00653] Além disso, no exemplo mostrado, uma vez que os endereços IP de origem e de destino do pacote permanecem constantes, ou seja, onde os pacotes permanecem inalterados durante o transporte através da rede da mesma forma que os dados que entram ou saem dos servidores de gateway

Petição 870170079583, de 19/10/2017, pág. 211/709

204 / 425

21A e 21F, como os dados subjacentes não mudam, um hacker tem mais chances de interceptar os pacotes de dados e uma melhor chance de analisar e abrir os arquivos ou ouvir a conversa. O simples transporte e a segurança unidimensional, ou seja, confiar apenas na encriptação para proteção, aumenta o risco de um ataque cibernético porque a probabilidade de sucesso é maior em uso tão simplificado da Internet como uma rede com comutação de pacotes.

Segurança de redes e dispositivos conectados em tempo real [00654] Para melhorar a qualidade do serviço (QoS) de comunicação telefônica, de vídeo e de dados, enquanto aborda a abundância de vulnerabilidades de segurança que afligem as redes com comutação de pacotes de hoje, é necessária uma nova e inovadora abordagem sistêmica para o controle do roteamento de pacotes IP, que gerencie uma rede global que compreende tecnologias diferentes e simultaneamente facilite a segurança de extremidade a extremidade. Os objetivos de uma rede com comutação de pacotes tão criativa incluem os seguintes critérios:

1. Garantir a segurança e QoS de uma rede global ou de um operador de longa distância, incluindo o gerenciamento dinâmico de roteamento de tráfego de voz, vídeo e dados em tempo real em toda a rede;

2. Garantir a segurança e QoS da “rede ou companhia telefônica local” na última milha da rede de comunicação;

3. Garantir a segurança e QoS do “último enlace” da rede de comunicação, incluindo a comunicação segura sobre linhas não protegidas;

4. Garantir a segurança dos dispositivos de comunicação e autenticar os usuários para impedir o acesso ou uso não autorizado ou fraudulento;

5. Facilitar um meio seguro para armazenar dados em um dispositivo ou online em armazenamento em rede ou na nuvem para impedir o acesso não autorizado;

Petição 870170079583, de 19/10/2017, pág. 212/709

205/425

6. Prover segurança e proteção de privacidade de todas as informações pessoais não públicas, incluindo todos os dados e registros financeiros, pessoais, médicos e biométricos;

7. Prover segurança e proteção de privacidade de todas as transações financeiras envolvendo bancos e compras on-line, cartões de crédito e pagamento eletrônico; e

8. Prover segurança, privacidade e como requisito, anonimato, na troca de informações e transações envolvendo comunicação máquina-a-máquina (M2M), veículo-a-veículo (V2V) e veículo-a-infraestrutura (V2X).

[00655] Dos objetivos mencionados acima, a matéria inventiva contida nesta descrição refere-se ao primeiro tópico descrito no item n° 1, ou seja, “garantir a segurança e QoS de uma rede global ou operadora de longa distância, incluindo o gerenciamento dinâmico de roteamento de tráfego de voz, vídeo e dados em tempo real através de uma rede”. Esse tópico pode ser considerado como obtenção da segurança da rede ou da nuvem sem sacrificar o desempenho de comunicação em tempo real.

Glossário [00656] A menos que o contexto exija o contrário, os termos usados na descrição da Rede e Protocolo Dinâmicos Seguros têm os seguintes significados:

[00657] Pacotes de dados anônimos: Pacotes de dados que carecem de informações quanto à origem original ou destino final.

[00658] Desencriptação: Uma operação matemática usada para converter pacotes de dados de texto cifrado em texto simples.

[00659] Servidor DMZ: Um servidor de computador não acessível diretamente da rede SDNP ou da Internet usado para armazenar seletores, geradores de sementes, geradores de chaves e outros segredos compartilhados.

Petição 870170079583, de 19/10/2017, pág. 213/709

206/425 [00660] Encriptação/desencriptação dinâmica: Encriptação e desencriptação dependendo de chaves que mudam dinamicamente à medida que um pacote de dados atravessa a rede SDNP.

[00661] Mistura dinâmica: O processo de mistura onde os algoritmos de mistura (o inverso dos algoritmos de divisão) mudam dinamicamente como uma função de uma semente baseada em um estado, como o tempo, o estado e a zona quando um pacote de dados misto é criado.

[00662] Embaralhamento/desembaralhamento dinâmico:

Embaralhamento e desembaralhamento confiando em algoritmos que mudam dinamicamente em função de um estado, como o tempo em que um pacote de dados é criado ou a zona em que ele é criado.

[00663] Divisão dinâmica: O processo de divisão onde os algoritmos de divisão mudam dinamicamente em função de uma semente baseada em um estado, como o tempo, o estado e a zona quando um pacote de dados é dividido em subpacotes múltiplos.

[00664] Encriptação: Uma operação matemática usada para converter pacotes de dados de texto simples em texto cifrado.

[00665] Transporte de dados fragmentados: O roteamento de dados divididos e misturados através da rede SDNP.

[00666] Exclusão de dados de lixo (ou “Limpeza”): A remoção de dados de lixo de pacotes de dados para restaurar os dados originais ou para recuperar o comprimento original do pacote de dados.

[00667] Inserções de dados de lixo (ou “Junking”): A introdução intencional de dados sem sentido em um pacote de dados, seja para desvirtuar o conteúdo de dados reais ou para gerenciar o comprimento de um pacote de dados.

[00668] Chave: Um valor digital disfarçado que é gerado pela entrada de um estado, como tempo, em um gerador de chaves que usa um algoritmo secreto para gerar a chave. Uma chave é usada para selecionar um algoritmo

Petição 870170079583, de 19/10/2017, pág. 214/709

207 / 425 para encriptar os dados em um pacote de um seletor. Uma chave pode ser usada para transmitir informações de forma segura sobre um estado em linhas públicas ou não seguras.

[00669] Servidor de troca de chave: Um servidor de computador, muitas vezes hospedado por terceiros e independente do operador de rede SDNP, usado para distribuir chaves de encriptação públicas para clientes e, opcionalmente, para servidores que usam encriptação de chave simétrica, especialmente para gerenciamento de chaves administrado pelo cliente, ou seja, encriptação de extremidade a extremidade baseada no cliente para evitar qualquer possibilidade de espionagem do operador de rede.

[00670] Ultimo enlace: Conexão de rede entre o dispositivo de um Cliente e o primeiro dispositivo na rede com a qual ele se comunica, tipicamente uma torre de rádio, um roteador WiFi, um modem a cabo, um conversor digital ou uma conexão Ethernet.

[00671] Ultima milha: A conexão de rede entre um Gateway SDNP e o Cliente, incluindo o Ultimo Enlace.

[00672] Mistura: A combinação de dados de diferentes fontes e tipos de dados para produzir um pacote de dados longo (ou uma série de subpacotes pequenos) com conteúdo irreconhecível. Em alguns casos, os pacotes de dados divididos anteriormente são misturados para recuperar o conteúdo de dados original. A operação de mistura também pode incluir inserções e exclusões de dados de lixo e análise.

[00673] Análise: Uma operação numérica em que um pacote de dados é dividido em subpacotes mais curtos para armazenamento ou para transmissão.

[00674] Embaralhamento: Uma operação em que a ordem ou sequência de segmentos de dados em um pacote de dados é alterada de sua ordem natural para uma forma irreconhecível.

[00675] Divisão: Uma operação em que um pacote de dados (ou uma

Petição 870170079583, de 19/10/2017, pág. 215/709

208/425 sequência de pacotes de dados em série) é dividido em múltiplos subpacotes que são roteados para múltiplos destinos. Uma operação de divisão também pode incluir inserções e exclusões de dados de lixo.

[00676] SoftSwitch: Software que compreende o código executável executando a função de um comutador e roteador de telecomunicações.

[00677] SDNP: Um acrônimo para “rede e protocolo dinâmicos seguros” que significa uma rede de comunicação hiper-segura feita de acordo com esta invenção.

[00678] Servidor de administração de SDNP: Um servidor de computador usado para distribuir código executável e segredos compartilhados para servidores SDNP globalmente ou em zonas específicas.

[00679] Nó de ponte SDNP: Um nó SDNP que conecta uma Nuvem SDNP a outra com Zonas e credenciais de segurança diferentes.

[00680] Cliente SDNP ou dispositivo cliente: Um dispositivo conectado à rede, tipicamente um telefone celular, tablet, notebook, desktop ou dispositivo loT executando um aplicativo SDNP para se conectar à Nuvem SDNP, geralmente conectado pela última milha da rede.

[00681] Nuvem SDNP: Uma rede de Servidores SDNP interconectados que executam o código executável SoftSwitch para realizar as operações do nó de comunicações SDNP.

[00682] Nó de Gateway SDNP: Um nó SDNP que liga a Nuvem SDNP à Ultima Milha SDNP e ao Cliente. Os nós de Gateway SDNP requerem acesso a pelo menos duas Zonas - a da Nuvem SDNP e da Ultima Milha.

[00683] Nó de Mídia SDNP: Código executável SoftSwitch que processa pacotes de dados de entrada com etiquetas de identificação específicas de acordo com as instruções do servidor de sinalização ou outro computador que executa a função de sinalização, incluindo encriptação/desencriptação, embaralhamento/desembaralhamento, mistura/divisão, etiquetagem e geração de cabeçalho e subcabeçalho SDNP.

Petição 870170079583, de 19/10/2017, pág. 216/709

209/425

Um nó de mídia SDNP é responsável por identificar pacotes de dados de entrada com etiquetas específicas e encaminhar pacotes de dados recémgerados para o próximo destino.

[00684] Servidor de Mídia SDNP: Um servidor de computador que hospeda um SoftSwitch executando as funções de um nó de mídia SDNP em comunicações de canal duplo e canal triplo e também executando as tarefas de um nó de sinalização SDNP e um nó de servidor de nome SDNP em comunicações de canal único.

[00685] Servidor de Nomes SDNP: Um servidor de computador que hospeda um SoftSwitch executando as funções de um Nó de servidor de nome SDNP em comunicações de canal triplo.

[00686] Nó de servidor de nomes SDNP: Código executável SoftSwitch que gerencia uma lista dinâmica de cada dispositivo SDNP conectado à nuvem SDNP.

[00687] Rede SDNP: Toda a rede de comunicação hiper-segura que se estende do cliente para o cliente, incluindo o último enlace e a comunicação de última milha, bem como a nuvem SDNP.

[00688] Nó SDNP: Um nó de comunicação SDNP que inclui um SoftSwitch baseado em software que funciona em um servidor de computador ou, altemativamente, um dispositivo de hardware conectado à rede SDNP, funcionando como um nó SDNP, como Nó de Mídia, Nó de Sinalização ou Nó de Servidor de Nomes.

[00689] Servidor SDNP: Um servidor de computador que inclui um servidor de mídia SDNP, um servidor de sinalização SDNP ou um servidor de nomes SDNP e hospeda as funções SoftSwitch aplicáveis para operar como um nó SDNP.

[00690] Nó de sinalização SDNP: O código executável SoftSwitch que inicia uma chamada ou comunicação entre partes, determina todas ou porções das rotas múltiplas para o transporte de dados fragmentados com base em

Petição 870170079583, de 19/10/2017, pág. 217/709

210/425 critérios de chamadores e uma tabela dinâmica de atrasos de propagação de nó para nó e instruindo as mídias SDNP como gerenciar os pacotes de dados de entrada e de saída.

[00691] Servidor de Sinalização SDNP: Um servidor de computador que hospeda um SoftSwitch executando as funções de um Nó de Sinalização SDNP em comunicações SDNP de canal duplo e canal triplo e também desempenhando as obrigações do Nó de Servidor de Nomes SDNP em comunicações de canal duplo.

[00692] Configurações de segurança: Valores digitais, como sementes e chaves, que são gerados por geradores de sementes ou geradores de chave usando algoritmos secretos em conjunto com um estado de entrada em constante mudança, como o tempo da rede, e que, portanto, podem ser transmitidos por linhas públicas ou não seguras.

[00693] Semente: Um valor digital disfarçado que é gerado pela entrada de um estado, como tempo, em um gerador de sementes que usa um algoritmo secreto para gerar a semente. Uma semente é usada para selecionar um algoritmo para embaralhar ou dividir os dados em um pacote de um seletor. Uma semente pode ser usada para transmitir informações de forma segura sobre um estado em linhas públicas ou não seguras.

[00694] Seletor: Uma lista ou tabela de possíveis algoritmos de embaralhamento, encriptação ou divisão que fazem parte dos segredos compartilhados e que são usados em conjunto com uma semente ou chave para selecionar um algoritmo específico para embaralhamento, desembaralhamento, encriptação, desencriptação, divisão ou mistura de um pacote ou pacotes.

[00695] Segredos compartilhados: Informações confidenciais sobre a operação do nó SDNP, incluindo tabelas ou seletores de algoritmos de embaralhamento/desembaralhamento, encriptação/desencriptação e mistura/divisão, bem como os algoritmos usados pelos geradores de sementes,

Petição 870170079583, de 19/10/2017, pág. 218/709

211/425 geradores de chaves, informações de zona e processos de embaralhamento de algoritmos armazenados localmente em servidores DMZ não são acessíveis através da rede SDNP ou da Internet.

[00696] Estado: Uma entrada, como local, zona ou tempo de rede que é usada para gerar dinamicamente configurações de segurança, como sementes ou chaves, ou para selecionar algoritmos para operações SDNP específicas, como mistura, divisão, embaralhamento e encriptação.

[00697] Tempo: O tempo de rede universal usado para sincronizar a comunicação através da rede SDNP.

[00698] Desembaralhamento: Um processo usado para restaurar os segmentos de dados em um pacote de dados embaralhado para sua ordem ou sequência original. Desembaralhamento é a função inversa do embaralhamento.

[00699] Zona: Uma rede de servidores interconectados específicos que compartilham credenciais de segurança comuns e segredos compartilhados. As conexões de última milha incluem zonas separadas daquelas na Nuvem SDNP.

Projeto de rede e protocolo dinâmicos seguros (SDNP) [00700] Para evitar ataques cibernéticos e hackeamento de comunicação com comutação de pacotes ao mesmo tempo em que se minimiza a latência de pacotes em tempo real, garantindo conectividade de chamada estável e fornecendo a mais alta integridade de comunicação de voz e transferência contínua de vídeo, rede e protocolo dinâmicos seguros descritos, ou SDNP, é projetado com base em uma série de princípios orientadores, incluindo:

• A comunicação em tempo real sempre deve ocorrer usando o menor trajeto de latência.

• A inspeção ou detecção não autorizado de um pacote de dados não deve prover nenhum contexto quanto a de onde o pacote veio, onde

Petição 870170079583, de 19/10/2017, pág. 219/709

212/425 ele está indo ou o que está nele.

• As cargas úteis de pacotes de dados devem ser reencriptadas dinamicamente, ou seja, desencriptadas e, em seguida, encriptadas novamente usando um algoritmo de encriptação diferente, sem risco de serem hackeadas em qualquer momento razoável.

• Mesmo depois de terem sido desencriptadas, todas as cargas úteis de pacotes de dados ainda contêm cargas úteis incompreensíveis que compreendem uma mistura dinamicamente embaralhada de conversas múltiplas e dados não relacionados misturados com enchimentos de pacotes de lixo.

[00701] A implementação das diretrizes acima envolve uma variedade de métodos, funções, recursos e implementações únicos e inventivos, incluindo em várias modalidades, alguns ou todos os seguintes • O SDNP emprega uma ou mais nuvens dedicadas que compreendem companhia telefônica, ou seja, sistema de telecomunicações, funções de comutação de softwares realizadas usando software de comando e controle proprietário não acessível através da Internet.

• Toda a comunicação intranuvem ocorre usando o roteamento de pacotes SDNP dedicado em nuvens proprietárias com base em endereços SDNP e portas dinâmicas (ou seja, endereços NAT proprietários), e não em endereços IP. Os endereços SDNP não são utilizáveis ou roteáveis pela Internet ou fora da nuvem SDNP.

• A rede SDNP identifica e roteia dinamicamente todas as comunicações em tempo real através dos trajetos de latência mais baixos disponíveis.

• Nenhuma comunicação segura ou em tempo real é roteada fora da nuvem SDNP ou através da Internet, exceto na comunicação nuvem a nuvem e última milha e, em geral, usando o roteamento de salto único com endereços invisíveis.

Petição 870170079583, de 19/10/2017, pág. 220/709

213/425 • Os dados de roteamento contidos em um pacote de dados identificam o roteamento de um único salto entre dois dispositivos adjacentes, identificando apenas os endereços SDNP ou IP do último e próximo servidor • O número de telefone ou os endereços IP do chamador e do destinatário da chamada, ou seja, os respectivos endereços de origem e de destino dos clientes não estão presentes nos cabeçalhos dos pacotes IP nem estão presentes na carga útil encriptada • Existem segredos compartilhados relacionados ao comando e controle no software do sistema instalado em servidores DMZ seguros não acessíveis através da Internet.

• A comunicação de pacotes SDNP pode ocorrer através de três canais independentes - um “servidor de nome” usado para identificar elementos dentro da nuvem SDNP, “servidores de mídia” usados para rotear conteúdo e dados e “servidores de sinalização” usados para comando e controle de pacotes e chamadas.

• As informações de roteamento, juntamente com chaves e sementes numéricas (conforme necessário) são fornecidas a todos os servidores de mídia participantes através de um canal de sinalização independente antes da chamada ou comunicado e não com conteúdo. O servidor de sinalização provê aos servidores de mídia somente o último e o próximo destino de um pacote que atravessa a rede.

• Os pacotes de mídia contêm dados fragmentados que representam apenas uma parte de uma chamada, documento, texto ou arquivo, misturados dinamicamente e remisturados com outros pacotes contendo dados fragmentados de outras fontes e de diferentes tipos.

• Métodos de segurança especiais são empregados para proteger a comunicação de primeira e última milhas, incluindo a separação de comunicações relacionadas com o servidor de sinalização de mídia e pacotes relacionados ao conteúdo.

Petição 870170079583, de 19/10/2017, pág. 221/709

214/425 • O transporte de pacotes é dependente do tipo de conteúdo, com voz e vídeo ou transferência contínua em tempo real com base em um UDP aprimorado, enquanto pacotes de sinalização, pacotes de comando e controle, arquivos de dados, arquivos de aplicativos, arquivos de sistemas e outros arquivos sensíveis a perda de pacotes ou latência utilizam o transporte TCP.

• Métodos especiais de segurança e autenticação são usados para confirmar que um dispositivo é o cliente real e não um clone e para autenticar que a pessoa que se comunica é o verdadeiro proprietário do dispositivo e não um impostor.

[00702] Para garantir uma comunicação segura com baixa latência e alta QoS em VoIP e aplicativos em tempo real, a “rede e protocolo dinâmicos seguros” ou SDNP descrita utiliza uma rede inventiva de “malha dinâmica” que compreende • Multitrajeto adaptativo dinâmico e roteamento em malha com latência mínima • Embaralhamento dinâmico de pacotes • Fragmentação dinâmica usando divisão, mistura, análise de pacotes e enchimento de pacotes de bits de lixo • Encriptação dinâmica de carga útil intra-nó através de uma rede ou nuvem • Protocolo de rede dinâmico com disfarce de endereço e informações de roteamento de necessidade de saber • Comunicação multicanal que separa mídia e conteúdo de sinalização, comando e controle e endereços de rede • Protocolo dinâmico de transporte adaptável em tempo real com características específicas do tipo de dados e roteamento contextual • Suporte de cargas úteis encriptadas pelo cliente com gerenciamento de chave de usuário

Petição 870170079583, de 19/10/2017, pág. 222/709

215/425 • CODEC de áudio leve para alta QoS em redes congestionadas [00703] Conforme descrito, a comunicação SDNP depende da comunicação de múltiplas rotas e em malha para rotear pacotes de dados dinamicamente. Contrastando a comunicação de pacotes em um único trajeto usada para comunicações OTT e VoIP da Internet, em comunicação SDNP de acordo com esta invenção, o conteúdo dos pacotes de dados não é carregado em série por pacotes coerentes que contêm informações de uma fonte comum ou chamador, mas de forma fragmentada, misturando e remisturando dinamicamente conteúdo que emana de múltiplas fontes e chamadores, onde os dados aglomeram fragmentos incompletos de dados, conteúdo, voz, vídeo e arquivos de tipos de dados diferentes com enchimentos de dados de lixo. A vantagem da realização descrita de fragmentação e transporte de dados é que mesmo os pacotes de dados não encriptados e não embaralhados são quase impossíveis de interpretar porque representam a combinação de dados e tipos de dados não relacionados.

[00704] Ao combinar a mistura e a divisão de pacotes fragmentados com o embaralhamento e a encriptação dinâmica de pacotes, esses pacotes híbridos de dados dinamicamente encriptados, embaralhados e fragmentados incluem pacotes sem sentido de linguagem sem nexo, completamente ininteligíveis para qualquer parte ou observador sem as variáveis de segredos compartilhados, chaves, sementes numéricas e tempo e estado usadas para criar, empacotar e reempacotar dinamicamente os dados.

[00705] Além disso, o conteúdo fragmentado de cada pacote e os segredos usados para criá-lo permanecem válidos por apenas uma fração de segundo antes do pacote ser reconstituído com novos fragmentos e novas provisões de segurança, como sementes, chaves, algoritmos e segredos revisados. A duração limitada em que um pirata cibernético está disponível para quebrar e abrir o pacote de dados SDNP dependente do estado intensifica

Petição 870170079583, de 19/10/2017, pág. 223/709

216/425 ainda mais a segurança SDNP, exigindo que dezenas de milhares de anos computacionais sejam processados em um décimo de segundo, um desafio de doze ordens de grandezas maior que o tempo disponível para quebrá-lo.

[00706] A combinação dos métodos mencionados acima facilita a segurança multidimensional muito além da segurança obtida da encriptação estática. Como tal, a rede e o protocolo dinâmicos seguros e descritos são aqui chamados de uma rede “hiper-segura”.

[00707] Embaralhamento de Pacote de Dados - De acordo com a invenção descrita, a comunicação segura através de uma rede com comutação de pacotes depende de vários elementos para evitar o hackeamento e garantir a segurança, uma das quais envolve o embaralhamento de pacotes SDNP. O empacotamento de pacotes SDNP envolve rearranjar os segmentos de dados fora de sequência, tomando a informação incompreensível e inútil. Como mostrado na Figura 51A, um pacote de dados desembaralhado, pacote de dados 923, processado através da operação de embaralhamento 924, resulta no pacote de dados embaralhado 925. A operação de embaralhamento pode usar qualquer algoritmo, método numérico ou método de sequenciamento. O algoritmo pode representar uma equação estática ou incluir variáveis dinâmicas ou sementes numéricas com base em “estados”, como o tempo 920 quando ocorreu o embaralhamento e uma semente numérica 929 gerada pelo gerador de sementes 921, que pode gerar a semente 929 usando um algoritmo que também depende de um estado como o tempo 920 no momento do embaralhamento. Por exemplo, se cada data for convertida em um número único ascendente monotonicamente, então cada semente 929 é única. O tempo 920 e a semente 929 podem ser usados para selecionar um algoritmo específico e também podem ser usados para selecionar ou calcular uma operação de embaralhamento 924 específica, escolhida a partir de uma lista de métodos de embaralhamento disponíveis, isto é, de algoritmos de embaralhamento 922. Nos fluxogramas de dados, é conveniente ilustrar esta

Petição 870170079583, de 19/10/2017, pág. 224/709

217/425 operação e sequência de embaralhamento de pacotes usando uma representação esquemática ou simbólica, conforme representado aqui pelo símbolo 926.

[00708] A operação de desembaralhamento, mostrada na Figura 51B, ilustra a função inversa da operação de embaralhamento 924, especificamente a operação de desembaralhamento 927, onde o estado ou o tempo 920 e a semente correspondente 929 usada para criar o pacote de dados embaralhado 925 são reutilizados para desfazer o embaralhamento para produzir dados desembaralhados, especificamente pacote de dados desembaralhado 923. Usando o mesmo estado ou tempo 920 empregado quando ocorreu o embaralhamento do pacote primeiro, o mesmo método de embaralhamento deve ser usado novamente na operação de desembaralhamento 927 como selecionado da lista de algoritmos de embaralhamento 922. Embora a lista de algoritmos de embaralhamento 922 refira-se ao termo “embaralhamento”, a mesma tabela de algoritmos é usada para identificar e selecionar a função inversa necessária para realizar “desembaralhamento”, ou seja, a lista de algoritmos de embaralhamento 922 contém a informação necessária tanto para embaralhamento de pacotes de dados quanto para desembaralhamento de pacotes de dados. Como as duas funções envolvem as mesmas etapas realizadas na ordem inversa, a lista 922 também pode ser renomeada como a lista de algoritmos de “embaralhamento/desembaralhamento” 922. Por motivos de clareza, no entanto, a tabela é rotulada apenas pela função e não pela sua antifunção.

[00709] Caso o algoritmo de embaralhamento selecionado para implementar a operação de desembaralhamento 927 não corresponda ao algoritmo original empregado no embaralhamento de pacotes, ou se a semente 929 ou o estado ou o tempo 920 não correspondem ao tempo que o embaralhamento ocorreu, então a operação de desembaralhamento não conseguirá recuperar o pacote de dados original desembaralhado 923, e os

Petição 870170079583, de 19/10/2017, pág. 225/709

218/425 dados do pacote serão perdidos. Nos fluxogramas de dados, é conveniente ilustrar este processo de desembaralhamento de pacotes e sequência usando uma representação esquemática ou simbólica, conforme representado aqui pelo símbolo 928.

[00710] De acordo com a invenção descrita, vários algoritmos podem ser usados para executar a operação de embaralhamento desde que o processo em reversível, o que significa repetir as etapas na ordem oposta, pois o processo original retorna cada segmento de dados para a sua localização original e adequada em um dado pacote de dados. Mathematicamente, algoritmos de embaralhamento aceitáveis são aqueles que são reversíveis, isto é, onde uma função F(A) tem uma função antifunção F-1(A) ou, altemativamente, uma transformada tem uma antifunção correspondente de modo que

F-1[F(A)] = A o que significa que um arquivo de dados, sequência, cadeia de caracteres, arquivo ou vetor A processado por uma função F após o processamento subsequente usando a antifunção F1 retoma a entrada original A intacta em valor ou sequência.

[00711] Exemplos de tais funções reversíveis são ilustrados pelos algoritmos de embaralhamento estático mostrados na Figura 51C incluindo algoritmos de espelhamento e deslocamento de fase. Nos algoritmos de espelhamento, os segmentos de dados são trocados com outros segmentos de dados como uma imagem espelhada em torno de uma linha de simetria definida pelo módulo ou “mod” do processo de espelhamento. No espelhamento de mod-2 como mostrado, cada dois segmentos de dados do pacote de dados de entrada original 930 são trocados, ou seja, onde IA e 1B são comutados na posição, como são 1C e ID, IE e 1F e assim por diante, para produzir pacotes de dados de saída embaralhados 935, com uma linha de simetria centrada entre o primeiro e segundo segmentos de dados, entre os

Petição 870170079583, de 19/10/2017, pág. 226/709

219/425 terceiro e quarto segmentos de dados, e assim por diante, ou matematicamente como 1,5a, 3,5a, 5,5a,..., (1,5 + 2n)a posição.

[00712] No espelhamento do mod-3, o primeiro e o terceiro segmentos de dados de cada três segmentos de dados são trocados enquanto o pacote do meio de cada triplete permanece na sua posição original. Consequentemente, os segmentos de dados IA e 1C são trocados enquanto 1B permanece no centro do triplete, os segmentos de dados ID e 1F são trocados enquanto 1E permanece no centro do triplete, e assim por diante, para produzir a saída de pacote de dados embaralhado 936. No espelhamento do mod-3, a linha de simetria está centrada na 2a, 5a, 8a, ... , (2+3n)a posição.

[00713] No espelhamento do mod-4, o primeiro e quarto segmentos de dados e o segundo e terceiro de cada quatro segmentos de dados são trocados e, assim por diante, para produzir o pacote de dados de saída embaralhado 937 a partir do pacote de dados de entrada 931. Consequentemente, o segmento de dados IA é trocado com 1D; o segmento de dados 1B é trocado com 1C; e assim por diante. No espelhamento do mod-4, a linha de simetria é centrada entre o segundo e o terceiro segmentos de dados de cada quadruplete, por exemplo, entre os 2o e 3o segmentos de dados, os 6o e 7o segmentos de dados, e assim por diante, ou matematicamente como 2,5a, 6,5a, ... , (2,5 + 4n)a posição. No espelhamento do mod-m, o m° segmento de dados do pacote de dados de entrada 932 é trocado com o primeiro, isto é, o 0o segmento de dados; o 0o segmento de dados é trocado com o m° elemento; e similarmente o n° elemento é trocado com o (m-n)° segmento de dados para produzir o pacote de dados de saída embaralhado 938.

[00714] Outro método de embaralhamento também mostrado na Figura 51C é um deslocamento de quadro, onde cada segmento de dados é deslocado para a esquerda ou para a direita por um, dois ou mais quadros. Por exemplo, em um deslocamento de fase de quadro único, cada segmento de dados é deslocado por um quadro, onde o primeiro segmento de dados é

Petição 870170079583, de 19/10/2017, pág. 227/709

220 / 425 deslocado para a segunda posição; o segundo segmento de dados é deslocado para o terceiro quadro, e assim por diante para produzir o pacote de dados de saída embaralhado 940. O último quadro do pacote de dados de entrada 930, quadro IF no exemplo mostrado, é deslocado para o primeiro quadro anteriormente ocupado pelo segmento de dados IA.

[00715] Em um deslocamento de fase de 2 quadros, o primeiro segmento de dados IA do pacote de dados de entrada 930 é deslocado por dois quadros para a posição anteriormente ocupada pelo segmento de dados 1C, o 4o quadro 1D é deslocado para a última posição do pacote de dados de saída embaralhado 941, o próximo ao último segmento de dados 1E é deslocado para a primeira posição e a última posição 1F é deslocada para a segunda posição. Da mesma forma, em um deslocamento de fase de 4 quadros, os segmentos de dados do pacote de dados de entrada 930 são deslocados por quatro lugares com o primeiro quadro IA substituindo o quadro anteriormente mantido por IE, 1B substituindo IF, 1C substituindo IA e assim por diante para produzir o pacote de dados de saída embaralhado 942. No caso do deslocamento de fase máximo, o primeiro quadro substitui o último, o segundo quadro originalmente mantido por 1B toma-se o primeiro quadro do pacote de dados de saída 943, o segundo elemento é deslocado para a primeira posição, a terceira posição para o segundo lugar, e assim por diante. O deslocamento de fase de um quadro além do deslocamento de fase máxima resulta em dados de saída inalterados da entrada. Os exemplos mostrados compreendem deslocamentos de fase em que os dados foram deslocados para a direita. O algoritmo também funciona para deslocamentos de fase para a esquerda, mas com resultados diferentes.

[00716] Os algoritmos e métodos semelhantes mencionados acima são aqui chamados de algoritmos de embaralhamento estático porque a operação de embaralhamento ocorre de uma só vez, convertendo um conjunto de dados de entrada em uma saída única. Além disso, os algoritmos mostrados

Petição 870170079583, de 19/10/2017, pág. 228/709

221 / 425 anteriormente não dependem do valor de um pacote de dados para determinar como o embaralhamento deve ocorrer. Como ilustrado na Figura 51D, de acordo com a invenção descrita, o embaralhamento paramétrico significa que o método de embaralhamento é escolhido a partir de uma tabela de possíveis algoritmos de embaralhamento, por exemplo, classificação # A, classificação # B, etc., com base em um valor derivado de dados contidos no próprio pacote de dados. Por exemplo, suponha que cada segmento de dados possa ser convertido em um valor numérico com base em um cálculo dos dados contidos no segmento de dados. Uma possível abordagem para determinar o valor numérico de um segmento de dados é empregar o equivalente decimal ou hexadecimal dos dados de bits no segmento de dados. Se o segmento de dados contiver vários termos, o equivalente numérico pode ser encontrado ao somar os números no segmento de dados. Os dados do segmento de dados são então combinados em um único número ou “parâmetro” e, em seguida, usados para selecionar qual método de embaralhamento é empregado.

[00717] No exemplo mostrado, o pacote de dados desembaralhado 930 é convertido parametricamente na etapa 950 em uma tabela de dados 951, contendo um valor numérico para cada segmento de dados. Como mostrado, o segmento de dados IA, o 0o quadro, tem um valor numérico de 23, o segmento de dados 1B, o Io quadro, tem um valor numérico de 125, e assim por diante. Um único valor de pacote de dados é então extraído na etapa 952 para todo o pacote de dados 930. No exemplo mostrado, a soma 953 representa a soma linear de todos os valores do segmento de dados da tabela 951, totalizando parametricamente 1002. Na etapa 954, esse valor paramétrico, ou seja, a soma 953, é comparado contra uma tabela de condições, ou seja, no software, um conjunto de instruções if-then-else (seentão-senão) predefinidas, para comparar a soma 953 com uma série de intervalos numéricos não sobrepostos na tabela 955 para determinar qual rotina de classificação deve ser empregada. Neste exemplo, o valor

Petição 870170079583, de 19/10/2017, pág. 229/709

222 / 425 paramétrico de 1002 cai no intervalo de 1000 a 1499, o que significa que a classificação # C deve ser empregada. Uma vez selecionada a rotina de classificação, o valor paramétrico não é mais necessário. A entrada de dados desembaralhada 930 é então embaralhada pelo método selecionado na etapa 956 para produzir a saída 959 do pacote de dados de embaralhamento. No exemplo mostrado, Classificação # C, resumida na tabela 957, compreende um conjunto de movimentos relativos para cada segmento de dados. O primeiro segmento de dados do pacote de dados embaralhado 959, o 0o quadro é determinado movendo o segmento de dados ID para a esquerda por três movimentos, isto é, um deslocamento de 3. O Io quadro compreende o segmento de dados 1B, inalterado em relação à sua posição original, ou seja, um movimento de 0 lugares. O 2o quadro compreende 1E, um segmento de dados deslocado para a esquerda por dois movimentos de sua posição original. O mesmo é verdadeiro para o 3o quadro que compreende o segmento de dados 1F deslocado para a esquerda por dois movimentos da sua posição original. O 4o quadro de saída de pacote de dados embaralhado 959 compreende o segmento de dados 1C deslocado para a direita, isto é, +2 movimentos, da sua posição original. O 5o quadro compreende o segmento de dados IA, deslocado cinco movimentos para a direita, ou seja, +5, da sua posição original.

[00718] Desta maneira, resumida na tabela 957 para a Classificação # C, todo segmento de dados é movido de forma exclusiva para uma nova posição para criar um pacote de dados embaralhado 959 parametricamente determinado. Para desembaralhar o pacote de dados embaralhado, o processo é revertido, usando o mesmo método de classificação, Classificação # C. Para garantir que o mesmo algoritmo seja selecionado para executar a operação de desembaralhamento, o valor paramétrico 953 do pacote de dados não pode ser alterado como uma consequência da operação de embaralhamento. Por exemplo, usar uma soma linear do valor paramétrico de cada segmento de

Petição 870170079583, de 19/10/2017, pág. 230/709

223 / 425 dados produz o mesmo valor numérico independentemente da ordem dos números.

[00719] O embaralhamento dinâmico utiliza um estado do sistema, por exemplo, tempo, para poder identificar as condições quando um pacote de dados foi embaralhado, permitindo que o mesmo método seja selecionado para executar a operação de desembaralhamento. No sistema mostrado na Figura 51B, o estado é usado para gerar uma semente numérica disfarçada, que é transmitida para o remetente ou destinatário do pacote, que então usa a semente para selecionar um algoritmo de embaralhamento de uma tabela. Altemativamente, o próprio estado pode ser transmitido para o remetente ou o destinatário, e o estado pode ser usado por um gerador de número oculto localizado no remetente ou destinatário para gerar um número oculto que é usado para selecionar um algoritmo de embaralhamento/desembaralhamento. Tal arranjo é mostrado na Figura 51E, onde um estado, por exemplo, tempo 920, é usado para gerar um número oculto 961, usando o gerador de número oculto 960 e para selecionar um método de embaralhamento da lista de algoritmos de embaralhamento 962. Usando o número oculto 961 para selecionar um algoritmo da tabela de algoritmo de embaralhamento 962, a operação de embaralhamento 963 converte o pacote de dados desembaralhado 930 no pacote de dados embaralhado 964. Como mostrado na Figura 51E, o estado 920 pode ser passado diretamente para o gerador de número oculto 960 ou o estado 920 pode ser passado para o gerador de número oculto através do gerador de sementes 921.

[00720] O benefício de usar um número oculto para selecionar um algoritmo de embaralhamento em vez de apenas uma semente numérica é que ele elimina qualquer possibilidade de um criminoso cibernético recriar a tabela de embaralhamento através da análise do fluxo de dados, isto é, correlacionando estatisticamente conjuntos repetidos de dados embaralhados a sementes numéricas correspondentes. Embora a semente possa estar visível

Petição 870170079583, de 19/10/2017, pág. 231/709

224 / 425 no fluxo de dados e, portanto, sujeita a espionagem, o gerador de número oculto e o número oculto HN que cria é baseado em um segredo compartilhado. O número oculto HN, portanto, não está presente no fluxo de dados ou sujeito a espionagem ou detecção, o que significa que não é transmitido pela rede, mas gerado localmente a partir da semente numérica. Essa operação matemática de um gerador de número oculto confere uma camada adicional de segurança em evitar hackers porque o propósito da semente numérica está disfarçado.

[00721] Uma vez que o algoritmo é selecionado, a semente numérica também pode ser usada como uma variável de entrada no algoritmo do processo de embaralhamento 963. O uso duplo da semente numérica confunde ainda mais a análise porque a semente não escolhe diretamente o algoritmo, mas trabalha em conjunto com ele para determinar a sequência final dos segmentos de dados codificados. De maneira semelhante, para desembaralhar um pacote de dados embaralhado dinamicamente, a semente 929 (ou, altemativamente, o estado ou o tempo 920) deve ser passada do nó de comunicação, dispositivo ou software que inicialmente executa o embaralhamento para qualquer nó ou dispositivo que deseje desembaralhá-la.

[00722] De acordo com a invenção descrita, o algoritmo de geração de sementes 921, gerador de número oculto 960 e a lista de algoritmos de embaralhamento 962 representam “segredos compartilhados”, informações armazenadas em um servidor DMZ (conforme descrito abaixo) e não conhecidas pelo remetente ou pelo destinatário de um pacote de dados. O segredo compartilhado é estabelecido com antecedência e não está relacionado aos pacotes de dados de comunicação enviados, possivelmente durante a instalação do código onde uma variedade de procedimentos de autenticação são empregados para garantir que o segredo não vaze. Conforme descrito abaixo, os segredos compartilhados podem ser limitados a “zonas” para que o conhecimento de um conjunto de segredos roubados ainda não

Petição 870170079583, de 19/10/2017, pág. 232/709

225 / 425 permita que um hacker acesse toda a rede de comunicação ou intercepte comunicados em tempo real.

[00723] Além de quaisquer segredos compartilhados, em embaralhamento dinâmico, onde o algoritmo de embaralhamento varia durante o trânsito do pacote de dados, uma semente baseada em um “estado” é necessária para embaralhar ou desembaralhar os dados. Esse estado em que a semente é baseada pode compreender qualquer parâmetro físico, como tempo, número de nó de comunicação, identidade de rede ou mesmo localização de GPS, desde que não haja ambiguidade quanto ao estado usado na geração da semente e desde que haja algum meio para informar o próximo nó de qual estado foi usado para embaralhar por último o pacote de dados. O algoritmo usado pelo gerador de semente para produzir uma semente faz parte dos segredos compartilhados e, portanto, o conhecimento da semente não permite determinar o estado em que a semente se baseia. A semente pode ser passada de um nó de comunicação para o próximo incorporando-a dentro do próprio pacote de dados, enviando-a através de outro canal ou trajeto, ou alguma combinação dos mesmos. Por exemplo, o estado usado na geração de uma semente pode compreender um contador compreendendo inicialmente um número aleatório posteriormente incrementado por um número fixo cada vez que um pacote de dados atravessa um nó de comunicação, com cada contagem representando um algoritmo de embaralhamento específico.

[00724] Em uma modalidade de embaralhamento dinâmico, durante a primeira instância de embaralhamento, é gerado um número aleatório para selecionar o método de embaralhamento usado. Esse número aleatório é incorporado no pacote de dados em um cabeçalho ou porção do pacote de dados reservado para comando e controle e não sujeito a embaralhamento. Quando o pacote de dados chega ao próximo nó, o número incorporado é lido pelo nó de comunicação e usado pelo software para selecionar o algoritmo apropriado para desembaralhar o pacote de dados de entrada. O número, ou

Petição 870170079583, de 19/10/2017, pág. 233/709

226 / 425 seja, a “contagem” é depois incrementada por uma contagem ou algum outro número inteiro predeterminado, o pacote é embaralhado de acordo com o algoritmo associado a esse novo número e a nova contagem é armazenada na saída do pacote de dados sobrescrevendo o número anterior. O próximo nó de comunicação repete o processo.

[00725] Em uma modalidade alternativa do método baseado em contador descrito para selecionar um algoritmo de embaralhamento, é gerado um número aleatório para selecionar o algoritmo de embaralhamento inicial e esse número é encaminhado para cada nó de comunicação usado para transportar o pacote de dados específico como um “segredo compartilhado”. Uma contagem, por exemplo, começando com 0, também é incorporada no pacote de dados em um cabeçalho ou porção do pacote de dados reservado para comando e controle e não sujeito a embaralhamento. O pacote de dados é então encaminhado para o próximo nó de comunicação. Quando o pacote chega ao próximo nó de comunicação, o servidor lê o valor da contagem, adiciona a contagem ao número aleatório inicial, identifica o algoritmo de embaralhamento usado para embaralhar por último o pacote de dados e desembaralha o pacote de acordo. A contagem é então incrementada por um ou qualquer número inteiro predeterminado, e a contagem é novamente armazenada no cabeçalho do pacote de dados ou qualquer porção do pacote de dados reservado para comando e controle e não sujeito a embaralhamento, sobrescrevendo a contagem anterior. O número aleatório que serve como segredo compartilhado não é comunicado no pacote de dados de comunicação. Quando o pacote de dados chega ao próximo nó de comunicação, o servidor adiciona o segredo compartilhado do número aleatório adicionado ao valor do contador revisado extraído do pacote de dados. Esse novo número identifica de forma exclusiva o algoritmo de embaralhamento empregado pelo último nó de comunicação para embaralhar o pacote de entrada. Nesse método, apenas um número de contagem sem

Petição 870170079583, de 19/10/2017, pág. 234/709

227 / 425 sentido pode ser interceptado a partir da porção desembaralhada de um pacote de dados por um pirata cibernético que não tem ideia do que os dados significam.

[00726] Em outro método alternativo, um número oculto pode ser empregado para comunicar o estado do pacote e qual o algoritmo foi utilizado para embaralhá-lo. Um número oculto combina um estado variável no tempo ou uma semente, com um segredo compartilhado geralmente compreendendo um algoritmo numérico, usados em conjunto para produzir um número confidencial, ou seja, um “número oculto” que nunca é comunicado entre os nós de comunicação e, portanto, não pode ser detectado ou descoberto por qualquer ataque man-in-the-middle ou pirata cibernético. O número oculto é então usado para selecionar o algoritmo de embaralhamento empregado. Uma vez que o estado ou a semente não tem sentido sem saber o algoritmo usado para calcular o número oculto e como o algoritmo de segredos compartilhados pode ser armazenado atrás de um firewall inacessível na rede ou Internet, então nenhuma quantidade de monitoramento do tráfego de rede revelará um padrão. Para complicar ainda mais as questões, a localização da semente também pode representar um segredo compartilhado. Em uma modalidade, um número carregado por uma porção desembaralhada de um pacote de dados e observável para detecção de dados, por exemplo, 27482567822552213, compreende um número longo onde apenas uma porção do número representa a semente. Se, por exemplo, o terceiro ao oitavo dígito representam a semente, então a semente real não é o número inteiro, mas apenas os números em negrito 27482567822552213, ou seja, a semente é 48256. Essa semente é então combinada com um algoritmo de segredo compartilhado para gerar um número oculto e o número oculto é usado para selecionar o algoritmo de embaralhamento, variando dinamicamente em toda a rede.

[00727] Também de acordo com a invenção descrita, outro possível algoritmo de embaralhamento dinâmico é o processo de dithering,

Petição 870170079583, de 19/10/2017, pág. 235/709

228 / 425 introduzindo intencionalmente ruído previsível no fluxo de dados na comunicação. Um possível método de dithering envolve a transposição repetida de dois segmentos de dados adjacentes que ocorrem à medida que um pacote atravessa a rede. Como ilustrado na Figura 51F, no tempo to correspondente ao estado dinâmico 990, o pacote de dados desembaralhado 990 é embaralhado pela operação de embaralhamento de pacotes 926, resultando no pacote de dados embaralhado 1001 no tempo ti correspondente ao estado dinâmico 991. O pacote de dados 1001 que entra no nó de comunicação Nij, hospedado no servidor 971, compreende uma série de segmentos de dados na sequência ID, IB, IE, IF, 1C, IA. O pacote de dados 1001 é modificado pelo nó de comunicação Νι,ι no tempo t2 alterando a ordem do segmento de dados trocando os segmentos de dados IE e 1B. O pacote de dados resultante 1002 que compreende a sequência de segmento de dados ID, IE, IB, IF, 1C, IA é então processado pelo nó de comunicação Ni,2 , hospedado no servidor 972, no tempo t3 retornando a sequência para 1D, IB, IE, IF, 1C, IA. Com cada nó sucessivo, as posições relativas dos segmentos de dados IB e 1E são trocadas, ou submetidas a dither, não fazendo dois pacotes sucessivos iguais. Como tal, a sequência de embaralhamento original compreende pacotes de dados 1001, 1003, 1005 e 1007 nos tempos correspondentes ti, Í3, ts e C com pacotes de dados alterados 1002, 1004, e 1006 nos tempos correspondentes t2, t4 e t6. A saída do pacote de dados 1007 do nó de comunicação Ni,6 , hospedado no servidor 972, é então desembaralhado pela operação de desembaralhamento de pacotes 928 para recuperar a sequência de dados original 930 no tempo tf.

[00728] Um exemplo de embaralhamento estático de acordo com a rede e o protocolo dinâmicos seguros descritos e aplicado a um pacote de dados 930 que atravessa uma cadeia de servidores de comunicação 1010 a 1015 é ilustrado na Figura 52, onde o nó de comunicação No,o, hospedado no servidor 1010, inclui a operação de embaralhamento de pacotes 926,

Petição 870170079583, de 19/10/2017, pág. 236/709

229 / 425 resultando em pacote de dados embaralhado 1008. O pacote embaralhado 1008 atravessa uma rede de comunicação com comutação de pacotes sem qualquer alteração adicional na sequência do segmento de dados em que o nó de comunicação No.f, hospedado no servidor 1015, finalmente executa a operação de desembaralhamento de pacotes 928 retomando o pacote de dados para sua sequência original. Essa forma de transporte de dados representa o embaralhamento estático porque o pacote de dados, uma vez inicialmente embaralhado, não muda atravessando a rede até chegar ao último servidor.

[00729] Os dados apresentados que atravessam a rede, embora embaralhados, podem ser chamados de “texto simples” porque os dados reais estão presentes nos pacotes de dados, ou seja, os pacotes não foram encriptados em texto cifrado. Em contraste, em texto cifrado, a cadeia de caracteres que contém os dados originais, embaralhados ou não, é traduzida para uma série sem sentido de caracteres sem sentido usando uma chave de encriptação e não pode ser restaurada no formato de texto simples original sem uma chave de desencriptação. O papel da encriptação na comunicação baseada em SDNP descrita é discutido mais adiante na seção a seguir em “Encriptação”.

[00730] Para alterar a sequência de pacotes de dados durante o transporte através da rede, é necessário o “reembaralhamento” do pacote, conforme mostrado na Figura 53. O processo de reembaralhamento de pacotes retoma um pacote de dados embaralhado a seu estado desembaralhado antes de embaralhá-lo novamente com um novo algoritmo de embaralhamento. Assim, o termo “reembaralhamento”, como aqui usado, significa desembaralhamento de um pacote de dados e depois embaralhá-lo novamente, tipicamente com um algoritmo ou método de embaralhamento diferente. Essa abordagem evita o risco de corrupção de dados que podería ocorrer através do embaralhamento de um pacote anteriormente embaralhado e perda de rastreamento da sequência necessária para restaurar os dados

Petição 870170079583, de 19/10/2017, pág. 237/709

230/425 originais. Conforme mostrado, uma vez que inicialmente embaralhado pela operação de embaralhamento de pacotes 926, o pacote de dados embaralhado 1008 é “reembaralhado”, primeiro desembaralhando-o com a operação de desembaralhamento 928, usando a operação inversa do algoritmo de embaralhamento usado para embaralhar os dados e, em seguida, embaralhando o pacote de dados novamente com a operação de embaralhamento 926, usando um algoritmo de embaralhamento diferente do usado na operação de embaralhamento anterior 926. O pacote de dados reembaralhado 1009 resultante é diferente do pacote de dados embaralhado anterior 1008. A operação de reembaralhamento 1017 compreende a aplicação sucessiva de desembaralhamento seguida de embaralhamento, aqui chamado de “reembaralhamento DE”, onde “DE” é um acrônimo para “desembaralhamento-embaralhamento”. Para recuperar o pacote de dados original 930, a operação final de desembaralhamento de pacotes 928 requer o uso da função inversa do mesmo algoritmo usado para reembaralhar por último o pacote de dados.

[00731] A aplicação do reembaralhamento DE em uma rede de comunicação com comutação de pacotes baseada em SDNP de acordo com a invenção é ilustrada na Figura 54, onde o pacote de dados 930 foi primeiro embaralhado pela operação de embaralhamento 926 no servidor 1011, é sucessivamente modificada pela operação de reembaralhamento DE 1017 à medida que o pacote de dados atravessa a rede de servidores de comunicação com comutação de pacotes 1012 a 1015. A operação de desembaralhamento final 928 ocorre no servidor 1016, restaurando o pacote de dados 930 para a sua sequência original. Uma vez que o reembaralhamento ocorre repetidamente e em tempos diferentes do tempo to a tf, a rede resultante representa uma rede de comunicação dinamicamente embaralhada. Em operação, o pacote de dados desembaralhado 930 é embaralhado usando a operação de embaralhamento 926 implementada no nó de comunicação No,o,

Petição 870170079583, de 19/10/2017, pág. 238/709

231 /425 hospedado no servidor 1011. Usando a operação de reembaralhamento DE 1017 implementada no nó de comunicação No,i, hospedado no servidor 1012, o pacote é modificado no pacote de dados embaralhado 1008 no tempo t2. O mesmo processo repete novamente cada vez que o pacote de dados transita através dos nós de comunicação restantes. Por exemplo, no nó de comunicação No,2, hospedado no servidor 1013, a operação de reembaralhamento DE 1017 converte o pacote de dados reembaralhado 1008 em um novo pacote de dados reembaralhado 1009.

[00732] Cada operação de reembaralhamento 1017 primeiro desfaz o embaralhamento anterior contando com o estado anterior do pacote que entra no nó de comunicação, por exemplo, onde o pacote de dados 1008 foi embaralhado com um estado correspondente ao tempo t2, e, em seguida, embaralha o pacote de novo com um novo estado correspondente ao tempo t3 para criar o pacote de dados reembaralhado 1009. Conforme descrito anteriormente, o estado usado para determinar o embaralhamento realizado pode envolver uma semente, um tempo ou um número baseado em qualquer parâmetro físico, como tempo, número de nó de comunicação, identidade de rede ou mesmo localização de GPS, desde que não haja ambigüidade quanto à forma como o embaralhamento foi realizado pela última vez. Por conseguinte, desembaralhar o pacote de dados de entrada para o nó de comunicação No,i, hospedado no servidor 1012, conta com o estado do servidor anterior usado para embaralhar o pacote de dados, ou seja, o estado do nó de comunicação No,o, hospedado no servidor 1011; desembaralhar o pacote de dados que entra no nó de comunicação No,2, hospedado no servidor 1013, conta com o estado do nó de comunicação No,i, hospedado no servidor 1012, no momento do embaralhamento, desembaralhar o pacote de dados que entra no nó de comunicação No,3, hospedado no servidor 1014, conta com o estado do nó de comunicação No,2, hospedado no servidor 1013, no momento do embaralhamento, e assim por diante. O último nó de comunicação na rede de

Petição 870170079583, de 19/10/2017, pág. 239/709

232 / 425 comunicação, nesse caso, o nó de comunicação No,f, hospedado no servidor

1016, não executa o reembaralhamento DE, mas, em vez disso, apenas executa a operação de desembaralhamento 928 para restaurar o pacote de dados 93090 para sua sequência original desembaralhada.

[00733] De acordo com a invenção descrita, o embaralhamento estático e dinâmico de dados toma a interpretação dos dados desembaralhados sem sentido, reordenando o som em ruído irreconhecível, reordenando o texto em linguagem sem nexo, reordenando o vídeo em ruído de vídeo e embaralhando código de modo irreparável. Por si só, o embaralhamento provê um grande grau de segurança. No método SDNP aqui descrito, no entanto, o embaralhamento é apenas um elemento utilizado para prover e garantir uma comunicação segura, livre de hackeamento, ataques cibernéticos, pirataria cibernética e ataques man-in-the-middle.

[00734] Encriptação de Pacotes - De acordo com a invenção descrita, a comunicação segura através de uma rede com comutação de pacotes depende de vários elementos para evitar o hackeamento e garantir a segurança, uma das quais envolve a encriptação de pacotes SDNP. Conforme descrito anteriormente, encriptação do grego que significa “esconder, ocultar, obscurecer” representa um meio para converter informações ou dados normais, comumente chamados de “texto simples”, em “texto cifrado”, que compõem um formato incompreensível, tomando os dados ilegíveis sem conhecimento secreto. Na comunicação moderna, esse conhecimento secreto geralmente envolve o compartilhamento de uma ou mais “chaves” usadas para encriptar e desencriptar os dados. As chaves geralmente compreendem números pseudoaleatórios gerados algoritmicamente. Inúmeros artigos e textos estão disponíveis hoje discutindo os méritos e pontos fracos de várias técnicas de encriptação, como “Cryptonomicon” de Neal Stephenson © 1999, “The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography” de Simon Singh © 1999, “Practical Cryptography” de Niels

Petição 870170079583, de 19/10/2017, pág. 240/709

233/425

Ferguson © 2013, e “Cryptanalysis: A Study of Ciphers and Their Solution” publicado pela primeira vez em 1939.

[00735] Embora o conceito de encriptação ou cifras seja antigo e bem conhecido dos versados na técnica, a aplicação da criptografia na rede e protocolo dinâmicos seguros descritos é única, facilitando a encriptação de extremidade a extremidade e a encriptação dinâmica de nó a nó de salto único para a própria arquitetura de rede, independente da própria encriptação de qualquer cliente. A comunicação SDNP é arquitetada com o preceito básico que dado tempo suficiente, qualquer arquivo ou mensagem encriptado estático pode eventualmente ser quebrado e sua informação roubada, não importa quão sofisticada seja a cifra. Embora esta suposição possa, na verdade, ser incorreta, não há necessidade de provar ou refutar a proposição, porque o inverso, ou seja, aguardar um método de encriptação específico falhar, pode resultar em danos consequentes inaceitáveis e irreversíveis.

[00736] Em vez disso, a comunicação SDNP baseia-se na premissa de que todos os arquivos encriptados têm uma “vida útil” limitada, significando metaforicamente que os dados encriptados são bons (seguros) por apenas um período finito de tempo e que os dados confidenciais devem ser reencriptados dinamicamente em intervalos regulares, idealmente muito mais frequentemente do que as melhores estimativas do tempo necessário para quebrar sua encriptação com computadores de ponta. Por exemplo, se é estimado por criptólogos que um grande farm de servidores de mecanismos criptográficos pode quebrar uma determinada cifra em um ano, então, na comunicação SDNP, um pacote de dados será reencriptado a cada segundo ou mesmo a cada 100ms, intervalos de várias ordens de magnitude menor que a capacidade da melhor tecnologia para quebrá-lo. Como tal, a encriptação SDNP é necessariamente dinâmica, ou seja, variante de tempo, e também pode ser espacialmente variável, isto é, dependendo da localização de um nó de comunicação em uma rede com comutação de pacotes ou geografia.

Petição 870170079583, de 19/10/2017, pág. 241/709

234 / 425

Assim, como aqui usado, os termos “reencriptar” ou “reencriptação” referemse a desencriptar um pacote de dados e, em seguida, criptografá-lo novamente, tipicamente com um algoritmo ou método de encriptação diferente.

[00737] A encriptação SDNP, portanto, envolve a conversão de dados de texto simples desencriptado em texto cifrado repetidamente e com frequência, tomando a informação incompreensível e inútil. Mesmo que a encriptação de dados de um determinado pacote seja milagrosamente quebrada, ao empregar os métodos de encriptação dinâmicos do SDNP, o próximo pacote de dados utiliza uma chave ou cifra de encriptação completamente diferente e requer um esforço completamente novo para quebrar sua encriptação. Ao limitar o conteúdo total de cada pacote de dados encriptado de forma exclusiva, o potencial dano do acesso não autorizado é mitigado porque um pacote de dados exposto contém, por si só, um arquivo de dados muito pequeno para ser significativo ou útil para um pirata cibernético. Além disso, ao combinar encriptação dinâmica com os métodos de embaralhamento SDNP mencionados acima, a segurança da comunicação é intensificada enormemente. Mesmo na sua forma desencriptada, o arquivo de dados interceptado contém apenas um pequeno trecho de dados, voz ou vídeo embaralhado em uma sequência de segmentos de dados sem sentido e incompreensível.

[00738] De acordo com esta invenção, a encriptação SDNP é dinâmica e dependente do estado. Como mostrado na Figura 55A, um pacote de dados desencriptado que compreende o texto simples 930, processado através da operação de encriptação 1020, resulta em um pacote de dados encriptado que inclui texto cifrado 1024 ou 1025. No caso do texto cifrado 1024, o pacote de dados inteiro de texto simples 930 é criptografado ao todo, tratando os segmentos de dados IA a 1F como um único arquivo de dados. No caso do texto cifrado 1025, cada segmento de dados IA a 1F de texto simples 930 é

Petição 870170079583, de 19/10/2017, pág. 242/709

235/425 encriptado separadamente e distintamente e não é mesclado com outros segmentos de dados. O primeiro segmento de dados IA é encriptado em um primeiro segmento de dados de texto cifrado correspondente mostrado para fins de ilustração por uma cadeia de caracteres começando com 7$ e que compreende uma longa cadeia de caracteres ou dígitos não mostrados. Da mesma forma, o segundo segmento de dados de texto simples 1B é encriptado em um segundo segmento de dados de texto cifrado que compreende uma longa cadeia de caracteres mostrada para fins ilustrativos começando com *Λ. Os caracteres 7$ e *Λ devem ilustrar o início de cadeias sem sentido de símbolos, dígitos e caracteres alfanuméricos e não limitar ou implicar nada sobre os dados específicos na fonte de texto simples ou o comprimento das cadeias de caracteres sendo encriptadas.

[00739] A operação de encriptação 1020 pode usar qualquer algoritmo, criptografia ou método de cifra disponível. Embora o algoritmo possa representar uma equação estática, em uma modalidade a operação de encriptação usa variáveis dinâmicas ou “estados” como tempo 920 quando ocorre encriptação, e um gerador de encriptação 1021 para produzir a “chave E” 1022, que também pode ser dependente de um estado como tempo 920 no qual a encriptação foi realizada. Por exemplo, a data e a hora da encriptação podem ser usadas como uma semente numérica para gerar uma chave de encriptação que não pode ser recriada, mesmo que o algoritmo de encriptação tenha sido descoberto. O tempo 920 ou outros “estados” também podem ser usados para selecionar um algoritmo específico de uma lista de algoritmos de encriptação 1023, que é uma lista de algoritmos de encriptação disponíveis. Nos fluxogramas de dados, é conveniente ilustrar esta operação e sequência de encriptação de pacotes usando uma representação esquemática ou simbólica, conforme representado aqui pelo símbolo mostrado para operação de encriptação 1026. Ao longo desta descrição da invenção, um cadeado também pode simbolicamente representar dados seguros e encriptados. Os

Petição 870170079583, de 19/10/2017, pág. 243/709

236/425 cadeados com uma face de relógio localizada no topo do cadeado indicam especificamente um mecanismo de entrega seguro, por exemplo, arquivos encriptados que, se não recebidos dentro de um intervalo específico ou em um tempo específico, se autodestroem e são perdidos para sempre.

[00740] A operação de desencriptação mostrada na Figura 55B ilustra a função inversa da operação de encriptação 1020, especificamente a operação de desencriptação 1031, onde o estado ou o tempo 920 e outros estados usados para criar texto cifrado 1024, juntamente com uma chave de desencriptação ou “chave D” 1030 gerada pelo gerador de chave D 1029 são reutilizados para desfazer a encriptação, ou seja, desencriptar o arquivo, para produzir dados não encriptados que compõem o pacote de dados de texto simples original 990. Usando o mesmo estado ou tempo 920 empregado quando a encriptação de pacotes ocorreu pela primeira vez, a mesma operação de encriptação que foi selecionada da lista de algoritmos de encriptação 1023 pode ser usada novamente na operação de desencriptação 1031. Embora a lista de algoritmos de encriptação 1023 refira-se ao termo “encriptação”, a mesma tabela de algoritmos é usada para identificar e selecionar a função inversa necessária para realizar “desencriptação”, ou seja, a lista de algoritmos de encriptação 1023 contém a informação necessária tanto para encriptação quanto para desencriptação de pacotes de dados. Como as duas funções envolvem as mesmas etapas realizadas na ordem inversa, a tabela 1023 também pode ser renomeada como a tabela de algoritmos de “encriptação/desencriptação” 1023. Por motivos de clareza, no entanto, a tabela é rotulada apenas pela função e não pela sua antifunção.

[00741] Caso o algoritmo de encriptação selecionado para implementar a operação de desencriptação 1031 não corresponda ao inverso do algoritmo original empregado na operação de encriptação de pacotes 1020, o estado ou o tempo 920 não corresponda ao tempo em que a encriptação ocorreu, ou a chave D 1030 não tenha uma relação numérica predefinida com a chave E

Petição 870170079583, de 19/10/2017, pág. 244/709

237 / 425

1022 usada durante a encriptação, então a operação de desencriptação 1031 não conseguirá recuperar os dados originais não encriptados 990 e os dados do pacote serão perdidos. Nos fluxogramas de dados, é conveniente ilustrar esta operação e sequência de desencriptação de pacotes usando uma representação esquemática ou simbólica, conforme representado aqui pelo símbolo mostrado para a operação de desencriptação 1032.

[00742] Conforme descrito anteriormente nesta descrição, o conhecimento sobre o uso de chaves de encriptação e desencriptação em criptografia e algoritmos de encriptação comuns, como encriptação de chave pública simétrica, encriptação RSA e encriptação AES256, entre outros, são comuns e conhecidos pelos versados na técnica. A aplicação de tais métodos criptográficos bem-conhecidos no sistema de comunicação SDNP descrito não é, contudo, prontamente suscetível a hackeamento ou desencriptação devido a informações ocultas, segredos compartilhados e variáveis dinâmicas dependentes do tempo e estados únicos para a comunicação SDNP descrita.

[00743] Então, mesmo no caso improvável em que um pirata cibernético tenha poder de computador suficiente para quebrar um método de encriptação robusto, eles não possuem certas informações incorporadas na rede SDNP como segredos não públicos ou compartilhados necessários para executar a operação de desencriptação e também devem quebrar a encriptação em uma fração de segundo antes que a encriptação mude. Além disso, todos os pacotes de dados que atravessam a rede SDNP descrita utilizam um método de encriptação diferente com chaves únicas e estados dinâmicos. A combinação de informações faltantes, estados dinâmicos e conteúdos informativos limitados contidos em qualquer pacote dado toma o roubo de dados significativos de qualquer determinado pacote de dados desafiador e insatisfatório para um pirata cibernético.

[00744] Para interceptar um documento inteiro, fluxo de vídeo ou conversa de voz para reconstruir uma sequência de dados coerente, um ataque

Petição 870170079583, de 19/10/2017, pág. 245/709

238/425 cibernético deve sucessivamente quebrar e desencriptar não apenas um, mas milhares de pacotes SDNP sucessivos. O desafio intimidante de hackear continuamente uma sucessão de pacotes SDNP é ainda mais exacerbado combinando a encriptação dinâmica com os métodos descritos anteriormente em relação ao embaralhamento de pacotes de dados. Como ilustrado na Figura 56, a criação de um pacote de dados embaralhado encriptado 1024 envolve a combinação sucessiva de operação de embaralhamento 926 e operação de encriptação 1026 para converter primeiro pacote de dados de texto simples desembaralhado 990 em pacote de dados de texto simples embaralhado 1008 e, em seguida, em texto cifrado 1024 do pacote de dados embaralhado. Para desfazer o pacote embaralhado encriptado, as funções inversas devem ser aplicadas na sequência inversa primeiro pela operação de desencriptação 1032 para recuperar o pacote de dados de texto simples embaralhados 1035, e, depois por meio da operação de desembaralhamento 928 para recuperar o pacote de dados de texto simples desembaralhado 990.

[00745] Como mostrado, o embaralhamento e a encriptação representam técnicas complementares na obtenção de comunicação segura. Os dados embaralhados desencriptados que atravessam a rede são chamados de “texto simples” porque os dados reais estão presentes nos pacotes de dados, ou seja, os pacotes não foram encriptados em texto cifrado. Os pacotes de dados encriptados, ou texto cifrado, compreendem cadeias de caracteres embaralhados ou desembaralhados, traduzidas para uma série sem sentido de caracteres sem sentido usando uma chave de encriptação e não podem ser restauradas ao seu formato de texto simples original sem uma chave de desencriptação correspondente. Dependendo do algoritmo empregado, as chaves de encriptação e desencriptação podem compreender a mesma chave ou chaves distintas matematicamente relacionadas por uma relação matemática predefinida. Como tal, o embaralhamento e a encriptação representam técnicas complementares na obtenção de comunicação segura de

Petição 870170079583, de 19/10/2017, pág. 246/709

239/425 acordo com a invenção descrita para a comunicação SDNP.

[00746] Os dois métodos, embaralhamento e encriptação, podem ser considerados de forma independente mesmo quando usados em combinação, exceto que a sequência usada para restaurar o pacote de dados original de um pacote de dados embaralhado encriptado deve ocorrer na sequência inversa para a que é usada para criá-lo. Por exemplo, se o pacote de dados 990 foi primeiro embaralhado usando a operação de embaralhamento 926 e, em seguida, encriptado usando a operação de encriptação 1026, então para restaurar o pacote de dados original, o pacote de dados embaralhado encriptado 1024 deve primeiro ser desencriptado usando a operação de desencriptação 1032 e, em seguida, desembaralhado usando a operação de desembaralhamento 928. Matemmaticamente, se uma operação de embaralhamento F embaralha uma cadeia de bits ou caracteres em uma versão embaralhada equivalente e uma operação de desembaralhamento F1 desfaz o embaralhamento, pelo qual

F-1[F(A)] = A e de forma semelhante se uma operação de encriptação G encripta uma cadeia de texto simples em texto cifrado equivalente e uma operação de desencriptação G 1 desfaz a encriptação pela qual

G-1[G(A)] = A então, em combinação, a operação sucessiva de embaralhamento e, em seguida, encriptação seguida de desencriptação e, em seguida, desembaralhamento retoma o argumento original A, o pacote de dados de texto simples desembaralhado. Por conseguinte, F1{G-1[G(F(A))]} = A porque a sequência ocorre em ordem inversa, especificamente desencriptando [G1] o pacote embaralhado encriptado [G(F(A))] restaura o pacote de dados de texto simples embaralhado F(A). A operação de desembaralhamento subsequente F1 do pacote de texto simples embaralhado

Petição 870170079583, de 19/10/2017, pág. 247/709

240 / 425

F(A) restaura o pacote de dados original A.

[00747] Desde que sejam empregados métodos lineares, a sequência é reversível. Por exemplo, se o pacote de dados é primeiro encriptado e depois embaralhado, então, para restaurar o pacote de dados original, o texto cifrado embaralhado deve primeiro ser desembaralhado e, em seguida, desencriptado. Por conseguinte,

G-1{F1[F(G(A))]} = A [00748] Alterar a sequência não funciona. Desencriptar um pacote de dados que foi anteriormente encriptado e depois embaralhado sem antes desembaralhá-lo, não recuperará o pacote de dados original, isto é,

F_1{G_1[F(G(A))]} A [00749] Da mesma forma, desembaralhar um pacote que foi embaralhado e, em seguida, encriptado também não conseguirá restaurar o pacote de dados original, porque

G_1{F_1[G(F(A))]} A [00750] Para resumir, se o pacote de texto simples é embaralhado antes de ser encriptado, ele deve ser desencriptado antes de ser desembaralhado; se o pacote de texto simples for encriptado antes de ser embaralhado, ele deve ser desembaralhado antes de ser desencriptado.

[00751] Embora seja entendido que o embaralhamento e a encriptação podem ser realizadas em qualquer sequência, em uma modalidade dos métodos SDNP de acordo com esta invenção, a encriptação e a desencriptação ocorrem mais frequentemente durante o transporte de rede do que o desembaralhamento e, portanto, a encriptação deve ocorrer após o embaralhamento e a desencriptação deve ocorrer antes do desembaralhamento, conforme ilustrado na Figura 56, em vez do inverso. Por conveniência, definimos a combinação da operação de embaralhamento de pacotes 926 seguida da operação de encriptação 1026 como operação de pacote embaralhado por encriptação 1041 e seu inverso, a combinação da

Petição 870170079583, de 19/10/2017, pág. 248/709

241 / 425 operação de desencriptação 1032 seguida da operação de desembaralhamento de pacotes 928 como operação de pacote desencriptado por desembaralhamento 1042. Essas operações hibridizadas podem ser empregadas em comunicação SDNP estática e dinâmica de acordo com esta invenção.

[00752] Na Figura 57, representando a comunicação SDNP, o pacote de texto simples 990 atravessa uma série de nós de comunicação 1011 a 1016 de uma rede de comunicação com comutação de pacotes em uma forma encriptada e embaralhada estaticamente, representada pelo pacote de dados de texto cifrado 1040, que não muda de nó para nó ou com o tempo. Como mostrado no primeiro servidor, o nó de comunicação No,o 1101, a operação de encriptação e embaralhamento 1041 é usada para converter o pacote de dados de texto simples original 990 em pacote de dados de texto cifrado 1040 de dados encriptados embaralhados. Uma vez convertido no tempo ti e no estado correspondente 991, o pacote de dados embaralhado encriptado permanece estático e inalterado à medida que o pacote de dados atravessa a rede até chegar finalmente ao nó de comunicação No,f 1016, onde o pacote de dados é retornado à sua forma original de pacote de dados de texto simples 990 por operação de desembaralhamento e desencriptação 1042 no tempo tf. Embora a combinação de embaralhamento e encriptação intensifique bastante a segurança, ela não representa segurança dinâmica porque os pacotes de dados permanecem inalterados ao longo do tempo e durante o trânsito.

[00753] Um meio de intensificar a segurança em qualquer implementação usando encriptação de embaralhamento estático é garantir que cada pacote de dados enviado seja submetido a diferentes métodos de embaralhamento e/ou encriptação, incluindo mudanças de estado, sementes e/ou chaves no tempo ti quando cada pacote de dados entra na rede de comunicação.

[00754] No entanto, uma alternativa mais robusta envolve a mudança

Petição 870170079583, de 19/10/2017, pág. 249/709

242 / 425 dinâmica da encriptação ou do embaralhamento de um pacote de dados, ou ambos, à medida que o pacote atravessa a rede no tempo. A fim de facilitar o processamento de dados necessário para realizar uma versão totalmente dinâmica da comunicação SDNP, é necessário combinar os processos previamente definidos para “reembaralhar” (ou seja, desembaralhar e depois embaralhar) e “reencriptar” (ou seja, desencriptar e depois encriptar) cada pacote conforme ele passa por cada nó de comunicação em uma rede de comunicação com comutação de pacotes. Conforme aqui usado, o termo “reempacotar” ou “reempacotamento” às vezes será usado para se referir à combinação de “reembaralhamento” e “reencriptação”, se o pacote inicialmente foi desencriptado antes de ser desembaralhado ou desembaralhado antes de ser desencriptado. Em ambos os casos, as operações de desembaralhamento e desencriptação em um determinado nó devem ser realizadas em uma ordem que seja o inverso das operações de embaralhamento e encriptação, pois o pacote deixou o nó anterior, ou seja, se o pacote foi embaralhamento e encriptado no nó anterior, primeiro deve ser desencriptado e depois desembaralhado no nó atual. Normalmente, o pacote será então desembaralhado e, em seguida, encriptado à medida que ele sai do nó atual.

[00755] A operação de “reempacotamento” em um nó de comunicação é ilustrada na Figura 58, onde um pacote de dados de texto cifrado de entrada 1040 é primeiro desencriptado pela operação de desencriptação 1032, então desembaralhado pela operação de desembaralhamento 928 para recuperar o pacote de dados de texto simples desembaralhado 990 contendo o conteúdo do pacote original. Se qualquer informação dentro do pacote deve ser inspecionada, analisada, dividida ou redirecionada, o arquivo de texto simples desembaralhado é o melhor formato para executar essas operações. O pacote de dados de texto simples 990 é então novamente embaralhado usando a operação de embaralhamento 926 seguida por uma nova encriptação realizada

Petição 870170079583, de 19/10/2017, pág. 250/709

243 / 425 pela operação de encriptação 1026 para produzir um novo pacote de dados cifrado embaralhado 1043. Uma vez que a operação de reempacotamento do pacote de dados de texto cifrado embaralhado de entrada 1040 ocorre sucessivamente por desencriptação, desembaralhamento, embaralhamento e encriptação, a sigla de operação de reempacotamento DUSE (decryption, unscrambling, scrambling e encryption) 1045 é usada aqui para denotar a técnica descrita de acordo com esta invenção. Em uma rede segura dinâmica, o estado ou o tempo, a chave de desencriptação e quaisquer sementes usadas para executar a operação de desencriptação 1032 e a operação de desembaralhamento 928 são preferivelmente diferentes do estado ou tempo, sementes ou chaves de encriptação usadas para executar a operação de embaralhamento 926 e operação de encriptação 1026.

[00756] A operação de reempacotamento DUSE 1045 conforme descrita pode ser implementada como software, firmware ou como hardware em qualquer nó de comunicação. Em geral, é preferível utilizar o software para implementar tais operações, uma vez que o código do software pode ser atualizado ou melhorado com o tempo. A aplicação da operação de reempacotamento DUSE 1045 em uma rede dinâmica é ilustrada na Figura 59, onde o nó de comunicação No,o, hospedado no servidor 1011, realiza a operação de pacote embaralhado por encriptação 1041, o nó de comunicação No,f, hospedado no servidor 1016, realiza a operação de desembaralhamento e desencriptação 1042, enquanto os nós de comunicação intermediários No,i a No,4, hospedados nos servidores 1012 a 1015, respectivamente, realizam operações de reempacotamento DUSE 1045. Em operação, o pacote de dados de texto simples 990 é primeiro processado pela operação de encriptação e embaralhamento 1041 no nó de comunicação No,o, depois processado pela operação de reempacotamento DUSE 1045 no nó de comunicação No,i produzindo o texto simples embaralhado reempacotado 1008 representando o pacote após a desencriptação, o desembaralhamento de pacotes e o

Petição 870170079583, de 19/10/2017, pág. 251/709

244 / 425 embaralhamento de pacotes ainda antes da encriptação. O texto simples embaralhado 1008 é posteriormente encriptado para formar texto cifrado 1040 no tempo t2 e estado correspondente 992. O processo repete novamente no nó de comunicação No,2 e again novamente no nó de comunicação No,3, produzindo texto simples embaralhado reempacotado 1009 subsequentemente encriptado para formar texto cifrado 1048 no tempo U e estado correspondente 994. Por fim, o nó de comunicação No,f executa a operação de desencriptação e desembaralhamento 1042 para restaurar o texto simples desembaralhamento 990 no tempo tf.

[00757] Mistura e Divisão de Pacotes Outro elemento-chave da rede e protocolo dinâmicos seguros aqui descritos é a sua capacidade de dividir pacotes de dados em subpacotes, direcionar esses subpacotes em rotas múltiplas e misturar e recombinar os subpacotes para reconstruir um pacote de dados completo. O processo de divisão de pacotes é ilustrado na Figura 60A, onde o pacote de dados 1054 é dividido, usando a operação de divisão 1051 combinada com a operação de análise algorítmica 1052 e com a operação de lixo 1053, que tem a capacidade de inserir ou remover segmentos de dados de “lixo” não dados. Análogo ao DNA de lixo presente no genoma humano, os segmentos de dados de lixo são inseridos pela operação de lixo 1053, para ampliar ou controlar o comprimento de um pacote de dados ou, conforme necessário, para removê-los. A operação de lixo 1053 é especialmente importante quando há uma quantidade inadequada de dados para encher um pacote. A presença de segmentos de dados de lixo inseridos em um pacote de dados também torna difícil para piratas cibernéticos distinguir dados reais de ruído. Conforme usado aqui, um pacote ou segmento de dados de “lixo” é um pacote ou segmento de dados que consiste inteiramente em dados sem sentido (bits). Esses bits de lixo podem ser introduzidos em um fluxo de pacotes de dados que ofuscam dados reais em um mar de bits sem sentido.

Petição 870170079583, de 19/10/2017, pág. 252/709

245 / 425 [00758] O propósito da operação de análise 1052 é quebrar o pacote de dados 1054 em pacotes de dados menores, por exemplo, subpacotes de dados 1055 e 1056, para o processamento de cada um dos componentes constituintes. Quebrar o pacote de dados 1054 em pedaços menores oferece vantagens únicas, como o suporte ao transporte em múltiplos trajetos, ou seja, transmitir os pacotes de dados através de trajetos múltiplos e diferentes e facilitar a encriptação única de subpacotes constituintes usando diferentes métodos de encriptação.

[00759] A operação de divisão pode usar qualquer algoritmo, método numérico ou método de análise. O algoritmo pode representar uma equação estática ou incluir variáveis dinâmicas ou sementes numéricas ou “estados”, como o tempo 920 quando o pacote de dados de entrada 1054 foi formado pela primeira vez por uma série de subpacotes e uma semente numérica 929 gerada pelo gerador de sementes 921, que também pode depender de um estado como o tempo 920 no momento da criação do pacote de dados. Por exemplo, se cada data for convertida em um número único ascendente monotonicamente, então cada semente 929 é única. O tempo 920 e a semente 929 podem ser usados para identificar um algoritmo específico escolhido de uma lista de métodos disponíveis, ou seja, do algoritmo 1050. A divisão de pacotes, ou a desmistura, compreende o procedimento inverso de mistura, usando o mesmo algoritmo executado na sequência inversa precisa usada anteriormente para criar o pacote específico. Em última análise, tudo o que é feito é desfeito, mas não necessariamente tudo em uma única etapa. Por exemplo, um pacote de dados encriptado embaralhado pode ser desencriptado, mas permanece embaralhado. Processado pela operação de divisão 1051, o pacote de dados de entrada não dividido 1054 é convertido em vários pacotes de dados, por exemplo, pacotes de comprimento fixo divididos 1055 e 1056 usando a operação de análise 1052 para executar algoritmicamente a operação. Nos fluxogramas de dados, é conveniente

Petição 870170079583, de 19/10/2017, pág. 253/709

246 / 425 ilustrar esta operação e sequência de divisão 1051 de pacotes incluindo operação de análise 1052 e de lixo 1053 usando uma representação esquemática ou simbólica, conforme representado aqui pelo símbolo mostrado para a operação de divisão 1057.

[00760] Assim, como aqui usado, o termo “divisão” pode incluir a análise, que se refere à separação de um pacote em dois ou mais pacotes ou subpacotes, e também pode incluir a inserção de pacotes ou subpacotes de lixo nos pacotes ou subpacotes “analisados” resultantes ou a exclusão de pacotes ou subpacotes de lixo dos pacotes ou subpacotes “analisados” resultantes.

[00761] A função inversa, operação de mistura de pacotes 1060 mostrada na Figura 60B, combina múltiplos pacotes 1055 e 1056 juntos para formar pacotes misturados 1054. Como a divisão de pacotes, a operação de mistura de pacotes pode usar qualquer algoritmo, método numérico ou método de mistura. O algoritmo pode representar uma equação estática ou incluir variáveis dinâmicas ou sementes numéricas ou “estados”, como o tempo 920 usado para especificar as condições quando os pacotes de dados de entrada 1055 e 1056 são misturados. A operação de mistura usada para criar o pacote de dados pode utilizar a semente numérica 929 gerada pelo gerador de sementes 921, que também pode depender de um estado como o tempo 920. O tempo 920 e a semente 929 podem ser usados para identificar um algoritmo de mistura específico escolhido de uma lista de métodos disponíveis, ou seja, de algoritmos de mistura 1050. Nos fluxogramas de dados, é conveniente ilustrar esta operação de mistura de pacotes usando uma representação esquemática ou simbólica, conforme representado aqui pelo símbolo mostrado para a operação de mistura 1061.

[00762] De acordo com esta invenção, a mistura e a divisão de pacotes podem utilizar qualquer um de um grande número de algoritmos possíveis. A Figura 61A ilustra três das muitas técnicas de mistura possíveis que

Petição 870170079583, de 19/10/2017, pág. 254/709

247 / 425 compreendem métodos de concatenação, intercalação ou algorítmicos. Em concatenação, a sequência de segmento de dados do pacote de dados 1056 é anexada no final do pacote de dados 1055 para criar o pacote misturado 1054. Na intercalação, os segmentos de dados dos pacotes de dados 1055 e 1056 são misturados de forma alternada, isto é, como ΙΑ, 2A, IB, 2B, etc. para formar o pacote de dados misturado 1065. Outros métodos usados para a mistura de pacotes envolvem um algoritmo. No exemplo mostrado, um algoritmo que compreende a simetria reflexiva intercalada alterna os segmentos de dados na ordem de IA, 2A, 1B, 2B, 1C, 2C na primeira metade do pacote misto 1066 e na ordem oposta para a segunda metade, ou seja, 2D, 1D, 2E, 1E, 2F, 1F.

[00763] Um exemplo da aplicação de mistura de pacotes usando concatenação de acordo com esta invenção é ilustrado na Figura 61B. Como mostrado, no tempo to os pacotes de dados não misturados 1055 e 1056 são misturados no nó de comunicação No,o, hospedado no servidor 1011, usando a operação de mistura 1061. O pacote de dados mesclado resultante 1066 que compreende a sequência IA a 1F seguido de 2A a 2F é então transportado através de uma rede de servidores 1011 a 1016 compreendendo texto simples inalterado, estático em sua composição em todos os tempos 998, até que no nó de comunicação No,f, hospedado no servidor 1016, a operação de divisão de pacotes 1057 separa os componentes do pacote de dados misturado 1066 nos pacotes de dados originais 1055 e 1056.

[00764] De modo similar, um exemplo da aplicação de mistura intercalada de acordo com esta invenção é ilustrado na Figura 61C. Idêntico em sequência ao exemplo anterior, o pacote misturado resultante 1066 tem uma sequência IA, 1B, 2A, 2B, 3A, 3B.... Embora o pacote misturado seja diferente do exemplo concatenado, a operação de divisão de dados de pacotes 1057 é capaz de restaurar os pacotes de dados não misturados originais 1055 e 1056 porque o conhecimento do algoritmo de mistura e do tempo, estado ou sementes usadas na operação de mistura é passado para o nó de comunicação

Petição 870170079583, de 19/10/2017, pág. 255/709

248 / 425

No,f, hospedado no servidor 1016, como parte do pacote de dados 1066 ou antes da comunicação de pacotes no tempo to.

[00765] Mistura Embaralhada Os métodos descritos de comunicação por pacotes usando a divisão e mistura de pacotes de dados em várias combinações de segmentos de dados podem, de acordo com a invenção descrita, ser combinados com o embaralhamento de pacotes de vários modos. Na Figura 62A os pacotes de dados de texto simples desembaralhados 1055 e 1056 são misturados usando a operação de mistura 1061 resultando no pacote de dados misturado 1067, no exemplo mostrado formado usando texto simples intercalado. Após a mistura, o pacote de dados 1067 é embaralhado pela operação de embaralhamento 926 para produzir o pacote de dados de texto simples embaralhado 1068. A sequência combinada da operação de mistura de pacotes 1061 e o embaralhamento de pacotes 926 em conjunto compreende a operação de mistura e de embaralhamento 1070, compreendendo a mistura seguida de embaralhamento.

[00766] Em uma implementação alternativa de acordo com esta invenção, pacotes de dados individuais são primeiro embaralhados, em seguida, misturados como mostrado na Figura 62B. Nessa implementação, os pacotes de dados de texto simples desembaralhados 1055 e 1056 são primeiro embaralhados por operações de embaralhamento separadas e independentes 926, resultando assim em correspondentes pacotes de dados de texto simples embaralhados 1008 e 1009. Esses pacotes embaralhados são então misturados através da operação de mistura 1061, resultando em um pacote de dados embaralhado misturado 1069.

[00767] O uso combinado de mistura e embaralhamento conforme descrito pode ser integrado em redes de comunicação SDNP estáticas ou dinâmicas. Na Figura 63, os pacotes de dados de texto simples 1055 e 1056 são inseridos no nó de comunicação No,o, hospedado no servidor 1011, que executa a operação de mistura e embaralhamento 1070, compreendendo a

Petição 870170079583, de 19/10/2017, pág. 256/709

249 / 425 operação de mistura 1061 seguida pela operação de embaralhamento 926, para formar um pacote embaralhado misturado 1068. O conteúdo do pacote permanece constante em todos os tempos tn conforme o pacote embaralhado misturado 1068 atravessa os servidores 1011 a 1016. O nó de comunicação final No,f, hospedado no servidor 1016, então executa a operação de desembaralhamento 928 seguida da operação de divisão 1057, representada como operação de desembaralhamento e divisão 1044.

[00768] A Figura 64 ilustra um exemplo de mistura embaralhada dinâmica em uma rede de comunicação SDNP. Como no exemplo SDNP estático anterior, os pacotes de dados de texto simples 1055 e 1056 são inseridos no nó de comunicação No,o, hospedado no servidor 1011, que executa a operação de mistura e embaralhamento 1070, compreendendo a mistura seguida de embaralhamento. O pacote embaralhado misturado é submetido a uma operação de reembaralhamento DE 1010 no servidor 1012 para formar um pacote embaralhado misturado 1072 no tempo t2 correspondente ao estado 992. Os servidores 1013 e 1014 executam então a operação de reembaralhamento DE 1017 para desembaralhar repetidamente e depois reembaralhar o pacote de dados. A operação de reembaralhamento DE é repetida no nó de comunicação No,4, hospedado no servidor 1015, resultando no pacote de dados recém-reembaralhado 1073 no tempo ts correspondente ao estado 995. O nó de comunicação final No.f, hospedado no servidor 1016, então executa a operação de divisão e desembaralhamento 1044 para recuperar os pacotes 1055 e 1056. Na implementação de rede dinâmica mostrada, a operação de desembaralhamento usada em cada operação de reembaralhamento DE 1017 utiliza o tempo ou o estado do pacote de dados criado no servidor anterior, em seguida, reembaralha o pacote de dados no tempo atual. Por exemplo, o pacote de dados 1072, criado no tempo t2 no servidor 1012 é reembaralhado no servidor 1013, isto é, desembaralhado, usando o estado associado ao tempo t2, e depois embaralhado novamente

Petição 870170079583, de 19/10/2017, pág. 257/709

250/425 usando o estado associado ao tempo atual (não mostrado). Como tal, a Figura ilustra por exemplo que as operações de mistura e divisão podem aninhar operações repetidas e sucessivas de embaralhamento e desembaralhamento.

[00769] Mistura Embaralhada Encriptada Os métodos descritos de comunicação por pacotes usando a divisão e mistura de pacotes de dados em várias combinações de segmentos de subpacotes combinados com embaralhamento de pacotes podem, de acordo com a invenção descrita, ser combinados com encriptação. A Figura 65 ilustra vários exemplos de funções que combinam mistura, embaralhamento e encriptação e suas correspondentes funções inversas. Um exemplo é operação de mistura, embaralhamento e encriptação ou MSE 1075, compreendendo uma sequência de operação de mistura 1061, seguida da operação de embaralhamento 926 e, finalmente, operação de encriptação 1026. A função inversa, a operação de desencriptação, desembaralhamento e divisão ou DUS 1076, compreende a sequência inversa de operações, nomeadamente a operação de desencriptação 1032, a operação de desembaralhamento 928 e a operação de divisão 1057. A saída da operação MSE 1075 e a entrada da operação DUS 1076 envolvem texto cifrado. Para comunicar e recuperar o conteúdo original, embora em pedaços, os mesmos segredos compartilhados, sementes numéricas e chaves de encriptação/desencriptação usadas para criar um pacote de texto cifrado devem ser usados para desfazê-lo.

[00770] Os nós intermediários podem envolver apenas a operação de reencriptação 1077, que compreende a combinação da operação de desencriptação 1032 e a operação de encriptação 1026, ou pode envolver a operação DUSE 1045 compreendendo sequencialmente as funções da operação de desencriptação (decryption) 1032, operação de desembaralhamento (unscrambling) 928, operação de embaralhamento (scrambling) 926 e operação de encriptação (encryption) 1026. Na operação de encriptação 1077 e operação DUSE 1045, as funções da operação de

Petição 870170079583, de 19/10/2017, pág. 258/709

251 /425 desencriptação 1032 e operação de desembaralhamento 928 podem exigir que as sementes ou a chave do nó de comunicação enviem o pacote para eles em um tempo ou estado anterior. As funções da operação de encriptação 1026 e a operação de reembaralhamento 926 podem empregar informações, sementes e chaves geradas no presente tempo ou estado, isto é, no tempo em que um nó de comunicação “atualiza” um pacote de dados. A atualização de pacotes de dados toma mais difícil para que ataques cibernéticos acessem informações em um pacote de dados porque os dados de pacotes são recém-ofuscados e o tempo disponível para quebrar o código é encurtado.

[00771] Um exemplo do uso de mistura dinâmica combinada, embaralhamento e encriptação e suas funções inversas é ilustrado na Figura 66A onde dois pacotes de dados 1055 e 1056 entram no nó de comunicação No.o, hospedado no servidor 1011, no tempo to. Os dois pacotes podem representar o mesmo tipo de tipos de dados, por exemplo, dois pacotes de voz, dois arquivos de mensagens de texto, dois documentos, dois softwares, etc. ou podem representar dois tipos diferentes de informações, por exemplo, um pacote de voz e um arquivo de texto, um pacote de texto e uma imagem de vídeo ou foto, etc. Então, no tempo ti usando informações do estado 991 para gerar chaves, sementes numéricas ou outros segredos, o nó de comunicação No.o, hospedado no servidor 1011, executa a operação de mistura, embaralhamento e encriptação (MSE) 1075. O resultado é um pacote de dados embaralhado em formato de texto cifrado, ilegível e interpretável para qualquer observador que não possua a informação de estado usada para criálo. Também no tempo ti, uma semente numérica que representa o tempo ou o estado quando a mistura de pacotes ocorreu é gerada e passada para o nó final No,f, seja enviando esta informação antes do pacote de dados misturado ou, altemativamente, incorporando essa semente no próprio pacote de dados em um cabeçalho de pacote (descrito posteriormente nesta descrição).

[00772] Os dados são, em seguida, passados para o nó de comunicação

Petição 870170079583, de 19/10/2017, pág. 259/709

252 / 425

Νο,ι, hospedado no servidor 1012, que executa a operação DUSE 1045, desencriptando e desembaralhando os dados de entrada com base nas informações do estado 991 correspondentes ao tempo ti em seguida, atualizando a segurança através de embaralhamento e encriptação dos dados novamente com base nas informações do estado 992, correspondentes ao tempo t2. Se a informação de estado 991 estiver sendo passada para o nó final No,f, por incorporação no pacote de dados ou seu cabeçalho, são necessárias duas cópias das informações de estado - uma para ser usada pelo nó final No,f, compreendendo o estado 991 quando a mistura ocorreu e um segundo estado usado pela operação DUSE mudando cada vez que o pacote de dados salta de um nó para o próximo, ou seja, do estado 991 para 992, 993, etc. Usando o estado da última operação realizada em um pacote de dados de entrada, a operação DUSE 1045 executa reembaralhamento em dados não encriptados, desencriptando-os primeiro, executando o reembaralhamento e, em seguida, encriptando os dados novamente, ou seja, a operação de reembaralhamento está aninhada dentro de uma operação de reencriptação. O pacote de dados de saída resultante compreende o texto cifrado 1080B com o conteúdo não encriptado subjacente representado pelo texto simples 1080A. A operação DUSE 1045 é repetida sucessivamente nos servidores 1013, 1014 e 1015, resultando em texto cifrado 1081B com conteúdo não encriptado subjacente representado pelo texto simples 1081A no tempo ts. A comunicação é completada pelo nó de comunicação No,f, hospedado no servidor 1016, que executa a operação de desencriptação, desembaralhamento e divisão (DUS) 1076, desencriptando, desembaralhando o pacote de dados de entrada com base na informação de estado 995, correspondente ao tempo ts usada para a última atualização, depois dividindo o pacote de acordo com o estado 991 quando a mistura ocorreu pela primeira vez. Uma vez que os nós intermediários desconhecem a condição de mistura, mesmo um operador de rede com acesso aos nós intermediários não tem conhecimento das condições

Petição 870170079583, de 19/10/2017, pág. 260/709

253/425 usadas na mistura. As saídas de texto simples resultantes 1055 e 1056 no tempo tf recuperam os dados enviados pela rede a partir do tempo to. Uma vez que o conteúdo do pacote foi reembaralhado e reencriptado à medida que o pacote passa por cada nó No,x onde x = 0, 1, 2,...f, a oportunidade de interceptar e interpretar os pacotes de dados que estão sendo comunicados é extremamente complexa e provê pouco tempo para hackear.

[00773] Um método mais simples para estabelecer uma comunicação segura envolve a mistura e o embaralhamento do pacote no início da comunicação, mas utiliza etapas repetidas de reencriptação. Ao contrário do exemplo de mistura e embaralhamento encriptado totalmente dinâmico da ilustração anterior, a Figura 66B combina embaralhamento e mistura estática no servidor 1011 com encriptação dinâmica nos servidores 1011-1015, o que significa que apenas a encriptação muda com o tempo. A comunicação começa no tempo to, iniciando com os pacotes de dados 1055 e 1056 entregues ao nó de comunicação No,o, hospedado no servidor 1011. Como no exemplo anterior, os dois pacotes podem representar qualquer mistura de tipos de dados, incluindo pacotes de voz, mensagens de texto, documentos, software, imagens de vídeo ou fotos, etc.

[00774] Então no tempo ti, usando informações do estado 991 para gerar chaves, sementes numéricas ou outros segredos, o nó de comunicação No,o executa a operação de mistura, embaralhamento e encriptação (MSE) 1075. O texto cifrado resultante 1082B é um pacote de dados embaralhado em formato de texto cifrado, ilegível e interpretável para qualquer observador que não possua a informação de estado usada para criá-lo. O pacote de dados subjacente que compreende texto simples 1082A é embaralhado e mesmo sem encriptação também é incompreensível para piratas cibernéticos que tentam recuperar os dados, texto, imagem ou som de origem sem a informação do estado, chaves, sementes e segredos.

[00775] Os dados são, em seguida, passados ao nó de comunicação

Petição 870170079583, de 19/10/2017, pág. 261/709

254 / 425

Νο,ι, hospedado no servidor 1012, que, em vez de executar a operação DUSE como no exemplo anterior, apenas reencripta os dados de entrada, ou seja, desencripta os dados com base nas informações do estado 991 correspondentes ao tempo ti em seguida, encripta-os novamente com base nas informações do estado 992 correspondentes ao tempo atual t2. O processo, mostrado como operação de reencriptação 1077, resulta em um pacote de dados de saída que compreende o texto cifrado 1083B com texto embaralhado subjacente 1083A idêntico ao texto simples anterior 1082A. Uma operação de reencriptação 1077 é repetida sucessivamente nos servidores 1013, 1014 e 1015 resultando em novo texto cifrado. Por exemplo, o texto cifrado 1084B e o texto simples subjacente 1084A não representam os dados que viajam entre os servidores 1013 e 1014. O texto simples subjacente 1084A é inalterado antes de ser originalmente embaralhado pela operação MSE 1075 no nó de comunicação No,o no tempo ti. As reencriptações nos nós de comunicação Νο,ι e Νο,,ηο entanto, mudaram o texto cifrado duas vezes desde que este deixou o nó de comunicação No,o· [00776] Os segredos compartilhados usados para realizar mistura e embaralhamento estático e encriptação dinâmica e reverter o processo exigem dois tempos ou estados - tempo ti e o estado correspondente 991 usado para a mistura e embaralhamento estático no servidor 1011 e necessário para desembaralhar e dividir na operação DUS final 1076 no servidor 1016, e o tempo dinâmico e o estado correspondente usado pelo último nó de comunicação para executar cada uma das operações de reencriptação 1077 nos servidores 1012-1015, um estado que varia dinamicamente e constantemente à medida que o pacote de dados atravessa a rede de comunicação com comutação de pacotes. Na etapa final, a comunicação é completada pelo nó de comunicação No,f, hospedado no servidor 1016, que executa uma operação DUS 1045, desencriptando, desembaralhando e dividindo (desmisturando) o pacote de dados de entrada para reproduzir as

Petição 870170079583, de 19/10/2017, pág. 262/709

255/425 saídas de texto simples 1055 e 1056, os mesmos dados enviados pela rede a partir do tempo to.

[00777] Uma vez que o pacote é encriptado no nó No,o, reencriptado conforme passa através cada um dos nós Νο,ι.. .Νο,μ, e descriptado no nó No,f, mesmo que os dados tenham sido misturados e embaralhados apenas uma vez, a oportunidade de interceptar e interpretar os pacotes de dados que estão sendo comunicados é extremamente complexa e provê pouco tempo para hackear. Além disso, a mistura de múltiplas fontes de dados, como descrito anteriormente neste pedido confunde ainda mais as tentativas externas de hackeamento e a pirataria cibernética porque o intruso não tem ideia do que são os vários dados, de onde eles vieram ou de onde estão indo - em essência, sem detalhes e contexto na natureza do pacote de dados.

[00778] Outro método para gerenciar o conteúdo do pacote de dados durante o transporte é “retornar ao normal” em cada salto. Nesse método ilustrado na Figura 66C, com a exceção dos nós de gateway, cada nó executa a operação sequencial da operação DUS 1076 seguida imediatamente pela operação MSE 1075, em essência reconstruindo completamente o pacote de dados para transporte em cada salto. Conforme mostrado, os pacotes de dados de entrada 1055 e 1056 são primeiro misturados pelo nó No,o no tempo ti usando o estado 991 resultando em texto cifrado 1080Z correspondente ao texto simples 1080Y. O texto cifrado 1080Z é enviado para o nó Νο,ι onde a operação DUS 1076 identifica o pacote de entrada foi criado usando o estado 991 correspondente ao tempo ti e como mostrado em detalhe na Figura 66D desencripta-o sequencialmente, convertendo o texto cifrado de entrada 1080Z em texto simples 1080Y. O texto simples 1080Y é então desembaralhado e dividido (ou seja, desmisturado) recuperando assim os pacotes de dados originais 1055 e 1056.

[00779] Em preparação para o próximo salto de rede, os dois pacotes de dados originais são mais uma vez misturados e embaralhados, desta vez

Petição 870170079583, de 19/10/2017, pág. 263/709

256/425 usando algoritmos selecionados no tempo t2 correspondente ao estado 992 resultando em texto simples 1080A que subsequentemente é encriptado para produzir texto cifrado 1080B pronto para ser enviado para o nó No,i. Usando esse método, os pacotes de dados de entrada são retomados ao estado normal inicial cada vez que eles entram em um nó e partem em uma condição “atualizada” completamente nova, correspondente ao estado presente. Nesse método, cada nó precisa apenas saber o estado do pacote de entrada e não requer conhecimento de nenhum estado anterior usado durante o transporte de dados.

[00780] Operações de Mistura e Divisão O processo de mistura e divisão de pacotes para combinar e separar dados de diferentes tipos mostrados anteriormente nas Figura 60A e Figura 60B ilustra pacotes de comprimento fixo obedecendo ao princípio de “conservação de segmentos de dados” onde o comprimento total do pacote de dados longo 1054 tem o mesmo número de segmentos de dados que a soma dos pacotes de dados mais curtos 1055 e 1056 criados a partir dele. Em essência, a conservação de segmentos de dados significa que, durante sucessivas operações de mistura e divisão, segmentos de dados não são criados nem destruídos. Esse princípio simples é problemático na comunicação porque a quantidade de dados em tempo real pode ser esparsa, incapaz de preencher até mesmo um pacote completo.

[00781] No extremo oposto, onde uma rede pode estar fortemente congestionada, um servidor pode não ser capaz de aceitar um pacote longo sem impor longos atrasos de propagação, resultando em alta latência. Por esta e outras razões, a mistura e a divisão dinâmica de pacotes de dados de acordo com a invenção descrita proveem um meio para gerenciar, combinar e separar pacotes de dados de comprimento variável, controlando tanto o comprimento quanto o número de entradas de pacotes de dados, bem como o número e o comprimento das saídas de pacotes de dados. O uso de pacotes de

Petição 870170079583, de 19/10/2017, pág. 264/709

257 / 425 comprimento variável contendo conteúdo direcionado a diferentes destinos confunde ainda mais os hackers, conferindo um grau adicional de segurança à rede. Como mostrado na Figura 67A, a operação de análise 1087 e a operação de lixo 1088, para inserções e exclusões de lixo, são conjuntamente usadas para gerenciar e controlar o comprimento do pacote de dados em pacotes de dados mistos, aplicáveis para operações de mistura de saída única ou múltiplas saídas.

[00782] A Figura 67A ilustra um exemplo de mistura de pacotes de saída única em que múltiplas entradas de comprimento variável, no exemplo mostrado como pacotes de segmento de 4 dados 1090A e 1090C e pacote de segmento de 3 dados 1090B, são misturadas usando a operação de mistura 1086 para produzir um pacote de dados longo 1091. A operação de mistura 1086 é selecionada a partir de uma lista de algoritmos de mistura 1085 de acordo com o tempo ou estado atual 920 quando a mistura ocorre incluindo o uso da semente numérica 929 conforme gerada pelo gerador de sementes 921. Durante a operação de mistura 1086, a operação de lixo 1088 insere segmentos de dados de lixo na saída de pacote de dados 1091 de acordo com o algoritmo selecionado.

[00783] Após a mistura, o pacote de dados longo 1091, ou altemativamente os subpacotes resultantes da operação de análise 1092, podem ser armazenados localmente, por exemplo, aguardando a chegada de outros pacotes de dados, ou podem ser enviados para outros nós na rede de comunicação. Antes do armazenamento ou roteamento, cada pacote ou subpacote é “etiquetado” com um cabeçalho ou subcabeçalho identificando o pacote. A etiqueta é fundamental para reconhecer um pacote de entrada para que ele possa ser processado de acordo com as instruções recebidas anteriormente sobre o que fazer com seus dados, incluindo como misturar, embaralhar, encriptar ou dividir, desembaralhar e desencriptar o conteúdo do pacote de dados. O uso de cabeçalhos e subcabeçalhos de pacotes de dados

Petição 870170079583, de 19/10/2017, pág. 265/709

258/425 para identificar e etiquetar pacotes de dados é descrito em maior detalhe posteriormente neste pedido.

[00784] Assim, além de confundir invasores cibernéticos, outro papel das operações de análise, lixo e limpeza é gerenciar o comprimento do pacote de dados. Por exemplo, se o pacote de dados longo resultante 1091 for muito longo, então, de acordo com um algoritmo selecionado, a operação de análise 1087 quebra a saída de pacote de dados longo 1091 em pedaços mais curtos. O comprimento dos pedaços mais curtos pode ser prescrito pelo algoritmo selecionado, por exemplo, cortar o pacote longo mesclado em intervalos regulares 1092 de “n” subpacotes. O comprimento do pacote desejado pode ser decidido a priori ou pode ser baseado em uma condição de rede, por exemplo, o comprimento máximo aceitável pode ser calculado com base em atrasos na rede. Por exemplo, se o atraso de propagação Atprop entre dois nós excede um determinado valor, então o pacote de dados será analisado para tomá-lo menor, por exemplo, onde o pacote de dados longo 1091 é quebrado em intervalos regulares pela operação de análise 1092 em “n” subpacotes.

[00785] Independentemente de como o pacote longo é analisado, a operação de mistura de múltiplas saídas produz múltiplas saídas de pacotes de dados, por exemplo, pacotes de dados 1093A, 1093B e 1093C, conforme mostrado na Figura 67B. No processo conforme mostrado, os dados de lixo podem ser inseridos nos subpacotes para produzir subpacotes de comprimentos controlados ou fixos. Cada segmento de um pacote de dados ou subpacote, por exemplo, IA, IB, 1C, etc., é identificado não por seu valor ou conteúdo, mas por sua posição do “slot” no pacote. Por exemplo, o pacote de dados longo 1091 contém 18 slots de dados com dados presentes nos slots 1, 4, 7, 8, 9, 11, 12, 13, 15 e 17, enquanto o subpacote 1093A possui apenas 6 slots, contendo conteúdo de dados ou áudio reais nos Io e 4o slots [00786] Para fins de conveniência, a operação de mistura de múltiplas entradas e única saída (MISO) é representada simbolicamente aqui pelo

Petição 870170079583, de 19/10/2017, pág. 266/709

259/425 símbolo 1089 enquanto a operação de mistura de múltiplas entradas e múltiplas saídas (MIMO) é representada simbolicamente pelo símbolo 1094, semelhante ao anterior, exemplo mais idealizado mostrado na Figura 60A. De acordo com a invenção aqui descrita, a mistura de múltiplas entradas e saída única 1089 é útil para conexões de última milha seguras, enquanto a mistura de múltiplas entradas e múltiplas saídas 1094 é útil na realização de redes de roteamento de múltiplos trajetos e em malha descritas mais tarde no pedido. Na taxonomia dos elementos e operações de rede SDNP descritos, a operação de mistura MISO 1089 pode ser considerada um caso especial da operação de mistura MIMO 1094.

[00787] A função inversa para a mistura de múltiplas entradas e única saída ou MISO é a divisão de única entrada e múltiplas saídas ou SIMO. Em uma modalidade, mostrada na Figura 67C, um único pacote de dados longo 1091 é dividido pela operação de divisão 1100 em múltiplos subpacotes de dados 1103A, 1103B e 1103C que podem compreender subpacotes de comprimento fixo ou variável. No exemplo mostrado, o subpacote 1103A contém 4 slots de dados enquanto os subpacotes 1103B e 1103C contêm apenas 3 slots.

[00788] Em uma segunda modalidade, mostrada na Figura 67D, um único pacote de dados longo 1091 é dividido pela operação de divisão 1105 em múltiplos subpacotes 1108A, 1108B e 1108C de comprimentos fixos idênticos usando segmentos de dados de lixo como enchimento quando dados inadequados estão presentes para preencher um pacote de dados inteiro. Em ambos os exemplos, o tempo ou o estado 920 e a semente numérica 929 usados quando os pacotes de dados de entrada foram criados são necessários para selecionar um algoritmo de mistura da tabela 1085 e para definir os parâmetros necessários para a execução das operações de divisão 1100 e 1105. Embora a tabela de algoritmos de mistura 1085 refira-se ao termo “mistura”, a mesma tabela de algoritmos é usada para identificar e selecionar

Petição 870170079583, de 19/10/2017, pág. 267/709

260/425 a função inversa necessária para a realização de “divisão”, ou seja, a tabela de algoritmo de mistura 1085 contém a informação necessária tanto para misturar pacotes de dados como para dividir pacotes de dados. Como as duas funções envolvem as mesmas etapas realizadas na ordem inversa, a tabela 1085 também pode ser renomeada como tabela de algoritmos de “mistura / divisão” 1085. Por motivos de clareza, no entanto, a tabela é rotulada apenas pela função e não pela sua função inversa. Os métodos usados para realizar a mistura e a divisão de pacotes de dados são algorítmicos e, em muitos aspectos, semelhantes aos algoritmos de embaralhamento descritos anteriormente, exceto que geralmente envolvem mais de um pacote de dados como entrada ou saída. Um caso excepcional em que as operações de mistura ou divisão podem ser realizadas em um único pacote de dados é durante a inserção ou remoção de dados de lixo.

[00789] A Figura 67E ilustra um algoritmo de mistura específico misturando três pacotes de dados de entrada 1090A rotulado Subpacote A, 1090B rotulado Subpacote B e 1090C rotulado Subpacote C, em um pacote de dados longo 1091, em seguida, analisando o pacote de dados longo 1091 em três diferentes pacotes de subpacotes de saída 1090D rotulados Subpacote D, 1090E rotulado Subpacote E e 1090F rotulado Subpacote F. Como representado graficamente, a operação de mistura 1094 remapeia o conteúdo de dados dos slots dos pacotes de dados de entrada para o pacote longo e bem como insere dados de lixo em alguns slots intermédios. Por exemplo, conforme mostrado, o 3o slot do subpacote 1090A que contém o segmento de dados 1C é movido para oil0 slot do pacote de dados longo 1091, o 3o slot do subpacote 1090B que contém o segmento de dados 2F é movido para o 17° slot do pacote de dados longo 1091, e o 2o slot do subpacote 1090C que contém o segmento de dados 3D é movido para o 12° slot do pacote de dados longo 1091. O algoritmo de mistura completo, portanto, compreende uma tabela de substituição como mostrado pelo exemplo abaixo:

Petição 870170079583, de 19/10/2017, pág. 268/709

261 /425

Pacote longo N° do slot N° do subpacote de entrada N° do slot do subpacote de entrada Dados contidos no slot
Slotl Subpacote A Slotl IA
Slot 2 Dados de lixo inseridos
Slot 3 Dados de lixo inseridos
Slot 4 Subpacote A Slot 2 1B
Slot 5 Dados de lixo inseridos
Slot 6 Dados de lixo inseridos
Slot 7 Subpacote A Slot 3 1C
Slot 8 Subpacote B Slotl 2C
Slot 9 Subpacote C Slotl 3C
Slot 10 Dados de lixo inseridos
Slot 11 Subpacote B Slot 2 2D
Slot 12 Subpacote C Slot 2 3D
Slot 13 Subpacote A Slot 4 1E
Slot 14 Dados de lixo inseridos
Slot 15 Subpacote C Slot 3 3E
Slot 16 Dados de lixo inseridos
Slot 17 Subpacote B Slot 3 2F
Slot 18 Subpacote C Slot 4 Lixo

[00790] Então, em geral, a função da operação de mistura é definir qual slot no pacote misturado ou pacote longo os dados de entrada são inseridos e definir quais slots do pacote misturado contêm lixo.

[00791] A representação da tabela do algoritmo é exemplificativa para ilustrar que qualquer remapeamento de subpacotes de dados de entrada em um pacote de dados longo é possível. Como parte da operação de mistura 1094, a operação de análise 1087 é realizada em seguida, cortando 1092 pacotes de dados longos 1091 em três pedaços de comprimento igual para

Petição 870170079583, de 19/10/2017, pág. 269/709

262 / 425 criar subpacotes de saída 1093D, 1093E e 1093F, rotulados de forma correspondente como Subpacote D, Subpacote E, e Subpacote F.

[00792] A Figura 67F ilustra um algoritmo executando a operação de divisão ou “desmistura” 1101 começando com três subpacotes de comprimento igual 1093D, 1093E e 1093F resultantes da operação de análise anterior 1087 e remapeando os dados para criar novos subpacotes 1103A, 1103B e 1103C de comprimento diferente conforme detalhado na tabela abaixo. O propósito da operação de análise é quebrar um pacote longo em vários pedaços de tamanho menor ou de menor duração para armazenamento local ou para serializar os dados para transmissão de dados.

Subpacote de entrada N° do slot de entrada Subpacote de saída dividida N° do slot de saída dividida Dados contidos no slot
Subpacote D Slot 1 Subpacote G Slot 1 IA
Slot 2 Dados de lixo removidos
Slot 3 Dados de lixo removidos
Slot 4 Subpacote G Slot 2 1B
Slot 5 Dados de lixo removidos
Slot 6 Dados de lixo removidos
Subpacote E Slot 1 Subpacote G Slot 3 1C
Slot 2 Subpacote H Slot 1 2C
Slot 3 Subpacote J Slot 1 3C
Slot 4 Dados de lixo removidos
Slot 5 Subpacote H Slot 2 2D
Slot 6 Subpacote J Slot 2 3D
Subpacote F Slot 1 Subpacote G Slot 4 1E
Slot 2 Dados de lixo removidos
Slot 3 Subpacote J Slot 3 3E
Slot 4 Dados de lixo removidos
Slot 5 Subpacote H Slot 3 2F
Slot 6 Dados de lixo removidos

[00793] Conforme mostrado, o subpacote 1103A rotulado como

Subpacote G compreende 4 slots, em que o slot 1 é preenchido com o segmento de dados IA do slot 1 do subpacote D correspondente ao slot 1 do pacote longo 1091, o slot 2 é preenchida com o segmento de dados IB do slot 4 do subpacote D correspondente ao slot 4 do pacote longo 1091, o slot 3 é preenchido com o segmento de dados 1C do slot 1 do subpacote E correspondente ao slot 7 do pacote longo 1091 e o slot 4 é preenchido com o segmento de dados IE do slot 1 do subpacote E correspondente ao slot 13 do pacote longo 1091. Da mesma forma, o subpacote 1103B rotulado Subpacote

Petição 870170079583, de 19/10/2017, pág. 270/709

263/425

H compreende três slots, o primeiro contendo o segmento de dados 2C do 2o slot do Subpacote E, o segundo contendo o segmento de dados 2D do 5o slot do Subpacote E, e o terceiro contendo o segmento de dados 2F do 5o slot do Subpacote F. O Subpacote 1103C também compreende três slots. No slot 1, o segmento de dados 3C vem do slot 6 do Subpacote E. No slot 2, o segmento de dados 3D vem do slot 6 do Subpacote E. No slot 3 do Subpacote J, o segmento de dados 3E vem do slot 3 do Subpacote F.

[00794] Como tal, um algoritmo de divisão define (a) quantos subpacotes divididos haverá, (b) quantos slots haverá em cada subpacote dividido, (c) em que slot dos subpacotes divididos os dados do pacote longo irão (d) quais slots serão removidos porque contêm dados de lixo, e (e) se novos slots contendo dados de lixo são introduzidos, possivelmente para facilitar a geração de um subpacote de comprimento específico. Nos casos em que uma operação de divisão que segue uma operação de mistura, o número de subpacotes nos pacotes de divisão deve igualar o número de subpacotes nos pacotes antes de serem misturados, a menos que os dados de lixo sejam removidos ou inseridos.

[00795] Os papéis das operações de mistura e divisão descritas feitas de acordo com esta invenção podem ser adaptados para implementar o transporte de dados fragmentados através de qualquer rede com a ressalva de que todos os nós na rede sabem qual sequência de operações deve ser executada. Em transporte de rota única, como mostrado anteriormente na Figura 61B, os pacotes de dados 1055 e 1056 representam diferentes conversas ou comunicados de diferentes chamadores ou fontes. Uma vez mesclado, o pacote de dados longo, ou as versões analisadas, estão prontas para o transporte através da rede. Essa função pode ser considerada um nó de comunicação de múltiplas entradas e única saída ou MISO.

[00796] Os pacotes de dados originais são recuperados pela função inversa, um nó de comunicação de única entrada e múltiplas saídas ou SIMO,

Petição 870170079583, de 19/10/2017, pág. 271/709

264 / 425 executando a divisão. Se os pacotes de dados em comunicação de rota única chegarem ao seu destino final, os dados de pacotes longos são divididos pela última vez e o lixo é removido para reconstituir o pacote de dados original. Os dados misturados não precisam necessariamente ser os mesmos tipos de dados. Por exemplo, um chamador podería estar falando no telefone e enviando mensagens de texto simultaneamente, gerando ou recebendo simultaneamente dois fluxos de dados diferentes. Se, no entanto, os pacotes de dados divididos se destinam a continuar o roteamento adiante na rede em um estado não misturado, os dados de lixo são incluídos nos pacotes de dados para tomar a detecção de dados inutilizável.

[00797] No transporte de dados homogêneos, a segurança é obtida principalmente através de embaralhamento mostrado na Figura 64, ou através da combinação de embaralhamento e encriptação, conforme mostrado na Figura 66A. A combinação de mistura seguida de embaralhamento usada em ambos os exemplos é ainda mais elaborada na ilustração exemplificativa da Figura 67G onde a operação de mistura 1094 mistura os subpacotes de dados de entrada 1090A, 1090B e 1090C para formar o pacote de dados longo desembaralhado 1091. A operação de embaralhamento 926, então, nesse exemplo, executa um deslocamento de fase linear por um slot de dados para a direita, por exemplo, onde os dados IA no slot 1 do pacote desembaralhado se deslocam para o slot 2 no pacote embaralhado, os dados 1C no slot 7 se movem para o slot 8 no pacote embaralhado e assim por diante, para criar o pacote de dados longo embaralhado 1107.

[00798] A operação de análise 1087 corta então o pacote de dados longo embaralhado 1107 ao longo das linhas de corte 1092 após o 6o e o 12° slots para produzir subpacotes emitidos 1093G, 1093H, e 1093J. A consequência do deslocamento de fase não afeta apenas a posição dos dados nos subpacotes emitidos, mas realmente altera o conteúdo dos pacotes. Por exemplo, quando o segmento de dados 3D na posição de slot 12 no pacote de

Petição 870170079583, de 19/10/2017, pág. 272/709

265/425 dados longo desembaralhado 1107 se move para a posição 13 após o embaralhamento, a operação de análise 1087 localizada na linha de corte 1092 após o 12° slot, desloca naturalmente os dados do subpacote de dados 1093H para 1093J, como evidenciado por uma comparação do subpacote 1093H com sua nova sequência de segmentos de dados J-1C-2C-3C-J-2D (onde J indica dados de lixo) contra subpacote 1093E na Figura 67E com a sequência de segmentos de dados 1C-2C-3C-J-2D-3D.

[00799] A Figura 67H ilustra a combinação de uma mistura algorítmica, isto é, um mapeamento de dados de entrada de subpacotes para formar um pacote de dados longo, com um algoritmo de embaralhamento subsequente que pode ser reproduzido de forma idêntica, mesclando as operações de mistura e de embaralhamento em uma única etapa, apenas mudando o algoritmo de mapeamento. A operação de mistura e embaralhamento híbrido 1094A é idêntica ao algoritmo de mistura anterior, exceto que desloca os dados por uma posição para a direita no pacote de dados longo 1107 durante o mapeamento. Por exemplo, o segmento de dados IA no subpacote 1090A é mapeado no slot 2 do pacote de dados longo 1107 em vez de no slot 1, o segmento de dados 3D no subpacote 1090C é mapeado no slot 13 do pacote de dados longo 1107 em vez de no slot 12. Os subpacotes emitidos resultantes 1093G, 1093H e 1093J são idênticos à saída de subpacotes usando a sequência de mistura seguida de codificação mostrada na Figura 67G. Em essência, um algoritmo de mistura depois embaralhamento representa outro algoritmo de mistura. Como não há diferença na saída resultante, em todo o texto, essa descrição continuará a identificar operações separadas de mistura e embaralhamento, com o entendimento de que os dois processos numéricos podem ser mesclados. Da mesma forma, entende-se que o processo inverso de desembaralhamento e depois a divisão de um pacote de dados pode ser substituído por uma única operação combinada que realiza tanto desembaralhamento como divisão em uma única etapa.

Petição 870170079583, de 19/10/2017, pág. 273/709

266/425 [00800] No transporte de dados de rota única, os pacotes de dados não podem ter trajetos paralelos, mas devem, em vez disso, viajar de forma serial em um único trajeto entre os servidores de mídia ou entre o dispositivo de um cliente e o gateway da nuvem, ou seja, o transporte de dados na última milha. Antes que os subpacotes de dados possam ser enviados para a rede, eles devem ser etiquetados com um ou mais cabeçalhos para identificar o pacote para que o nó de comunicação alvo possa ser instruído sobre o que fazer com o pacote de entrada. Embora a formatação e as informações contidas nesses cabeçalhos sejam descritas em maior detalhe posteriormente na descrição, por razões de clareza, uma realização simplificada da etiquetagem de pacotes é mostrada na Figura 671. Como mostrado, uma série de pacotes de dados 1099A, 1099B, 1099C e 1099Z chegam em sequência no nó de comunicação. Cada pacote de dados inclui um cabeçalho tal como 1102A, e seus dados correspondentes, por exemplo, 1090A.

[00801] A medida que os pacotes de dados chegam ao nó, a operação 1600 separa o cabeçalho dos dados para processamento. Conforme mostrado para o primeiro pacote de entrada 1099A, o cabeçalho 1102A rotulado como Hdr A é separado do pacote de dados 1099A, depois é alimentado na operação 1602 de leitor de etiquetas que determina se o nó de comunicação recebeu quaisquer instruções sobre o pacote 1099A. Se não recebeu instruções relacionadas ao pacote 1099A, os dados correspondentes são descartados. Isso é mostrado, por exemplo, pelo subpacote 1092, rotulado subpacote Z, que contém dados das conversas 6, 7, 8, 9 não relacionados a nenhuma das instruções recebidas pelo nó de comunicação. Se, no entanto, o pacote de dados é “esperado”, ou seja, sua etiqueta corresponde a uma instrução previamente recebida pelo nó de comunicação de outro servidor, então os pacotes de dados reconhecidos, neste caso, os subpacotes 1090A, 1090B e 1090C, são enviados para operação de mistura 1089. O algoritmo apropriado previamente selecionado para os pacotes de dados de entrada é

Petição 870170079583, de 19/10/2017, pág. 274/709

267 / 425 então carregado da tabela de algoritmo de mistura 1050 para a operação de mistura 1089. Em outras palavras, o nó de comunicação foi previamente instruído que, quando receber os três pacotes identificados por Hdr A, Hdr B e Hdr C, respectivamente, deve misturar os três pacotes de acordo com um algoritmo de mistura particular na tabela 1050. Conforme observado acima, este algoritmo de mistura pode incluir uma operação de embaralhamento.

[00802] De acordo com esta descrição, a operação de mistura 1059 emite então o subpacote de dados 1093D, 1093E e 1093F em sequência, cada um dos quais é etiquetado com um novo cabeçalho de identificação, isto é, Hdr D, Hdr E e Hdr F aos pacotes de dados do produto 1099D, 1099E e 1099F prontos para transporte para o próximo nó de comunicação na rede. Em comunicações de rota única, esses pacotes de dados são enviados em série ao longo da mesma rota para o destino alvo. Embora o fluxograma represente como as etiquetas são usadas para identificar pacotes para mistura, o método de identificação de etiqueta é idêntico para executar operações específicas de embaralhamento e encriptação e suas funções inversas, desencriptação, desembaralhamento e divisão.

[00803] As operações de mistura e divisão podem ser aplicadas ao transporte de rotas múltiplas e em malha descritas a seguir, usando múltiplas operações de mistura e divisão de saída. As várias saídas representadas por setas voltadas para fora no símbolo de divisão SIMO 1101 na Figura67F podem ser usadas para direcionar pacotes de dados em uma rede em diferentes direções, trajetos e rotas. As instruções recebidas pelo nó de comunicação especificam a etiqueta a ser aplicada como um cabeçalho a cada um dos pacotes divididos, bem como a identidade do nó ao qual cada um dos pacotes divididos deve ser enviado. Os nós do destinatário também são instruídos a esperar os pacotes. Da mesma forma, a operação de mistura de múltiplas entradas e múltiplas saídas 1094 mostrada na Figura 67B pode ser aplicada a múltiplas rotas de comunicação. Conforme mostrado mais adiante

Petição 870170079583, de 19/10/2017, pág. 275/709

268/425 neste pedido, a mistura de pacotes de dados MISO e MIMO e a divisão de pacotes de dados SIMO representam elementos-chave na realização de roteamento de múltiplas rotas e em malha. Mesmo na ausência de embaralhamento e encriptação de pacotes, o roteamento de pacotes de dados de múltiplas rotas e em malha diminui consideravelmente o risco de interceptação significativa de dados por piratas cibernéticos, detecção de pacotes e ataques man-in-the-middle na rede porque nenhum nó de comunicação carrega a conversa inteira, ou recebe, ou transmite qualquer conjunto de dados na sua totalidade. Para fins ilustrativos, o número de subpacotes mostrados nas figuras descritas é apenas para fins ilustrativos. O número real de pacotes comunicados pode incluir dezenas, centenas ou mesmo milhares de subpacotes.

[00804] Roteamento de Pacotes Conforme ilustrado em todo o pedido até o momento, um único trajeto traz o fluxo serial de pacotes de dados usados na comunicação de rede baseada em comutação de pacotes, como a Internet. Embora esse trajeto possa variar ao longo do tempo, interceptar o fluxo de dados por detecção de pacotes, pelo menos por algum intervalo de tempo, proverá a um pirata cibernético pacotes de dados completos de informações de série coerentes. Sem o embaralhamento e a encriptação usados na comunicação SDNP descrita de acordo com esta invenção, qualquer sequência de pacotes de dados uma vez interceptada poderia ser facilmente interpretada em qualquer ataque man-in-the-middle, permitindo ataques cibernéticos efetivos e repetidos.

[00805] Essa comunicação de rota única é a base da comunicação na Internet, VoIP e OTT, e uma das razões pela qual a comunicação baseada na Internet hoje é muito insegura. Enquanto pacotes sucessivos enviados podem tomar rotas diferentes, perto dos nós de comunicação de origem e destino, a chance de que os pacotes sucessivos sigam a mesma rota e o trânsito através dos mesmos servidores se toma cada vez mais provável porque o roteamento

Petição 870170079583, de 19/10/2017, pág. 276/709

269/425 de pacotes na Internet é decidido pelos provedores de serviços que monopolizam uma geografia. Simplesmente rastreando o roteamento de um pacote em direção à sua fonte, então a detecção de pacotes perto da fonte, a chance de interceptar múltiplos pacotes da mesma conversa e fluxo de dados aumenta dramaticamente porque a comunicação é realizada apenas por um único provedor de serviços de Internet com base geográfica ou ISP.

[00806] Conforme ilustrado graficamente na Figura 68A, a comunicação de rota única 1110 representa o fluxo de dados em série 1111a partir de um nó de comunicação Nu,v para outro nó de comunicação, neste caso o nó de comunicação Nw,z · Embora o trajeto possa variar ao longo do tempo, em qualquer dada instância, cada pacote coerente é transmitido em série para a rede em trânsito para seu destino ao longo de um único trajeto. Por uma questão de notação, o nó de comunicação Nu,v designa um nó de comunicação hospedado no servidor “v” localizado na rede “u”, enquanto o nó de comunicação Nw,z designa um nó de comunicação hospedado no servidor “z” localizado na rede “w”. As redes “u” e “w” representam as nuvens possuídas operadas por diferentes ISPs. Embora o roteamento de pacotes de dados no meio do roteamento da Internet possa ser carregado por qualquer número de ISPs, como os pacotes de dados próximos ao seu destino, eles invariavelmente são transportados por um ISP e uma rede comuns, tomando mais fácil o rastreamento e detecção de pacotes de dados sucessivos compreendendo a mesma conversa. Esse ponto é exemplificado graficamente na Figura 68B onde a comunicação de trajeto único 1111 ocorre através de uma série de servidores 1118 representando uma única rede de comunicação de trajeto serial 1110. Como mostrado, a comunicação começa a partir do nó de comunicação No,o viajando sucessivamente através dos nós de comunicação No,i e No,2 todos na mesma rede numerada “0”, até chegar ao nó de comunicação N23, transportado por um ISP diferente pela rede 2. Depois disso, os dados são enviados para os nós finais, ambos na rede 1, isto é, nós de

Petição 870170079583, de 19/10/2017, pág. 277/709

270 / 425 comunicação N14 e Ni,f. Então, durante o trânsito, os dados de pacotes transmitidos pela primeira vez para a Internet permanecem no servidor 0 antes de ter uma chance de se espalhar para a rede de outro ISP. Do mesmo modo, à medida que o pacote de dados se aproxima do seu destino, a probabilidade de que os pacotes sucessivos viajem pelos mesmos nós aumenta porque todos eles estão localizados na rede ISP 1.

[00807] Em contraste nítido com a comunicação de pacotes em um único trajeto usada para comunicações OTT e VoIP da Internet, em uma modalidade de comunicação SDNP de acordo com esta invenção, o conteúdo dos pacotes de dados não é carregado em série por pacotes coerentes que contêm informações de uma fonte comum ou chamador, mas de forma fragmentada, misturando e remisturando dinamicamente conteúdo que emana de múltiplas fontes e chamadores, em que os dados aglomeram fragmentos incompletos de dados, conteúdo, voz, vídeo e arquivos de tipos de dados diferentes com enchimentos de dados inúteis. A vantagem da realização descrita de fragmentação e transporte de dados é que mesmo os pacotes de dados não encriptados e não embaralhados são quase impossíveis de interpretar porque representam a combinação de dados e tipos de dados não relacionados.

[00808] Como ilustrado na Figura 68A, a comunicação SDNP de pacotes de dados fragmentados não é serial, como no transporte de rota única 1110, mas em paralelo, usando transporte de múltiplas rotas 1112 ou transporte de “rota em malha” 1114. No transporte de múltiplas rotas 1112, uma matriz de dois ou mais nós de comunicação com comutação de pacotes Nu,v e Nw,z estabelece e transporta dados simultaneamente em múltiplas rotas 1113A, 1113B, 1113C, 1113D e 1113E. Embora cinco rotas sejam mostradas, o transporte pode ocorrer em apenas duas rotas e até uma dúzia ou mais, se assim for necessário. E importante enfatizar que esta realização de uma rede de comunicação não representa roteamento redundante simples comumente

Petição 870170079583, de 19/10/2017, pág. 278/709

271 /425 empregado pela Internet e redes com comutação de pacotes, ou seja, onde os mesmos dados podem ser enviados em qualquer trajeto ou mesmo em vários trajetos simultaneamente. Transmitir ou comunicar pacotes de dados coerentes e completos de forma redundante em vários canais, de fato, aumenta o risco de ser hackeado, porque oferece fontes múltiplas de dados idênticos para detectar, analisar e quebrar.

[00809] Em vez disso, na comunicação SDNP, a informação está fragmentada, por exemplo, com uma porção dos dados sendo enviados pelas rotas 1113A, 1113B e 1113D, sem dados enviados inicialmente entre as rotas 1113C e 1113E e, posteriormente, dados fragmentados divididos e combinados de forma diferente e enviados através das rotas 1113A, 1113C, e 1113E sem dados sendo enviados pelas rotas 1113B e 1113D. Um exemplo de transporte de múltiplas rotas 1112 é ilustrado na Figura 68C pela rede compreendendo uma matriz de servidores de comunicação 1118 arranjados para estabelecer múltiplos trajetos de dados entre os nós de comunicação que se comunicam No,o e Nf,f. Conforme mostrado, o transporte de múltiplos trajetos ocorre em quatro conjuntos de servidores interconectados que representam as redes 1 a 4. Um trajeto de dados, rota 1113A, compreende os nós de comunicação Νι,ι, Νι,2, N13, e N14. Um trajeto de dados paralelo, rota 1113B, compreende os nós de comunicação Ν2,ι, N2,2, N23, e N24. Da mesma forma, a rota de dados paralelos 1113C compreende os nós de comunicação interconectados Ns,i, Ns,2, N33, e N34 enquanto a rota 1113D compreende os nós de comunicação interconectados Ν4,ι, N4,2, N43, e N44.

[00810] No transporte de “rota em malha” 1114, ilustrado também na Figura 68D, a comunicação é enviada ao longo de múltiplas rotas de interação, incluindo as rotas 1113A, 1113B, 1113C, 1113D e 1113E mencionadas acima, bem como as conexões cruzadas 1115A a 1115E entre as rotas 1113A a 113D. Juntas, as conexões formam uma “malha”, pela qual os pacotes de dados podem percorrer qualquer combinação de rotas, e até mesmo

Petição 870170079583, de 19/10/2017, pág. 279/709

272 / 425 serem misturados ou recombinados dinamicamente com pacotes de dados enviados por outras rotas. No transporte em malha 1114 a rede compreende uma matriz de servidores de comunicação 1118 arranjados para estabelecer múltiplos trajetos de dados em malha entre os nós de comunicação que se comunicam No,o e Nf,f. Conforme mostrado, o transporte de múltiplos trajetos ocorre em servidores interconectados com trajetos de dados orientados horizontal e verticalmente. A rota orientada horizontalmente 1113A compreende os nós de comunicação Νι,ι, Ni,2, Ni,3, e Ni,4, a rota 1113B compreende os nós de comunicação Ν2,ι, N2,2, N23, e N24, a rota 1113C compreende os nós de comunicação interconectados N3,i, N3,2, N3,3, e N3,4 e a rota 1113D compreende os nós de comunicação interconectados N4J, N42, N43, e N44. A rota orientada verticalmente 1115A compreende os nós de comunicação Νι,ι, N2,i, N3,i, e N4,i, a rota 1115B compreende os nós de comunicação Νι,2, N2,2, N23, e N4,2, a rota 1115C compreende os nós de comunicação interconectados Νι,3, N23, N3,3, e N43 e a rota 1115D compreende os nós de comunicação interconectados Νι,4, N24, N3,4, e N44. A rede pode ainda ser aumentada por interconexões diagonais 1119, como mostrado na Figura 68E.

[00811] O transporte de múltiplas rotas pode ser combinado de várias maneiras com embaralhamento e encriptação. Um exemplo de transporte de múltiplas rotas sem embaralhamento é ilustrado na Figura 69, onde uma rede de servidores de comunicação 1118 transporta o pacote de dados 1055 do nó de comunicação No,o no tempo to para o nó de comunicação Nf,f no tempo tf. No transporte 1112, o nó de comunicação No,o executa a operação de divisão 1106 enviando segmentos de dados 1C e IE no pacote de dados 1125A na rota de dados 1113A, enviando o segmento de dados IB no pacote de dados 1125B na rota de dados 1113B, enviando o segmento de dados ID no pacote de dados 1125C na rota de dados 1113C e enviando segmentos de dados IA E IF no pacote de dados 1125C na rota de dados 1113D. Os subpacotes podem

Petição 870170079583, de 19/10/2017, pág. 280/709

273 / 425 compreender uma mistura de dados e subpacotes ou dados de lixo não relacionados. Como os subpacotes não são embaralhados, a sequência de segmentos de dados 1C e IE no pacote de dados 1125A permanece em ordem sequencial, mesmo que outros segmentos de dados possam ser inseridos entre ou antes ou depois deles. Por fim, no nó de comunicação Nf,f a operação de mistura 1089 reconstrói o pacote de dados original no tempo tf. Em todos os tempos tn entre o tempo to e o tempo tf, os conteúdos dos pacotes de dados 1125A a 1125D permanecem constantes.

[00812] Uma variante simples do transporte de múltiplas rotas mencionado acima sem embaralhamento é ilustrada na Figura 70, compreendendo o transporte de múltiplas rotas com embaralhamento estático, o que significa que o pacote de dados de entrada 1055 é embaralhado antes de ser dividido e entregue através de rotas múltiplas na rede. Especificamente, o nó de comunicação No,o executa a operação de embaralhamento e divisão 1071 em vez de apenas executar a operação de divisão 1106 mostrada na Figura 69. Os pacotes de dados misturados embaralhados resultantes 1126A a 1126D, como no exemplo anterior, são estáticos e o invariante de tempo permanece inalterado em todos os tempos tn enquanto eles atravessam de forma independente a rede nos trajetos 1113A a 1113D, respectivamente, até chegarem ao nó de comunicação final Nf,f onde são mesclados novamente e desembaralhados usando a operação de desembaralhamento e mistura 1070 para recuperar o pacote de dados original 1055. Em comparação ao exemplo anterior da Figura 69, a única grande diferença nos pacotes de dados 1126A1126D da Figura 70 é que os pacotes são embaralhados, ou seja, os segmentos de dados que eles contêm não estão na ordem sequencial original. Por exemplo, no pacote de dados 1126A, o segmento de dados 1E ocorre antes de IB e no pacote de dados 1126D, o segmento de dados 1D ocorre antes de IA. Uma desvantagem da comunicação estática de pacotes é que, embora não esteja sujeita a simples detecção de pacotes, permite que um

Petição 870170079583, de 19/10/2017, pág. 281/709

274 / 425 pirata cibernético não mude os dados para análise. No entanto, como os dados presentes em qualquer pacote de dados que percorrem qualquer rota são incompletos, fragmentados, embaralhados e misturados com outras fontes de dados e conversas não relacionadas, ainda é significativamente superior à comunicação OTT pela Internet.

[00813] Uma melhoria para o embaralhamento estático é empregar embaralhamento dinâmico mostrado na Figura 71A onde a repetição de embaralhamento de pacotes, ou seja, a operação de reembaralhamento DE 1017, altera a ordem do segmento de dados no pacote de dados à medida que um pacote de dados atravessa a rede, o que significa que uma comparação de qualquer pacote de dados que atravessa uma determinada rota varia ao longo do tempo. Por exemplo, no que se refere ao pacote de dados que atravessa a rota 1113A, no pacote de dados 1126A no tempo t3 imediatamente após a operação de reembaralhamento DE 1017 no nó de comunicação N13, o segmento de dados 1E está localizado no segundo espaço de tempo e precede o segmento de dados 1B localizado no quarto espaço de tempo. No tempo t4 após o nó de comunicação N14 executar a operação de reembaralhamento DE 1017, o pacote de dados 1127A mudou com o segmento de dados 1B localizado antes de 1E localizado sucessivamente nos espaços de tempo três e quatro. Comparando o pacote de dados 1126D a 1127D, a posição dos segmentos de dados ID e IA muda, mas a ordem permanece inalterada. Esse método emprega a técnica de embaralhamento dinâmico de cada segmento de dados em um pacote de dados, não apenas os dados de uma fonte ou conversa específica. E possível variar o comprimento de um pacote imediatamente depois de ser desembaralhado e antes de ser novamente embaralhado, por exemplo, inserindo ou excluindo dados de lixo. No exemplo mostrado, no entanto, os comprimentos do pacote permanecem fixos, apenas com a sequência mudando.

[00814] Como mostrado, o primeiro nó de comunicação No,o executa a

Petição 870170079583, de 19/10/2017, pág. 282/709

275 / 425 operação de embaralhamento e divisão 1071, o último nó de comunicação Nf,f executa a operação de mistura e desembaralhamento 1070, e todos os nós de comunicação intermédios executam a operação de reembaralhamento DE 1017. Em cada caso, a operação de desembaralhamento depende do tempo ou do estado do pacote de entrada e a operação de embaralhamento utiliza o tempo ou o estado do pacote de dados de saída. No transporte de múltiplas rotas em paralelo, a divisão ocorre apenas uma vez no nó de comunicação No,o e a mistura ocorre apenas uma vez, no final do transporte no nó de comunicação Nf,f. Metodologicamente, essa sequência pode ser categorizada como “embaralhamento depois divisão”. Na modalidade do embaralhamento dinâmico, como mostrado na Figura 71A, aqui conhecido como embaralhamento sequencial ou linear, não importa qual a sequência, as operações anteriores devem ser desfeitas na ordem inversa em que ocorreram, pelo que a reordenação de cada localização de segmento de dados em um pacote de dados ocorre algoritmicamente sem considerar qual é o conteúdo ou de onde veio. Desta maneira, os primeiros nós de comunicação após a divisão, nomeadamente os nós de comunicação Νι,ι, N2,i, Ns,i, e 44,i executam todos a mesma operação de desembaralhamento para desfazer o impacto do embaralhamento original da operação de embaralhamento depois divisão 1071, retomando cada segmento de dados que contém dados para a sua localização original antes do reembaralhamento. No processo de divisão, a localização de um pacote permanece na mesma posição onde foi localizado originalmente com os slots não usados preenchidos com dados de lixo. Por exemplo, se o segmento de dados IB for movido para a quinta posição no pacote por meio da operação de embaralhamento e divisão 1118, após a divisão, o pacote contendo o segmento de dados 1B o reterá na quinta posição. Desembaralhar o pacote irá mover o segmento de dados 1B de volta para o segundo slot onde ele pertence, mesmo que todos os outros slots estejam preenchidos com dados de lixo. O deslocamento de dados de lixo é

Petição 870170079583, de 19/10/2017, pág. 283/709

276 / 425 irrelevante uma vez que os pacotes de dados de lixo serão removidos, ou seja, “limpos” mais tarde, no processo de recuperação de dados, de qualquer maneira. Uma vez que a posição de um segmento de dados específico é restaurada para o seu slot original por uma operação de desembaralhamento, ela pode ser embaralhada novamente, movendo-a para uma nova posição. A combinação de restaurar um segmento de dados para a sua posição original e, em seguida, embaralhar de novo para uma nova posição, significa que o processo de “reembaralhamento” compreende o desembaralhamento, em seguida, o embaralhamento, daí o nome de reembaralhamento DE 1017.

[00815] Uma descrição simplificada do método de “embaralhamento linear depois divisão” previamente detalhado mostrado na Figura 71B é contrastada com outras duas modalidades alternativas da invenção descrita, aqui chamadas de “embaralhamento aninhado depois divisão” e “divisão linear depois embaralhamento”. No método de embaralhamento linear depois divisão, embaralhar e desembaralhar sucessivamente e repetidamente cada pacote de dados atualiza a segurança do pacote de dados. Como tal, o embaralhamento executado primeiro na operação de embaralhamento e divisão 1071 deve ser desfeito pela operação de reembaralhamento DE 1017 separadamente em cada um dos trajetos de dados, onde os colchetes representam simbolicamente vários trajetos ou rotas paralelas, o que significa que o tempo, estado ou semente numérica usado para selecionar e executar a operação de embaralhamento pré-divisão na operação de embaralhamento e divisão 1071 é passada para o primeiro nó de comunicação em cada rota de comunicação para que o desembaralhamento na operação de reembaralhamento DE 1017 possa ser executado. Posteriormente, cada rota separadamente embaralha e desembaralha os pacotes de dados que atravessam essa rota, onde a operação de reembaralhamento DE 1017 sempre emprega o tempo, o estado ou a semente numérica usada para executar o último embaralhamento, depois usa seu tempo ou estado atual para executar o novo

Petição 870170079583, de 19/10/2017, pág. 284/709

277 / 425 embaralhamento. Na última etapa, a operação de mistura e desembaralhamento 1070, os componentes embaralhados são novamente remontados de forma embaralhada e, finalmente, desembaralhadosusando o estado ou o tempo em que foram embaralhados pela última vez para recuperar os dados originais.

[00816] No exemplo de “embaralhamento aninhado e divisão”, também mostrado na Figura 71B, a operação de embaralhamento depois divisão 1071 primeiro embaralha o pacote de dados em um tempo ou estado inicial e, depois de dividir os dados em múltiplas rotas, cada trajeto de dados executa independentemente uma segunda operação de embaralhamento 926 sem relação com a primeira, sem nunca desfazer a primeira operação de embaralhamento. Uma vez que uma operação de embaralhamento é realizada em um pacote de dados já embaralhado, o embaralhamento pode ser considerado como “aninhado”, ou seja, um embaralhamento dentro do outro. No vernáculo de programação para objetos aninhados ou código de software, o primeiro embaralhamento, tal como realizado pela operação de embaralhamento e divisão 1071, compreende um circuito de embaralhamento “externo” enquanto a segunda e todas as operações sucessivas de reembaralhamento DE 1017 representam um circuito de embaralhamento interno. Isso significa que os dados que atravessam a rede foram embaralhados duas vezes e devem ser desembaralhados duas vezes para recuperar os dados originais. A etapa final do circuito de embaralhamento interno compreende a operação de desembaralhamento 928, restaurando os pacotes de dados de cada rota à mesma condição, isto é, a mesma sequência de segmento de dados, como imediatamente após a divisão do pacote ter ocorrido pela primeira vez. Os pacotes de dados são então remontados em um único pacote de dados e desembaralhados usando a operação de mistura e desembaralhamento 1070.

[00817] O mesmo conceito de operações aninhadas pode ser usado na

Petição 870170079583, de 19/10/2017, pág. 285/709

278 / 425 realização de operações de divisão e mistura aninhadas, conforme mostrado na Figura 71C. Dentro do aplicativo SDNP 1335 de um cliente, várias fontes de dados, incluindo arquivos de vídeo, texto, voz e dados podem ser misturadas, serializadas, inseridas com dados de lixo, embaralhadas depois encriptadas por operação MSE 1075. As credenciais de segurança, incluindo a chave 1030W e a semente 929W, podem ser trocadas do telefone celular do cliente emissor 32 diretamente para o tablet cliente receptor 33, sem usar os nós de mídia que transportam o conteúdo. Por exemplo, essas informações podem ser enviadas ao receptor usando uma rede separada de “servidor de sinalização” (descrita mais tarde) ou, altemativamente, uma vez que as sementes e as chaves não contêm informações úteis para pessoas de fora, essas informações podem até ser encaminhadas para o cliente receptor pela Internet. Essa primeira operação que ocorre no dispositivo ou aplicativo do cliente representa o início do circuito externo usado para realizar a segurança do cliente independente da rede SDNP.

[00818] Uma vez misturado, com lixo, embaralhado e encriptado, o texto cifrado ilegível do cliente 1080W é enviado para o servidor de gateway SDNP No,o onde é mais uma vez processado usando diferentes segredos compartilhados com diferentes algoritmos, estados e credenciais de segurança específicas de rede, como a semente 929U e a chave 1030U em preparação para o transporte através da nuvem SDNP. Esse circuito interno facilita a segurança do servidor da nuvem e é completamente independente do circuito de segurança do cliente. Como parte da operação SSE 1140 do gateway para pacotes de dados de entrada, o pacote de dados pode ser embaralhado uma segunda vez, dividido em subpacotes diferentes e encriptado em texto cifrado 1080U e 1080V para transporte de múltiplas rotas ou em malha.

[00819] Eventualmente, os múltiplos subpacotes chegam ao gateway de destino Nf,f onde eles são processados pela operação DMU 1141 para desfazer o efeito da operação de divisão do gateway inicial, isto é, a operação

Petição 870170079583, de 19/10/2017, pág. 286/709

279 / 425

DMU 1141 desfaz os efeitos da operação SSE 1140 completando a função do circuito de segurança interna. Como tal, o gateway Nf,f desfaz todas as medidas de segurança relacionadas à rede implementadas pelo gateway de entrada No,o e restaura o arquivo original, neste caso o texto cifrado do cliente

1080W, à mesma condição que quando entrou na nuvem SDNP.

[00820] Mas, como este pacote de dados já estava misturado, embaralhado e encriptado, o pacote de dados que compreende o texto cifrado 1080W que sai do gateway SDNP e que é enviado para o cliente receptor ainda está encriptado e não interpretável por qualquer pessoa, exceto o aplicativo 1335 do cliente receptor. O texto cifrado restaurado uma vez entregue ao cliente é então desencriptado e desembaralhado pela operação DUS 1076 de acordo com o estado do cliente emissor 990 quando foi criado no tempo to e finalmente dividido para recuperar várias fontes de componentes de dados, incluindo arquivos de vídeo, texto, voz e dados, completando o circuito de segurança externo.

[00821] Então, para impedir a subversão de rede, ou seja, quando um criminoso cibernético que se apresenta como um operador de rede SDNP tenta derrotar a segurança SDNP de “dentro” da rede, as credenciais de segurança do circuito externo, ou seja, segredos compartilhados, sementes, chaves, zonas de segurança, etc. são intencionalmente feitas diferente do circuito de segurança interno.

[00822] Em outra modalidade desta invenção também mostrada na Figura 71B, no processo de “divisão linear depois embaralhamento” os dados são primeiro divididos, depois separadamente embaralhados em cada rota de dados. A operação de divisão de dados 1057 é seguida por uma operação de embaralhamento independente 926 realizada e executada em uma base rota por rota. Uma vez embaralhados, os pacotes de dados que atravessam cada rota são sucessivamente reembaralhados pelas operações de reembaralhamento DE 1017, onde o pacote de entrada é desembaralhado o

Petição 870170079583, de 19/10/2017, pág. 287/709

280/425 usando as mesmas sementes de tempo, estado ou numéricas usadas pela operação de embaralhamento 926 para criá-lo. Posteriormente, cada rota separadamente embaralha e desembaralha os pacotes de dados que atravessam essa rota, onde a operação de reembaralhamento DE 1017 sempre emprega o tempo, o estado ou a semente numérica usada para executar o último embaralhamento, depois usa seu tempo ou estado atual para executar o novo embaralhamento. A etapa final compreende a operação de desembaralhamento 928, restaurando os pacotes de dados de cada rota à mesma condição, isto é, a mesma sequência de segmento de dados, como imediatamente após a divisão do pacote ter ocorrido pela primeira vez. Os pacotes de dados são então remontados em um único pacote de dados desembaralhados usando a operação de mistura 1061.

[00823] Independentemente da sequência de mistura e embaralhamento empregada, os pacotes de dados processados também podem ser submetidos à encriptação estática ou dinâmica para facilitar um grau adicional de segurança. Um exemplo dessa combinação é mostrado na Figura 72 compreendendo um método descrito como “embaralhamento estático depois divisão e encriptação dinâmica”, que compreende as seguintes etapas:

1. Começar com texto simples desembaralhado de entrada no tempo to

2. Embaralhar texto simples desembaralhado 1055 usando embaralhamento estático de pacotes 926 no tempo ti

3. Dividir o texto simples embaralhado 1130 em múltiplos pacotes de dados divididos 1131 A, 1133A e outros usando a operação de divisão 1106 no tempo t2

4. Direcionar os pacotes de dados divididos 1131 A, 1133A e outros em rotas paralelas não sobrepostas múltiplas diferentes no tempo t3 (observe que apenas duas dessas rotas paralelas são mostradas em detalhes na Figura 72)

Petição 870170079583, de 19/10/2017, pág. 288/709

281 /425

5. Encriptar independentemente cada pacote de dados 1131 A, 1133A e outros no tempo U usando encriptação 1026 incluindo chaves de encriptação e sementes numéricas correspondentes ao estado 994, resultando em texto cifrado 1132A, 1134A e outros

6. Desencriptar independentemente cada pacote de dados 1132A, 1134A e outros com informações do estado 994, incluindo segredos compartilhados, chaves, sementes numéricas, etc. usando desencriptação 1032 resultando em texto simples não encriptado 1131B, 1133B e outros

7. Reencriptar independentemente texto simples não encriptado 1131B, 1133B e outros usando encriptação no tempo tô usando chaves de encriptação e sementes numéricas correspondentes ao estado 996 resultando em texto cifrado 1132B, 1134B e outros

8. Desencriptar independentemente cada pacote de dados 1132B, 1134B e outros com informações do estado 996, incluindo segredos compartilhados, chaves, sementes numéricas, etc. usando desencriptação 1032 resultando em texto simples não encriptado 1131C, 1133C e outros

9. Misturar o texto simples não encriptado 1131C, 1133C e outros no tempo t? usando a operação de mistura 1089 para produzir texto simples embaralhado 1130

10. Desembaralhar texto simples embaralhado 1130 no tempo tg usando o estado 991 correspondente ao tempo ti quando o embaralhamento ocorreu pela primeira vez para recuperar o texto simples desembaralhado original 1055.

[00824] No exemplo mostrado, o processamento inicial de pacotes de dados compreende a aplicação sequencial de embaralhamento, divisão e encriptação mostrada como operação 1140. A operação final compreende desencriptação, mistura e desencriptação mostrada pela operação 1141. Todas as etapas intermediárias incluem reencriptação, que em si compreende desencriptação e encriptação.

Petição 870170079583, de 19/10/2017, pág. 289/709

282 / 425 [00825] Um exemplo do uso deste método no transporte de múltiplas rotas é ilustrado na Figura 73 onde o nó de comunicação No,o executa operação de embaralhamento, divisão, encriptação 1140A e o nó de comunicação Nf,f executa a operação de desencriptação, mistura e desembaralhamento 1141 A, enquanto todos os nós intermediários executam a operação de reencriptação 1077. No transporte de múltiplas rotas de acordo com esta invenção, são possíveis várias combinações de embaralhamento estático e dinâmico e encriptação estática e dinâmica.

[00826] Como uma opção ao embaralhamento, à divisão e à encriptação, em uma modalidade alternativa desta invenção, os pacotes de dados podem ser divididos, em seguida, embaralhados e encriptados usando a operação de divisão, embaralhamento e encriptação 1140B mostrada na Figura 74. Nesse método, o pacote de dados de entrada é dividido pela primeira vez na operação 1106. Subsequentemente, os pacotes de dados em cada rota são independentemente embaralhados na operação 926 e encriptados na operação 1026. Os pacotes de dados resultantes podem, em seguida, ser repetidamente não encriptados, em seguida, reencriptados usando a operação de reencriptação 1077 ou podem não ser encriptados, desembaralhados, reembaralhados e reencriptados usando a operação de reempacotamento DUSE 1045.

[00827] Em contraste com o roteamento em malha descrito abaixo, no transporte de múltiplas rotas, como exemplificado na Figura 69 a Figura 73, cada pacote de dados que atravessa a rede é processado apenas uma vez por um determinado nó de comunicação e nenhum nó de comunicação processa mais de um pacote de dados que transporta dados relacionados ou conversa comum, ou seja, as rotas de dados 1113 A, 1113B, 111 3C e 111 3D são separadas, distintas e não sobrepostas.

[00828] Roteamento em Malha Voltando novamente à Figura 68A, o roteamento de pacotes em malha e o transporte aqui descritos são semelhantes

Petição 870170079583, de 19/10/2017, pág. 290/709

283/425 ao transporte de de múltiplas rotas paralelo, exceto que os pacotes de dados que atravessam a rede em trajetos diferentes podem cruzar os trajetos nos mesmos servidores. No roteamento em malha estático, conforme descrito aqui, esses pacotes de dados passam por um servidor comum sem interagir, como se a outra conversa ou dados de comunicação nem existissem. No roteamento em malha dinâmico, no entanto, ao entrar em um nó de comunicação, os pacotes de dados podem interagir com os outros pacotes de dados simultaneamente presentes no mesmo servidor.

[00829] Usando o método de divisão e mistura previamente descrito, os grupos de segmentos de dados podem ser separados ou removidos de um pacote de dados, combinados ou mesclados em outro pacote de dados e enviados em uma trajetória para um destino diferente do de onde vieram. O roteamento em malha de acordo com esta invenção pode utilizar pacotes de dados de comprimento variável ou comprimento fixo. Em pacotes de comprimento variável, o número de segmentos de dados que compõem um pacote de dados pode variar com base na quantidade de tráfego que atravessa um determinado nó de comunicação. No transporte em malha de comprimento fixo, o número de segmentos de dados usados para constituir um pacote de dados completo é fixado em algum número constante ou, altemativamente, em algum número de segmentos de dados ajustados em incrementos de número inteiro quantificados.

[00830] A principal diferença entre o uso de pacotes de dados de comprimento variável e fixo é o uso de dados de lixo como enchimento de pacotes. Em pacotes de dados de comprimento variável, o uso de dados de lixo é puramente opcional, principalmente com base em considerações de segurança ou para ocupar trajetos não usados para monitorar atrasos de propagação de rede. O uso de dados de lixo em pacotes de dados de comprimento fixo é obrigatório porque não há como garantir que o número adequado de segmentos de dados esteja disponível para preencher os pacotes

Petição 870170079583, de 19/10/2017, pág. 291/709

284 / 425 que partem do nó de comunicação. Como tal, os dados de lixo são necessariamente usados constante e continuamente como enchimento de pacotes para garantir que cada pacote de dados que sai do servidor seja preenchido até o comprimento especificado antes de ser enviado por toda a rede.

[00831] Um exemplo de transporte de dados em malha estático através da rede de comunicação 1112 é ilustrado na Figura 75, onde o pacote de dados 1055 é dividido pelo nó de comunicação No,o no tempo to em quatro pacotes de comprimento variável, especificamente o pacote de dados 1128A compreendendo o segmento de dados 1F, o pacote de dados 1128B compreendendo o segmento de dados 1C, o pacote de dados 1128C compreendendo os segmentos de dados IA e 1D, e o pacote de dados 1128D compreendendo os segmentos de dados IB e 1E. Os segmentos de dados mostrados podem ser combinados com outros segmentos de dados de outros pacotes de dados e conversas, também de comprimento variável. Os segmentos de dados de outras conversas foram intencionalmente excluídos da ilustração por motivos de clareza.

[00832] Durante o transporte estático, o conteúdo do pacote de dados, ou seja, os segmentos de dados que ele contém, permanece inalterado à medida que atravessa a rede. Por exemplo, o pacote de dados 1128A, que compreende o segmento de dados 1F, atravessa os nós de comunicação em sequência a partir do nó de comunicação No,o primeiro para o nó de comunicação Νι,ι depois para os nós de comunicação N2,i, Ns,2, N33, N43, e N44, antes de ser finalmente remontado com os pacotes 1128B, 1128C e 1128D no nó de comunicação final Nf,f para recriar o pacote de dados 1055 no tempo tf. De forma semelhante, o pacote de dados 1128C, que compreende os segmentos de dados IA e 1D, atravessa os nós de comunicação em sequência a partir do nó de comunicação No,o primeiro para o nó de comunicação Ns,i depois para o nó de comunicação N23, e o o nó de comunicação N14, antes de

Petição 870170079583, de 19/10/2017, pág. 292/709

285/425 ser finalmente remontado com os pacotes 1128A, 1128B e 1128D no nó de comunicação final Nf,f no tempo tf. Durante o transporte em malha estático, múltiplos pacotes de dados passam por servidores comuns sem mistura ou interação. Por exemplo, os pacotes de dados 1128A e 1128B ambos passam através do nó de comunicação N2,i, os pacotes de dados 1128B e 1128C ambos passam através do nó de comunicação N23, e os pacotes de dados 1128A e 1128D ambos passam através do nó de comunicação N33 sem se perturbar, trocar conteúdo ou trocar segmentos de dados.

[00833] Uma vez que os trajetos de dados podem ter diferentes comprimentos e apresentar diferentes atrasos de propagação, alguns pacotes de dados podem chegar ao nó de comunicação final Nf,f antes de outros. Em tais casos, de acordo com esta invenção, os pacotes de dados devem ser mantidos temporariamente no nó de comunicação Nff até que os outros pacotes de dados relacionados cheguem. E embora o desenho mostre que a montagem e recuperação final do pacote de dados original 1055 ocorre no nó de comunicação Nff , na prática, a remontagem final do pacote, ou seja, a mistura, pode ocorrer em um dispositivo, como um desktop, notebook, telefone celular, tablet, conversor digital, automóvel, geladeira ou outro dispositivo de hardware conectado à rede. Em outras palavras, no que se refere ao transporte em malha, não existe distinção entre um nó de comunicação e um dispositivo conectado a um nó de comunicação, isto é, um nó de comunicação Nff podería ser considerado um computador desktop em vez de ser um verdadeiro servidor de alta capacidade. A conexão de um dispositivo com a nuvem SDNP descrita, isto é, a conexão da última milha, é discutida mais detalhadamente mais adiante neste pedido.

[00834] O roteamento estático mencionado acima pode ser mesclado com qualquer um dos métodos SDNP mencionados acima, conforme descrito, incluindo embaralhamento, encriptação ou combinações dos mesmos. Por exemplo, na Figura 76, o roteamento em malha estático de comprimento

Petição 870170079583, de 19/10/2017, pág. 293/709

286/425 variável é combinado com embaralhamento estático. Como mostrado, no tempo ti o pacote de dados desembaralhado 1055 é convertido em pacote de dados de texto simples embaralhado 11, que é então dividido pelo nó de comunicação No,o e então os pacotes divididos misturados com dados de lixo são enviados através da rede 1112. O roteamento é semelhante ao exemplo anterior, exceto que os segmentos de dados são intencionalmente desordenados e misturados com segmentos de dados de lixo antes do roteamento. Por exemplo, o pacote de dados 1132C que compreende os segmentos de dados ID e IA separados por um pacote de lixo intermédio atravessa nós de comunicação em sequência a partir do nó de comunicação No,o primeiro para o nó de comunicação Ns,i depois para os nós de comunicação N23, Ns,2, e N14, antes de ser finalmente remontado com os pacotes 1128 A, 1128B e 1128D no nó de comunicação final Nf,f para recriar o pacote de dados 1055 no tempo tf. De modo similar, o pacote de dados 1132D que compreende os pacotes de dados IE e 1B em ordem inversa separados por um pacote de lixo intermédio atravessa nós de comunicação em sequência a partir do nó de comunicação No,o primeiro para o nó de comunicação N4,i depois para os nós de comunicação N42, N33, e N24, antes de ser finalmente remontado com os pacotes 1128A, 1128B e 1128C no nó de comunicação final Nf,f no tempo tf. Neste nó final, durante a mistura, é realizada uma operação de limpeza, removendo dados de lixo para produzir dados embaralhados originais 1130. Após desembaralhar, os dados originais 1055 são recuperados.

[00835] Para implementar o transporte em malha dinâmico de acordo com a invenção aqui descrita, os pacotes devem ser processados para mudar seu conteúdo e direção dentro de cada nó de comunicação que processa um pacote. Esse processo envolve mesclar pacotes de dados de entrada em um único pacote de dados longo ou, altemativamente, utilizar um buffer de dados contendo os mesmos subpacotes como se o pacote de dados longo fosse

Petição 870170079583, de 19/10/2017, pág. 294/709

287 / 425 criado, depois dividir esses pacotes em combinações diferentes e enviar esses pacotes para destinos diferentes. O processo pode empregar pacotes de comprimento variável ou fixo como descrito anteriormente. A Figura 77A mostra elementos de uma rede de comunicação SDNP incluindo os nós de comunicação Na,b, Na,d, Na,f, e Na,h, todos na rede “A” enviando pacotes de dados de comprimento variável correspondentes 1128B, 1128D, 1128F e 1128H respectivamente para o nó de comunicação Naj que executa a operação de mistura 1089, montando os pacotes em pacotes de dados curtos ou longos 1055. O pacote 1055 é então dividido, usando a operação de divisão 1106, no nó de comunicação Naj para criar novos dados pacotes de dados de comprimento variável 1135N, 1135Q e 1135S são enviados para os nós de comunicação Na,n, Na,q e Na,s respectivamente. Nenhum dado ou dado de lixo 1135V é enviado para o nó de comunicação Na,v. Em cada caso, o comprimento dos pacotes de entrada é variável e os pacotes podem conter dados de lixo ou dados de outras comunicações, conversas ou comunicados não mostrados. Como mostrado, a combinação da operação de mistura 1089 e a operação de divisão 1106 é realizada pelo nó de comunicação Naj para facilitar o roteamento em malha dinâmico utilizando a operação de mistura e divisão de dados 1148. De uma maneira explicada abaixo, os pacotes recémdivididos 1135N, 1135Q, 1135S e 1135V (presumindo que o último contém dados de lixo) e seu roteamento são determinados por instruções dinâmicas enviadas ao nó de comunicação Naj pela rede SDNP ou usando um algoritmo ou conjunto de instruções predefinido na ausência de tais sinais de comando e controle de entrada.

[00836] Para processar os pacotes de entrada, ou seja, misturá-los e, em seguida, dividi-los em novos pacotes de diferentes combinações, o nó Naj deve receber instruções antes que os dados cheguem dizendo ao nó como identificar os pacotes de dados a serem processados e o que fazer com eles. Essas instruções podem incluir algoritmos fixos armazenados localmente

Petição 870170079583, de 19/10/2017, pág. 295/709

288/425 como um segredo compartilhado, ou seja, um algoritmo ou conjunto de instruções predefinido, ou a sequência pode ser definida explicitamente em uma instrução “dinâmica” de comando e controle enviada ao nó de antemão, dos dados, idealmente de outro servidor que controla o roteamento, mas não em um servidor que transporta dados. Se as instruções sobre o que fazer para os dados de entrada estão incorporadas no próprio fluxo de dados, ou seja, parte da mídia ou conteúdo, o encaminhamento é aqui chamado de comunicação de “canal único”. Se o roteamento de pacotes de dados for decidido por outro servidor e comunicado ao servidor de mídia, o roteamento de dados é chamado de uma comunicação de “canal duplo” (ou possivelmente canal triplo). Os detalhes operacionais da comunicação de canal único/duplo/triplo são descritos em maior detalhe posteriormente no pedido.

[00837] Independentemente de como as instruções são entregues, o nó de mídia deve reconhecer os pacotes de dados de entrada para saber as instruções que pertencem a um pacote de dados específico. Essa informação de identificação ou “etiqueta” funciona como um código postal ou um código de barra de roteamento de pacotes de mensageiro para identificar os pacotes de interesse. Os pacotes de dados de entrada 1128B, 1128D, 1128F e 1128H são mostrados na Figura 77A, no entanto, representam apenas o conteúdo de áudio ou texto do pacote, e não as etiquetas de identificação. O processo de usar dados etiquetados presentes dentro de um cabeçalho de pacote para identificar cada pacote de dados específico e para determinar como os pacotes de dados de entrada devem ser misturados foi descrito anteriormente para a Figura 671. Exemplos específicos de informações de etiquetas e roteamento contidas nos pacotes de dados são discutidos mais adiante no pedido. Uma vez que o nó Naj foi informado quais pacotes de dados procurar e qual algoritmo usar na operação de mistura 1089 e operação de divisão 1106, os dados podem ser processados.

[00838] O pacote de dados de comprimento fixo equivalente à mesma

Petição 870170079583, de 19/10/2017, pág. 296/709

289/425 operação é mostrado na Figura 77B, onde os nós de comunicação Na,b, Na,d, Na,f, e Na,h, todos na rede “A” enviam pacotes de dados de comprimento fixo correspondentes 1150B, 1150D, 1150F e 1150H, respectivamente, para o nó de comunicação Naj que, por sua vez, executa a operação de mistura e divisão 1148 para criar novos pacotes de dados de comprimento fixo 1151N, 1151Q e 1151S, enviados para os nós de comunicação Na,n, Na,q e Na,s respectivamente. Nenhum dado ou dado de lixo 115IV é enviado para o nó de comunicação Na,v. Em cada caso, o comprimento dos pacotes de entrada é fixo e necessariamente contém enchimentos de dados de lixo ou dados de outra conversa de comunicados não mostrados para manter pacotes de dados de comprimentos fixos, isto é, contendo um número prescrito de segmentos de dados.

[00839] A interconexão de servidores, conforme descrito no protocolo da Camada 3 de rede, compreende uma infinidade de conexões, cada saída de nó de comunicação conectada à entrada de outro nó de comunicação. Por exemplo, como mostrado na Figura 77C, as saídas do nó de comunicação Na,b que executa operação de mistura e divisão 1149B estão conectadas às entradas dos nós de comunicação Naj, Na,q, Na,v, e Na,f. As saídas do nó de comunicação Na,q que executa operação de mistura e divisão 1149Q estão conectadas às entradas dos nós de comunicação Na,b, Naj e Na,f e outro nó de comunicação não mostrado na ilustração. De modo similar, as saídas do nó de comunicação Na,f que executa operação de mistura e divisão 1149F estão conectadas às entradas dos nós de comunicação Na,q, Naj e Na,v e outro nó de comunicação não mostrado na ilustração; as saídas do nó de comunicação Na,j, que executa operação de mistura e divisão 1149J, estão conectadas às entradas dos nós de comunicação Na,q, e Na,v junto com outros nós de comunicação não mostrados na ilustração; e as saídas do nó de comunicação Na,v que executa operação de mistura e divisão 1149V estão conectadas às entradas dos nós de comunicação Na,f, e outros nós de comunicação não

Petição 870170079583, de 19/10/2017, pág. 297/709

290/425 mostrados na ilustração.

[00840] Uma vez que as conexões de saída para entrada são descrições de rede e não apenas conexões ou circuitos de camada PHY 1, essas conexões de rede entre dispositivos podem ser estabelecidas ou dissolvidas em uma base ad hoc para qualquer dispositivo que tenha uma conexão PHY de Camada 1 e um enlace de dados de Camada 2 para a rede ou nuvem mencionada acima. Além disso, uma vez que as conexões representam possíveis trajetos de comunicação de rede e circuitos elétricos permanentes, não fixos, o fato de que a saída do nó de comunicação Na,b está conectada à entrada do nó de comunicação Na,q e a saída do nó de comunicação Na,q está conectada à entrada do nó de comunicação Na,b não cria realimentação ou uma condição de corrida como seria em circuitos elétricos.

[00841] De fato, qualquer computador conectado eletricamente à rede pode ser adicionado ou removido como um nó de comunicação dinamicamente e de forma ad hoc usando o software. A conexão de um computador a uma rede envolve “registrar” o nó de comunicação com o servidor de nomes ou qualquer servidor executando a função do servidor de nomes. Conforme descrito na seção de fundamentos deste pedido, na Internet o servidor de nomes é uma rede de computadores que identifica sua identidade eletrônica como um endereço de Internet usando formatos IPv4 ou IPv6. O servidor de nomes de Internet mais superior é o DNS global ou servidores de nomes de domínio. Alguns computadores não usam um endereço de Internet real, mas, em vez disso, têm um endereço atribuído por um NAT ou tradutor de endereço de rede.

[00842] De forma semelhante, a rede e o protocolo dinâmicos seguros descritos utilizam uma função de servidor de nomes para acompanhar cada dispositivo na rede SDNP. Sempre que um nó de comunicação SDNP é iniciado, ou em vernáculo de informática, sempre que o software de um nó SDNP é inicializado, o novo dispositivo se registra dinamicamente no

Petição 870170079583, de 19/10/2017, pág. 298/709

291 /425 servidor de nomes da rede, de modo que outros nós SDNP sabem que está online e disponível para comunicação. Na comunicação de canal triplo, os servidores de nomes SDNP são separados dos servidores usados para comando e controle, ou seja, os servidores de sinalização, e dos servidores de mídia que transportam o conteúdo de comunicação real. Na comunicação de canal único, um conjunto de servidores deve executar tanto a tarefa do servidor de nomes quanto o controle de roteamento e transportar o conteúdo. Assim, os três tipos de sistemas SDNP aqui descritos — canal único, canal duplo e canal triplo — são distinguidos pelos servidores usados para executar as funções de transporte, sinalização e nomeação. Nos sistemas de canal único, os servidores do nó de comunicação executam as três funções; em sistemas de canal duplo, as funções de sinalização e nomeação são separadas da função de transporte e são realizadas por servidores de sinalização; e em sistemas de canal triplo, a função de nomeação é separada das funções de transporte e sinalização e é executada pelos servidores de nomes. Na prática, uma determinada rede SDNP não precisa ser uniforme, mas pode ser subdividida em porções que são de canal único, porções que são de canal duplo e porções que são de canal triplo.

[00843] Qualquer novo nó de comunicação SDNP que esteja online se registra informando o servidor de nomes do seu endereço SDNP. Esse endereço não é um endereço de Internet, mas um endereço conhecido apenas pela rede SDNP e não pode ser acessado através da Internet, pois, como um endereço NAT, o endereço SDNP não tem sentido para a Internet, apesar de seguir o protocolo de Internet. Como tal, a comunicação usando a rede e o protocolo dinâmicos seguros descritos representa uma comunicação “anônima” porque os endereços IP são irreconhecíveis na Internet e porque apenas o último endereço SDNP e o próximo endereço SDNP, ou seja, o próximo destino do pacote, estão presentes dentro de um dado pacote.

[00844] Uma modalidade importante da rede SDNP é a sua capacidade

Petição 870170079583, de 19/10/2017, pág. 299/709

292 / 425 de modular a largura de banda disponível total da nuvem automaticamente à medida que o tráfego aumenta ou diminui em qualquer hora do dia. Mais nós de comunicação SDNP são adicionados automaticamente à rede à medida que o tráfego aumenta e descartados durante a redução lenta do custo da rede sem comprometer a estabilidade ou o desempenho.

[00845] Essa característica significa que a largura de banda e a extensão da rede SDNP aqui descrita também podem ser ajustadas dinamicamente para minimizar os custos operacionais, isto é, não pagar por ciclos de computação não usados em um nó não utilizado, ao mesmo tempo em que é capaz de aumentar a capacidade à medida que a demanda o exige. As vantagens da modalidade implementada pelo software ou “soft-switch” da rede SDNP contrastam fortemente com o hardware fixo e o alto custo das redes de comunicação com comutação de pacotes implementadas por hardware ainda universais hoje em dia. Na rede realizada por soft-switch, qualquer nó de comunicação carregado com o software de comunicação SDNP e conectado à rede ou à Internet pode ser adicionado ao SDNP conforme necessário, como mostrado no gráfico de rede da Figura 77D, onde os servidores de computador 1149D, 1149B, 1149F, 1149Q, 1149H, 1149N, 1149J, 1149S, e 1149V podem ser adicionados como nós de comunicação correspondentes Na,q, Na,d, Na,b, Na,f, Na,q, Na,h, Na,n, NaJ, Na,s, e Na,v, respectivamente, conforme surja a necessidade de tráfego no nó ou comunicação através de suas conexões.

[00846] Portanto, cada enlace na nuvem SDNP pode ser visto como uma conexão física sempre ligada da Camada PHY 1 com o correspondente enlace de dados da Camada 2, combinado com uma conexão de rede da Camada 3 que é estabelecida somente quando o SDNP inicia, ou seja, ativa, um novo nó de comunicação, conforme necessário. Assim, a própria nuvem SDNP baseada em soft-switch é adaptável e dinâmica, mudando com a demanda. Ao contrário das redes par-a-par, onde os dados são retransmitidos

Petição 870170079583, de 19/10/2017, pág. 300/709

293/425 através de qualquer dispositivo ou computador, mesmo com largura de banda e confiabilidade desconhecidas, cada nó de comunicação SDNP é um dispositivo pré-qualificado, carregado com o software soft-switch SDNP e totalmente autorizado para se juntar à nuvem SDNP e transportar dados usando seu protocolo de comunicação seguro prescrito, que compreende o conteúdo informativo (como um segredo compartilhado) mais a sintaxe, por exemplo, um formato específico de cabeçalho. Os segredos compartilhados descrevem algoritmos, geradores de sementes, métodos de embaralhamento, métodos de encriptação e métodos de mistura, mas não estipulam o formato de um pacote de dados SDNP inteiro. As configurações de segurança, ou seja, as configurações usadas em um tempo específico e para comunicações específicas são um tipo de segredos compartilhados, mas os segredos compartilhados também incluem a lista inteira de algoritmos, mesmo os que não estão em uso. Uma vez que o software é encriptado e o algoritmo e os segredos compartilhados são processados dinamicamente, mesmo no caso de o código SDNP estar hospedado em uma nuvem pública, como a Amazon ou a Microsoft, os operadores do servidor não têm meios para monitorar o conteúdo do tráfego de dados no nó de comunicação SDNP além do volume total de dados que está sendo transportado.

[00847] Como uma extensão natural da rede dinâmica, os novos clientes SDNP, como um telefone celular, tablet ou notebook, também se registram automaticamente com o servidor de nomes SDNP ou o gateway sempre que estiverem ligados. Portanto, não só a nuvem SDNP, mas o número de clientes disponíveis para conexão se ajusta automaticamente, refletindo com precisão o número de usuários conectados e ativos em qualquer momento.

[00848] Roteamento em Malha Embaralhado ou Encriptado Para suportar a capacidade autônoma dinâmica, cada nó de comunicação SDNP executa uma combinação prescrita de mistura e divisão de dados,

Petição 870170079583, de 19/10/2017, pág. 301/709

294 / 425 embaralhamento e desembaralhamento, encriptação e desencriptação ao mesmo tempo para suportar simultaneamente múltiplas conversas, comunicados e sessões seguras. Na modalidade de soft-switch da rede SDNP, todas as funções implementadas e a sequência dessas operações podem ser totalmente configuradas através de instruções baseadas em software, conforme definido por segredos compartilhados, transportadas pelo pacote de dados ou definidas por um canal de sinal paralelo para comando e controle, separado e distinto dos nós de comunicação SDNP usados para transportar mídia. Embora seja possível um grande número de permutações e combinações, os exemplos aqui mostrados destinam-se a representar a flexibilidade da comunicação baseada em SDNP e a não limitar a aplicação das várias funções SDNP descritas em uma sequência específica de etapas de processamento de dados. Por exemplo, o embaralhamento pode preceder ou seguir a mistura ou a divisão, a encriptação pode ocorrer primeiro, por último ou no meio, etc.

[00849] Tal operação, a operação de mistura e divisão reembaralhada 1155 mostrada na Figura 78A, executa uma sequência de funções específicas do SDNP em vários pacotes de dados de entrada dos nós de comunicação Na,b, Na,d, Na,f e Na,h compreendendo a operação de desembaralhamento 928 realizada em cada pacote de dados de entrada, misturando e depois dividindo os pacotes de dados usando a operação de mistura e divisão 1148, seguido de reembaralhamento dos novos pacotes de dados usando a operação de embaralhamento 926 e encaminhando esses pacotes para a rede de comunicação em malha. Como mostrado na Figura 78B, a sequência de realização de múltiplas operações de desembaralhamento independentes 928 em cada entrada seguida da operação de mistura 1089 em conjunto compreende a operação de “mistura desembaralhada de entradas em malha” 1156A. Para fins de conveniência, a sequência pode ser representada simbolicamente por operação de desembaralhamento e mistura 1161.

Petição 870170079583, de 19/10/2017, pág. 302/709

295/425 [00850] O inverso da operação de desembaralhamento e mistura, a operação de “divisão e embaralhamento” 1156B para saídas em malha, ilustradas na Figura 78C, compreende a sequência de divisão de um pacote de dados com a operação de divisão 1106 seguida pela realização de múltiplas operações de embaralhamento independentes 926 para cada saída. Para fins de conveniência, a sequência pode ser representada simbolicamente por operação de divisão e embaralhamento 1162. Como mostrado na Figura 78D, a combinação sequencial das duas - combinar a operação de mistura desembaralhada de entradas em malha 1156A seguida da operação de divisão e embaralhamento 1156B para saídas em malha compreende a operação de “reembaralhamento e remistura” para o transporte em malha mostrado simbolicamente como operação 1163.

[00851] A aplicação da operação de mistura desembaralhada de entradas em malha mencionada acima 1161 seguida da operação de divisão e embaralhamento 1162 para saídas em malha é mostrada na Figura 79A, onde as entradas de pacotes de dados de comprimento fixo 1157B, 1157D, 1157F e 1157H dos nós de comunicação correspondentes Na,b, Na,d, Na,f e Na,h são processadas pela operação de mistura desembaralhada de entradas em malha 1156 no nó de comunicação Naj para formar o pacote de dados longo 1160. Embora a operação 1156 inclua funcionalidade para desembaralhar independentemente os pacotes de dados de entrada antes da mistura, a etapa não é necessária e, portanto, ignorada porque as entradas de pacotes de dados de comprimento fixo 1157B, 1157D, 1157F e 1157H não são embaralhadas. O pacote de dados longo 1160 é processado em seguida pela operação de divisão e embaralhamento 1162, resultando em pacotes de dados misturados embaralhados 1158N, 1158Q, 1158S e 1158V enviados para os nós de comunicação correspondentes Na,n, Na,q, Na,s e Na,v para transporte em malha.

[00852] A mesma operação de mistura embaralhada e divisão para transporte em malha de pacotes de comprimento fixo é ilustrada na Figura

Petição 870170079583, de 19/10/2017, pág. 303/709

296/425

79B para os pacotes de dados de entrada 1165B, 1165D, 1165F, e 1165H que são embaralhados. Esses pacotes de dados incluem segmentos de dados de lixo, conforme indicado pelos segmentos de dados sem um número de identificação. A operação de desembaralhamento e mistura 1161 no nó de comunicação Nq então cria o pacote longo 1166 que é mais curto do que o exemplo anterior porque os pacotes de dados de lixo foram removidos intencionalmente. Em uma modalidade alternativa da invenção, os pacotes de lixo podem ser retidos. O pacote de dados 1166 é processado em seguida pela operação de divisão e embaralhamento 1162 para produzir múltiplas saídas de pacotes de dados 1165N, 1165Q, 1165S e 1165V enviados para os nós de comunicação correspondentes Na,n, Na,q, Na,s e Na,v para transporte em malha. Nesses pacotes de dados, os dados de lixo foram reinseridos para preencher os pacotes de dados com um número prescrito de segmentos de dados. Embora, em geral, seja preferido e mais fácil processar a inserção de segmentos de dados de lixo no final de um pacote de dados, como mostrado pelos pacotes de dados 1165N e 1165S, se o algoritmo assim o prescrever, os pacotes de lixo podem ser opcionalmente inseridos em outro lugar em um pacote de dados, por exemplo no primeiro slot como mostrado no pacote de dados 1165V.

[00853] Um exemplo de transporte de dados em malha dinâmico com embaralhamento estático através da rede de comunicação 1114 de acordo com esta invenção é ilustrado na Figura 80, que inclui uma rede de servidores de computadores interconectados 1118 executando o software de comunicação SDNP. O nó de comunicação No,o executa a operação de embaralhamento e divisão 1162, o último nó de comunicação Nf,f executa a operação de mistura e desembaralhamento 1161, e todos os outros nós de comunicação executam a operação de reembaralhamento e remistura 1163. Embora no exemplo mostrado cada servidor execute apenas uma operação dedicada, entende-se que o software SDNP instalado em todos os servidores de computador 1118 é

Petição 870170079583, de 19/10/2017, pág. 304/709

297 / 425 capaz de executar qualquer uma das funções SDNP, conforme necessário, incluindo a operação de embaralhamento e divisão 1162, a operação de desembaralhamento e mistura 1161, a operação de reembaralhamento e remistura 1163, e outras como aqui descrito.

[00854] Em operação, o pacote de dados de entrada 1055 é primeiro embaralhado pelo nó de comunicação No,o no tempo ti pela operação de embaralhamento e divisão 1162, criando o pacote de dados embaralhado 1130, que é então dividido em quatro pacotes de comprimento variável, especificamente o pacote de dados 1170A que compreende o segmento de dados 1F e um segmento de dados de lixo associado no primeiro slot, o pacote 1170B que compreende o segmento de dados 1C, o pacote de dados 1170C que compreende os segmentos de dados IA e 1D na ordem inversa e o pacote de dados 1170D que compreende os segmentos de dados IB e 1E em ordem ascendente. Os segmentos de dados mostrados podem ser combinados com outros segmentos de dados de outros pacotes de dados e conversas, também de comprimento variável, onde os segmentos de dados de outras conversas foram intencionalmente excluídos da ilustração por motivos de clareza. Deve entender-se que o tempo passa quando os pacotes de dados atravessam a rede e seus conteúdos são divididos e remisturados. No entanto, para fins de clareza de ilustração, os tempos foram intencionalmente excluídos do desenho, exceto alguns tempos exemplificativos mostrados no início e conclusão do processo de comunicação.

[00855] Durante o transporte em malha dinâmico, o conteúdo do pacote de dados, seus segmentos de dados mudam à medida que atravessa a rede. Por exemplo, o pacote de dados 1170A, que compreende um segmento de dados de lixo e um segmento de dados 1F, atravessa os nós de comunicação em sequência a partir do nó de comunicação No,o primeiro para o nó de comunicação Νι,ι depois para o nó de comunicação Nyi, onde é misturado com o pacote de dados 1170B compreendendo o segmento de

Petição 870170079583, de 19/10/2017, pág. 305/709

298/425 dados 1C, para formar o pacote de dados 1171 A, contendo a sequência de segmento de dados 1C, IF e o segmento de dados de lixo, que é enviado para o nó de comunicação Νιμ, e depois para o nó de comunicação N23. Durante 0 mesmo periodo de tempo, o pacote de dados 1170C compreendendo a sequência de segmento de dados ID, IA é transportado do nó de comunicação No,0 para o nó de comunicação N34, onde é encaminhado inalterado como pacote de dados 1171C para o nó de comunicação N34. Como parte da operação de mistura e divisão realizada pelo nó de comunicação N34, um segundo pacote de dados 1171B, que compreende dados inteiramente de lixo sem conteúdo, é gerado e enviado para o nó de comunicação N24. A razão para rotear um pacote inteiramente de lixo desprovido de conteúdo é dupla primeiro para confundir piratas cibernéticos com a saída de mais de um pacote de dados do nó de comunicação N34, e em segundo lugar para obter dados atualizados de atraso de propagação intra-rede de enlaces ou rotas não usados.

[00856] Ao entrar no nó de comunicação N34 o pacote de dados 1171C é dividido em dois pacotes de dados, o pacote de dados 1172C compreendendo o segmento de dados 1D, que é enviado para o nó de comunicação N33, e o pacote de dados 1172B compreendendo o segmento de dados IA e um segmento de dados à esquerda que compreende dados de lixo, que é enviado para o nó de comunicação N23. Ao alcançar o servidor N23, o pacote de dados 1172B é misturado com o pacote de entrada 1171A e, em seguida, é dividido novamente no pacote 1173A, compreendendo os segmentos de dados IF e IA, e enviado para o nó de comunicação N14 onde os segmentos de dados de lixo à direita são adicionados para formar o pacote de dados 1174A, que é enviado para o nó de comunicação final Nf,fno tempo ti4- Em uma sequência concorrente, como resultado da operação de divisão realizada no nó de comunicação N23, o pacote de dados 1173B é enviado para o nó de comunicação N34 onde um segmento de dados de lixo à direita é

Petição 870170079583, de 19/10/2017, pág. 306/709

299/425 adicionado ao segmento de dados 1C antes de enviá-lo para o nó de comunicação final Nf,f no tempo ti6 (tempo não mostrado).

[00857] Enquanto isso, o pacote de dados 1170D que compreende os segmentos de dados IE e 1D é transportado do nó de comunicação No,o para o nó de comunicação N4,i e adiante para o nó de comunicação N4,2 onde é reembaralhado, formando o pacote de dados 1172D, compreendendo os segmentos de dados IB e 1E em ordem inversa. Ao entrar no nó de comunicação N33, o pacote de dados 1172D é misturado com o pacote de dados 1172 C e depois dividido de novo, formando os pacotes de dados 1173C e 1173D. O pacote de dados 1173C, que compreende o segmento de dados 1B, é enviado para o nó de comunicação N24, onde é encaminhado para o servidor final Nf,f no tempo tu como o pacote de dados 1174B. Embora os pacotes de dados 1173C e 1174B sejam idênticos, cada um contendo apenas o segmento de dados 1B, isto é, o pacote 1173C é, de fato, inalterado pelo nó de comunicação N24, isso é consistente com o tempo tis e seu estado correspondente, incluindo sementes, chaves, segredos compartilhados, algoritmos, etc., no nó de comunicação N24. O outro pacote de dados, ou seja, o pacote de dados 1173D, que sai do nó de comunicação N33 é então roteado para o nó de comunicação N43 e adiante para o nó de comunicação N44, onde um segmento de dados de lixo intermédio é inserido entre os segmentos de dados IE e 1D para criar o pacote de dados 1174D no tempo tu com o estado correspondente 1137. Os pacotes de dados 1174A, 1174B, 1174C, e 1174D, cada um formado usando diferentes estados e criado em diferentes tempos, especificamente nos tempos tu, tu, tu, e tu são então desembaralhados e misturados no nó de comunicação Nf,f , usando a operação de desembaralhamento e mistura 1161, para recriar o pacote de dados desembaralhado original 1055 no tempo tf. Todos os nós sabem o que fazer para processar um pacote de dados de entrada ou porque o estado do pacote ou outro identificador corresponde a um conjunto de segredos compartilhados

Petição 870170079583, de 19/10/2017, pág. 307/709

300/425 conhecidos pelo nó ou porque um servidor separado chamado servidor de sinalização para o nó a priori sabe o que fazer quando um pacote particular chega.

[00858] Como no transporte em malha estático, no transporte em malha dinâmico, os trajetos de dados podem ter diferentes comprimentos e apresentar diferentes atrasos de propagação. Como resultado, alguns pacotes de dados podem chegar ao nó de comunicação final Nf,f antes de outros. Em tais casos, de acordo com esta invenção, os pacotes de dados devem ser mantidos temporariamente no nó de comunicação Nf,f até que os outros pacotes de dados relacionados cheguem. E embora o desenho mostre que a montagem e recuperação final do pacote de dados original 1055 ocorre no nó de comunicação Nf,f, na prática, a remontagem final do pacote pode ocorrer em um dispositivo, como um desktop, notebook, telefone celular, tablet, conversor digital, automóvel, geladeira ou outro dispositivo de hardware conectado à rede. Em outras palavras, no que se refere ao transporte em malha, não existe distinção entre um nó de comunicação e um dispositivo conectado a um nó de comunicação, isto é, um nó de comunicação Nf,f podería ser considerado um computador desktop em vez de ser um verdadeiro servidor de alta capacidade. A conexão de um dispositivo com a nuvem SDNP descrita, isto é, a conexão da última milha, é discutida mais detalhadamente mais adiante neste pedido.

[00859] Conforme indicado anteriormente, o roteamento dinâmico mencionado acima pode ser combinado com um ou mais dos métodos SDNP mencionados acima como descrito, incluindo embaralhamento, encriptação ou combinações dos mesmos. Tal operação, a operação de mistura e divisão encriptada 1180 mostrada na Figura 81 A, executa uma sequência de operações específicas do SDNP em vários pacotes de dados de entrada dos nós de comunicação Na,b, Na,d, Na,f e Na,h compreendendo operações de desencriptação 1032 realizadas em cada pacote de dados de entrada,

Petição 870170079583, de 19/10/2017, pág. 308/709

301 /425 misturando e depois dividindo os pacotes de dados usando a operação de mistura e divisão 1148, seguido de reencriptação dos novos pacotes de dados usando a operação de encriptação 1026 e encaminhando esses pacotes através da rede de comunicação em malha. Conforme ilustrado, os pacotes de dados de entrada foram previamente encriptados e compreendem pacotes de texto cifrado ilegíveis 1181 A, 1183A e outros não mostrados. As chaves de desencriptação necessárias para desencriptar as entradas de texto cifrado, específicas para o tempo, o estado e os algoritmos de encriptação usados para criar cada pacote de entrada devem ser passadas para a operação de desencriptação 1032 antes de executar a desencriptação, seja como um segredo compartilhado, as chaves presentes em um pacote de dados não encriptado enviado com o pacote de dados ou comunicado específico, ou as chaves fornecidas através de outros canais de comunicação. Conforme descrito mais adiante na descrição, as chaves podem ser simétricas ou assimétricas. O tema da troca de chaves é discutido mais tarde nesta descrição.

[00860] Uma vez desencriptados, os pacotes de dados tomam-se pacotes de texto simples 1182A, 1184A e outros não mostrados, então são misturados pelo nó de comunicação Naj no pacote longo 1185, compreendendo também texto simples, e subsequentemente dividido em novos pacotes de texto simples 1182B, 1184B e outros não mostrados. Usando novas chaves de encriptação diferentes com base nesse tempo ou estado específico, os pacotes de dados são então encriptados para formar novos pacotes de texto cifrado 1181B, 1183B e outros não mostrados, enviados para outros nós de comunicação. Como mostrado na Figura 81B, a sequência de realização de múltiplas operações de desencriptação independentes 1032 em cada entrada seguida da operação de mistura 1089 em conjunto compreende a operação de “mistura por desencriptação de entradas em malha” representada simbolicamente pela operação de mistura por

Petição 870170079583, de 19/10/2017, pág. 309/709

302/425 desencriptação 1090. A operação de “divisão e encriptação” para saídas em malha, ilustradas na Figura 81C, compreende a sequência de divisão de um pacote de dados com a operação de divisão 1106 seguida pela realização de múltiplas operações de encriptação independentes 1026 para cada saída. Para fins de conveniência, a sequência pode ser representada simbolicamente por operação de divisão e encriptação 1091.

[00861] A Figura 82A ilustra um exemplo de reencriptação, reembaralhamento e redivisão de pacotes de dados de múltiplos nós de comunicação Na.b, Na,d, Na,f e Na,h para transporte em malha de acordo com esta invenção. Usando operação de reencriptação, reembaralhamento, mistura e divisão 1201 em pacotes de dados de entrada que entram no nó de comunicação Naj, cada pacote de dados de entrada é desencriptado independentemente por uma operação de desencriptação 1032, desembaralhado por uma operação de desembaralhamento 928, depois misturado pela operação de mistura 1089 e subsequentemente dividido em múltiplos pacotes de dados novos pela operação de divisão 1106. Cada pacote de dados é então embaralhado de forma independente novamente usando a operação de embaralhamento 926, encriptado novamente usando a encriptação 1026 e depois encaminhado adiante usando a rede de comunicação em malha. Conforme ilustrado, os pacotes de dados de entrada foram previamente encriptados e compreendem textos cifrados ilegíveis 1194A, 1197A e outros não mostrados.

[00862] As informações de tempo e estado, segredos compartilhados, sementes numéricas, algoritmos e chaves de desencriptação necessárias para desembaralhar e desencriptar as entradas de texto cifrado, específicas para o tempo, o estado e os algoritmos usados para criar cada pacote de entrada devem ser passadas para a operação de desencriptação 1032 antes de executar a desencriptação e a operação de desembaralhamento 928, seja como um segredo compartilhado, chaves ou sementes numéricas presentes em um

Petição 870170079583, de 19/10/2017, pág. 310/709

303/425 pacote de dados não encriptado enviado com o pacote de dados ou comunicado específico, ou chaves e sementes numéricas fornecidas através de outros canais de comunicação. As chaves podem ser simétricas ou assimétricas. O tópico da troca de chaves e entrega de sementes numéricas é discutido posteriormente nesta descrição. Todos os nós sabem o que fazer para processar um pacote de dados de entrada ou porque o estado do pacote ou outro identificador, tal como a semente, corresponde a um conjunto de segredos compartilhados conhecidos pelo nó ou porque um servidor separado chamado servidor de sinalização para o nó a priori sabe o que fazer quando um pacote particular chega.

[00863] Uma vez desencriptados, os pacotes de texto simples 1195A, 1198A e outros não mostrados são então desembaralhados usando operações de desembaralhamento 928 para criar pacotes de texto simples desembaralhados correspondentes 1196A, 1199A e outros não mostrados. Usando a operação de mistura 1089, os pacotes de texto simples desembaralhados são misturados pelo nó de comunicação Naj no pacote longo 1220, que é subsequentemente dividido em novos pacotes de texto simples desembaralhados 1196B, 1199B e outros não mostrados na operação de divisão 1106 e, em seguida, novamente embaralhados por operações de embaralhamento 926 usando novas sementes numéricas correspondentes ao tempo ou estado atual para formar pacotes de texto simples embaralhados 1195B, 1198B e outros não mostrados. Usando novas chaves de encriptação diferentes com base nesse tempo ou estado específico, os pacotes de dados são, em seguida, encriptados novamente por operações de encriptação 1026 para formar novo texto cifrado 1194B, 1197B e outros não mostrados, e subsequentemente enviados para outros nós de comunicação.

[00864] Conforme descrito de acordo com esta invenção, a comunicação SDNP pode compreender qualquer sequência de encriptação, embaralhamento, mistura, divisão, desembaralhamento e desencriptação. Pelo

Petição 870170079583, de 19/10/2017, pág. 311/709

304/425 menos em teoria, se a sequência executada ocorrer em uma sequência conhecida, descrita matematicamente como as funções y = H{G[F(x)]} onde a função mais interna F é realizada primeiro e a função mais externa H é realizada em último lugar, então, para recuperar os dados originais x, a antifunção deve ser realizada na sequência inversa onde H 1 é realizada primeiro e F1 é realizada por último, isto é, x = F1 {G-1[H_1(y)]}. Esta sequência de operação de primeiro a entrar, último a sair deve desfazer as alterações e recuperar o conteúdo original, mas somente se nenhum dado for removido ou inserido nos pacotes no decorrer do processo. Se os dados são removidos ou inseridos nos pacotes, o arquivo embaralhado ou encriptado está contaminado e não pode ser reparado. Por exemplo, misturar dados encriptados usando diferentes métodos de encriptação produz dados que não podem ser não encriptados sem primeiro recuperar os componentes originais. Um dos principais benefícios da comunicação em malha dinâmica usando o transporte SDNP - obscurecer todo o conteúdo, misturando dinamicamente, dividindo e redirecionando várias conversas, é perdido se um determinado nó de comunicação não for livre para misturar ou dividir pacotes conforme necessário.

[00865] Portanto, é uma modalidade da comunicação SDNP realizar de forma independente embaralhamento e encriptação nos pacotes de dados saindo das saídas individuais de um nó de comunicação em vez de misturar os pacotes de dados antes das operações de embaralhamento e encriptação. Correspondentemente, se os pacotes de dados que entram em um nó de comunicação são encriptados, embaralhados ou ambos, então eles devem ser independentemente desembaralhados e não encriptados antes da mistura, ou seja, antes de formar o pacote longo misturado. Como tal, a sequência de operação preferida para os pacotes de entrada é desencriptar, desembaralhar e misturar sequencialmente os dados recebidos em cada entrada de um nó de comunicação ou em uma sequência alternativa para desembaralhar,

Petição 870170079583, de 19/10/2017, pág. 312/709

305/425 desencriptar e misturar os dados de entrada.

[00866] O primeiro caso está ilustrado na Figura 82B onde a operação de desencriptação, desembaralhamento e mistura de entradas em malha, mostrada esquematicamente como operação “DUM” 1209 e simbolicamente pela operação DUM 1210, compreende executar de forma independente para cada entrada a sequência de operação de desencriptação 1032, operação de desembaralhamento 928 e depois misturar os pacotes de dados resultantes usando operação de mistura 1089. Os comutadores individuais 1208A e 1208B, presentes em cada entrada, são usados para desviar, conforme necessário, pacotes de dados em torno de uma das operações de desencriptação 1032 ou uma das operações de desembaralhamento 928, respectivamente. Por exemplo, se ambos os comutadores em uma entrada específica estiverem “abertos”, então todos os pacotes de dados devem passar através tanto da operação de desencriptação 1032 quanto da operação de desembaralhamento 928, e o pacote de dados será necessariamente desencriptado e desembaralhado. Quando ambos os comutadores são fechados, as operações são “curto-circuitadas”, e os dados não são processados pela operação de desencriptação 1032 ou pela operação de desembaralhamento 928, isto é, os dados são passados para a operação de mistura 1089 inalterados.

[00867] Se o comutador 1208A estiver fechado e ο 1208B estiver aberto, então os dados são desviados em tomo da operação de desencriptação 1032, mas passam através da operação de desembaralhamento 928, o que significa que o pacote de dados de entrada será desembaralhado, mas não desencriptado. Por outro lado, se o comutador 1208A estiver aberto e o comutador 1208B estiver fechado, os dados passarão através da operação de desencriptação 1032, mas serão desviados em tomo da operação de desembaralhamento 928, o que significa que os pacotes de dados de entrada serão desencriptados, mas não desembaralhados. Uma vez que as operações

Petição 870170079583, de 19/10/2017, pág. 313/709

306/425 de desencriptação 1032 e as operações de desembaralhamento 928 são geralmente implementadas no software, não há comutadores físicos que desviam o sinal. Os comutadores 1208A e 1208B representam simbolicamente a operação do software. Especificamente, se um comutador paralelo a uma operação estiver aberto, o software aplicável executa a operação, e se o interruptor paralelo a uma operação estiver fechado, o software aplicável não executa a operação, mas simplesmente passa sua entrada para a sua saída inalterada. Na metáfora eletrônica, a função é “curtocircuitada” por um comutador fechado de modo que o sinal passa não processado. As combinações estão resumidas na seguinte tabela de verdade em que o comutador 1208A em paralelo com a operação de desencriptação 1032 é chamado de comutador A e o comutador 1208B em paralelo com a operação de desembaralhamento 928 é chamado de comutador B.

íjgõfOtsãsfÁ// sigbfosíJOin//
Aberto Aberto Sim Sim Desencriptado depois desembaralhado
Fechado Aberto Não Sim Apenas desembaralhado
Aberto Fechado Sim Não Apenas desencriptado
Fechado Fechado Não Não Pacote de dados inalterado

[00868] A função inversa, a operação de divisão, embaralhamento e encriptação, é mostrada na Figura 82C esquematicamente pela operação “SSE” 1209 e simbolicamente pela operação SSE 1213, compreendendo a divisão usando a operação de divisão 1106 seguida por realizar independentemente a operação de desembaralhamento 926 seguida por operação de encriptação 1026. Os comutadores 1211B e 1211 A, presentes em cada entrada, são usados para desviar, conforme necessário, pacotes de dados em tomo da operação de desembaralhamento 926 ou da operação de encriptação 1026, respectivamente. Por exemplo, se ambos os comutadores 1211B e 1211A em uma entrada específica estiverem “abertos”, então todos os pacotes de dados devem passar através e serem processados pela operação de embaralhamento 926 e operação de encriptação 1026, e o pacote de dados será necessariamente embaralhado e encriptado. Quando ambos os

Petição 870170079583, de 19/10/2017, pág. 314/709

307/425 comutadores estão fechados, as operações são “curto-circuitadas” e os dados passam através dos comutadores 1211B e 1211A e não são processados pela operação de embaralhamento 926 ou pela operação de encriptação 1026, o que significa que os dados nessa entrada particular são passados da operação de divisão 1106 para a saída inalterados.

[00869] Se o comutador 1211B estiver fechado e o 1211A estiver aberto, então os dados são desviados em torno da operação de embaralhamento 926, mas processados pela da operação de encriptação 1026, o que significa que o pacote de dados de saída será encriptado, mas não embaralhado. Alternativamente, se o comutador 1211B estiver aberto e o comutador 1211A estiver fechado, os dados serão processados através da operação de embaralhamento 926, mas serão desviados em tomo da operação de encriptação 1026, o que significa que os pacotes de dados de saída serão embaralhados, mas não encriptados.

[00870] Conforme indicado anteriormente, uma vez que as operações de embaralhamento 926 e as operações de encriptação 1026 são geralmente implementadas em software, não há comutadores físicos que desviam o sinal e os comutadores 1211B e 1211A representam simbolicamente a operação do software. Especificamente, se um comutador paralelo a uma operação estiver aberto, o software aplicável executa a operação, e se o interruptor paralelo a uma operação estiver fechado, o software aplicável não executa a operação, mas simplesmente passa sua entrada para a sua saída inalterada. Na metáfora eletrônica, a função é “curto-circuitada” por um comutador fechado de modo que o sinal passa não processado. As combinações estão resumidas na seguinte tabela de verdade em que o comutador 1211B em paralelo com a operação de embaralhamento 926 é chamado de comutador B e o comutador 1211A em paralelo com a operação de encriptação 1026 é chamado de comutador A.

dor A
Aberto Aberto Sim Sim Embaralhado depois encriptado

Petição 870170079583, de 19/10/2017, pág. 315/709

308/425

Fechado Aberto Não Sim Apenas encriptado
Aberto Fechado Sim Não Apenas embaralhado
Fechado Fechado Não Não Pacote de dados inalterado

[00871] A combinação de um DUM de múltiplas entradas 1209 e SSE de múltiplas saídas 1212 forma um elemento altamente versátil para alcançar uma comunicação segura de acordo com esta invenção, aqui chamado de nó de mídia SDNP 1201, mostrado na Figura 83A. Conforme mostrado, os dados que entram em qualquer uma das múltiplas entradas podem, em sequência, ser desencriptados pela operação de desencriptação 1032, ou a operação de desencriptação 1032 pode ser ignorada. O pacote de dados pode então ser desembaralhado pela operação de desembaralhamento 928, ou a operação de desembaralhamento 928 pode ser ignorada. As várias entradas, uma vez processadas, podem então ser misturadas usando a operação de mistura 1089 e subsequentemente divididas em novos pacotes pela operação de divisão 1106. Os pacotes de dados de cada saída individual são, em seguida, embaralhados pela operação de embaralhamento 926, ou, altemativamente, a operação de embaralhamento 926 é ignorada e, em seguida, encriptada pela encriptação 1026 ou, alternativamente, a operação de encriptação 926 pode ser ignorada.

[00872] O nome “nó de mídia” reflete a aplicação deste software de comunicação do nó de comunicação, ou “soft-switch” de acordo com esta invenção, especificamente para transportar, rotear e processar conteúdo que represente voz em tempo real, texto, música, vídeo, arquivos, código, etc., ou seja, conteúdo de mídia. O nó de mídia SDNP também é representado simbolicamente por conveniência como nó de mídia SDNP Maj, hospedado no servidor 1215, como mostrado na Figura 83B. Usando o mesmo código, todas as combinações de processamento de sinal são possíveis usando o nó de mídia SDNP descrito, incluindo os seguintes exemplos:

• “Passagem de rota única” onde uma única entrada é roteada para saída única “como está” ou, altemativamente, inserindo ou removendo pacotes de lixo ou analisando o pacote de dados de entrada em

Petição 870170079583, de 19/10/2017, pág. 316/709

309/425 múltiplos pacotes de dados mais curtos. Essa função, mostrada na Figura 83C esquematicamente e simbolicamente como uma operação de passagem de rota única 1217A, é útil quando um nó de mídia está operando simplesmente como um repetidor de sinal em uma rede de comunicação. As funções de lixo e análise 1053 e 1052, como mostrado, são características integrais da operação de mistura de pacotes 1061 e operação de divisão de pacotes 1057 e estão incluídas aqui apenas para fins de conveniência.

• “Replicação de rota redundante” onde uma única entrada é copiada e enviada “como está” para duas ou mais saídas ou, alternativamente, inserindo ou removendo pacotes de lixo ou analisando o pacote de dados de entrada em múltiplos pacotes de dados mais curtos antes de encaminhar cópias e/ou sequências de dados idênticas para duas ou mais saídas. Essa função, mostrada esquematicamente e simbolicamente Figura 83D como operação de replicação de rota redundante 1217B, é útil na implementação de “roteamento de corrida” para clientes VIP ou comunicação urgente, ou seja, enviar duas cópias por trajetos diferentes e usar o que chega em seu destino primeiro. As funções de lixo e análise 1053 e 1052 são características integrais da operação de mistura de pacotes 1061 e operação de divisão de pacotes 1057 e estão incluídas aqui apenas para fins de conveniência.

• “Embaralhamento de rota única” onde uma única entrada é embaralhada e roteada para uma única saída independentemente de o pacote ter sido previamente encriptado. Como mostrado na Figura 83E, o embaralhamento de rota única é útil para comunicação de primeira milha entre um cliente e a nuvem ou em comunicados antes que os pacotes de dados sejam divididos ou misturados para transporte de múltiplas rotas ou em malha. A função representada esquematicamente e simbolicamente como uma operação de embaralhamento de rota única 1217C, compreende a operação de divisão de pacotes de entrada única 1057, neste caso, usada apenas para inserções e exclusões de lixo e para análise, seguida da operação somente de

Petição 870170079583, de 19/10/2017, pág. 317/709

310/425 embaralhamento 1268B.

• “Desembaralhamento de rota única” o inverso de embaralhamento de rota única, mostrado simbolicamente como uma operação de desembaralhamento de rota única 1217D na Figura 83F, é usado para retornar um pacote embaralhado para seu estado desembaralhado, independentemente de o pacote ter sido previamente encriptado antes do embaralhamento. A função compreende a combinação em série da operação somente de desembaralhamento 1226A seguida por operação de mistura de rota única 1061 usada para inserções e exclusões de lixo e para análise de pacotes.

• Ao executar as duas funções anteriores de desembaralhamento e embaralhamento de rota única em sequência, “Reembaralhamento de Rota Única”, mostrado esquematicamente e simbolicamente como operação de reembaralhamento de rota única 1216C na Figura 83G, é útil para atualizar dinamicamente o embaralhamento de pacotes em rotas de trajeto único.

• “Encriptação de rota única” onde uma única entrada é encriptada e roteada para uma única saída independentemente de o pacote ter sido previamente embaralhado. Essa função, representada esquematicamente e simbolicamente como operação de encriptação de rota única 1217E na Figura 83H, é útil para comunicação de primeira milha fora da nuvem ou para comunicados antes que os pacotes de dados sejam divididos ou misturados para transporte de múltiplas rotas ou em malha. A função como mostrada inclui a operação de divisão de pacotes de entrada única 1057, neste caso usada apenas para inserções e exclusões de lixo e para análise, seguida da operação somente de encriptação 1226D.

• O inverso da encriptação de rota única, “Desencriptação de rota única”, mostrado simbolicamente como operação de desencriptação de rota única 1217F na Figura 831 é usado para retomar um pacote encriptado

Petição 870170079583, de 19/10/2017, pág. 318/709

311/425 para seu estado não encriptado, independentemente de se o pacote já foi previamente embaralhado antes da encriptação. A função compreende a combinação em série da operação somente de desencriptação 1226C seguida por operação de mistura de rota única 1061 usada para inserções e exclusões de lixo e para análise de pacotes.

• Ao executar as duas funções anteriores de desencriptação e encriptação de rota única em sequência, “Reencriptação de Rota Única”, mostrado esquematicamente e simbolicamente como operação de reencriptação de rota única 1216D na Figura 83J, é útil para atualizar dinamicamente a encriptação de pacotes em rotas de trajeto único.

• “Embaralhamento e encriptação de rota única” onde uma única entrada é embaralhada, encriptada e roteada para uma única saída. Essa função, representada esquematicamente e simbolicamente como operação de embaralhamento e encriptação de rota única 1217G na Figura 83K é útil para comunicação de primeira milha fora da nuvem ou para comunicados antes que os pacotes de dados sejam divididos ou misturados para transporte de múltiplas rotas ou em malha. A função como mostrada inclui a operação de divisão de pacotes de entrada única 1057, neste caso usada apenas para inserções e exclusões de lixo e para análise, seguida da operação de embaralhamento e encriptação 1226E.

• O inverso do embaralhamento e encriptação de rota única, “Desembaralhamento e desencriptação de rota única” mostrado simbolicamente como operação de desembaralhamento e desencriptação de rota única 1217G na Figura 83L, é usado para retomar um pacote embaralhado encriptado para seu estado desembaralhado desencriptado original. A função compreende a combinação em série da operação de desencriptação e desembaralhamento 1226D seguida por operação de mistura de rota única 1061 usada para inserções e exclusões de lixo e para análise de pacotes.

Petição 870170079583, de 19/10/2017, pág. 319/709

312/425 • Ao executar as funções anteriores de desencriptação, desembaralhamento, embaralhamento e encriptação de rota única em sequência, “Reempacotamento de Rota Única”, mostrado esquematicamente e simbolicamente como operação de reempacotamento de rota única 1216E na Figura 83M, é útil para atualizar dinamicamente o embaralhamento e a encriptação de pacotes em rotas de trajeto único.

• “Entrada de gateway SDNP em malha” também conhecido como “gateway SDNP de entrada única e múltiplas saídas” mostrado esquematicamente e simbolicamente como operação de entrada única, múltiplas saídas 1216F na Figura 83N, onde uma única entrada é dividida e roteada para múltiplas saídas para o transporte de múltiplas rotas ou em malha, independentemente de o pacote ter sido previamente embaralhado ou encriptado. Essa função é útil para iniciar o roteamento em malha desembaralhado não encriptado em um gateway SDNP, incluindo funções de lixo e análise 1053 e 1052 como uma característica integral de sua operação de divisão de pacotes.

• O inverso da função de entrada de gateway em malha anterior é “Saída de gateway de pacote em malha” também conhecido como “gateway SDNP de múltiplas entradas e única saída” mostrado esquematicamente e simbolicamente como operação de múltiplas entradas, única saída 1216G na Figura 830, onde uma única entrada é dividida e roteada para múltiplas saídas para o transporte de múltiplas rotas ou em malha, independentemente de se o pacote é embaralhado ou encriptado. A função é usada para coletar novamente os pacotes de componentes de uma mensagem em um gateway SDNP para comunicação de última milha ou para saltos de nuvem para nuvem, ou seja, para concluir o roteamento em malha SDNP e, opcionaimente, inclui as funções de lixo e análise 1053 e 1052 como uma característica integral do pacote sua operação de mistura.

• “Entrada de gateway SDNP embaralhada” é mostrada

Petição 870170079583, de 19/10/2017, pág. 320/709

313/425 simbolicamente como uma operação de embaralhamento de entrada única, múltiplas saídas 1217H na Figura 83P, onde uma única entrada é dividida, embaralhada separadamente para cada saída e, em seguida, roteada para múltiplas saídas para transporte de múltiplas rotas ou em malha independentemente de se o pacote foi previamente encriptado. Essa função é útil para iniciar o roteamento em malha embaralhado em um gateway SDNP, incluindo funções de lixo e análise opcionais (não mostradas) como uma característica integral de sua operação de divisão.

• O inverso da função de entrada de gateway embaralhada anterior é “Saída de gateway SDNP desembaralhada”, também conhecido como “gateway SDNP de múltiplas entradas, única saída”, é mostrado simbolicamente como operação de desembaralhamento de múltiplas entradas, saída única 1217J na Figura 83P onde múltiplas entradas em malha são primeiro desembaralhadas independentemente e, em seguida, são misturadas e roteadas para uma única saída ou cliente independentemente de o pacote estar encriptado. A função é usada para coletar novamente e desembaralhar os pacotes de componentes de uma mensagem em um gateway SDNP para comunicação de última milha ou para saltos de nuvem para nuvem, ou seja, para concluir o roteamento em malha SDNP e, opcionalmente, inclui as funções de lixo e análise (não mostradas) como uma característica integral de sua operação de divisão de pacotes.

• “Entrada de gateway SDNP encriptada” é mostrada simbolicamente como uma operação de encriptação de entrada única, múltiplas saídas 1217K na Figura 83Q, onde uma única entrada é dividida, encriptada independentemente para cada saída e, em seguida, roteada para múltiplas saídas para transporte de múltiplas rotas ou em malha independentemente de se o pacote foi previamente embaralhado. Essa função é útil para iniciar o roteamento em malha encriptado em um gateway SDNP, incluindo funções de lixo e análise opcionais (não mostradas) como uma

Petição 870170079583, de 19/10/2017, pág. 321/709

314/425 característica integral de sua operação de divisão.

• O inverso da função de entrada de gateway encriptada anterior é “Saída de gateway SDNP desencriptada”, mostrado simbolicamente como operação de desencriptação de múltiplas entradas, saída única 1217L na Figura 83Q onde múltiplas entradas em malha são primeiro desencriptadas independentemente para cada entrada e, em seguida, são misturadas e roteadas para uma única saída ou cliente independentemente de o pacote estar embaralhado. A função é usada para coletar novamente e desencriptar os pacotes de componentes de uma mensagem em um gateway SDNP para comunicação de última milha ou para saltos de nuvem para nuvem, ou seja, para concluir o roteamento em malha SDNP incluindo as funções opcionais de lixo e análise (não mostradas) como uma característica integral de sua operação de mistura de pacotes.

• “Entrada de gateway SDNP embaralhada encriptada” é mostrada simbolicamente como uma operação de embaralhamento e encriptação de entrada única, múltiplas saídas 1217M na Figura 83R, onde uma única entrada é dividida, depois embaralhada e subsequentemente encriptada de modo independente para cada saída e, por fim, roteada para múltiplas saídas para transporte de múltiplas rotas ou em malha. Essa função é útil para iniciar o roteamento em malha encriptado em um gateway SDNP, incluindo funções de lixo e análise opcionais (não mostradas) como uma característica integral de sua operação de divisão.

• O inverso da função de entrada de gateway embaralhada encriptada anterior, “Saída de gateway SDNP desembaralhada desencriptada”, é mostrado simbolicamente como operação de desembaralhamento e desencriptação de múltiplas entradas, saída única 1217N na Figura 83R onde múltiplas entradas em malha são primeiro desencriptadas, depois desembaralhadas independentemente para cada entrada e, em seguida, são misturadas e roteadas para uma única saída ou cliente. A

Petição 870170079583, de 19/10/2017, pág. 322/709

315/425 função é usada para coletar novamente, desencriptar e desembaralhar os pacotes de componentes de uma mensagem em um gateway SDNP para comunicação de última milha ou para saltos de nuvem para nuvem, ou seja, para concluir o roteamento em malha SDNP incluindo as funções opcionais de lixo e análise (não mostradas) como uma característica integral de sua operação de mistura de pacotes.

• “Reembaralhamento em malha” é mostrado simbolicamente como operação de desembaralhamento e embaralhamento de múltiplas entradas, múltiplas saídas 1216A na Figura 83S onde as entradas de múltiplas rotas ou em malha são primeiro desembaralhadas de forma independente para cada entrada independentemente de se o pacote é encriptado, mesclado em um pacote de dados longo ou equivalente, removendo pacotes de lixo, se aplicável. O pacote de dados longo é dividido em múltiplos novos pacotes de dados, inserindo dados de lixo, conforme aplicável. Cada pacote de dados é, em seguida, embaralhado independentemente e, finalmente, roteado para múltiplas saídas para o transporte de múltiplas rotas ou em malha. A função é usada para atualizar o embaralhamento para novas condições de estado ou tempo, ou seja, para facilitar o “reembaralhamento” do pacote de dados, à medida que os pacotes de dados atravessam a nuvem SDNP.

• “Reencriptação em malha” é mostrado simbolicamente como operação de desencriptação e encriptação de múltiplas entradas, múltiplas saídas 1216B na Figura 83S onde as entradas de múltiplas rotas ou em malha são primeiro desencriptadas de forma independente para cada entrada independentemente de se o pacote é embaralhado, mesclado em um pacote de dados longo ou equivalente, removendo pacotes de lixo, se aplicável. O pacote de dados longo é dividido em múltiplos novos pacotes de dados inserindo dados de lixo, conforme aplicável. Cada pacote de dados é, em seguida, encriptado independentemente e, finalmente, roteado para

Petição 870170079583, de 19/10/2017, pág. 323/709

316/425 múltiplas saídas para o transporte de múltiplas rotas ou em malha. A função é usada para atualizar encriptação para novas condições de estado ou tempo, ou seja, para facilitar a “reencriptação” de pacotes de dados, à medida que os pacotes de dados atravessam a nuvem SDNP.

• “Reempacotamento em malha” mostrado anteriormente em forma esquemática na Figura 83A e em forma simbólica na Figura 83B onde as entradas de múltiplas rotas ou em malha são primeiro desencriptadas e subsequentemente desembaralhadas de forma independente para cada entrada, e depois mescladas em um pacote de dados longo ou equivalente, removendo pacotes de lixo, se aplicável. Em uma modalidade, o pacote longo deve compreender texto simples não encriptado ou o formato dos dados enviados por um cliente. Posteriormente, o pacote de dados longo é dividido em múltiplos pacotes de dados novos, inserindo dados de lixo, conforme aplicável. Cada pacote de dados é, em seguida, embaralhado e encriptado independentemente e, finalmente, roteado para múltiplas saídas para o transporte de múltiplas rotas ou em malha. A função é usada para atualizar tanto o embaralhamento quanto a encriptação para novas condições de estado ou tempo, ou seja, para facilitar o “reempacotamento” de pacotes de dados, à medida que os pacotes de dados atravessam a nuvem SDNP.

[00873] As preferências acima não pretendem limitar as possíveis permutações e combinações pelas quais o nó de mídia SDNP descrito pode ser usado. Por exemplo, o número de canais de entrada e saída, ou seja, o número de nós de mídia SDNP conectados a qualquer nó de mídia SDNP específico pode variar de uma para dezenas de conexões por dispositivo. Quatro entradas e saídas são mostradas por conveniência. A Figura 84A, um diagrama esquemático que representa fluxo de sinal, ilustra a comunicação entre quaisquer nós, como os nós de mídia Ma,b, Maj e Ma.h compreendendo os servidores de computador 1220B, 1220J e 1220H, respectivamente, todos executando o software de comunicação SDNP. Esse desenho ilustra duas

Petição 870170079583, de 19/10/2017, pág. 324/709

317/425 conexões entre dois nós de mídia - um conectado a partir de uma saída de um nó de mídia, por exemplo Ma,b , a uma entrada de outro nó de mídia, por exemplo Maj e uma segunda conexão a partir de uma saída do último nó de mídia nomeado, Maj a uma entrada do primeiro nó de mídia, Ma,b. Essa representação pretende representar uma conexão de rede da camada 3, não uma camada PHY ou de enlace de dados que pode, de fato, compreender uma única fibra, enlace coaxial, par trançado, Ethernet ou enlace de satélite entre os nós de mídia de comunicação. Como a representação está no nível da rede, não há risco de realimentação elétrica, condições de corrida ou instabilidade criada por ter a saída de um dispositivo conectada à entrada de outro dispositivo e a saída desse dispositivo conectada à entrada do primeiro dispositivo, ou seja, o esquema de rede não descreve uma rede de realimentação elétrica.

[00874] A fim de realizar uma rede de comunicação ou nuvem SDNP 1114 de acordo com esta invenção, como mostrado na Figura 84B, uma matriz de servidores de computadores que compõem os servidores 1220B, 1220D, 1220F, 1220H, 1220J, 1220S e 1220Q, cada um executando software para implementar um nó de mídia SDNP 1215, cria uma rede segura com os nós de mídia correspondentes Ma.b, Ma,d, Ma,f, Ma,h, Ma,j, Ma,s, e Ma,q, que podem representar uma porção dos nós de uma nuvem segura maior.

[00875] Os servidores de computador não precisam necessariamente executar o mesmo sistema operacional (SO), desde que o software que está sendo executado no nó de mídia SDNP 1215 compreenda um código executável compatível com o SO do hardware. O código executável é o software de computador executado em uma determinada plataforma de hardware que executa funções de aplicativos específicas. O código executável é criado compilando o “código-fonte”. Embora o código-fonte seja reconhecido como operações sequenciais, algoritmos e comandos logicamente organizados, uma vez que o código-fonte é convertido em código executável,

Petição 870170079583, de 19/10/2017, pág. 325/709

318/425 a funcionalidade real do programa é difícil ou impossível de reconhecer. O processo é unidirecional - o código-fonte pode gerar código executável, mas o código executável não pode ser usado para determinar o código fonte de onde veio. Isso é importante para impedir o roubo do sistema operacional, de modo que os hackers podem fazer engenharia reversa do código real.

[00876] O código-fonte não é executável porque é uma linguagem e uma sintaxe usada pelos programadores, e não o código da máquina destinado a ser executado em um sistema operacional específico. Durante a operação de compilação, o código executável gerado é específico para um sistema operacional, iOS, Android, Windows 9, Windows 10, MacOS, etc. O código executável para um sistema operacional não será executado em outro. O código-fonte pode, no entanto, ser usado para gerar código executável. O código-fonte da rede SDNP está, portanto, disponível apenas para os desenvolvedores do seu código-fonte e não para os operadores de rede que executam o código executável SDNP.

[00877] A conectividade de rede, que tipicamente segue protocolos padronizados, como Ethernet, WiFi, 4G e DOCSIS, descrita na seção de fundamentos deste pedido, provê uma estrutura comum para interconectar os dispositivos de maneira completamente independente do seu fabricante ou SO. Em operação, a conexão de rede entrega e transmite pacotes de dados de e para o sistema operacional do servidor de computador que roteia para e do software SDNP executado no SO do computador. Desta maneira, a função de comunicação de soft-switch baseada no nó de mídia SDNP pode ser realizada em qualquer dispositivo, independentemente do fabricante, e pode ser compatível com qualquer sistema operacional principal suportado, incluindo UNIX, LINUX, MacOS 10, Windows 7, Windows 8, etc.

[00878] Outro princípio é que a nuvem realizada por SDNP não tem ponto de controle central, nenhum dispositivo que decide o roteamento de pacotes e nenhum ponto comum que tenha conhecimento completo dos

Petição 870170079583, de 19/10/2017, pág. 326/709

319/425 pacotes de dados enviados, o que eles são, onde eles estão indo e como foram misturados, divididos, embaralhados e encriptados. Mesmo um operador de rede não tem uma imagem completa do tráfego de dados na rede. Como mostrado, a Figura 84B representa uma rede de computadores na mesma nuvem. O significado de estar na mesma nuvem é um termo subjetivo e arbitrário e não deve significar limitar a universalidade da invenção descrita. Uma segunda nuvem que compreende os nós de mídia Mb,b , Mb,e, Mb,f, Mb,g, Mbj, Mb,s, e Mb,t (não mostrados) pode compreender uma região geográfica diferente, ou ser hospedada por um provedor de serviço diferente. Por exemplo, a Amazon pode hospedar a “Nuvem A”, enquanto a Microsoft pode hospedar a “Nuvem B”, e uma empresa privada ou ISP pode hospedar a “Nuvem C”. Em geral, a conectividade intra-nodal é maior e mais densa dentro de uma nuvem do que para conexões de nuvem a nuvem, que são menores em número e exigem o uso de endereços IP autênticos compatíveis com a Internet para se comunicar em vez de utilizar números de roteamento de pacotes temporários atribuídos por um tradutor de endereço de rede (NAT).

[00879] No que se refere à representação das funções desempenhadas por qualquer SDNP, o mesmo princípio de incluir ou ignorar uma função com comutadores virtuais - seja executar a função ou passar os dados inalterados, é igualmente aplicável à discussão acima ou em uma modalidade alternativa onde as funções de embaralhamento e encriptação são trocadas em ordem, ou seja, executando o desembaralhamento antes da desencriptação e executando a encriptação antes do embaralhamento. Por motivos de brevidade, esses fluxos de dados alternativos não são ilustrados separadamente, entendendo que a sequência pode ser alterada desde que a função inversa seja realizada na sequência operacional oposta. Como o processamento de pacotes de dados ocorre no software, essa sequência pode ser alterada simplesmente mudando a sequência do algoritmo de forma ad hoc ou periódica, por exemplo,

Petição 870170079583, de 19/10/2017, pág. 327/709

320/425 mensalmente, diariamente, por hora, ou de forma chamada por chamada, tempo ou estado.

[00880] Conforme discutido anteriormente, qualquer sequência de embaralhamento, encriptação e mistura pode ser utilizada desde que os dados originais sejam recuperados precisamente na ordem inversa precisamente no mesmo conjunto de dados. Alterar o conteúdo entre operações sem desfazer a alteração antes de desembaralhar, desencriptar ou remisturar resultará em perda irrevogável de dados e corrupção permanente de dados. Dito isto, um pacote pode ser embaralhado mais de uma vez ou encriptado mais de uma vez em uma ordem aninhada desde que a regra de sequência inversa seja seguida para recuperar os dados originais. Por exemplo, o aplicativo cliente pode encriptar uma mensagem usando seu próprio método proprietário para criar texto cifrado no qual, ao entrar no gateway SDNP, o nó de mídia do gateway pode encriptar o pacote pela segunda vez para o transporte da rede. Esse método funcionará desde que o gateway final desencripte a encriptação da rede de modo pacote por pacote completo, antes que a desencriptação do aplicativo cliente ocorra.

[00881] Além do caso de encriptação baseada no cliente, para evitar o risco de corrupção de dados e perda de pacotes, em uma modalidade de acordo com esta invenção, as seguintes diretrizes são benéficas na implementação de comunicação baseada em SDNP:

• O embaralhamento de pacotes SDNP deve ser realizado no aplicativo habilitado para o SDNP do cliente ou, altemativamente, ao entrar em uma nuvem SDNP no gateway do nó de mídia SDNP, • Idealmente, a encriptação SDNP deve ocorrer em cada salto entre dois nós de mídia SDNP, ou seja, um pacote de dados é encriptado antes de rotear e desencriptado imediatamente após entrar no próximo nó de mídia SDNP.

• No mínimo, o reembaralhamento deve ocorrer sempre que um

Petição 870170079583, de 19/10/2017, pág. 328/709

321 / 425 pacote de dados entra ou deixa uma nuvem SDNP, seja para comunicações de última milha ou para saltos de nuvem para nuvem. Se o pacote de dados estiver encriptado com SDNP, ele deve ser desencriptado antes de ser desembaralhado e, em seguida, embaralhado novamente antes de ser encriptado novamente.

E preferível desencriptar e desembaralhar pacotes de dados de entrada antes da mistura. Desencriptar e desembaralhar pacotes longos misturados pode resultar em corrupção de dados. Da mesma forma, é preferível embaralhar e encriptar dados após a divisão. Desencriptar e embaralhar pacotes longos misturados pode resultar em corrupção de dados.

Os pacotes de lixo devem ser removidos dos pacotes de dados de entrada após a desencriptação e o desembaralhamento, mas antes da mistura. As exclusões de lixo em pacotes longos misturados podem resultar em corrupção de dados. Da mesma forma, é preferível inserir dados de lixo após a divisão, mas antes do embaralhamento e encriptação. As inserções de lixo em pacotes longos misturados podem resultar em corrupção de dados.

Deixar a encriptação do aplicativo de usuário de lado, o reembaralhamento (ou seja, desembaralhamento e, em seguida, embaralhamento), preferivelmente não deve ser realizado em dados encriptado s.

As inserções de dados de lixo devem ser realizadas de maneira consistente para facilidade de inserção e remoção.

Os pacotes de dados de entrada devem ser desencriptados e desembaralhados de acordo com o tempo, o estado e os algoritmos nos quais sua encriptação e embaralhamento ocorreram. Os pacotes de dados de saída devem ser encriptados e embaralhados de acordo com o tempo atual, o estado associado e o algoritmo relacionado.

Petição 870170079583, de 19/10/2017, pág. 329/709

322 / 425 • Os pacotes de texto simples são preferivelmente recriados somente nos nós de mídia. Todos os pacotes são embaralhados, encriptados, misturados, divididos e/ou contêm segmentos de dados de lixo enquanto estão em trânsito entre os nós de mídia.

[00882] Embora os métodos acima representem métodos possíveis de acordo com esta invenção, não pretendem limitar a possível combinação ou sequência de funções SDNP. Por exemplo, os pacotes encriptados podem ser posteriormente embaralhados desde que o mesmo pacote de dados seja desembaralhado antes da desencriptação.

[00883] Em uma implementação, o embaralhamento só é realizado dentro do aplicativo SDNP de um cliente e não pelos nós de mídia na nuvem SDNP. Nesses casos, a comunicação segura intra-nó é puramente uma sequência de encriptações e desencriptações, como a mostrada na Figura 84C, onde os componentes funcionais SDNP do nó de mídia Ma,h compreendendo a operação de divisão 1106, as operações de encriptação 1225A, a operação de mistura 1089 e as operações de desencriptação 1225B são mostradas explicitamente, enquanto os nós de mídia SDNP Ma,f e Maj são representados executando a função de nó de mídia SDNP de reencriptação em malha 1216B apenas simbolicamente.

[00884] Em operação, os dados que vão para o nó de mídia Maj de um outro nó de mídia (não mostrado) são primeiro direcionados para uma operação de desencriptação 1225B em uma das entradas do nó de mídia Ma,h e para a operação de mistura 1089, onde, se chegam ao mesmo tempo, os pacotes são combinados com pacotes de dados provenientes do nó de mídia Ma,f independentemente, que foram processados por outra operação de desencriptação 1225B. Uma vez misturados, os pacotes de dados são divididos em combinações novas e diferentes com diferentes destinos com base em um algoritmo de divisão executado pela operação de divisão 1106. As saídas individuais são então encriptadas independentemente por operações

Petição 870170079583, de 19/10/2017, pág. 330/709

323/425 de encriptação separadas 1225A e, em seguida, direcionadas para os nós de mídia Ma,f e Maj e para outros nós de mídia na rede.

[00885] Durante esse roteamento, o pacote longo que existe momentaneamente entre a operação de mistura 1089 e a operação de divisão 1106 pode de fato conter pacotes de dados da mesma conversa, um pacote de dados que viaja do nó de mídia MaJpara o nó de mídia Maj através do nó de mídia Ma,h, o outro pacote de dados que viaja do nó de mídia Maj através do nó de mídia Ma.h para o nó de mídia Ma,f ao mesmo tempo, mas na outra direção. Devido ao controle de roteamento preciso disponível na rede SDNP de acordo com esta invenção, descrito em maior detalhe posteriormente nesta descrição, um pacote de dados longo pode, a qualquer momento, conter qualquer combinação de conteúdo relacionado e não relacionado, mesmo dados ou fragmentos de som da mesma conversa full duplex em direções opostas. Se os dados não chegam ao mesmo tempo, os pacotes de dados passam em série através do nó de mídia em direções opostas sem nunca compartilhar o mesmo pacote longo. Em ambos os casos, não há interação ou degradação de desempenho em um nó de mídia SDNP que transporta múltiplas conversas no modo full duplex.

[00886] Embora no início essa forma única de comunicação em rede possa parecer confusa, representando o transporte de dados de uma maneira mostrada na Figura 84D revela rapidamente a simplicidade da comunicação de dados em um nó de mídia SDNP, mesmo quando um nó de mídia suporta simultaneamente as duas direções de comunicação full duplex. Por exemplo, os pacotes de dados, mostrados como linhas sombreadas, que entram no nó de mídia Ma,j primeiro passam por desencriptação 1032, em seguida, operação de mistura 1089, operação de divisão 1106 e operação de encriptação 1026, finalmente saindo do nó de mídia Maj e entrando no nó de mídia Ma.h em um estado recém-encriptado e depois repetindo a mesma sequência, mas em um novo momento e estado. Finalmente, os pacotes de dados do nó de mídia Ma.h

Petição 870170079583, de 19/10/2017, pág. 331/709

324 / 425 entram no nó de mídia Ma,f onde são desencriptados, misturados, divididos e reencriptados e, finalmente, enviados para o próximo nó de mídia na nuvem. Ao mesmo tempo, os dados que passam pela outra direção, mostrados por linhas não sombreadas, entram no nó de mídia Ma,f onde são desencriptados, misturados, divididos e reencriptados, depois passados para o nó de mídia Ma,h e finalmente enviados através do nó de mídia Maj para outros nós de mídia na nuvem SDNP.

[00887] Comunicação de Ultima Milha O enlace de dados entre um cliente e a nuvem SDNP é descrito aqui como a comunicação de última milha. O termo “última milha” inclui a “primeira milha”, a conexão entre um chamador e a nuvem, porque toda comunicação é invariavelmente de duas vias envolvendo uma mensagem enviada e uma resposta, ou possivelmente uma conversa full duplex. Como tal, o termo “última milha”, como usado aqui, deve significar qualquer conexão entre um cliente e a nuvem SDNP, independentemente de se o cliente iniciou a chamada ou foi a pessoa chamada, ou seja, o destinatário. Um exemplo de conexão de última milha está ilustrado na Figura 85A, onde a nuvem SDNP 1114 compreende uma rede de servidores de computador 1118 que executa o software para operar como nós de mídia SDNP Ma.b , Ma,d, Ma,f, Ma,h, Ma,j, Ma,s, e Ma,q, juntos representando pelo menos uma parte dos nós de uma nuvem segura. Especificamente, no exemplo mostrado, o servidor de computador 1220H, facilitando o nó de mídia SDNP Ma,h, funciona como um nó de mídia de gateway SDNP conectado direta ou indiretamente à estação base LTE 17 e está conectado via torre celular 18 e o enlace de rádio 13 ao telefone celular 32 como um cliente. Conforme usado aqui, o termo “nó de gateway” ou “nó de mídia de gateway” refere-se a um nó de mídia que se conecta com um nó que está fora da rede SDNP, tipicamente um dispositivo cliente, como um telefone celular ou um computador, caso em que, a conexão entre o nó de gateway e o dispositivo cliente é uma conexão de “última milha”.

Petição 870170079583, de 19/10/2017, pág. 332/709

325/425 [00888] Um exemplo em que um nó de gateway SDNP seguro se conecta a uma última milha não segura é mostrado na Figura 85B, por exemplo, o nó de gateway SDNP está conectado a um telefone que não tem um aplicativo SDNP instalado. Como mostrado, o telefone celular 32 é conectado pelo enlace de rádio 28 à torre celular 18, que envia e recebe pacotes de dados do telefone celular 32 e os converte em comunicações com fio, como Ethernet, fibra, cabo coaxial, cabo de cobre, etc. usando a estação base LTE 17. Embora os pacotes de dados sejam carregados bidirecionalmente em uma única conexão de camada PHY 1, fio, cabo, enlace de rádio ou satélite, o fluxo de dados é representado separadamente para os pacotes enviados do telefone celular 32 para o nó de mídia SDNP Ma,h, e viceversa. Conforme ilustrado, a última milha não é segura, a menos que o aplicativo que está sendo usado no celular tenha encriptação embutida e a pessoa que está sendo chamada esteja usando o mesmo aplicativo com a mesma encriptação.

[00889] Em operação, os pacotes de dados abertos enviados do telefone celular 32 para o nó de mídia do gateway SDNP Ma,h não são desencriptados nem desembaralhados porque essas funções estão desabilitadas, ou seja, em curto-circuito e, como tal, não são mostradas. Em vez disso, os pacotes de dados de entrada são passados diretamente para a operação do misturador 1089 misturando-os com outros pacotes, dividindo-os em múltiplas saídas para o transporte em malha usando a operação de divisão 1106. Cada uma dessas saídas é então segura usando a operação de embaralhamento 926 e a operação de encriptação 1026 antes do transporte. Uma saída mostrada como um exemplo é roteada para o nó de mídia Ma,f, no servidor 1220F. A mensagem pode, por sua vez, ser processada no nó de mídia Ma,f para comunicação intra-nuvem como descrito anteriormente e enviada para outro nó de mídia, por exemplo, nó de mídia Maj no servidor de computador 1220J.

Petição 870170079583, de 19/10/2017, pág. 333/709

326/425 [00890] O fluxo de dados da nuvem para o telefone celular 32 do nó de mídia Ma,f, no servidor 1220F e de outros nós de mídia são processados em sequência inversa, começando com as operações de desencriptação 1032 e desembaralhados usando operações de desembaralhamento 928 e depois misturados com outros pacotes de entrada em um pacote longo temporário por operação de mistura 1089. O pacote longo é então dividido em pedaços pela operação de divisão 1106 direcionando alguns pacotes adiante na rede e separando os pacotes para serem enviados para o telefone celular 32. Esses pacotes podem ser enviados juntos ou analisados e enviados sucessivamente em pacotes de dados separados de volta para a estação base LTE 17 e para o celular 32.

[00891] Os pacotes de dados que atravessam a rede podem ser repetidamente reencriptados e reembaralhados, conforme descrito anteriormente. Altemativamente, em uma modalidade, os pacotes de dados permanecem embaralhados sem reembaralhamento em toda a nuvem, mas podem ser repetidamente reencriptados em cada nó de mídia. Em um sistema de embaralhar uma vez, desembaralhar uma vez, o embaralhamento ocorre no nó de gateway onde os pacotes entram na nuvem e o desembaralhamento ocorre no nó de gateway onde os pacotes saem da nuvem, ou seja, nos nós de mídia de gateway conectados às primeira e última milhas. Embora, como observado acima, um nó de mídia conectado à primeira ou última milha possa ser chamado de um nó de gateway, na realidade ele compreende o mesmo software e funcionalidade do nó de mídia SDNP como qualquer outro nó de mídia na nuvem, mas funciona de forma diferente para entrar em contato com um cliente.

[00892] Outra opção para implementar a comunicação SDNP de embaralhar uma vez, desembaralhar uma vez é implementar o embaralhamento no dispositivo do cliente usando o software. Como mostrado na Figura 85C, em uma conexão entre o telefone celular 32 e o nó de mídia

Petição 870170079583, de 19/10/2017, pág. 334/709

327 / 425

SDNP Ma,f no servidor de computador 1220F, o nó de mídia SDNP Ma,h atua como um nó de mídia de gateway entre o cliente e a nuvem SDNP onde o nó de mídia do gateway SDNP Ma.h compreende a operação de mistura 1089, operação de divisão 1106, operação de encriptação 1225A, operação de embaralhamento 1226B, operação de desencriptação 1225B e operação de desembaralhamento 1226A. Conforme definido anteriormente, qualquer nó de mídia, um nó de comunicação designado com um nome de nó M, é capaz de qualquer combinação de todas essas operações de segurança, ou seja, mistura e divisão, encriptação e desencriptação, embaralhamento e desembaralhamento, etc. Em operação, os pacotes de dados são embaralhados no telefone celular 32 pelo software SDNP, viajam pelo enlace de rádio 28 para a torre LTE 18, onde a estação base LTE 17 converte os sinais em Ethernet, fibra ou outra linha fixa para comunicação com o nó do gateway SDNP. Dependendo da portadora local, porções desse enlace podem incluir o tráfego através de um NAT privado ou envolver dados que viajam pela Internet. Os pacotes de dados são então enviados da estação base LTE 17 para o nó de mídia SDNP Ma.h atuando como um nó de gateway SDNP.

[00893] O pacote de dados de entrada é então roteado para a operação de passagem 1216H e subsequentemente misturado com outros pacotes de dados de entrada usando a operação de mistura 1089, então dividido pela operação de divisão 1106, com os pacotes de dados do telefone celular 32 direcionados para o nó de mídia Ma,f através da operação de encriptação 1225A. Desta maneira, os dados que atravessam a nuvem são encriptados pelo gateway, mas embaralhados pelo aplicativo SDNP do cliente. Por outro lado, o tráfego de dados encriptado e embaralhado da nuvem SDNP é roteado através do nó de mídia Ma,f, passado através da operação de desencriptação 1225B, misturado pela operação de mistura 1089 e dividido em novos pacotes pela operação de divisão 1106, extraindo os pacotes de dados com o telefone celular 32 como seu destino e enviando os pacotes de dados para o telefone

Petição 870170079583, de 19/10/2017, pág. 335/709

328/425 celular 32, não modificados pela operação de passagem 1216H. Desta maneira, toda a comunicação é embaralhada de extremidade a extremidade, mas apenas encriptada na nuvem SDNP.

[00894] Uma modificação do método acima ainda provê embaralhamento tanto na última milha quanto na nuvem, mas o embaralhamento de última milha é diferente do embaralhamento usado na nuvem. Como mostrado na Figura 85D, em uma conexão entre o telefone celular 32 e o nó de mídia SDNP Ma,f no servidor de computador 1220F, o nó de mídia SDNP Ma,h atua como um nó de gateway entre o cliente e a nuvem SDNP onde o nó de mídia SDNP Ma.h compreende a operação de mistura 1089, operação de divisão 1106, operação de embaralhamento e encriptação 1226C, operação de desencriptação e desembaralhamento 1226D, operação de embaralhamento 1226B e operação de desembaralhamento 1226A. Em operação, os pacotes de dados são embaralhados no telefone celular 32 pelo software SDNP, viajam pelo enlace de rádio 28 para a torre LTE 18, e a estação base LTE 17 converte os sinais em Ethernet, fibra ou outra comunicação com fio para o nó de gateway SDNP. Dependendo da portadora local, as porções do enlace do telefone celular 32 para a estação base LTE 17 podem incluir o tráfego através de um NAT privado ou envolver dados que viajam pela Internet. Os pacotes de dados são então enviados da estação base LTE 17 para o nó de mídia SDNP Ma.h atuando como um nó de gateway SDNP.

[00895] O pacote de dados de entrada é então roteado para a operação de desembaralhamento 1226A e subsequentemente misturado com outros pacotes de dados de entrada usando a operação de mistura 1089, então dividido pela operação de divisão 1106, com os pacotes de dados do telefone celular 32 direcionados para o nó de mídia Ma,f através da operação de embaralhamento e encriptação 1226C. Desta maneira, os dados que atravessam a nuvem são encriptados e embaralhados pelo nó de gateway, mas

Petição 870170079583, de 19/10/2017, pág. 336/709

329/425 de uma maneira diferente do embaralhamento usado pelo aplicativo SDNP do cliente para segurança de última milha. Por outro lado, o tráfego de dados encriptado e embaralhado da nuvem SDNP é roteado através do nó de mídia Ma,f, através da operação de desencriptação e desembaralhamento 1226D, depois misturado pela operação de mistura 1089 e dividido em novos pacotes pela operação de divisão 1106, extraindo os pacotes de dados com o telefone celular 32 como seu destino e enviando os pacotes de dados para o telefone celular 32 através da operação de embaralhamento 1226B. Os pacotes de dados que entram no telefone celular 32 são desembaralhados por um aplicativo habilitado para SDNP. Desta maneira, a comunicação na nuvem é tanto encriptada quanto embaralhada nos nós de mídia, enquanto a última milha é embaralhada pelo nó de gateway e pelo aplicativo do telefone de uma maneira diferente do embaralhamento da nuvem. Um aspecto importante dos pacotes de dados de embaralhamento e desembaralhamento dentro do telefone é o método usado para passar informações de estado, chaves numéricas ou segredos compartilhados entre a nuvem e o cliente. Este assunto é discutido posteriormente nesta descrição.

[00896] Transporte de Dados Fragmentados De acordo com esta invenção, uma rede de servidores de computadores que executam software para realizar funções de nó de mídia SDNP facilita comunicação global segura para uma grande variedade de dispositivos com base na fragmentação de dados em comunicação com comutação de pacotes. Como ilustrado na Figura 86, a nuvem SDNP 1114 compreendendo uma rede de servidores de computador que executa o software para operar como nós de mídia SDNP Ma.b, Ma,d, Ma,f, Ma,h, Ma,j, Ma,s, e Ma,q e outros não mostrados pode se conectar a uma grande variedade de dispositivos e clientes incluindo: (a) estação base LTE 17 com enlaces de rádio 28 ao telefone celular 32 e ao tablet 33. A estação base 17 também pode ser ligada por rádio a qualquer outro dispositivo habilitado para LTE; (b) sistema WiFi público 100 com antena WiFi 26 que

Petição 870170079583, de 19/10/2017, pág. 337/709

330/425 provê enlace de rádio WiFi 29 ao notebook 35 ou a tablets, telefones celulares, leitores eletrônicos e outros dispositivos conectados a WiFi, incluindo aparelhos de Internet; (c) cabo CMTS 101 conectado por fibra óptica ou cabo coaxial ao modem a cabo 103 e depois ao computador desktop 36 ou estação base WiFi doméstica, dispositivos conectados a Ethernet, etc.;

(d) cabo CMTS 101 conectado por fibra óptica ou cabo coaxial ao conversor digital TV STB 102 e depois à HDTV 39; (e) uma conexão com fio a roteadores de internet 66A, 66B, 66C; (f) redes de rádio profissionais 14 tais como TETRA e EDAC conectadas pela torre de rádio 15 a radiocomunicadores 16B, estações base 16A e veículos profissionais 40; (g) troca de difusão corporativa PBX 8 e telefones de mesa 9; e (h) ponte PSTN 3 para redes telefônicas convencionais e POTS. Conforme mostrado, qualquer nó de mídia SDNP pode funcionar como um nó de gateway.

[00897] Uma ilustração simplificada do transporte de pacotes de dados é ilustrada na Figura 87, mostrando exemplos de comunicação baseada em nuvem SDNP entre o tablet 33 e o automóvel 1255, compreendendo o pacote de dados 1056, sequencialmente 2A, 2B, 2C, 2D, 2E e 2F, e entre o notebook 35 e o telefone celular 32, compreendendo o pacote de dados 1055, sequencialmente IA, IB, 1C, ID, IE e 1F. Outro pacote de dados 1250, sequencialmente como 3A, 3B, 3C, 3D, 3E e 3F; um pacote de dados 1252, sequencialmente como 4A, 4B, 4C, 4D, 4E e 4F; e um pacote de dados 1251, sequencialmente como 5A, 5B, 5C, 5D, 5E e 5F, também são transportados pela rede em simultâneo com os pacotes de dados 1255 e 1256. Os pacotes mais curtos representam componentes em vários momentos durante o transporte, exibidos coletivamente para ilustrar a natureza dinâmica do transporte da rede.

[00898] No exemplo mostrado, os dados de cada pacote são embaralhados, de modo que a sequência de segmentos de dados pode estar em ordem aleatória ou pode, por acaso, estar em ordem ascendente. Os segmentos

Petição 870170079583, de 19/10/2017, pág. 338/709

331 /425 de dados de um comunicado ou conversa também podem ser intercalados com segmentos de dados não relacionados. Na verdade, é altamente improvável que um pacote de dados, uma vez que entre na nuvem SDNP, não seja misturado com outros segmentos de dados não relacionados. De fato, em qualquer dado pacote de dados que transita entre dois nós de mídia SDNP, a mistura de segmentos de dados não relacionados e o embaralhamento da ordem desses pacotes é uma condição normal. Com um grande número de conversas e pacotes de dados que atravessam a nuvem simultaneamente, a chance de todos os dados restarem no mesmo pacote de dados é estatisticamente remota. Na ausência de dados suficientes, a operação de mistura dentro dos nós de mídia introduz dados de lixo. A inclusão de vários segmentos de dados de dados não relacionados, como mostrado, ilustra o princípio da mistura de comunicados e conversas em pacotes de dados durante o transporte SDNP, mas não representa com precisão a quantidade e a frequência verdadeiras de dados não relacionados ou segmentos de dados de lixo e enchimento presente nos pacotes de dados.

[00899] A Figura 88A ilustra o início da comunicação no tempo to e estado correspondente 990 do notebook 35 ao telefone celular 32 começando com o pacote de dados 1055 e pacotes de dados não relacionados 1056 e 1250 a 1252 entrando na rede através de vários nós de gateway incluindo Ma,q, Ma,h, Ma,b, e Ma,s. Como mostrado na Figura 88B, no tempo ti e estado correspondente 991, o pacote de dados 1055 é dividido em vários pacotes de dados de componentes. Tal pacote de dados 1261A compreendendo segmentos de dados IA e 1B em ordem ascendente, mas misturado com segmentos de dados não relacionados, é enviado para o nó de mídia Ma,b. O pacote de dados 1261B que compreende os segmentos de dados ID, 1C e 1F em ordem embaralhada e também misturado com segmentos de dados não relacionados é roteado para o nó de mídia Maj, e o pacote 1261C que compreende o segmento de dados 1E é enviado para o nó de mídia Ma,h.

Petição 870170079583, de 19/10/2017, pág. 339/709

332/425 [00900] Como mostrado na Figura 88C, no tempo t2 e estado correspondente 992, os dados são separados em novas combinações de pacotes de dados de componentes. Especificamente, o pacote de dados 1261A é dividido em novos pacotes de dados 1262A e 1262B onde o pacote de dados 1262A que compreende o segmento de dados IA e outros segmentos de dados é roteado para o nó de mídia Ma,s. enquanto o pacote de dados 1262B compreendendo o segmento de dados 1B é roteado para o nó de mídia Ma,d. O pacote de dados 1261B também é dividido em pacotes de dados de componentes 1262C e 1262D, onde o pacote de dados 1262C, que compreende os segmentos de dados 1C e 1F em ordem ascendente, mas misturado com segmentos de dados não relacionados, é roteado para o nó de mídia Ma,d enquanto o pacote de dados de componentes 1262D, que compreende o segmento de dados 1D, é direcionado para o nó de mídia Ma,f. Enquanto isso, o pacote de dados 1262E que compreende o segmento de dados 1E continua o trânsito sozinho ou misturado com pacotes de dados não relacionados (não mostrados) para o nó de mídia Ma,f.

[00901] Como mostrado na Figura 88D, no tempo t3 e estado correspondente 993, o pacote de dados 1263A, que compreende o segmento de dados IA e o pacote de dados 1263C que compreende os segmentos de dados ID e 1E, são transportados para o nó de mídia Ma.d enquanto o pacote de dados 1263B, que compreende os segmentos de dados IB, 1C e 1F, aguarda a sua chegada ao mesmo nó de mídia Ma,d. Como mostrado na Figura 88E, no tempo t4 e estado correspondente 994, o nó de mídia Ma.d mistura os pacotes de dados 1263A, 1263B e 1263C, restaurando o pacote de dados original 1055 e roteia o pacote de dados 1055 para o telefone celular 32, em conjunto ou de forma fragmentada. Um resumo do transporte de pacotes de dados entre o notebook 35 e o telefone celular 32 é mostrado na Figura 88F.

[00902] Como mostrado na Figura 89A, independentemente da e em

Petição 870170079583, de 19/10/2017, pág. 340/709

333/425 simultâneo com a comunicação entre o notebook 35 e o telefone celular 32, ο tablet 33 está se comunicando com o automóvel 1255, começando no tempo to e estado correspondente 990, quando o pacote de dados 1056 entra na nuvem segura 1114. Como mostrado na Figura 89B, no tempo ti e estado correspondente 991, o pacote de dados de entrada 1056 é dividido em pacotes de dados de componentes 1261D e 1261E, em que o pacote 1261 D, que compreende os segmentos de dados 2B e 2C em ordem embaralhada, mas coincidentemente crescente, é roteado para o nó de mídia Ma,q, e o pacote 1261E que compreende os segmentos de dados 2E, 2F, 2A e 2D em ordem embaralhada é roteado para o nó de mídia Maj.

[00903] Como mostrado na Figura 89C, no tempo t2 e estado correspondente 992, o pacote de dados 1261D é modificado, embaralhando a ordem dos dados e inserindo segmentos de dados de outras fontes para criar o pacote de dados 1262F. Da mesma forma, o pacote de dados 1261E é dividido pelo nó de mídia Mi,j, em vários pacotes de dados 1262G, 1262H, e 1262J. O pacote de dados 1262J, compreendendo o segmento de dados 2A, é roteado para o nó de mídia Ma,f. O pacote de dados embaralhado 1262H, que compreende os segmentos de dados 2D e 2E misturados com uma série de segmentos de dados não relacionados, é roteado para o nó de mídia Ma.d . Além disso, no tempo t2O pacote de dados 1262G compreendendo o segmento de dados 2F é roteado para o nó de mídia Ma,s.

[00904] Como mostrado na Figura 89D, no tempo t3, e estado correspondente 993, o pacote de dados 1263D que compreende os segmentos de dados 2B e 2C em ordem ascendente é roteado para o nó Ma,s onde o pacote de dados 1263E, que compreende o segmento de dados 2F, está aguardando a chegada de outros pacotes. Ao mesmo tempo, o pacote de dados 1263G é roteado para o nó de mídia Ma,d, onde o pacote de dados 1263F, que compreende os segmentos de dados 2D e 2E em ordem ascendente, está aguardando. Essa condição destaca que na rede SDNP, os pacotes de dados

Petição 870170079583, de 19/10/2017, pág. 341/709

334/425 podem transitar imediatamente ou, se desejado, podem ser mantidos temporariamente. Como mostrado na Figura 89E, no tempo t4 e estado correspondente 994, o pacote de dados 1264B que compreende os segmentos de dados 2D, 2A e 2E em ordem embaralhada é roteado para o nó de mídia Ma,s onde o pacote de dados 1264A, que compreende os segmentos de dados 2C e 2F, está aguardando. Como mostrado na Figura 89F, no tempo tf o pacote de dados final 1056 é montado e roteado para o automóvel 1255 ou, altemativamente, todos os componentes do segmento de dados do pacote de dados final 1056 são roteados de forma não misturada para o automóvel 1255 e remontados ali. Um resumo do roteamento do pacote de dados 1056 do tablet 33 para o automóvel 1255 é mostrado na Figura 89G.

[00905] Conforme mostrado, os pacotes de dados que transitam através da nuvem SDNP carregam múltiplas conversas simultâneas para diferentes destinos, mudando dinamicamente em conteúdo de um nó de mídia SDNP para o próximo. Não há impacto adverso, perda de dados ou vazamento de uma conversa com outra através da combinação ou divisão de segmentos de dados não relacionados. Por exemplo, como ilustrado na Figura 87, o pacote de dados 1257 contém os segmentos de dados 1C e 1F roteados para o telefone celular 32, os segmentos de dados 2D e 2E roteados para o automóvel 1255 e outros segmentos de dados não relacionados e dados de lixo, todos os quais são entregues a diferentes destinos não afetados pelo compartilhamento temporário de pacotes de dados com outros segmentos de dados não relacionados.

[00906] Além disso, uma vez que nenhum pacote de dados contém uma palavra, um som ou uma conversa completa, a fragmentação de dados e o roteamento em malha empregados pelos nós de mídia SDNP de acordo com esta invenção tomam o conteúdo do pacote de dados incompreensível e invulnerável aos ataques man-in-the-middle. Como mostrado na Figura 90, no tempo ti, um invasor man-in-the-middle 630 que detecta pacotes de dados

Petição 870170079583, de 19/10/2017, pág. 342/709

335/425 em trânsito dentro e fora do nó de mídia Maj vê apenas pacotes de texto cifrado 1270A, 1271A, 1272A, e 1273A. No caso improvável de que os arquivos encriptados estejam quebrados, o conteúdo de texto simples subjacente dos pacotes 1270B, 1271B, 1272B e 1273B compreende uma mistura incompleta embaralhada de segmentos de dados. Essa condição de dados persiste por apenas uma fração de segundo antes de novos pacotes de dados atravessarem o mesmo nó de mídia. Mesmo sem embaralhar e misturar, o tempo limitado disponível para desencriptar um pacote de dados antes de ser reencriptado, reembaralhado, redividido ou reempacotado toma os ataques de supercomputadores mesmo ineficazes.

[00907] A Figura 91A ilustra a natureza dinâmica do transporte de mídia SDNP usando o tempo como base para representar o transporte de dados. Os dados mostrados aqui são os mesmos que a sobreposição de dados ilustrada no gráfico de rede da Figura 87. Em uma representação baseada no tempo, o pacote de dados 1056 do tablet 33 é dividido em pacotes de dados 1261A, 1261B e 1261C. No tempo t2, o pacote 1261A é dividido em novos pacotes de dados 1262A e 1262B, e o pacote de dados 1261B é dividido em novos pacotes de dados 1262C e 1262D; e o pacote de dados 1261C é atualizado para o pacote de dados 1262E sem alteração no conteúdo. No tempo t3, o pacote de dados 1262A é atualizado no pacote de dados 1263A sem alterar seu conteúdo; e os pacotes de dados 1262B e 1262C são misturados no pacote de dados 1263B, enquanto os pacotes de dados 1262D e 1262E são misturados no pacote de dados 1263. No tempo t4, os pacotes de dados 1263A, 1263B e 1263C são misturados para reconstituir o pacote de dados 1055.

[00908] O transporte de dados SDNP também pode ser representado em forma de tabela. Por exemplo, a tabela 1279, mostrada na Figura 91B, ilustra o processamento de pacotes de dados no tempo Í3, mostrando os nós de mídia de origem, os pacotes de entrada, o tempo que os pacotes de entrada

Petição 870170079583, de 19/10/2017, pág. 343/709

336/425 foram encriptados, o tempo que os pacotes de entrada foram embaralhados, a última vez que os pacotes de dados foram misturados e divididos, ou seja, colocados em malha e os pacotes de saída resultantes. Um nó de mídia usa essas informações para saber o que fazer com os pacotes de dados de entrada, como reempacotar os dados e como reencriptar ou reembaralhar os dados se assim desejar.

[00909] Como mostrado na Figura 91C, um outro aspecto da natureza dinâmica do transporte de mídia SDNP é a sua capacidade de armazenar temporariamente pacotes em um nó de mídia esperando que outros pacotes cheguem. Usando os mesmos dados como mostrado anteriormente na Figura 87, esse mecanismo é ilustrado em uma representação baseada em tempo do pacote 1056. No tempo ti, o pacote de dados de entrada 1056 é embaralhado e depois dividido no pacote de dados 1261 D, que compreende os segmentos de dados 2B e 2C, e o pacote de dados 1261E, que compreende os pacotes 2A, 2D, 2E e 2F. No tempo t2, o comunicado é dividido em quatro pedaços, os pacotes de dados 1262F, 1262G, 1262H e 1262J, os três últimos resultantes da divisão do pacote de dados 1261E no pacote de dados 1262G, que compreende o segmento de dados 2F; o pacote de dados 1262H, que compreende os segmentos de dados 2D e 2E; e o pacote de dados 1262J, que compreende o segmento de dados 2A. O pacote de dados 1261 D, que compreende os segmentos de dados 2B e 2C, move-se através da rede com o seu conteúdo inalterado, isto é, como pacote de dados 1262F no tempo t2, e como pacote de dados 1263D no tempo t3. De modo similar, no tempo Í3, o pacote de dados 1262J, que compreende o segmento de dados 2A, permanece inalterado em seu conteúdo como pacote de dados 1263G.

[00910] Para representar um pacote de dados que é armazenado temporariamente em um nó de mídia, a Figura 91C ilustra o pacote de dados que se move de um dado nó de mídia para o mesmo nó de mídia em incrementos de tempo sucessivos. Por exemplo, entre o tempo t3 e o tempo t4,

Petição 870170079583, de 19/10/2017, pág. 344/709

337/425 é mostrado que o pacote de dados 1263E que compreende o segmento de dados 2F, o mesmo que o seu pacote de dados antecessor 1262G, se move do nó de mídia Ma,s para o nó de mídia Ma,s, ou seja, o pacote é estacionário. Embora o estado do pacote de dados estacionário, a encriptação e o embaralhamento possam mudar para refletir um tempo atualizado, a representação esquemática do conteúdo do pacote de dados 1263E que viaja do nó de mídia de origem Ma,s para um nó de mídia de destino idêntico Ma,s no tempo t4 significa que ele é mantido na memória pelo nó de mídia Ma,s.

[00911] De modo similar, entre o tempo ts e o tempo t4, é mostrado que o pacote de dados 1263F que compreende os segmentos de dados 2D e 2E, os mesmos que o seu pacote de dados antecessor 1262H, se move do nó de mídia Ma,d para o nó de mídia Ma,d, novamente significando que o pacote é estacionário e mantido temporariamente na memória. No tempo t4 o pacote de dados de entrada 1263D é misturado no nó de mídia Ma,s com o pacote de dados 1263E, que foi mantido na memória desde o tempo t3 resultando em um novo pacote de dados mesclado 1264A, que compreende os segmentos de dados concatenados 2B, 2C e 2F. Esse novo pacote de dados 1264A permanece mantido no nó de mídia Ma,s aguardando mais dados de entrada. Enquanto isso, no tempo t4 no nó de mídia Ma,d, os pacotes de dados 1263F e 1263G são misturados e roteados para o nó de mídia Ma,s como pacote de dados 1264B, compreendendo os segmentos de dados 2A, 2D e 2E. No tempo tf, o pacote de dados de entrada 1264B é misturado com o pacote de dados estacionário 1264A esperando no nó de mídia Ma,s desde o tempo t4, criando o pacote de dados original 1056 enviado ao automóvel 1255.

[00912] Conforme descrito, nos métodos mostrados de acordo com esta invenção, os dados podem transitar através da nuvem SDNP ou ser mantidos estacionários em um nó de mídia específico aguardando a chegada de dados de entrada antes de prosseguir.

[00913] Comando e Controle de Transporte Para que um nó de mídia

Petição 870170079583, de 19/10/2017, pág. 345/709

338/425 saiba como processar pacotes de dados de entrada, ele deve de alguma forma obter informações sobre algoritmos, sementes numéricas e chaves a serem usadas no embaralhamento, no desembaralhamento, na encriptação, na desencriptação, na mistura, na divisão, na inserção e exclusão de lixo, e na análise de pacotes de dados. Essas informações importantes podem ser transmitidas em uma variedade de meios ou alguma combinação dos mesmos, incluindo • Passagem de segredos compartilhados para o nó da mídia como parte da instalação ou revisões do software SDNP, • Passagem de dados de controle através dos nós de mídia antes do envio de conteúdo, • Passagem de dados de controle através dos nós de mídia como parte do pacote de dados, • Passagem de dados de controle através de um canal de dados separado dos nós de mídia que estão comunicando a informação, por exemplo, através de um “servidor de sinalização” de rede que opera em paralelo aos nós de mídia, • Armazenamento de informações sobre a identidade de dispositivos conectados à rede SDNP e seus correspondentes endereços IP ou SDNP em servidores de nomes SDNP separados dos servidores de sinalização ou servidores que funcionam como nós de mídia que transportam conteúdo.

[00914] Por exemplo, como mostrado na Figura 92A, no tempo t3 correspondente ao estado 993, o pacote de dados 1262B, que compreende o segmento de dados 1B, o pacote de dados 1262C, que compreende os segmentos de dados 1C e 1F, e o pacote de dados 1262H que compreende os segmentos de dados não relacionados entram no nó de mídia Ma,d. Ao entrar no nó de mídia, os pacotes de dados de entrada 1262B, 1262C e 1262H, que para maior clareza são mostrados em forma não encriptada, são primeiro

Petição 870170079583, de 19/10/2017, pág. 346/709

339/425 processados por operações de desencriptação e desembaralhamento. Os pacotes de dados 1262B, 1262C e 1262H são então misturados, incluindo limpeza, isto é, remover bits de lixo, para produzir o pacote de dados de saída 1263B, compreendendo os segmentos de dados IB, 1C e 1F. Para executar esta tarefa, o servidor de computador 1220D, que é o hospedeiro do nó de mídia Ma,d, deve primeiro obter certas informações relativas aos tempos e aos estados correspondentes usados para criar os pacotes de dados de entrada. Essas informações podem estar contidas no pacote de dados como um cabeçalho ou enviadas antecipadamente ao nó de mídia a partir de um nó de sinalização ou outro nó de mídia. Como descrito na tabela da Figura 91B, esses pacotes de dados de entrada foram encriptados pela última vez no tempo t2. Os pacotes foram embaralhados pela última vez no tempo ti, correspondente ao estado 1301 A, ou possivelmente no tempo t2, correspondente ao estado 1301B. Essa informação deve ser entregue ao nó Ma,d para que ele processe corretamente os dados de entrada de acordo com as condições usadas para criar os pacotes de dados. A informação de estado nos tempos ti e t2 é usada para criar as chaves D correspondentes 1306A e 1306 necessárias para a desencriptação de pacotes dos pacotes de entrada usando o gerador de chaves Di 1305A e o gerador de chaves D2 1305B. Os geradores de chaves de desencriptação são realizados usando o software localizado em um servidor DMZ conectado ao nó de comunicação Ma,d. A operação e geração geral de chaves de encriptação e desencriptação foram descritas no contexto dessa descrição. Ao contrário da encriptação estática, a encriptação na rede SDNP é dinâmica, o que significa que a única maneira de criar a chave de desencriptação apropriada é saber quando o arquivo foi encriptado. Essa informação é transmitida como um tempo ou estado entregue juntamente com o pacote de dados de entrada, ou, altemativamente, antes que o pacote chegue, e usada para selecionar o algoritmo de encriptação apropriado para gerar a chave de desencriptação associada. Os algoritmos de encriptação e

Petição 870170079583, de 19/10/2017, pág. 347/709

340/425 seus geradores de chave de desencriptação associados são armazenados como segredos compartilhados em um servidor DMZ seguro afixado ao nó de comunicação Ma,d· [00915] Embora os pacotes de dados possam ser encriptados, para fins de ilustração, os pacotes de dados são mostrados na sua forma não encriptada. A mesma informação de estado é também empregada pelo gerador de sementes numéricas 1303 para produzir as sementes numéricas correspondentes 1304A e 1304B para determinar os algoritmos usados nos tempos ti e t2 para criar os pacotes de dados. As sementes numéricas podem ser geradas de duas maneiras. Em um caso, as sementes são geradas usando um software localizado nos servidores DMZ afixados aos nós de mídia onde ocorreu o embaralhamento, a mistura e a encriptação dos pacotes de dados comunicados. Em tais casos, as sementes devem ser entregues ao nó de comunicação Ma.d antes da chegada do pacote de dados.

[00916] No outro caso, o tempo da criação do pacote de entrada é entregue ao nó de comunicação Ma.d ou como parte do cabeçalho do pacote de dados de entrada ou em um pacote separado entregue antes dos dados. O tempo é então alimentado no gerador de sementes numéricas 1303 localizado dentro do servidor DMZ afixado ao nó de comunicação Ma,d. Independentemente de onde eles são gerados localmente ou na fonte e depois entregues, as sementes numéricas geradas são alimentadas no seletor 1307, compreendendo tabelas de algoritmos de embaralhamento 1308A, algoritmos de mistura 1308B e algoritmos de encriptação 1308C. Além das informações de semente ou estado associadas aos pacotes de dados, ou seja, contidas no cabeçalho do pacote ou entregues antes do pacote de dados, os algoritmos usados para criar os pacotes de dados de entrada não são transportados ou contidos no próprio pacote, mas estão presentes localmente dentro do nó de mídia Ma.d ou em um servidor seguro ao qual o nó de mídia Ma.d tem acesso. Esses algoritmos, armazenados localmente como segredos compartilhados

Petição 870170079583, de 19/10/2017, pág. 348/709

341 / 425 para uma região específica 1302A, neste caso zona Zl, são compartilhados com cada nó de mídia na mesma zona. Ao saber o tempo e o estado quando um pacote de dados foi criado, o nó de mídia Ma,d é capaz de determinar como cada um dos pacotes 1262B, 1262C e 1262H foi criado e como desfazer o processo para recuperar os dados de texto simples de cada um dos pacotes 1262B, 1262C e 1262H, por exemplo, como desencriptar um pacote encriptado, desembaralhar um pacote embaralhado, etc. O uso de segredos compartilhados, bem como como eles são distribuídos, é descrito mais tarde no pedido.

[00917] As chaves de desencriptação 1306A el306B funcionam em conjunto com o algoritmo de encriptação 1309C selecionado para desencriptar o texto cifrado em texto simples. Especificamente, o algoritmo de encriptação 1309C representa uma sequência de etapas matemáticas que podem ser usadas para converter um pacote de dados de texto cifrado em texto simples. As chaves de desencriptação 1306A e 1306B, em seguida, selecionam uma combinação específica dessas etapas que devem ser usadas na desencriptação do pacote, cada uma correspondente ao estado ou tempo em que os pacotes de dados de entrada foram encriptados pela última vez. Se ambos os pacotes de entrada foram encriptados ao mesmo tempo, apenas uma única chave de desencriptação é necessária. Embora a referência acima seja ao algoritmo de “encriptação” 1309C, será entendido que um algoritmo de encriptação define seu inverso - um algoritmo de desencriptação. Com exceção de certos tipos de encriptação usando chaves “assimétricas”, a maioria dos algoritmos são simétricos, o que significa que o inverso do algoritmo usado para encriptar ou embaralhar um pacote de dados pode ser usado para desencriptar ou desembaralhar o pacote de dados e restaurar seu conteúdo original. No exemplo específico mostrado na Figura 92A, para cada tempo e estado correspondente aos pacotes de dados de entrada 1262B, 1262C e 1262H, o seletor 1307 emite um algoritmo de encriptação

Petição 870170079583, de 19/10/2017, pág. 349/709

342 / 425 selecionado 1309C necessário para desencriptar o pacote de entrada, um algoritmo de embaralhamento selecionado 1309A necessário para desembaralhar o pacote de entrada e um algoritmo de mistura selecionado 1309B necessário para combinar os pacotes em uma determinada ordem e remover dados de lixo. Como tal, os algoritmos de encriptação, embaralhamento e mistura selecionados pelo seletor 1307 são usados para realizar operações de desencriptação, desembaralhamento e mistura, respectivamente, nos pacotes de dados 1262B, 1262H e 1262C pelo servidor de computador 1220D no nó de mídia Ma,d. A forma como os dados são processados pelo nó da mídia depende, portanto, tanto do tempo quanto do estado do pacote de dados de entrada e dos algoritmos escolhidos. Por exemplo, o algoritmo de mistura selecionado 1309B pode organizar os pacotes de entrada para serem concatenados em um pacote longo em uma sequência de tempo decrescente com base no momento em que o pacote se originou, por exemplo, com o pacote mais antigo sendo colocado na frente do pacote longo e o pacote de dados mais novo colocado na parte de trás. Ou, altemativamente, os dados podem ser organizados em sequência cronológica de segmentos de dados como mostrado no pacote de dados 1263B, ou seja, o segmento de dados 1B antes do 1C, o segmento de dados 1C antes do IF, etc. O processamento de pacotes de dados de entrada requer, portanto, informações de tempo e estado pertencentes à criação dos pacotes de entrada, não o tempo atual ou o estado atual. Sem primeiro interceptar as informações de estado e tempo dos pacotes de entrada, mesmo um hacker que obtém acesso às tabelas de algoritmos e aos estados atuais não pode decodificar, decifrar, ler ou interpretar os dados de entrada de um nó de mídia. Como dito anteriormente, a seleção dos algoritmos pelo seletor 1307 e geração de chave pelos geradores de chave 1305A e 1305B depende da região geográfica ou “sub-rede” onde os pacotes de dados foram criados, mostrados no exemplo como informações de zona 1302A como “zona Zl”. O uso de zonas será

Petição 870170079583, de 19/10/2017, pág. 350/709

343/425 descrito mais adiante nesta descrição.

[00918] Em contraste com a ilustração anterior que mostra o controle de pacotes de dados de entrada, o controle de pacotes de dados de saída, mostrado na Figura 92B, não depende de tempos e estados passados, mas do tempo atual e seu estado correspondente. Como mostrado, no tempo t3 e seu correspondente estado 1301C, o gerador de semente numérico 1303 produz a semente numérica 1304C usada pelo seletor 1307 para selecionar os algoritmos correspondentes para divisão, embaralhamento e encriptação de tabelas de algoritmos de encriptação 1308A, algoritmos de mistura 1308B e algoritmos de encriptação 1308C. Uma vez que o algoritmo de mistura 1308B é geralmente uma função simétrica, o inverso do algoritmo empregado para a mistura é usado para a divisão, nesse caso dividindo o pacote de dados longo em múltiplos pacotes prontos para transporte. Na comunicação de canal duplo ou canal triplo, os destinos para todos os pacotes gerados são comunicados ao nó a partir de um servidor de sinalização que gerencia o roteamento de pacotes. Na comunicação de um único canal, os próprios nós de mídia devem emular a função do servidor de sinalização, mapeando sua própria rota entre chamadores.

[00919] A mesma informação de estado 1301C é alimentada no gerador de chaves E3 1305C para produzir a chave E 1306C necessária para encriptar pacotes de dados de saída e no gerador de sementes 1303 para produzir a semente 1304C que é usada para selecionar o algoritmo de encriptação 1309C da tabela 1308C. A chave E3 trabalha em conjunto com o algoritmo de encriptação selecionado 1308C para encriptar texto simples em texto cifrado. Especificamente, o algoritmo de encriptação representa uma sequência de etapas matemáticas que podem ser usadas para converter um pacote de dados de texto simples em um de milhões, bilhões ou trilhões de possíveis resultados de texto cifrado. A chave de encriptação seleciona então uma combinação específica dessas etapas que deve ser usada na encriptação

Petição 870170079583, de 19/10/2017, pág. 351/709

344 / 425 do pacote.

[00920] Na criptografia de chaves simétricas, como o Advanced Encryption Standard ou AES (Padrão de Criptografia Avançada), descrito em http://en.wikipedia.org/wiki/advanced_encryption_standard, a chave usada para encriptar o arquivo é a mesma chave usada para desencriptá-lo. Em tal caso, é benéfico gerar a chave localmente como um segredo compartilhado contido em cada nó de mídia, por exemplo, usando o gerador de chaves E3 1305C. Se uma chave simétrica deve ser fornecida a um nó de mídia através de uma rede, é benéfico entregar a chave através de um canal de comunicação diferente do que a mídia, ou seja, os pacotes de dados e o conteúdo, usa. A comunicação multicanal é discutida mais adiante neste pedido.

[00921] Outros meios para melhorar a entrega segura de uma chave simétrica é fornecê-la aos nós de mídia em um tempo não relacionado ao próprio comunicado, por exemplo, uma semana antes, para encriptar a chave com outra camada de encriptação ou para dividir a chave em dois pedaços entregues em dois tempos diferentes. Outro método emprega o uso de um algoritmo de divisão no gerador de chaves E3 1305C onde parte da chave permanece localmente em cada nó de mídia como um segredo compartilhado, ou seja, nunca está presente na rede, e a outra porção é entregue abertamente. A segurança é intensificada porque um pirata cibernético não tem como determinar quantos bits a chave real tem porque eles só podem ver uma porção da chave. Não saber o comprimento da chave toma virtualmente impossível adivinhar a chave certa porque o comprimento da chave e cada um dos elementos da chave devem ser adivinhados.

[00922] No caso de um algoritmo de chave assimétrica ou pública, o gerador de chaves E3 1305C gera simultaneamente um par de chaves - uma para encriptação, a outra para desencriptação com base no estado 1301C ou no tempo t3. A chave de desencriptação é mantida no nó de mídia como um segredo compartilhado enquanto a chave de encriptação é encaminhada de

Petição 870170079583, de 19/10/2017, pág. 352/709

345/425 forma segura e aberta ao nó de mídia que se prepara para enviar um pacote de dados para ele. Uma complicação de usar chaves simétricas em redes em tempo real é que a chave de encriptação precisa ser gerada e encaminhada para todos os nós de mídia antes de iniciar o pacote de dados contendo conteúdo no canal de mídia, caso contrário, o pacote de dados pode chegar antes da chave para desencriptá-lo e os dados ficam velhos, ou seja, torna-se tarde demais para usá-los. As descrições do uso e gerenciamento de chaves de encriptação assimétricas e públicas estão disponíveis em vários textos e publicações on-line, como http://en.wikipedia.org/wiki/publickey_cryptography. Enquanto a encriptação de chave pública é uma tecnologia conhecida, o aplicativo descrito compreende uma integração única de criptografia em uma rede em tempo real e sistema de comunicação.

[00923] Algoritmos, sementes numéricas e chaves de encriptação são todos gerados para a zona de sub-rede atual 1307A, neste caso zona Zl. Com base nesta zona e no tempo atual Í3, a chave de encriptação 1306C, juntamente com o algoritmo de divisão selecionado 1309B, o algoritmo de embaralhamento selecionado 1309A e o algoritmo de encriptação selecionado 1309C, é fornecida ao nó de mídia Ma, hospedado no servidor de computador 1220D para produzir duas saídas - o pacote de dados de saída 1263C compreendendo segmentos de dados não relacionados enviados adiante no tempo t3 e o pacote de dados de saída 1263B compreendendo os segmentos de dados IB, 1C e IF a serem mantidos até o tempo t4 antes que o roteamento para o próximo nó de mídia possa continuar. As instruções sobre se deve-se manter um pacote de dados ou um segmento de dados temporariamente ou enviá-lo para o próximo nó de mídia imediatamente podem ser entregues para o nó de mídia de várias maneiras. Em um caso, o pacote de dados de entrada pode incorporar instruções para mantê-lo e até quando ou para qual précondição. Alternativamente, um servidor de sinalização, ou seja, outro canal de comunicação, pode dar instruções ao nó de mídia sobre o que fazer. O uso

Petição 870170079583, de 19/10/2017, pág. 353/709

346/425 de servidores de sinalização em comunicação segura multicanal é descrito mais adiante nesta descrição.

[00924] Como mostrado na Figura 93, para selecionar um algoritmo a partir de uma tabela de algoritmos, que poderíam ser algoritmos de embaralhamento/desembaralhamento, encriptação/desencriptação ou mistura/divisão, o seletor 1307 deve pesquisar através de uma lista de algoritmos e endereços de memória 1308D, comparando-os com um endereço 1304D gerado pelo gerador de sementes 1303 do tempo tx e o estado atual correspondente 1301D. Quando o endereço gerado pelo estado 1304D corresponde a um item na tabela de algoritmos 1308D, o algoritmo selecionado 1309D é emitido a partir da rotina de busca para uso. Por exemplo, se o gerador de sementes 1303 gera um endereço 1304D com um valor de “356”, o seletor 1307 identificará o item correspondente da tabela, ou seja, “mod de deslocamento de fase 2” e o emitirá como o algoritmo selecionado 1309D.

[00925] Para evitar o rastreamento sistemático, a lista de algoritmos e seus correspondentes endereços de memória é reorganizada regularmente, por exemplo, diariamente ou por hora, de modo que o mesmo endereço não invoca o mesmo algoritmo mesmo que ele se repita acidentalmente. Como mostrado na Figura 94, as tabelas de algoritmos para o dia 318 na zona Z1 compreendem a tabela de endereços de algoritmo 1308D usada para embaralhamento e desembaralhamento na zona Z1 no dia 318, i.e., a tabela de endereços de algoritmo 1308E usada para divisão ou mistura de pacotes de dados na zona Z1 no dia 318, i.e., e a tabela de endereços de algoritmos 1308F usada para encriptação ou desencriptação na zona Z1 no dia 318. Em seguida, em uma data de evento prescrita 1311 e tempo 1310, a operação de reatribuição de endereço 1312 reorganiza, ou seja, mistura, as listas de algoritmos e endereços, produzindo três novas tabelas que compreendem a tabela de endereços de algoritmo 1308G para embaralhamento e

Petição 870170079583, de 19/10/2017, pág. 354/709

347 / 425 desembaralhamento na zona Z1 no dia 319, uma segunda tabela - tabela de endereços de algoritmo 1308H para mistura e divisão na zona Z1 no dia 319 e uma terceira tabela para encriptação e desencriptação na zona Z1 no dia 319, ou seja, tabela de endereços de algoritmo 1308J. Como mostrado, por exemplo, no dia 318, “mod de transpor 5” tem um endereço de memória correspondente 359, mas um dia depois o endereço muda para 424. Desta maneira, a tabela de conversão entre endereços e algoritmos é reorganizada para evitar hackeamento.

[00926] Zonas e Pontes Para se comunicar globalmente enquanto impede que um hacker ou pirata cibernético obtenha acesso à totalidade da nuvem e rede SDNP, em outra modalidade desta invenção, a rede de comunicação SDNP é subdividida em “zonas”. Aqui, uma zona representa uma subdivisão da rede, ou seja, uma “sub-rede” onde cada zona tem suas próprias configurações únicas de comando, controle e segurança, incluindo algoritmos distintos e separados e tabelas de algoritmos que definem a mistura e a divisão, embaralhamento e desembaralhamento, e encriptação e desencriptação usados na zona, bem como chaves de encriptação separadas e sementes numéricas distintas. Naturalmente, os servidores de comunicação que executam o software SDNP dentro da mesma zona compartilham as mesmas configurações de zona, operando de forma completamente agnóstica em relação à zona em que está.

[00927] Cada sub-rede pode compreender diferentes nuvens de servidor executando o software SDNP hospedado por diferentes ISPs ou empresas de hospedagem, por exemplo, Microsoft, Amazon, Yahoo, ou podem compreender nuvens hospedadas privadas ou tradutores de endereços de rede (NATs), como nuvens privadas alugadas que compreendem largura de banda dedicada de fibra escura. Também é benéfico tratar as portadoras que fornecem o serviço de última milha, como a Comcast Northern California, PSTN local ou as conexões locais de telefone celular como zonas separadas.

Petição 870170079583, de 19/10/2017, pág. 355/709

348/425 principal benefício das zonas de uso é, no pior caso, em que um pirata cibernético genial derrota temporariamente as provisões de segurança da SDNP, para limitar o alcance geográfico de seu ataque a uma sub-rede menor, impedindo o acesso de comunicações de extremidade a extremidade. Essencialmente, as zonas contêm o potencial de danos de um ataque cibernético.

[00928] Um exemplo do uso de zonas é ilustrado na Figura 95A onde a nuvem 1114 que compreende servidores de computador 1118 executando o software SDNP é dividida em duas sub-redes, a sub-rede 1318A que compreende a “zona Zl” e a sub-rede 1318C que compreende a “zona Z2”. Como mostrado, a sub-rede 1318A compreende os nós de mídia SDNP Ma,w, Ma,s, Maj, Ma,b, Ma,q, e Ma,f, junto com Mb,d e Mb,h, enquanto a sub-rede 1318C compreende os nós de mídia SDNP Mcj, Mc,n, Mc,v, Mc,u, e Mc,z, também junto com os nós de mídia Mb,d e Mb,h. Embora os nós de mídia com o subscrito à esquerda “a”, ou seja, Ma,_ sejam únicos da zona Zl e os nós de mídia com o subscrito à esquerda “c”, ou seja, Mc,_ sejam únicos da zona Z2, os nós de mídia Mb,d e Mb,h, hospedados pelos servidores de computador 1220D e 1220H, são únicos no sentido em que são compartilhados pelas duas sub-redes 1318A e 1318C. O software SDNP que funciona nos servidores de computador 1220D e 1220H deve entender como se comunicar com outros nós de mídia tanto na zona Zl e quanto na zona Z2. Tais dispositivos atuam como “pontes” entre duas sub-redes e necessariamente devem traduzir dados de arquivos protegidos da zona Zl em dados formatados de acordo com arquivos protegidos da zona Z2 e vice-versa.

[00929] A função de tradução realizada em um nó de mídia de ponte, como o nó de mídia de ponte Mb,d, é ilustrada na Figura 95B, que representa o fluxo de dados da zona Zl para a zona Z2 onde a operação DUM 1210 no servidor de computador de ponte 1220D, que hospeda o nó de mídia de ponte Mb,d, executa desencriptação, desembaralhamento e mistura para a sub-rede

Petição 870170079583, de 19/10/2017, pág. 356/709

349/425

1318A, zona Zl, usando as tabelas de algoritmos 1308K, para criar um pacote longo que ele transfere para operação SSE 1213, também no nó de mídia Mb,d, que executa a divisão, embaralhamento e encriptação para a sub-rede 1318C, zona Z2, usando as tabelas de algoritmos 1308L. A versão full duplex do nó de mídia de ponte Mb,d é mostrada na Figura 95C, que mostra que o nó de mídia de ponte Mb,d executa transferência de dados bidirecional e tradução da zona Zl para a zona Z2 e vice-versa. Para a tradução de dados da zona Zl para a zona Z2, o servidor de computador de ponte SDNP 1220D, que é o hospedeiro do nó de mídia de ponte Mb,d, executa a operação DUM 1210 nos pacotes de dados à medida que deixam a zona Zl (sub-rede 1318A) seguindo a operação SSE 1210 nos pacotes de dados à medida que entram na zona Z2 (sub-rede 1318C). Por outro lado, para a tradução de dados da zona Z2 para a zona Zl, o servidor de computador de ponte SDNP 1220D executa a operação DUM 1210 nos pacotes de dados à medida que deixam a zona Z2 (sub-rede 1318C) seguindo a operação SSE 1213 nos pacotes de dados à medida que entram na zona Zl (sub-rede 1213A). Todas as quatro operações de dados realizadas no nó de mídia de ponte Mb.d são executadas em software residente no mesmo hospedeiro do servidor de computador, neste caso, servidor de computador 1220D.

[00930] O nó de mídia de ponte SDNP totalmente integrado Mb,d ilustrado na Figura 95C executa as operações DUM e SSE para duas zonas diferentes, ou seja, a zona Zl e a zona Z2, tudo no servidor de computador compartilhado 1202D. Essa implementação totalmente integrada só pode ser realizada se as duas sub-redes conectadas estiverem hospedadas dentro do mesmo ISP ou nuvem. Se as sub-redes, no entanto, residem em diferentes nuvens, hospedadas por diferentes provedores de serviços, conforme mostrado pelas sub-redes 1318A e 1318C na Figura 95D, uma ponte de comunicação deve ser realizada entre dois servidores de computador que não residem na mesma nuvem. Como mostrado, o enlace de comunicação de

Petição 870170079583, de 19/10/2017, pág. 357/709

350/425 ponte 1316B conecta o nó de mídia de ponte SDNP Mb,h que opera na zona Z1 ao nó de mídia de ponte SDNP Mb,u que opera na zona Z2, mas a zona Z1 opera na nuvem 1114 enquanto a zona Z2 opera em uma nuvem diferente 1315. Utilizar o mesmo método mostrado anteriormente na Figura 95C toma-se problemático no caso de múltiplas nuvens porque o enlace de comunicação de ponte 1316B que viaja entre as nuvens será desprotegido e vulnerável à detecção e a ataques cibernéticos. A Figura 95E ilustra um caso em que a operação DUM executada pelo nó de mídia de ponte Mb,h hospedado pelo servidor de computador 1220H na sub-rede 1318A e zona Z1 envia pacotes de dados através do enlace de comunicação de ponte 1316B para o nó de mídia de ponte Mb,u hospedado pelo servidor de computador 1220U na sub-rede 1318C e zona Z2 para tradução, mas como a comunicação é uma saída de pacotes longos desembaralhados não encriptados da operação DUM do nó de mídia de ponte Mb.h, o salto de nuvem para nuvem é desprotegido e exposto a ataques cibernéticos.

[00931] A solução para esse problema é empregar os dois nós de mídia de interface de ponte full-duplex, um em cada nuvem, conforme mostrado na Figura 95F com transporte de comunicação seguro entre as interfaces. Na comunicação de zona Z1 para zona Z2, os pacotes de dados que entram da zona Z1 dentro da sub-rede 1318A são convertidos em dados de zona Z2 de canal único, incluindo embaralhamento e encriptação. Essa função requer que o nó de mídia Mb,d tenha acesso à zona Z1 e à zona Z2, sementes numéricas, chaves de encriptação, tabelas de algoritmos e outros itens de segurança. Todo o processamento é realizado no servidor de computador 1220D localizado na sub-rede 1318A, não na nuvem de destino da zona Z2. Os dados seguros são então transferidos do nó de mídia de interface de ponte Mb,d na sub-rede 1318A para o nó de mídia de interface de ponte Mb,u na sub-rede 1318C usando o enlace de comunicação de ponte seguro 1316A. Após a chegada no nó de mídia de interface de ponte Mb,u, os pacotes de dados são

Petição 870170079583, de 19/10/2017, pág. 358/709

351 /425 processados de acordo com informações da zona Z2 e enviados para a subrede 1318C.

[00932] Por outro lado, na comunicação da zona Z2 para a zona Zl, os pacotes de dados de entrada da zona Z2 e sub-rede 1318C para o nó de mídia Mb,u são convertidos em dados de zona Zl de canal único, incluindo embaralhamento e encriptação. Essa função requer que o nó de mídia Mb,d tenha acesso à zona Zl e à zona Z2, sementes numéricas, chaves de encriptação, tabelas de algoritmos e outros itens de segurança. Todos os pacotes são processados no servidor de computador 1220U localizado na subrede 1318C, não na nuvem de destino da zona Zl. Os dados seguros são então transferidos do nó de mídia de interface de ponte Mb,u na sub-rede 1318C para o nó de mídia de interface de ponte Mb,d na sub-rede 1318A usando o enlace de comunicação de ponte seguro 1316C. Após a chegada no nó de mídia de interface de ponte Mb,d, o pacote de dados é processado de acordo com informações da zona Zl e enviado para a sub-rede 1318A. Embora os enlaces de comunicação de ponte seguros 1316A e 1316C sejam representados como linhas separadas, as linhas representam canais de comunicação distintos na camada de rede 3 e não pretendem corresponder a fios, cabos ou enlaces de dados separados em uma descrição de hardware ou camada PHY 1. Altemativamente, um nó de ponte de recepção pode traduzir os dados da zona de envio Zl para a zona de recepção Z2, desde que o nó de ponte de recepção mantenha os segredos compartilhados para as zonas Zl e Z2.

[00933] Operação de Gateway SDNP A seção anterior descreve uma “ponte” como qualquer nó de mídia ou par de nós de mídia que se comunicam entre sub-redes, redes ou nuvens separadas. De maneira semelhante, um “nó de mídia de gateway” SDNP aqui descrito provê um enlace de comunicação entre a nuvem SDNP e o dispositivo de um cliente, por exemplo, um telefone celular, automóvel, tablet, notebook ou dispositivo ΙοΤ. A operação do nó de mídia de gateway é ilustrada na Figura 96A, onde o servidor de computador

Petição 870170079583, de 19/10/2017, pág. 359/709

352/425

1220F na nuvem SDNP 1114 que hospeda o nó de mídia SDNP Mb,f atua como um nó de mídia de gateway SDNP entre a sub-rede 1318A e a conexão de última milha 1318D para o tablet 33. Ao contrário da sub-rede 1318A, a conexão de última milha 1318D pode ocorrer através da Internet, uma nuvem privada, uma conexão de TV a cabo ou um enlace celular. Na última milha, o roteamento não pode ser controlado precisamente como é na sub-rede 1318A. Por exemplo, o nó de mídia de gateway Mb,f se liga ao servidor 65A pela conexão 1317, mas além desse ponto, o roteamento para a estação base WiFi pública 100 é controlado por roteadores locais da Internet. O enlace de rádio WiFi 29 da antena WiFi 26 para o tablet 33 também é controlado por um dispositivo local, muitas vezes localizado em um aeroporto, hotel, cafeteria, centro de convenções, anfiteatro ou outro local público.

[00934] Altemativamente, a última milha pode compreender um enlace com fio à estação base LTE 17, com um enlace de rádio 28 da antena 18 ao tablet 33. Devido ao seu roteamento e acesso incerto, é benéfico não compartilhar configurações de segurança ou segredos usados na nuvem SDNP com dispositivos usados no roteamento de última milha para um cliente. Como tal, o enlace de última milha 1318D não tem acesso às informações da zona Zl, mas em vez disso usa uma área separada U2 para gerenciar as configurações de segurança. Para ligar a nuvem 1114 e a última milha, o nó de mídia de gateway Mb,f necessariamente tem acesso às configurações de segurança da zona Zl e da zona U2, facilitando a comunicação entre a interface da nuvem 1320 e a interface do cliente 1321. Para prover uma comunicação segura de última milha, o cliente, no exemplo mostrado no tablet 33, também deve estar executando o aplicativo de software de cliente SDNP 1322.

[00935] O nó de gateway SDNP Mb,f compreende a interface da nuvem 1320, facilitando a comunicação entre os nós de mídia na nuvem 1114 e a interface do cliente 1321 facilitando a comunicação ao longo da última milha.

Petição 870170079583, de 19/10/2017, pág. 360/709

353/425

Como mostrado na Figura 96B, a interface da nuvem 1320 compreende dois trajetos de dados, isto é, SSE 1213 e DUM 1210. A interface do cliente 1321 mostrada na Figura 96C também compreende dois trajetos de dados - um para o fluxo de dados do gateway para o cliente, o outro para o fluxo de dados na direção inversa do cliente para o gateway. Especificamente, o fluxo de dados do gateway para o cliente envolve sequencialmente a operação de divisão de rota única 1106 usada para inserir dados de lixo no fluxo de dados, seguida de embaralhamento de pacotes 926 e, finalmente, encriptação 1026. Na direção oposta, o fluxo de dados do cliente para o gateway envolve sequencialmente a desencriptação 1032, desembaralhamento de pacotes 928 e a operação de mistura de rota única 1089 usada para remover dados de lixo do fluxo de dados.

[00936] Os papéis das operações de mistura e divisão em uma comunicação de rota única, como a última milha, são duplos. Em primeiro lugar, e importante, o fluxo de dados em tempo real é dividido em inúmeros subpacotes sequenciais, cada um com suas próprias etiquetas de identificação e possivelmente de comprimento variável para desafiar a detecção fácil. O fluxo de dados em série resultante, portanto, exige que alguns subpacotes de dados sejam mantidos temporariamente enquanto os primeiros pacotes são enviados. Como as taxas de dados de comunicação ocorrem na nuvem SDNP em centenas de gigabits por segundo, a serialização é quase instantânea, exigindo apenas nanossegundos. Na comunicação de última milha, a taxa de dados é mais lenta (mas em sistemas modernos ainda é muito rápida), por exemplo, dois gigabits por segundo. Não ocorreu nenhum atraso adicional porque WiFi, 4G/LTE, DOCSIS 3 e Ethernet transmitem dados em série de qualquer maneira.

[00937] A segunda necessidade de mistura de canal único, a operação de mistura de rota única também é usada para injetar dados de lixo em subpacotes de formas variáveis para confundir análises de uma maneira

Petição 870170079583, de 19/10/2017, pág. 361/709

354/425 anteriormente descrita em relação à Figura 67J.

[00938] Como mostrado na Figura 96D, para se comunicar de forma segura ao longo da última milha, o cliente deve executar o software cliente 1322. Em um telefone celular ou tablet, esse software cliente deve ser executado no sistema operacional do dispositivo, por exemplo, Android ou iOS. Em um computador desktop ou notebook, o software cliente é executado no sistema operacional do computador, por exemplo, MacOS, Windows, Linux ou Unix. No caso de a comunicação ocorrer com um dispositivo de consumidor, como loT incapaz de hospedar o software cliente SDNP, um dispositivo de hardware com firmware de cliente embutido pode ser usado como uma interface. As funções relacionadas à comunicação realizadas pelo cliente 1322 compreendem o processamento de pacotes de dados de entrada pela operação de desencriptação 1032, desembaralhamento de pacotes 928 e limpeza usando a operação de mistura de rota única 1089 para recuperar a carga útil dos pacotes. O conteúdo é então usado em aplicativos 1336, incluindo dados usados para um CODEC de áudio, arquivos MPEG, imagens, arquivos não multimídia e software.

[00939] As funções relacionadas à comunicação realizadas pelo cliente 1322 para pacotes de dados de saída compreendem a inserção de dados de lixo na operação de divisão de rota única 1026, embaralhamento de pacotes 926 e, finalmente, a operação de encriptação 1106 para preparar o pacote de dados para a comunicação de última milha para o gateway. No software cliente 1322, a mistura de rota única 1089 remove algoritmicamente dados de lixo do fluxo de dados de entrada, enquanto a função de divisão de rota única 1026 é inserir dados de lixo nos pacotes de dados.

[00940] A operação do nó de gateway SDNP seguro Mb,f é mais detalhada na Figura 97A, onde a interface de nuvem 1320 e a interface de cliente 1321 recebem pacotes de dados de entrada do nó de mídia Ma,h, executando desencriptação, desembaralhamento e mistura usando a operação

Petição 870170079583, de 19/10/2017, pág. 362/709

355/425

DUM 1210 de acordo com as configurações de segurança da zona Zl, resultando em um pacote de dados exemplificativo 1330 que representa texto simples desembaralhado. O pacote de dados 1330 é então encaminhado para a interface do cliente 1321, também operando dentro do nó de mídia de gateway Mb,f, que insere pacotes de lixo 1053 como parte da operação de divisão de rota única 1106 usada para inserir lixo 1053 nos pacotes de dados, mas usando as configurações de segurança da zona U2, e não a configuração de segurança da zona Zl usada pela nuvem. O pacote de dados é, em seguida, embaralhado usando a operação de embaralhamento 926, utilizando novamente as configurações de segurança específicas da zona U2 de última milha para produzir o pacote de dados 1329.

[00941] No exemplo mostrado, a operação de embaralhamento 926 utiliza um algoritmo pelo qual os segmentos de dados reais são embaralhados, mas todos os outros segmentos de dados compreendem um segmento de dados de lixo. Em seguida, a operação de encriptação 1026 também é realizada na interface do cliente 1321, também usando as configurações de segurança da zona U2, para produzir texto cifrado de saída 1328. Os campos de dados podem ser individualmente encriptados separadamente dos dados de lixo (como mostrado), ou em uma modalidade alternativa, todo o pacote de dados 1329 pode ser encriptado para formar um texto cifrado longo. O pacote de dados encriptado é finalmente encaminhado, ou seja, “exportado”, através de um único canal de comunicação para o cliente.

[00942] Ao mesmo tempo, os dados recebidos através do roteamento de canal único da última milha do cliente compreendendo o texto cifrado embaralhado 1327 são desencriptados pela operação de desencriptação 1032, usando as configurações de segurança da zona U2, incluindo algoritmos, chaves de desencriptação, etc., para produzir o pacote de dados 1326 de texto simples embaralhado, que compreende uma combinação de segmentos de dados embaralhados de dados intercalados com segmentos de dados de lixo.

Petição 870170079583, de 19/10/2017, pág. 363/709

356/425

Em uma modalidade desta invenção, os pacotes de lixo desse pacote de dados de entrada 1326 não estão posicionados nos mesmos slots que o pacote de dados de texto simples embaralhado de saída 1329. Por exemplo, no exemplo de dados de saída, pacotes intercalados compreendem dados de lixo, enquanto no pacote de dados de entrada cada 3o e 4o slot, e múltiplos inteiros dos mesmos, contêm dados de lixo.

[00943] O pacote de dados de texto simples embaralhado 1326 é processado em seguida usando as configurações de segurança da zona U2 por meio da operação de desembaralhamento de pacotes 928 e, em seguida, pela operação de mistura 1089 para restaurar a ordem de dados original e para remover os pacotes de lixo, ou seja, para limpar 1053 os dados, resultando em um pacote de dados desembaralhado não encriptado 1325. Esse pacote de dados é então passado da interface do cliente 1321 para a interface da nuvem 1320, para executar divisão, embaralhamento e encriptação específicas da nuvem usando a operação SSE 1213, antes de encaminhar os dados fragmentados resultantes em diferentes pacotes de dados para o roteamento em malha para o nó de mídia Mb,h e outros.

[00944] Como adicionalmente ilustrado na Figura 97B, o nó de mídia de gateway SDNP Mb,f utiliza software para facilitar a comunicação fullduplex na interface da nuvem 1320 de acordo com as configurações de segurança da zona Z1 e na interface do cliente 1321 de acordo com as configurações de segurança da zona U2. A conexão de última milha 1355 da interface do cliente 1321 ao tablet 33 através da estação base LTE 27, da torre de rádio LTE 18 e do enlace de rádio 28 é segura porque a comunicação é embaralhada e encriptada, e os dados de lixo foram inseridos nos pacotes de dados. Para interpretar os pacotes de dados recebidos e poder responder de forma segura, o dispositivo cliente, neste caso, o tablet 1322, deve executar o software de aplicativo do dispositivo habilitado para SDNP 1322.

[00945] O processamento de pacotes de dados na interface do cliente

Petição 870170079583, de 19/10/2017, pág. 364/709

357/425

SDNP é mais detalhado na Figura 98, onde o nó de cliente C24 se comunica de forma segura com o nó de mídia de gateway SDNP Mb,d pela troca de dados full duplex entre a interface do cliente 1321 e o cliente SDNP 1322, ambos na zona de segurança U2. Na operação, os pacotes de dados que chegam da interface do cliente 1321 são desencriptados na operação de desencriptação 1032, desembaralhados na operação de desembaralhamento 928 e limpos usando a operação de divisão 1089 antes de serem processados pelos aplicativos 1336. Por outro lado, a saída dos aplicativos 1336 é processada pela operação de mistura 1026 para inserir lixo, em seguida, embaralhada na operação de embaralhamento 926 e encriptada na operação de encriptação 1106 antes que os dados sejam encaminhados para a interface do cliente 1321.

[00946] Usando os métodos aqui descritos, a comunicação segura entre dois ou mais clientes, roteada estática ou dinamicamente através de uma rede em malha pode empregar qualquer combinação de algoritmos de mistura, divisão, encriptação e embaralhamento gerenciados em zonas separadas com chaves separadas, sementes numéricas distintas e segredos relacionados à segurança diferentes. Como ilustrado na Figura 99A, uma rede em malha que compreende servidores de computador 1118 executando nós de mídia SDNP baseados em software inclui os servidores de computador 1220F e 1220D, hospedando os nós de mídia de gateway Mb,f e Mb,d. A segurança dentro da sub-rede 1318A é gerenciada pelas configurações de segurança da zona Zl. O nó de mídia de gateway Mb,d se conecta ao nó de cliente Cij, hospedado em um dispositivo externo, neste caso telefone celular 32, acessado através do enlace de última milha 1318E. A segurança no enlace de última milha 1318E é regida pelas configurações de segurança da zona UI. De modo similar, o nó de mídia de gateway Mb,f se conecta ao nó de cliente C24, hospedado no tablet 33 e conectado através de enlace de última milha 1318D. A segurança no enlace de última milha 1318D é regida pelas configurações de segurança da

Petição 870170079583, de 19/10/2017, pág. 365/709

358/425 zona U2.

[00947] Conforme mostrado, a comunicação usando a operação de encriptação 1339, simbolizada por um cadeado, provê segurança em toda a rede e nos enlaces de última milha. Para garantir a última milha, a encriptação é necessariamente realizada dentro dos dispositivos clientes. Opcionalmente, os pacotes podem ser reencriptados ou duplamente encriptados pelos nós de mídia de gateway ou em outra modalidade, desencriptados e reencriptados por cada nó de mídia na rede de transporte em malha. Uma modalidade da invenção aqui descrita é facilitar a segurança em vários níveis. Por exemplo, na Figura 99A os enlaces de comunicação de última milha 1318D e 1318E dependem unicamente da encriptação, ou seja, uma segurança de nível único ou unidimensional. Dentro da rede 1318A, a comunicação utiliza segurança bidimensional ou de dois níveis, combinando encriptação com operação de rede em malha envolvendo divisão estática, transporte de múltiplas rotas e mistura. No caso de as configurações de segurança variarem com o tempo, ou seja, “dinamicamente”, à medida que os pacotes de dados transitam pela rede, um nível adicional de segurança é realizado, ou seja, segurança bidimensional ou de dois níveis na última milha e segurança tridimensional dentro da nuvem SDNP.

[00948] Como mostrado na Figura 99B, a adição de embaralhamento na rede 1318A aumenta a segurança, em um grau mais alto de segurança de vários níveis, combinando transporte em malha e encriptação com embaralhamento. Especificamente, nesta abordagem, a comunicação do nó de cliente C2,i para o nó de cliente Ci,i envolve a adição da operação de embaralhamento 926 no nó de mídia de gateway Mb,f e da operação de desembaralhamento 928 no nó de mídia de gateway Mb,d. Na comunicação do nó de cliente Ci,i para o nó de cliente C2,i, os pacotes de dados encriptados do nó de cliente Ci,i são primeiro desencriptados e, em seguida, divididos para o transporte de múltiplas rotas, embaralhados pela operação de embaralhamento

Petição 870170079583, de 19/10/2017, pág. 366/709

359/425

926 e encriptados no nó de mídia de gateway Mb,d. Após o transporte através da rede 1318A, os pacotes de dados são desencriptados, desembaralhados usando a operação de desembaralhamento 928 e, em seguida, misturados. Embora esta abordagem ofereça segurança multidimensional na rede 1318A, ela não provê segurança de vários níveis na última milha, que empregando o transporte de canal único sem embaralhamento depende exclusivamente da encriptação para sua segurança.

[00949] Uma outra modalidade desta invenção, mostrada na Figura 99C, estende a técnica de segurança de vários níveis combinando encriptação e embaralhamento para cobrir a rede 1318A e a conexão de última milha 1318D ao nó de cliente Cyi. Como tal, a comunicação do nó de cliente Cyi para o nó de cliente Ci,i inclui a operação de embaralhamento 926 no nó de cliente C2,i e a operação de desembaralhamento 928 no nó de mídia de gateway Mb,d. A comunicação do nó de cliente Ci,i para o nó de cliente Cyi utiliza a operação de embaralhamento 926 no nó de mídia de gateway Mb,d e a operação de desembaralhamento 928 hospedada no nó de cliente Cyi. A conexão de última milha 1318E entre o nó de cliente Ci,i e o nó de mídia de gateway Mb,d,, no entanto, depende unicamente de encriptação. Tal caso podería ocorrer onde o nó de cliente C2,i está executando o aplicativo de software habilitado para segurança SDNP, mas o nó de cliente Ci,i, está empregando apenas encriptação comercial.

[00950] Uma outra modalidade da invenção, mostrada na Figura 99D, estende o embaralhamento e a encriptação para a segurança multidimensional de cliente para cliente, ou seja, de extremidade a extremidade. Como tal, a comunicação do nó de cliente C2,i para o nó de cliente Ci,i envolve a adição da operação de embaralhamento 926 no nó de cliente C2,i e a operação de desembaralhamento 928 no nó de cliente Cij. A comunicação do nó de cliente Ci,i para o nó de cliente C2,i envolve a adição da operação de embaralhamento 926 no nó de cliente Ci,i e a operação de

Petição 870170079583, de 19/10/2017, pág. 367/709

360/425 desembaralhamento 928 hospedada no nó de cliente C2,i. Em operação, o nó de cliente Ci,i embaralha e encripta todos os pacotes de dados de saída e executa desencriptação e desembaralhamento em dados de entrada por meio de software habilitado para SDNP executado no telefone celular 32. De modo similar, o nó de cliente C2,i embaralha e encripta todos os pacotes de dados de saída e executa desencriptação e desembaralhamento em dados de entrada por meio de software habilitado para SDNP executado no tablet 33. Juntos, eles facilitam a comunicação segura de extremidade a extremidade com segurança de duas camadas ou bidimensional, ou seja, compreendendo encriptação e embaralhamento, nas conexões de última milha 1318D e 1318E, e segurança tridimensional ou de três camadas na rede em malha 1318A através do transporte em malha e de múltiplas rotas. No caso de as configurações de segurança variarem com o tempo “dinamicamente” à medida que os pacotes de dados transitam pela rede, é realizado um nível de segurança adicional, ou seja, uma segurança tridimensional ou de três níveis na última milha e uma segurança quadridimensional dentro da nuvem SDNP.

[00951] Uma possível fraqueza desta implementação é que os mesmos métodos de embaralhamento e sementes numéricas usadas pelo cliente também são usados para proteger a nuvem SDNP. Como resultado, as configurações de segurança para as zonas U2, Z1 e UI são necessariamente compartilhadas, arriscando toda a rede e roteamento à descoberta através de ataques cibernéticos da última milha. Um método disponível para neutralizar as configurações de segurança da nuvem expostas está ilustrado na Figura 99E, onde a conexão de última milha 1318D usa o embaralhamento usando as configurações de segurança da zona U2 enquanto a nuvem usa configurações de segurança da zona Z1 para seu embaralhamento. Nesse exemplo, o nó de cliente C2,i, funcionando como um aplicativo no tablet 33, facilita o embaralhamento 926 de acordo com as configurações de segurança da zona U2. O nó de mídia de gateway Mb,f hospedado pelo servidor de computador

Petição 870170079583, de 19/10/2017, pág. 368/709

361 /425

1220F desembaralha o pacote de dados de entrada usando as configurações de segurança da zona U2, depois embaralha novamente os pacotes de dados usando as configurações de segurança da zona Z1 para o transporte sobre a rede em malha 1318A. Dessa maneira, as configurações de segurança da zona

Z1 da nuvem nunca são reveladas na conexão de última milha 1318D.

[00952] Uma melhoria adicional na segurança de vários níveis é ilustrada na Figura 99F, onde o embaralhamento e a encriptação ocorrem usando diferentes configurações de segurança em três zonas distintas conexão de última milha 1318D conectando o nó de cliente C2,i ao nó de mídia de gateway Mb,f, que utiliza as configurações de segurança da zona U2, rede em malha 1318A incluindo os nós de mídia de gateway Mb,f e Mb,d, que utiliza as configurações de segurança da zona Zl, e conexão de última milha 1318E, conectando o nó de mídia de gateway Mb,d ao nó de cliente Ci,i, que utiliza as configurações de segurança da zona U2. Essa abordagem provê segurança de extremidade a extremidade com encriptação de extremidade a extremidade, embaralhamento de extremidade a extremidade e roteamento em malha na nuvem que representa segurança de duas camadas ou bidimensional na última milha e segurança de três camadas ou tridimensional na nuvem. Caso as configurações de segurança variem com o tempo dinamicamente à medida que os pacotes de dados transitam pela rede, é realizado um nível adicional de segurança, oferecendo segurança tridimensional ou de dois níveis sobre a segurança da última milha e quadridimensional dentro da nuvem SDNP.

[00953] Na comunicação do nó de cliente C2,i para o nó de cliente Ci,i, ou seja, do tablet 33 para o telefone celular 32, um aplicativo SDNP executado no nó de cliente C2,i embaralha o pacote de dados de saída usando a operação de embaralhamento 926 com as configurações de segurança da zona U2 seguida de encriptação. O pacote de dados de canal único que atravessa a conexão de última milha 1318D é primeiro desencriptado e, em

Petição 870170079583, de 19/10/2017, pág. 369/709

362/425 seguida, desembaralhado pela operação de desembaralhamento 928 executada pelo nó de mídia de gateway Mb,f, usando as configurações de segurança da zona U2. Usando as configurações de segurança da zona Zl, o nó de mídia de gateway Mb,f em seguida, divide, embaralha e encripta os dados para transporte em malha através da rede 1318A, usando as configurações de segurança da zona Zl. No nó de mídia de gateway Mb,d, o pacote de dados é desencriptado, desembaralhado com a operação de desembaralhamento 928 e, em seguida, misturado em um pacote de dados para comunicação de canal único, usando as configurações de segurança da zona Zl. O nó de mídia de gateway Mb,d então embaralha e encripta o pacote de dados de canal único novamente, usando as configurações de segurança da zona UI e, em seguida, encaminha os dados para o cliente Cij. Um aplicativo habilitado para SDNP executado no telefone celular 32 desencripta e, em seguida, desembaralha, usando a operação de desembaralhamento 928, o pacote final entregue ao seu destino usando as configurações de segurança da zona U1.

[00954] De modo similar, na direção oposta, ou seja, na comunicação do nó de cliente Ci,i para o nó de cliente C2,i, ou seja, do telefone celular 32 para o tablet 33, um aplicativo SDNP executado no nó de cliente Ci,i embaralha o pacote de dados de saída usando a operação de embaralhamento 926 com as configurações de segurança da zona UI seguida de encriptação. O pacote de dados de canal único que atravessa a conexão de última milha 1318E é primeiro desencriptado e, em seguida, desembaralhado pela operação de desembaralhamento 928, executada pelo nó de mídia de gateway Mb,d, usando as configurações de segurança da zona Ul. Usando as configurações de segurança da zona Zl, o nó de mídia de gateway Mb,d em seguida, divide, embaralha e encripta os dados para transporte em malha através da rede 1318A, usando as configurações de segurança da zona Zl. No nó de mídia de gateway Mb,f, o pacote de dados é desencriptado, desembaralhado com a operação de desembaralhamento 928 e, em seguida, misturado em um pacote

Petição 870170079583, de 19/10/2017, pág. 370/709

363/425 de dados para comunicação de canal único, usando as configurações de segurança da zona Zl. O nó de mídia de gateway Mb,f então embaralha e encripta o pacote de dados de canal único, usando as configurações de segurança da zona U2 e encaminha os dados para o nó de cliente Cyi. Um aplicativo habilitado para SDNP executado no tablet 33 desencripta e, em seguida, desembaralha os dados, usando a operação de desembaralhamento 928 e as configurações de segurança da zona U2. O pacote de dados é então entregue ao cliente, neste caso o tablet 33.

[00955] Conforme mencionado anteriormente, todos os enlaces de comunicação mostrados carregam dados encriptados, independentemente do embaralhamento e mistura, conforme representado pelo ícone de cadeado 1339. As etapas detalhadas de encriptação e desencriptação não são mostradas para fins de clareza. Em uma modalidade, os pacotes de dados são desencriptados e encriptados (isto é, reencriptados) cada vez que os dados atravessam um novo nó de mídia. No mínimo, em cada nó de mídia que executa reembaralhamento, os pacotes de dados de entrada são desencriptados antes do desembaralhamento, em seguida, embaralhados e encriptados. Um resumo da segurança de múltiplas camadas disponível, viável com transporte em malha, encriptação e embaralhamento - tudo empregando configurações de segurança específicas de zonas - é mostrado na tabela a seguir.

Método de segurança Segurança da nuvem Segurança de última milha
Roteamento em malha na nuvem, sem encriptação, sem emb aralhamento l-D Nenhum
Roteamento em malha, encriptação de extremidade a extremidade, sem embaralhamento 2-D l-D
Roteamento em malha, embaralhamento de extremidade a extremidade + encriptação 3-D 2-D
Roteamento em malha dinâmico, embaralhamento de extremidade a extremidade + encriptação 4-D 3-D
Roteamento em malha dinâmico, embaralhamento de extremidade a extremidade + encriptação + lixo 4-D 3,5-D

[00956] Conforme mostrado na tabela acima, adicionar mudanças dinâmicas à encriptação e ao embaralhamento durante o transporte ao longo do tempo confere um nível de segurança adicional, limitando o tempo em que

Petição 870170079583, de 19/10/2017, pág. 371/709

364/425 um criminoso cibernético tem para detectar o pacote e “quebrar o código” para ler um pacote de dados. As mudanças dinâmicas podem ocorrer em um período diário, por hora ou programado ou pacote por pacote, mudando aproximadamente a cada 100msec. Da tabela acima, também fica claro que a última milha é menos segura do que o transporte através da nuvem.

[00957] Um meio de aumentar a segurança da última milha é inserir dinamicamente segmentos de dados de lixo no fluxo de dados e até mesmo enviar pacotes consistindo inteiramente em lixo, como chamarizes, desperdiçando os recursos computacionais dos criminosos cibernéticos pela decodificação de dados sem valor. Essa melhoria é representada pela mudança de 3-D para 3,5-D, significando que a inserção de dados de lixo não é tão boa como uma intensificação de segurança como a alcançada através de encriptação, embaralhamento e transporte de múltiplas rotas, mas ainda é uma melhoria, especialmente se as inserções de lixo variam ao longo do tempo e diferem nos pacotes de entrada e de saída. Outro aspecto importante para melhorar a segurança SDNP de acordo com esta invenção é empregar “desorientação”, isto é, obscurecer a origem e o destino reais durante o roteamento de pacotes, um tópico discutido posteriormente nesta descrição.

[00958] Entrega de Segredos, Chaves e Sementes A comunicação segura baseada em SDNP depende da troca de informações entre partes comunicantes das quais partes externas não têm conhecimento ou são conscientes ou cujo significado ou propósito são incapazes de compreender. Além do conteúdo real dos dados que estão sendo transmitidos, essas informações podem incluir segredos compartilhados, algoritmos, encriptação e chaves de desencriptação e sementes numéricas. Um “segredo compartilhado”, como usado aqui, é informação que apenas certas partes comunicantes sabem ou compartilham, por exemplo, uma lista de algoritmos de mistura, embaralhamento e/ou encriptação, uma chave de encriptação e/ou desencriptação e/ou um gerador de sementes, gerador de números, ou outro

Petição 870170079583, de 19/10/2017, pág. 372/709

365/425 método para selecionar segredos específicos ao longo do tempo. Por exemplo, o seletor 1307, mostrado na Figura 92B, é um segredo compartilhado.

[00959] Trabalhando em conjunto com segredos compartilhados, sementes numéricas, que podem ser baseadas em um tempo e/ou estado, são usadas para selecionar algoritmos específicos, invocar várias opções ou executar programas. Por si só, qualquer semente numérica específica não tem significado, mas quando combinada com um segredo compartilhado, uma semente numérica pode ser usada para comunicar uma mensagem ou condição dinâmica em uma rede sem revelar seu significado ou função se interceptada.

[00960] De modo similar, para executar a comunicação encriptada, a encriptação requer um algoritmo específico acordado pelas partes comunicantes, ou seja, um segredo compartilhado e a troca de uma ou duas chaves usadas para encriptação e desencriptação. Nos métodos de chave simétrica, as chaves de encriptação e desencriptação são idênticas. As trocas de chaves simétricas são resilientes aos ataques desde que a chave seja longa, por exemplo, 34 bits ou 36 bits, e que o tempo disponível para quebrar a cifra seja curto, por exemplo, um segundo ou menos. Para qualquer algoritmo de encriptação, a razão do número de bits usados em uma chave de encriptação simétrica dividida pelo tempo em que a chave é válida é uma medida da robustez da encriptação. Como tal, as chaves simétricas podem ser usadas em uma rede dinâmica, desde que sejam grandes e que o tempo disponível para quebrar a encriptação seja curto. Como alternativa, podem ser utilizados algoritmos de encriptação em que as chaves de encriptação e desencriptação são distintas ou “assimétricas” com uma chave para encriptação e outra para desencriptação. Em canais de comunicação abertos, as chaves assimétricas são vantajosas porque apenas a chave de encriptação é comunicada e a chave de encriptação não fornece informações sobre a chave de desencriptação. Trabalhando em conjunto, a combinação de chaves de encriptação simétricas

Petição 870170079583, de 19/10/2017, pág. 373/709

366/425 e assimétricas, sementes numéricas e segredos compartilhados - tudo variando ao longo do tempo de forma dinâmica, provê segurança multidimensional superior à comunicação SDNP. Inúmeras referências gerais sobre encriptação estão disponíveis, por exemplo, em “Computer Security and Cryptography” de Alan G. Konheim (Wiley, 2007). Adaptar encriptação para comunicação em tempo real não é, no entanto, simples e não está previsto na literatura disponível. Em muitos casos, adicionar encriptação à comunicação de dados aumenta a latência e o atraso de propagação, degradando a QoS da rede.

[00961] Os segredos compartilhados podem ser trocados entre nós de clientes e nós de mídia antes de um comunicado, mensagem, chamada ou troca de dados real. A Figura 100A ilustra como os segredos compartilhados podem ser distribuídos em conjunto com a instalação do código executável SDNP. Na zona Zl, o pacote de software seguro 1352A compreende o código executável 1351 e os segredos compartilhados da zona Zl 1350A, que podem incluir o gerador de sementes 921, o gerador de números 960, os algoritmos 1340, a chave de encriptação 1022 e a chave de desencriptação 1030, ou alguma combinação dos mesmos. O pacote de software seguro 1352A para a zona Zl, incluindo o código executável 1351 e os segredos compartilhados 1350A, é entregue aos servidores de mídia 1118 na nuvem 1114 e aos servidores “DMZ” 1353A e 1353B. A instalação do código executável 1351 nos nós de mídia Ma,b, Ma,f e outros hospedados nos servidores 1118 ocorre simultaneamente com a instalação dos segredos compartilhados para a zona Zl, isto é, segredos Zl 1350A, em computadores separados aqui chamados de servidores DMZ 1353A e 1353B.

[00962] O termo DMZ, normalmente um acrônimo para a zona desmilitarizada, neste caso significa um servidor de computador não acessível diretamente pela Internet. Os servidores DMZ podem controlar um ou vários servidores conectados à rede funcionando como nós de mídia, mas nenhum servidor de mídia 1118 pode acessar qualquer servidor DMZ - servidores

Petição 870170079583, de 19/10/2017, pág. 374/709

367/425

DMZ 1353A, 1353B e outros (não mostrados). Toda a distribuição de software e segredos compartilhados ocorre em comunicações seguras válidas por apenas uma curta duração, conforme representado pelo cadeado cronometrado 1354. Se a entrega do software estiver atrasada, um administrador do SDNP deve reautorizar o download do pacote de software seguro 1352A para a zona Z1 depois de confirmar pessoalmente a identidade e credenciais do titular da conta.

[00963] Para elaborar, a descrição do servidor DMZ como “servidor de computador não conectado diretamente à Internet” significa que não existe um enlace eletrônico direto entre a Internet e os servidores. Embora o arquivo Z1 1352A possa de fato ser entregue ao servidor ou ao farm de servidores pela Internet, a instalação do arquivo no DMZ exige que o administrador da conta de intervenção do servidor ou farm de servidores funcione em cooperação com o titular da conta. Antes de instalar arquivos no DMZ, o administrador da conta confirma a identidade do titular da conta e a validade da instalação.

[00964] Depois de confirmar a instalação, o administrador carrega o arquivo contendo segredos da Z1 no servidor DMZ usando uma rede de área local (LAN) que liga o computador do administrador diretamente ao servidor DMZ. A LAN, portanto, não está diretamente conectada à Internet, mas requer transferência autorizada através do computador do administrador após um rigoroso processo de autenticação. A instalação dos segredos compartilhados é unidirecional, os arquivos sendo baixados para os servidores DMZ sem acesso de leitura da Internet. Fazer o upload do conteúdo DMZ para a Internet é igualmente proibido, evitando assim o acesso on-line ou o hackeamento.

[00965] O processo de instalação de segredos compartilhados é análogo a uma conta bancária que não está habilitada para serviços bancários on-line, mas onde somente com a aprovação do cliente um bancário pode

Petição 870170079583, de 19/10/2017, pág. 375/709

368/425 realizar manualmente uma transferência eletrônica. Ao negar o acesso à Internet, interceptar segredos compartilhados exigiría uma entrada física e um ataque no local no farm de servidores, onde a fibra LAN deve ser identificada, emendada e interceptada precisamente no momento da transferência. Mesmo assim, o arquivo que está sendo instalado é encriptado e disponível apenas por uma curta duração.

[00966] O mesmo conceito pode ser estendido para implantação de software de múltiplas zonas, mostrada na Figura 100B, onde um servidor de administração de SDNP 1355 é usado para enviar um pacote de software seguro 1352A para a zona Zl para o servidor DMZ 1353A, como segredos da zona Zl 1350A e para servidores de mídia 1118 na nuvem 1114, como código executável 1351. O servidor de administração de SDNP 1355 é usado também para distribuir um pacote de software seguro 1352B para a zona Z2 para o servidor DMZ 1353B, como segredos compartilhados da zona Z2 1350B e para os servidores de mídia na nuvem 1315, como código executável 1351. O servidor de administração de SDNP 1355 também entrega um pacote de software seguro 1352C incluindo o código executável 1351 para os nós de mídia de ponte Mb,f na nuvem SDNP 1114 e Mb,n na nuvem SDNP 1315, e os segredos compartilhados 1350C para ambas as zonas Zl e Z2, para o servidor DMZ 1353C. Os nós de mídia de ponte Mb,f na nuvem SDNP 1114 e Mb,n na nuvem SDNP 1315 recebem o código executável 1351 diretamente do servidor de administração 1355 e os segredos compartilhados da zona Zl e da zona Z2 do servidor DMZ 1353C. Como o nó de mídia de ponte Mb,f executa uma tradução entre segredos da Zl e Z2, somente ele (e qualquer outro servidor ponte não mostrado) precisa acessar os segredos compartilhados da Zl e Z2. Caso contrário, os nós na zona Zl requerem acesso apenas aos segredos compartilhados da zona Zl e os nós na zona Z2 requerem acesso apenas aos segredos compartilhados da zona Z2.

[00967] E importante destacar que, embora o servidor de administração

Petição 870170079583, de 19/10/2017, pág. 376/709

369/425 de SDNP 1355 forneça segredos compartilhados aos servidores DMZ 1353A, 1353B e 1353C, o servidor de administração de SDNP 1355 não tem conhecimento sobre o que acontece com os segredos compartilhados após a entrega, nem exerce qualquer influência de comando ou controle sobre os segredos compartilhados uma vez entregues. Por exemplo, se uma lista de algoritmos for reorganizada, ou seja, reordenada, de modo que o endereço de um algoritmo específico mude, o servidor de administração de SDNP 1355 não tem conhecimento de como ocorre a reorganização. Do mesmo modo, o servidor de administração de SDNP 1355 não é um destinatário de trocas de semente numérica ou chave entre partes comunicantes e, portanto, não representa um ponto de controle. De fato, conforme descrito, nenhum servidor em toda a rede SDNP tem todas as informações relativas a um pacote, seu roteamento, suas configurações de segurança ou seu conteúdo. Assim, a rede SDNP é exclusivamente um sistema completamente distribuído para comunicação global segura.

[00968] A entrega de segredos compartilhados a um servidor DMZ, como mostrado na Figura 101A, é executada em um processo estritamente definido pelo qual o servidor de administração de SDNP 1355 estabelece comunicação com o servidor DMZ 1353A e passa por um processo de autenticação para confirmar se o computador é de fato um servidor DMZ autorizado pela SDNP. O processo pode ser automatizado ou pode envolver interação humana e a verificação dos proprietários de contas de forma semelhante à transferência bancária. Em ambos os casos, somente quando a autenticação confirma a autenticidade do servidor DMZ 1353A, um certificado de autorização eletrônico 1357 é gerado, permitindo que o servidor de administração de SDNP 1355 transfira seus segredos e código para o servidor DMZ 1353A. Uma vez carregadas, essas configurações são enviadas para servidores de mídia 1361, 1362 e 1363, instruindo os nós de mídia Mb M2, e M3, respectivamente, a como processar pacotes de dados de entrada e de

Petição 870170079583, de 19/10/2017, pág. 377/709

370/425 saída.

[00969] O mesmo servidor DMZ 1353A pode gerenciar mais de um servidor de mídia, por exemplo, matriz de servidor de mídia 1360 ou, altemativamente, múltiplos servidores DMZ podem ter as mesmas configurações de segurança e segredos compartilhados. Os nós de mídia podem estar operando para transportar mídia, conteúdo e dados de forma cooperativa usando o compartilhamento de tempo e o balanceamento de carga. Se a carga de comunicação na matriz do servidor de mídia 1360 cai, o nó de mídia M3 pode ser deixado offline, indicado simbolicamente por comutadores abertos 1365A e 1365B, deixando o nó de mídia M2 ainda operando, conforme indicado pelos comutadores fechados 1364A e 1364B. Os comutadores não indicam que a entrada e as saídas do servidor particular são fisicamente desconectadas, mas apenas que o servidor não está mais executando o aplicativo do nó de mídia, economizando assim a energia e eliminando taxas de uso de hospedagem para servidores desnecessários. Conforme ilustrado, um servidor DMZ 1353A pode controlar a operação de mais de um servidor de mídia baixando instruções, comandos e segredos do servidor DMZ 1353A para qualquer servidor na matriz do servidor 1360, mas o inverso não é verdadeiro. Qualquer tentativa de obter informações, escrever, consultar ou inspecionar o conteúdo do servidor DMZ 1353A de um servidor de mídia é bloqueada pelo firewall 1366, o que significa que o conteúdo do servidor DMZ 1353A não pode ser inspecionado ou descoberto através da Internet através de um nó de mídia.

[00970] Um exemplo de comunicação segura de acordo com esta invenção com base em segredos compartilhados é ilustrado na Figura 101B, onde, antes de qualquer comunicação, os segredos compartilhados 1350A para a zona Zl foram fornecidos por um servidor de administração (não mostrado) a todos os servidores DMZ na zona Zl, incluindo servidores DMZ 1353A e 1353B. Esses segredos compartilhados podem incluir, sem limitação,

Petição 870170079583, de 19/10/2017, pág. 378/709

371 /425 o gerador de sementes 921, o gerador de números 960, os algoritmos 1340, a chave de encriptação 1022 e a chave de desencriptação 1030. Durante a comunicação entre o nó de mídia de envio Ms e o nó de mídia de recepção Mr hospedados pelos servidores de mídia 1118, o servidor DMZ 1353A passa segredos compartilhados para o nó de mídia de envio Ms para preparar o pacote de carga útil 1342 que compreende os dados 1341 e o estado 920, descrevendo o tempo que pacote de carga útil 1342 foi criado. Antes da transmissão do nó de mídia Ms, o pacote de carga útil 1342 também é encriptado, usando a operação de encriptação 1339, representada simbolicamente por um cadeado.

[00971] Ao receber o pacote de carga útil seguro 1342, o nó de mídia de recepção MR desencripta o pacote 1342, usando a chave de desencriptação 1030 contida nos segredos compartilhados 1350A fornecidos pelo servidor DMZ 1353B e, em seguida, usando informações de estado 920 específicas para o pacote de dados 1342, recupera os dados 1341. Em uma modalidade alternativa, a semente numérica 929 também pode ser enviada a priori, ou seja, antes da comunicação do pacote de carga útil 1342, do nó de mídia de envio Ms para o nó de mídia de recepção Mr como uma semente numérica 929 com vida temporária. Se não for usado dentro de um certo período de tempo ou se o pacote de carga útil 1342 for atrasado, a vida da semente expira e ela se autodestrói, tomando o nó de mídia Mr incapaz de abrir o pacote de carga útil 1342.

[00972] Outro exemplo de comunicação segura de acordo com esta invenção, com base em segredos compartilhados combinados com uma semente e uma chave encapsulada dentro do pacote que está sendo entregue, está ilustrada na Figura ÍOIC. Neste exemplo, antes de qualquer comunicação, os segredos compartilhados 1350A para a zona Z1 são fornecidos a todos os servidores zona Z1 DMZ, incluindo servidores 1353A e 1353B. Esses segredos compartilhados podem, sem limitação, incluir o

Petição 870170079583, de 19/10/2017, pág. 379/709

372 / 425 gerador de sementes 921, o gerador de números 960 e os algoritmos 1340, mas eles não incluem chaves como a chave de encriptação 1022 e a chave de desencriptação 1030. Durante a comunicação entre o nó de mídia de envio Ms e o nó de mídia de recepção MR hospedados pelos servidores de mídia 1118, o servidor DMZ 1353A passa segredos compartilhados para o nó de mídia de envio Ms para preparar o pacote de carga útil 1342 que compreende os dados 1341, estado 920 (descrevendo o tempo que o pacote de carga útil 1342 foi criado) e chave de encriptação 1022 (que é usada para encriptar futuros pacotes de carga útil). Antes do roteamento, o pacote de carga útil 1342 é encriptado, usando a operação de encriptação 1339, representada simbolicamente por um cadeado.

[00973] Ao receber o pacote de carga útil seguro 1342, o nó de mídia de recepção MR desencripta o pacote 1342, usando a chave de desencriptação 1030, que tem uma vida temporária e foi fornecida a priori, isto é, antes da comunicação da carga útil 1342, em uma comunicação separada entre o nó de mídia de envio Ms e o nó de mídia de recepção MR. Esse pacote de dados anterior pode ser protegido por segredos compartilhados, como outra desencriptação, um algoritmo dinâmico, uma semente numérica ou uma combinação dos mesmos.. Se a chave de desencriptação 1030 não for usada dentro de um certo período de tempo ou se o pacote de dados 1342 for atrasado, a chave de desencriptação 1030 expira e se autodestrói, tomando o nó de mídia MR incapaz de abrir o pacote de carga útil 1342. Embora a chave de desencriptação 1030 possa altemativamente ser incluída no pacote de carga útil 1342, essa técnica não é preferida.

[00974] Uma maneira de evitar a entrega de todas as informações relacionadas à segurança com o conteúdo é dividir e separar o canal usado para entregar sinais de comando e controle do canal de comunicação de mídia usado para entregar conteúdo. De acordo com esta invenção, esse sistema de comunicação de “canal duplo”, mostrado na Figura 102, compreende um

Petição 870170079583, de 19/10/2017, pág. 380/709

373/425 canal de mídia transportado por servidores de mídia e um canal de comando e controle transportado por uma segunda rede de computadores, aqui chamada de servidores de sinalização. Durante a comunicação, o servidor de sinalização 1365 que executa o software SDNP instalado funciona como um nó de sinalização Si para transportar sinais de comando e controle enquanto os servidores de mídia 1361, 1362 e 1363 que executam o software SDNP instalado funcionam como nós de mídia Mb M2, M3 respectivamente para transportar conteúdo e mídia. Desta maneira, o canal de mídia não transporta sinais de comando e controle e os sinais de comando e controle não precisam ser entregues através do canal de mídia combinado com a carga útil ou separadamente como a priori um pacote de dados entregue antes do pacote de dados contendo o conteúdo da mensagem.

[00975] Em operação, os pacotes são entregues ao nó de sinalização Si descrevendo as configurações de roteamento e segurança para pacotes de mídia esperados como pacotes de entrada para a matriz do servidor 1360. Esses pacotes de propósito especial são aqui chamados de “pacotes de comando e controle”. Durante a comunicação, os pacotes de comando e controle são enviados para os servidores de mídia 1361, 1362 e 1363, instruindo os nós de mídia Mi, M2, e M3, respectivamente, a como processar pacotes de dados de entrada e de saída. Essas instruções são combinadas com informações que residem no servidor DMZ 1353A. Conforme descrito anteriormente, o mesmo servidor DMZ 1353A pode gerenciar mais de um servidor de mídia, por exemplo, matriz do servidor de mídia 1360. Os nós de mídia podem estar operando para transportar mídia, conteúdo e dados de forma cooperativa, usando o compartilhamento de tempo e o balanceamento de carga. Se a carga de comunicação na matriz do servidor de mídia 1360 cai, o nó de mídia M3 pode ser deixado offline, indicado simbolicamente por comutadores abertos 1365A e 1365B, deixando os nós de mídia Mi e M2 ainda operando, conforme indicado pelos comutadores fechados 1364A e

Petição 870170079583, de 19/10/2017, pág. 381/709

374 / 425

1364B. Os comutadores não indicam que a entrada e as saídas do servidor particular são fisicamente desconectadas, mas em vez disso, que o servidor não está mais executando o aplicativo do nó de mídia, economizando assim a energia e eliminando taxas de uso de hospedagem para servidores desnecessários.

[00976] Conforme ilustrado, um servidor DMZ 1353A, funcionando em conjunto com o servidor de sinalização 1365, pode controlar a operação de mais de um servidor de mídia baixando instruções, comandos e segredos do servidor DMZ 1353A para qualquer servidor na matriz do servidor 1360, mas o inverso não é verdadeiro. Qualquer tentativa de obter informações, escrever, consultar ou inspecionar o conteúdo do servidor DMZ 1353A do servidor de sinalização 1365 ou de servidores de mídia 1361 e 1362 é bloqueada pelo firewall 1366, o que significa que o conteúdo do servidor DMZ 1353A não pode ser inspecionado ou descoberto através da Internet através de um nó de mídia.

[00977] Assim, em um sistema de comunicação de canal duplo, o comando e controle de uma rede de comunicação usa um canal de comunicação diferente, isto é, roteamento exclusivo, separado do conteúdo das mensagens. Uma rede de servidores de sinalização carrega todas as informações de comando e controle para a rede, enquanto os servidores de mídia carregam o conteúdo real da mensagem. Os pacotes de comando e controle podem incluir sementes, chaves, instruções de roteamento, configurações de prioridade, etc., enquanto a mídia inclui voz, texto, vídeo, emails, etc.

[00978] Um benefício da comunicação de canal duplo é que os pacotes de dados não contêm informações sobre suas origens ou destinos finais. O servidor de sinalização informa a cada servidor de mídia o que fazer com cada pacote de dados de entrada de uma forma de “necessidade de saber”, ou seja, como identificar um pacote de entrada pelo endereço do nó que o enviou ou,

Petição 870170079583, de 19/10/2017, pág. 382/709

375/425 altemativamente, por um “código postal” SDNP, o que fazer com ele e para onde enviá-lo. Desta forma, um pacote nunca contém mais informações de roteamento do que as relativas ao seu último salto e seu próximo salto na nuvem. De modo similar, os servidores de sinalização transportam informações de comando e controle, mas não têm acesso ao conteúdo de um pacote de dados ou a qualquer comunicação que ocorra no canal de mídia. Este particionamento de controle sem conteúdo e conteúdo sem roteamento confere um nível superior de segurança às redes baseadas em SDNP de canal duplo.

[00979] Um exemplo de comunicação segura de canal duplo de acordo com esta invenção é ilustrado na Figura 103A, onde os pacotes de dados de comando e controle que compõem a semente 929 e a chave de desencriptação 1080 são comunicados por servidores de sinalização 1365 enquanto a mídia e o conteúdo são comunicados entre os servidores de mídia 1118. Neste exemplo, antes de qualquer comunicação, os segredos da zona Z1 1350A são fornecidos a todos os servidores DMZ da zona Zl, incluindo os servidores 1353A e 1353B, onde esses segredos compartilhados podem, sem limitação, incluir o gerador de sementes 921, o gerador de números 960 e os algoritmos 1340, mas não incluem chaves como a chave de desencriptação 1030. Antes de a comunicação começar, o nó de sinalização Ss, hospedado pelo servidor de sinalização de envio 1365, envia um pacote de comando e controle que compreende sementes numéricas 929 e chave de desencriptação 1030 ou outras configurações de segurança para o nó de sinalização de destino Sd. Essa informação, combinada com segredos compartilhados e configurações de segurança contidos nos servidores DMZ 1353A e 1353B, é usada para instruir como o nó de mídia de envio Ms deve transferir a carga útil encriptada 1342 para o nó da mídia de recepção Mr. A encriptação da informação da carga útil 1342 é ilustrada pelo cadeado 1339.

[00980] Desta maneira, além dos dados 1341 sendo comunicados, os

Petição 870170079583, de 19/10/2017, pág. 383/709

376/425 únicos dados relacionados à segurança incluídos no pacote de carga útil 1342 são o estado 920, descrevendo o tempo em que o pacote de carga útil 1342 foi criado. Uma vez que o pacote de carga útil 1342 chega ao nó de mídia de recepção MR, ele é desencriptado pela chave de desencriptação 1030. Depois de ser desencriptada, a semente 929, combinada com informações de estado 920 e segredos compartilhados 1350A fornecidos pelo servidor DMZ 1353B, é usada para desembaralhar, misturar e dividir o pacote de carga útil 1342 e outros pacotes de dados de entrada de acordo com os métodos anteriormente descritos. Embora o pacote de dados possa conter informações sobre o tempo em que foi modificado pela última vez - informações de estado especialmente úteis para gerar chaves de desencriptação localmente, o uso simultâneo de uma semente transmitida através do canal de comando e controle permite a identificação de operações de divisão e desembaralhamento realizadas anteriormente no pacote de dados de entrada, mas em um tempo não necessariamente realizado no nó imediatamente anterior.

[00981] Em uma modalidade alternativa mostrada na Figura 103B, a semente numérica 929 é entregue a priori, isto é, antes do pacote de carga útil 1342, através do canal de mídia, mas a chave de desencriptação 1030 ainda é entregue através do canal de sinalização. Como tal, é possível uma combinação ou permutação de métodos de entrega para se comunicar de forma segura. Como alternativa, a entrega de sementes, chaves e outras configurações de segurança dinâmicas pode variar ao longo do tempo.

[00982] A fim de facilitar a segurança de extremidade a extremidade descrita anteriormente, o código executável, segredos compartilhados e chaves também precisam ser instalados em um cliente, normalmente baixado como um aplicativo. Para evitar revelar configurações de segurança usadas na rede SDNP, esses downloads são definidos em uma zona separada conhecida apenas pelo cliente e o nó de gateway da nuvem com o qual ele se comunica. Como mostrado na Figura 104, para permitir que um dispositivo móvel,

Petição 870170079583, de 19/10/2017, pág. 384/709

377 / 425 como o telefone celular 32 se comunique usando a nuvem SDNP, ele deve primeiro se tomar um cliente SDNP autorizado. Essa etapa envolve o download do pacote de software da zona UI 1352D do servidor de administração de SDNP 1355 para o nó de cliente Ci,i, ou seja, telefone celular 32, usando o enlace de download seguro 1354, válido apenas para uma janela de tempo limitado. Se o download demorar demais para concluir ou não atender a determinados critérios de autenticação, confirmando que o usuário é um dispositivo real e não o computador de um hacker fingindo ser um cliente, o arquivo nunca é desencriptado ou instalado no telefone celular

32. Contido dentro do pacote de software da zona UI 1352D está o código executável 1351, específico para o sistema operacional do telefone celular 32 ou outro dispositivo ao qual o código está sendo instalado, por exemplo, IOS, Android, Windows, MacOS, etc. e segredos da zona UI 1350D, que podem incluir alguma combinação de gerador de sementes 921, gerador de números 960, algoritmos 1340, chave de encriptação 1022 e chave de desencriptação 1030, tudo específico para a zona de cliente Ul.

[00983] Para que qualquer nó de cliente externo da zona Ul Ci,i se comunique com a nuvem SDNP da zona Z1 1114, nós de gateway, como o nó de mídia Ma,d, devem receber informações sobre as configurações de segurança da zona Z1 e da zona Ul, conforme contidas no pacote de download das zonas Ul, Z1 1352E. Usando métodos de download seguros, limitados por tempo, indicados pelo cadeado 1354, tanto os segredos da zona Z1 quanto da zona Ul são baixados através do enlace 1350C no servidor DMZ 1353C e o código executável 1351 é baixado através do enlace 1351 e instalado no nó de mídia SDNP Ma.d bem como em qualquer outro nó de mídia de zona Z1 necessário para executar conexões de gateway entre a nuvem 1114 e clientes externos, ou seja, conexões que suportem conectividade de última milha. Uma vez que tanto o nó de mídia Ma.d na zona Z1 quanto o nó de cliente Ci,i na zona Ul estejam carregados com o conteúdo

Petição 870170079583, de 19/10/2017, pág. 385/709

378/425 dos pacotes de download 1352E e 1352D respectivamente, então a comunicação segura 1306 pode ocorrer, incluindo a operação de encriptação

1339.

[00984] Como a comunicação de uma nuvem segura na zona Zl hospedada nos servidores de mídia 1118 para o nó de cliente Ci,i hospedado em um dispositivo externo, como o telefone celular 32 na zona Ul, provavelmente pode ocorrer em um único canal de comunicação, é necessário algum meio para converter a comunicação de canal duplo empregada na nuvem 1114 em uma comunicação de canal único necessária ao longo da última milha. Um exemplo do papel do nó de gateway SDNP na implementação da conversão de canal duplo para canal único está ilustrado na Figura 105A, onde os pacotes de comando e controle da zona Zl que entram no nó de sinalização Sd no servidor de sinalização 1365 são combinados com conteúdo de mídia no nó de mídia de gateway Mr para criar uma comunicação de canal único com o pacote de carga útil 1342, que compreende os dados 1341 juntamente com as configurações de segurança da zona U2, incluindo o estado 920, fornecendo o tempo em que o pacote de dados 1342 foi criado, a semente numérica 929 e a chave de encriptação 1022 a ser usada para encriptar o próximo pacote, ou seja, o pacote a ser criado pelo nó Ci,i.

[00985] O pacote de carga útil 1342 é encriptado usando a operação de encriptação 1339. Para desencriptar o pacote de carga útil 1342, deve ser usada a chave de desencriptação 1030, onde a chave de desencriptação 1030 compreende um dos vários segredos compartilhados da zona Ul 1350D, baixados anteriormente no aplicativo seguro e cofre de dados 1359 juntamente com outros segredos da zona Ul, como o gerador de sementes 921, o gerador de números 960 e os algoritmos 1340. Altemativamente, como mostrado na Figura 105B, uma semente 929 a priori pode ser entregue primeiro e usada para desembaralhar uma chave de desencriptação

Petição 870170079583, de 19/10/2017, pág. 386/709

379/425 embaralhada 1030, que por sua vez é usada para desencriptar a carga útil

1342. O estado 920 pode então ser usado para desencriptar ou desembaralhar dados 1341 provendo múltiplas barreiras para combater a quebra de segurança na comunicação da última milha.

[00986] Para evitar o reconhecimento de padrões de algoritmos usados repetidamente por um cliente, o endereço ou código usado para selecionar um algoritmo a partir de uma lista de algoritmos instalados em um cliente é, de acordo com esta invenção, alterado em um cronograma regular, por exemplo, semanalmente, diariamente, por hora, etc. Esse recurso, conhecido como “reorganização”, ocorre de forma análoga à reorganização da ordem das cartas em um baralho e semelhante à reorganização realizada na rede. A reorganização reordena os números usados para identificar qualquer algoritmo dado em uma tabela de algoritmos, independentemente de tal tabela de algoritmos compreender um método de embaralhamento, mistura ou encriptação. Como mostrado na Figura 106, para reorganizar qualquer tabela de algoritmos no nó de cliente Cij, por exemplo, hospedado no telefone celular 32, enquanto garante que a nuvem SDNP seja capaz de interpretar os novos endereços de algoritmos, o servidor de sinalização 1365, hospedando o nó de sinalização Ss, envia a semente numérica 929 para o nó de cliente Ci,i, que, por sua vez, alimenta a semente no gerador de números da zona UI 960. O número resultante é usado para desencadear o algoritmo de reorganização 1312, convertendo a tabela de algoritmos da zona UI 1368A em uma nova tabela de algoritmos da zona UI 1368F e armazenando a tabela revisada em aplicativos seguros e no registro de dados 1359, localizado no nó de cliente Cij. Um servidor de sinalização (não mostrado) cria sementes numéricas 929 com base em informações de estado derivadas do tempo de programação 1310 e data de evento 1311 usadas para agendar o processo de reorganização. A mesma informação de estado e data é usada para reorganizar aleatoriamente as tabelas no servidor DMZ 1353A, garantindo que as tabelas de algoritmos

Petição 870170079583, de 19/10/2017, pág. 387/709

380/425 de nuvem e cliente sejam idênticas e sincronizadas.

[00987] Um método melhorado para passar as configurações de segurança da nuvem para o nó de cliente Ci,i é empregar a comunicação de canal duplo, como mostrado na Figura 107, onde o nó de mídia MR, hospedado pelo servidor de mídia 1118, envia a semente numérica 929 para o nó de cliente Cij, e o nó de sinalização Sd, hospedado por um servidor de sinalização separado 1365, envia a chave de desencriptação 1030 para o nó de cliente Cij. A vantagem desse método é que a chave de desencriptação 1030 vem de uma fonte diferente, com um endereço de pacote SDNP diferente da semente numérica 929 e do pacote de carga útil 1342. Uma possível desvantagem é que, apesar de os trajetos de comunicação serem diferentes, é provável que, em muitos casos, ambos os canais de rede sejam transportados pelo mesmo meio físico, por exemplo, uma única conexão WiFi ou LTE ao telefone celular 32. Embaralhar ou encriptar a chave de desencriptação 1030 antes de seu transporte do servidor de sinalização 1365 para o nó de cliente Ci,i pode em grande parte corrigir essa deficiência, de modo que não possa ser interceptada ou lida por detecção de pacotes.

[00988] Em operação, a semente numérica 929, passada através do canal de mídia do nó de mídia MR para o nó de cliente Cij, é usada para selecionar um algoritmo de desencriptação da tabela de algoritmos 1340 e desbloquear a segurança na chave de desencriptação 1030 mostrada pelo cadeado 1339C. Uma vez desbloqueada, a chave de desencriptação 1030 é usada para desbloquear a encriptação realizada no pacote de carga útil 1342 pela operação de encriptação 1339B. A semente numérica 929, em conjunto com os segredos da zona UI 1350D, é então usada para recuperar dados 1341 para uso pelo nó de cliente Cij.

[00989] Se for utilizada uma troca de chaves assimétricas, como mostrado na Figura 108, o servidor DMZ 1353A cria um par de chaves assimétricas que compõem a chave secreta de desencriptação 1030A e a

Petição 870170079583, de 19/10/2017, pág. 388/709

381 /425 chave de encriptação pública 1370A. A chave de desencriptação 1030A permanece secreta no servidor DMZ como um segredo da zona Z1 e a chave de encriptação pública 1370A é passada através do nó de sinalização Sd para o servidor de troca de chaves 1369. O servidor de troca de chaves 1369 retém a chave de encriptação 1370A até que seja necessário, e depois a passa conforme necessário para o dispositivo cliente 1335. Quando o nó de cliente Ci,i prepara um pacote de dados da carga útil 1342 para ser enviado para o nó de mídia Mr, ele primeiro baixa a chave de encriptação da zona Z1 1370A do servidor de troca de chaves 1369. Embora o servidor de sinalização possa passar a chave de encriptação para o nó de cliente Ci,i diretamente, existem inúmeras vantagens para usar o servidor de troca de chaves 1369. O primeiro benefício de usar um servidor de troca de chaves públicas é o benefício de estar escondido à vista, ou seja, “segurança nos números”. Uma vez que um servidor de chaves públicas potencialmente emite milhões de chaves de encriptação, não há nenhuma maneira de um intruso saber qual chave solicitar para hackear uma conversa não autorizada. Mesmo que, por algum milagre, eles escolham a chave correta, a chave de encriptação só lhes permite encriptar mensagens, e não desencriptá-las. Em terceiro lugar, a distribuição de chaves públicas livra o servidor de sinalização de ter que distribuir chaves e confirmar a entrega. Finalmente, ao empregar um servidor de troca de chaves públicas, não existe nenhuma maneira de um pirata cibernético rastrear de onde veio a chave de encriptação, tomando difícil rastrear um chamador através do servidor de sinalização.

[00990] Após obter a chave de encriptação, o nó Ci,i no dispositivo cliente 1335 encripta o pacote de carga útil 1342 usando o algoritmo de encriptação selecionado e a chave de encriptação 1371B. Como o nó de mídia Mr tem acesso à chave de desencriptação 1030 do servidor DMZ 1353A, ele é capaz de desbloquear o pacote de carga útil 1342 e ler o arquivo. Por outro lado, os segredos da zona Ul 1350D contêm uma chave de desencriptação

Petição 870170079583, de 19/10/2017, pág. 389/709

382/425

1030 correspondente a uma chave de encriptação (não mostrada) passada do nó de cliente Ci,i para o servidor de troca de chaves 1369. Quando o nó de mídia Mr prepara um pacote de dados para o nó de cliente Ci,i, ele baixa a chave de encriptação da zona UI 1370A e, em seguida, encripta o pacote de carga útil 1342 para entrega ao nó de cliente Ci,i. Uma vez que o telefone celular 32 tem acesso aos segredos da zona Ul, incluindo a chave de desencriptação da zona Ul 1030, ele é capaz de desencriptar e ler o pacote de carga útil 1342.

[00991] Nos métodos especificados mencionados acima e outras combinações dos mesmos, a comunicação segura, incluindo a entrega de software, segredos compartilhados, algoritmos, geradores de números, sementes numéricas e chaves de encriptação assimétricas ou simétricas pode ser realizada de acordo com esta invenção.

[00992] Transporte de Pacotes SDNP Outro aspecto inventivo da comunicação segura de acordo com esta invenção é a incapacidade de um invasor cibernético determinar onde veio um pacote de dados ou um pacote de comando e controle e para onde ele está destinado, ou seja, a origem verdadeira e o destino final estão disfarçados, revelando apenas a origem e o destino de um único salto. Além disso, dentro de uma única nuvem SDNP, os endereços SDNP empregados não são endereços IP reais válidos na Internet, mas apenas os endereços locais que têm significado com a nuvem SDNP, de maneira análoga a um endereço NAT. Em contraste com o transporte de dados em uma rede NAT, durante o roteamento de dados através da rede SDNP, os endereços SDNP no cabeçalho do pacote de dados são reescritos após cada salto de nó a nó. Além disso, o nó de mídia não conhece o roteamento de um pacote de dados diferente do último nó de mídia de onde ele veio e do próximo nó de mídia onde ele irá. Os protocolos diferem com base nos exemplos de comunicação de canais únicos e de canais duplos anteriormente descritos, mas os conceitos de roteamento são comuns.

Petição 870170079583, de 19/10/2017, pág. 390/709

383/425 [00993] Transporte de Canal Único Um exemplo de comunicação de canal único é mostrado na Figura 109, onde os pacotes de dados são transportados através de uma rede em malha SDNP conectando o tablet 33 e o telefone celular 32, cada um executando o aplicativo habilitado para SDNP 1335. Na comunicação segura do nó de cliente C2,i para o nó de cliente Ci,i os dados atravessam um roteamento de última milha de canal único na zona U2 do nó de cliente C2,i para o nó de mídia Ma,f, seguido de roteamento em malha na nuvem SDNP da zona Z1 do nó de mídia de gateway Ma,f, para o nó de mídia de gateway Ma,d, culminando no roteamento de última milha de canal único na zona UI do nó de mídia Ma.d para o nó de cliente Ci,i. O pacote de dados 1374B ilustra o endereço IP onde o pacote é enviado da fonte IP Addr TB para IP Addr MF, o endereço IP do servidor de mídia 1220F.

[00994] Esses endereços da última milha representam endereços IP reais. Uma vez que entra na nuvem da zona Zl, o endereço IP de origem no pacote SDNP 1374F muda para um endereço pseudo-IP SDNP Addr MF, um endereço tipo NAT que não tem significado na Internet. Presumindo, por motivos de simplicidade, que o roteamento de rede envolve um único salto, então o endereço de destino também é um endereço pseudo-IP, neste caso SDNP Addr MD. Ao longo da última milha na zona Ul, os endereços mostrados no pacote SDNP 1374G revertem para endereços IP reais, com um endereço de origem do IP Addr MD e um IP Addr CP de destino. No transporte de pacotes em tempo real, todos os pacotes de mídia SDNP usam UDP, não TCP. Conforme descrito anteriormente, a carga útil varia de acordo com a zona - na zona U2 da última milha, a carga útil do pacote de mídia SDNP 1374B compreende um pacote SDNP U2, na zona Zl de rede em malha e da nuvem SDNP, a carga útil do pacote de mídia SDNP 1374F inclui um pacote SDNP Zl e na zona Ul da última milha, a carga útil do pacote de mídia SDNP 1374G compreende um pacote SDNP Ul. Assim, ao contrário da comunicação na Internet, um pacote de mídia SDNP é uma carga útil em

Petição 870170079583, de 19/10/2017, pág. 391/709

384/425 constante evolução, que muda de endereço, formato e conteúdo e atravessa a rede de comunicação.

[00995] As Figuras IIOA-ÍIOF contêm uma série de fluxogramas que ilustram como ocorre uma comunicação SDNP de canal único. Na comunicação ad hoc de canal único, as partes comunicantes trocam informações através de um único canal, o canal de mídia, em uma sequência para criar uma sessão e depois transferir dados ou voz. Como mostrado na etapa 1380A da Figura 110A, o cliente abre o aplicativo habilitado para SDNP 1335 e inicia uma caixa de diálogo com qualquer servidor de mídia padrão SDNP listado na tabela de servidor SDNP padrão 1375. Qualquer um dos servidores SDNP padrão, neste caso o servidor de mídia 1120S, que hospeda o nó de mídia Ma,s, é usado como um primeiro número de contato sempre que um cliente autorizado deseja iniciar uma chamada ou estabelecer uma sessão usando a rede SDNP. Na comunicação de canal único, o servidor 1220S executa duas funções - atuando como um servidor padrão para o primeiro contato de novos chamadores e executando simultaneamente a função de um servidor de mídia para portar chamadas já iniciadas. Em uma modalidade alternativa, um “servidor de nomes” dedicado separado é usado para operar como primeiro contato, não no momento em que uma chamada é iniciada, mas sempre que os dispositivos se conectam pela primeira vez, ou seja, se registram, na rede. O uso de um servidor de nomes de acordo com esta invenção é descrito posteriormente neste pedido.

[00996] O aplicativo habilitado para SDNP do cliente 1335 pode ser um aplicativo seguro habilitado para SDNP como um mensageiro privado pessoal ou e-mail seguro executado em um telefone celular, tablet ou notebook. Altemativamente, o cliente pode incluir dispositivos de hardware seguros que executam o software incorporado SDNP. Os dispositivos incorporados na SDNP podem incluir um terminal de telemática automotivo; um terminal de POV para transações com cartão de crédito; um cliente loT

Petição 870170079583, de 19/10/2017, pág. 392/709

385/425 habilitado para SDNP ou um roteador SDNP. Um roteador SDNP aqui descrito é um periférico de hardware de uso geral usado para conectar qualquer dispositivo que não executa o software SDNP à nuvem SDNP segura, por exemplo, qualquer notebook, tablet, leitor eletrônico, celular, jogo, dispositivo com Ethernet, conectividade WiFi ou Bluetooth.

[00997] Após o aplicativo cliente 1335 entrar em contato com um dos servidores SDNP padrão, ele será redirecionado para um nó de gateway SDNP. O nó de gateway pode ser selecionado pela proximidade física entre a localização do cliente e o servidor, pelo menor tráfego de rede ou como o trajeto com menor atraso de propagação e latência mínima. Na etapa 1380B, o servidor SDNP padrão 1220S redireciona a conexão do cliente para o servidor de mídia de gateway SDNP 1220F de melhor escolha, hospedando o nó de mídia de gateway SDNP Ma,f. O nó de mídia de gateway Ma,f então autentica o certificado 1357 das duas partes, confirma o usuário, estabelece se a chamada é gratuita ou uma característica premium e, conforme aplicável, confirma o estado de pagamento de uma conta e, posteriormente, inicia uma sessão SDNP.

[00998] Na etapa 1380C, o aplicativo cliente 1335 envia um endereço de solicitação de pacotes SDNP 1374A inicial e informações de roteamento para o destino da chamada, isto é, a pessoa ou dispositivo a ser chamado, usando a consulta de rota 1371, direcionada para o servidor de mídia do gateway 1220F. Uma vez que o pacote SDNP 1374A, que inclui a consulta de rota 1371, representa um pacote de comando e controle em vez de comunicação em tempo real (isto é, pacote de dados), ele é entregue usando TCP em vez de UDP. A consulta de rota 1371 pode especificar que as informações de contato sejam providas ao aplicativo cliente 1335 em qualquer número de formatos, incluindo o número de telefone, endereço SDNP, endereço IP, URL ou um código específico SDNP, por exemplo, um código postal SDNP do dispositivo de destino, neste caso, o telefone celular 32. A

Petição 870170079583, de 19/10/2017, pág. 393/709

386/425 consulta de rota 1371 é, portanto, uma solicitação de informações sobre a parte a ser chamada, ou seja, para qualquer informação necessária para colocar a chamada, compreendendo, por exemplo, o código postal SDNP, seu endereço IP ou o endereço SDNP.

[00999] Na etapa 1380D da Figura 110B o nó de mídia de gateway SDNP Ma,f busca a nuvem SDNP 1114, adquire o endereço de destino, o que significa que o nó de mídia Ma,f identifica a parte que está sendo chamada e obtém qualquer informação necessária para fazer a chamada, compreendendo, por exemplo, o código postal SDNP, o endereço IP ou o endereço SDNP da pessoa que está sendo chamada e, em seguida, na etapa 1380E, o nó de mídia do gateway SDNP Ma,f fornece as informações de roteamento, o trajeto que a chamada fará e as chaves de encriptação necessárias para percorrer a zona específica para o aplicativo cliente 1335. Uma vez que o cliente, o tablet 33, obtém o endereço de destino, na etapa 1380F, o tablet 33, inicia uma chamada com o pacote de dados SDNP 1374B. As ondas sonoras de voz 1384A, capturadas pelo microfone 1383A, são convertidas em informações digitais por um CODEC de áudio (não mostrado) e alimentadas no aplicativo 1335. Combinando os dados de áudio com o roteamento de endereços e outras informações montadas em um cabeçalho SDNP, o aplicativo 1335 constrói o pacote de dados SDNP 1374B para roteamento de primeira milha roteando de “IP Addr TB” para “IP Addr MF” e inicia o transporte de pacotes para o nó de mídia Ma,f. O cabeçalho SDNP, incorporado na carga útil 1372 do pacote de dados 1374B, pode incluir urgência, preferências de entrega, protocolos de segurança e especificações de tipo de dados. Uma vez que o roteamento da primeira milha do pacote de dados SDNP 1374B ocorre usando um endereço IP, o transporte de pacotes é semelhante ao tráfego convencional da Internet, exceto que o conteúdo real dos dados é embaralhado e encriptado usando as configurações de segurança da zona U2 da SDNP e o cabeçalho SDNP contido na carga útil U2 SDNP 1372 que encapsula os dados também é

Petição 870170079583, de 19/10/2017, pág. 394/709

387/425 formatada especificamente de acordo com o protocolo de rede dinâmico seguro para a zona U2. O protocolo de rede dinâmico seguro para a zona U2 é o conjunto de segredos compartilhados especificamente aplicável para a comunicação que atravessa essa zona específica, por exemplo, uma semente de zona U2 calculada usando um gerador de sementes específico da zona U2, isto é, um método de geração de sementes usando um algoritmo, conforme descrito anteriormente no exemplo da Figura 51A, mas usando configurações de segurança, tabelas, etc. específicas para a Zona U2. De modo similar, os algoritmos de encriptação e embaralhamento da zona U2 são baseados nas configurações de segurança específicas da Zona U2. Como tal, os pacotes transmitidos pelo tablet 33 são embaralhados e encriptados da maneira descrita acima com base em um estado (tempo) e que esses pacotes contêm chaves de desencriptação e sementes que identificam o estado (tempo) em que foram criados, permitindo que os pacotes sejam desembaralhados e desencriptados pelo nó de mídia Ma,f usando as configurações de segurança específicas para a zona U2.

[001000] Para resumir, cada nó identifica cada pacote que recebe pela sua etiqueta. Uma vez que o nó identificou o pacote, ele executa quaisquer operações de desencriptação, desembaralhamento, mistura, embaralhamento, encriptação e divisão no pacote que o servidor de sinalização tenha instruído para executar, na ordem especificada. Os algoritmos ou outros métodos usados nessas operações podem ser baseados em um estado, por exemplo, o momento em que o pacote foi criado ou uma semente gerada de acordo com um algoritmo que é determinado por um estado. Ao executar cada operação, o nó pode usar o estado ou semente para selecionar um algoritmo ou método específico de uma tabela em sua memória. Novamente, conforme instruído pelo servidor de sinalização, o nó dá a cada pacote uma etiqueta e, em seguida, roteia o pacote para o próximo nó em sua jornada através da rede SDNP. Entende-se, é claro, que, onde os pacotes de entrada foram misturados

Petição 870170079583, de 19/10/2017, pág. 395/709

388/425 e/ou divididos, os pacotes transmitidos por um nó normalmente não serão os mesmos que os pacotes que recebe, já que alguns segmentos de dados podem ter sido transferidos para outros pacotes, e os segmentos de dados de outros pacotes podem ter sido adicionados. Assim, uma vez que um pacote foi dividido, cada pacote resultante obtém sua própria etiqueta e viaja em sua própria rota completamente ignorante de como seus “irmãos” chegarão ao mesmo destino final. O nó é ignorante da rota de cada pacote, exceto para o próximo salto.

[001001] Nos sistemas SDNP de canal único, o gateway e outros nós de mídia têm que executar função tripla, emulando os trabalhos do servidor de nomes e do servidor de sinalização. Na verdade, os sistemas de canal único, canal duplo e canal triplo diferem em que as três funções — transmissão de pacotes, sinalização e “nome” — são executadas nos mesmos servidores em um sistema de canal único, em dois tipos de servidores em um sistema de canal duplo e os três tipos de servidores em um sistema de canal triplo. As próprias funções são idênticas em todos os três tipos de sistemas.

[001002] Em um sistema distribuído, os servidores que executam a função de sinalização conhecem o destino final dos pacotes, mas nenhum servidor único conhece toda a rota dos pacotes. Por exemplo, o servidor de sinalização inicial pode conhecer uma porção da rota, mas quando os pacotes atingem um determinado nó de mídia, a função de sinalização é entregue a outro servidor de sinalização, o que assume a determinação da rota a partir desse ponto.

[001003] Para fazer uma analogia aproximada, se um pacote deve ser enviado de um celular em Nova York para um laptop em San Francisco, o primeiro servidor de sinalização (ou o primeiro servidor que executa a função de sinalização) pode rotear o pacote do celular para um servidor local em Nova York (o nó do gateway de entrada) e de lá para servidores na Filadélfia, Cleveland, Indianápolis e Chicago, um segundo servidor de sinalização pode

Petição 870170079583, de 19/10/2017, pág. 396/709

389/425 rotear o pacote do servidor de Chicago para servidores em Kansas City e Denver e um terceiro servidor de sinalização pode rotear o pacote do servidor de Denver para servidores em Salt Lake City, Reno e San Francisco (o nó do gateway de saída) e, finalmente, para o laptop, com cada servidor de sinalização determinando a porção da rota de que é responsável com base nos atrasos de propagação e outras condições de tráfego atuais na rede SDNP. O primeiro servidor de sinalização indicaria ao segundo servidor de sinalização que esperasse o pacote no servidor de Chicago, e o segundo servidor de sinalização instruiría o terceiro servidor de sinalização que esperasse o pacote no servidor de Denver, mas nenhum servidor de sinalização único (ou nenhum servidor executando a função de sinalização) sabería a rota completa do pacote.

[001004] Claro, como indicado acima, o pacote pode ser misturado e dividido ao longo de sua rota. Por exemplo, em vez de simplesmente rotear o pacote do servidor da Filadélfia para o servidor de Cleveland, o servidor de sinalização podería instruir o servidor da Filadélfia a dividir o pacote em três pacotes e roteá-los para servidores em Cincinnati, Detroit e Cleveland, respectivamente. O servidor de sinalização também instruiría o servidor da Filadélfia a dar a cada um dos três pacotes uma etiqueta designada e informaria os servidores em Cincinnati, Detroit e Cleveland das etiquetas para que pudessem reconhecer os pacotes.

[001005] A etapa 1380G da Figura 110C ilustra o pacote de dados SDNP 1374C sendo roteado do nó de mídia de gateway Ma,f, hospedado pelo servidor de mídia 1220F, para o nó de mídia SDNP Maj, hospedado pelo servidor de mídia 1220J. Na comunicação de canal único, o roteamento dos dados é primeiro determinado no momento em que o gateway primeiro obteve o endereço sendo chamado na etapa 1380D. Ao contrário do roteamento de primeira milha do pacote de dados IP 1374B, este primeiro salto intra-nuvem do pacote SDNP 1374C ocorre usando endereços SDNP “SDNP Addr MF” e

Petição 870170079583, de 19/10/2017, pág. 397/709

390/425 “SDNP Addr MJ”, não reconhecíveis na Internet. Na comunicação de canal único, o roteamento dos dados, ou seja, a sequência de nós através do qual cada pacote passará em sua rota para seu destino, é determinado no momento em que o nó de gateway (aqui nó Ma,f) primeiro obtém o endereço sendo chamado (aqui na etapa 1380D.

[001006] A carga útil 1373A do pacote de dados SDNP 1374C é embaralhada e encriptada, usando as configurações de segurança da zona Z1 do SDNP, e o cabeçalho SDNP contido no pacote de dados SDNP 1374C encapsulando os dados dentro da carga útil 1373A também é formatado especificamente de acordo com o protocolo de rede dinâmico seguro para zona Zl. O protocolo de rede dinâmico seguro para qualquer zona é o conjunto de segredos compartilhados especificamente aplicável para a comunicação que atravessa essa zona específica, neste caso, uma semente de zona Zl calculada usando um algoritmo de semente da zona Zl, um algoritmo de encriptação da zona Zl e assim por diante. Por motivos de segurança, as configurações de segurança da zona Zl não são comunicadas para a zona U2 e vice-versa.

[001007] A etapa 1380H ilustra o pacote de dados SDNP 1374D sendo roteado do nó de mídia Maj, hospedado pelo servidor de mídia 1220J, para o nó de mídia SDNP Ma,s, hospedado pelo servidor de mídia 1220S. O salto de nuvem do pacote SDNP 1374D também ocorre usando endereços SDNP “SDNP Addr MJ” e “SDNP Addr MS”, não reconhecíveis na Internet. A carga útil 1373B do pacote de dados SDNP 1374D é embaralhada e encriptada, usando as configurações de segurança da zona Zl do SDNP, e o cabeçalho SDNP contido no pacote de dados SDNP 1374D encapsulando os dados dentro da carga útil 1373B também é formatado especificamente de acordo com o protocolo de rede dinâmico seguro para zona Zl.

[001008] Esse processo de envio de um pacote entre nós na nuvem SDNP pode ocorrer uma vez ou pode ser repetido várias vezes, cada repetição

Petição 870170079583, de 19/10/2017, pág. 398/709

391 /425 envolvendo operação de reempacotamento e rerroteamento 1373.

[001009] O salto de nuvem final do pacote SDNP 1374E, mostrado na etapa 1380J da Figura 110D, ocorre do mesmo modo usando endereços SDNP “SDNP Addr MS” e “SDNP Addr MD”, não reconhecíveis na Internet. O pacote de dados SDNP 1374E é roteado do nó de mídia Ma,s, hospedado pelo servidor de mídia 1220S, para o nó de mídia de gateway SDNP Ma,d, hospedado pelo servidor de mídia 1220D. A carga útil 1373C dentro do pacote de dados SDNP 1374E é embaralhada e encriptada, usando as configurações de segurança da zona Zl do SDNP, e o cabeçalho SDNP contido no pacote de dados SDNP 1374E encapsulando os dados dentro da carga útil 1373C também é formatado especificamente de acordo com o protocolo de rede dinâmico seguro para zona Zl.

[001010] Na etapa 1380K, o pacote de dados 1374G é roteado para fora da nuvem segura do nó de mídia de gateway Ma,d, hospedado pelo servidor de mídia 1220D, para o nó de cliente Cij, hospedado pelo aplicativo 1335 no telefone celular 32. Esse roteamento da última milha do pacote IP 1374G ocorre usando os endereços IP “IP Addr MD” e “IP Addr CP”, reconhecíveis na Internet, exceto que a carga útil 1374 no pacote IP 1374G é embaralhada e encriptada usando as configurações de segurança da zona UI de SDNP, e o cabeçalho SDNP contido no pacote de dados SDNP 1374G que encapsula os dados dentro da carga útil 1374 também é formatado especificamente de acordo com o protocolo de rede dinâmico seguro para a zona Ul. Ao entregar o conteúdo de dados da carga útil 1374 para o aplicativo 1335 no telefone celular 32, o alto-falante 1388B converte o código digital em som 1384A usando um CODEC de áudio (não mostrado).

[001011] Na etapa 1380L, mostrada na Figura ÍÍOE, a pessoa chamada responde com voz direcionada na direção oposta da comunicação original. Como tal, as ondas sonoras de voz 1384B são capturadas pelo microfone 1383B e convertidas em código digital por um CODEC de áudio (não

Petição 870170079583, de 19/10/2017, pág. 399/709

392/425 mostrado) implementado no aplicativo 1335 no telefone celular 32. Usando as configurações de segurança SDNP da zona Ul, os dados de voz são combinados com um cabeçalho SDNP da zona Ul para criar a carga útil 1375 e direcionados de “IP Addr CP” para “IP Addr MD”, usando o pacote de dados IP 1374H. Esse roteamento de primeira milha do pacote IP 1374H ocorre usando endereços IP reconhecíveis na Internet, exceto que a carga útil 1375 no pacote de dados 1374H é embaralhada e encriptada usando as configurações de segurança SDNP da zona Ul, e o cabeçalho SDNP contido no pacote SDNP 1374H encapsulando os dados dentro da carga útil 1375 também é formatado especificamente de acordo com o protocolo de rede dinâmico seguro para a zona U1.

[001012] Como mostrado na etapa 1380M, ao receber o pacote IP 1374H, o nó de mídia de gateway Ma,d, hospedado pelo servidor 1220D, converte o endereçamento para o roteamento SDNP e envia o pacote de dados SDNP 1374J e sua carga útil 1376A para o nó de mídia Maj, hospedado pelo servidor de computador 1220U, usando as configurações de segurança da zona Zl. Essa comunicação nó para nó SDNP pode compreender um único salto de nó para nó ou envolver transporte através de vários nós de mídia, com cada salto envolvendo operação de reempacotamento e rerroteamento 1373.

[001013] Na etapa 1380N da Figura 110F, o pacote de dados SDNP 1374K e sua carga útil específica da zona Zl 1376B são direcionados do nó de mídia Maj, hospedado pelo servidor de computador 1220J, para o nó de mídia de gateway Ma,f, hospedado pelo servidor de computador 1220F. Os endereços SDNP “SDNP Addr MJ” e “SDNP Addr MF” usados no pacote SDNP 1374K são endereços específicos para SDNP semelhantes aos endereços NAT e não representam o roteamento válido da Internet. Na etapa 1380P, o nó de mídia de gateway Ma,f converte o conteúdo do pacote de dados de entrada de uma carga útil específica da zona Zl 1376B para uma carga útil da zona U2 1377 e usando os endereços IP “IP Addr MF” e “IP Addr TB”

Petição 870170079583, de 19/10/2017, pág. 400/709

393/425 direciona o pacote IP 1374L para o nó de cliente Cyi hospedado pelo tablet

33, como mostrado na Figura 109. O aplicativo 1335 extrai os dados da carga útil 1377 e, após a desencriptação e o desembaralhamento, converte o código digital usando um CODEC de áudio (não mostrado) nas ondas de som 1384B produzidas pelo alto-falante 1388A.

[001014] Toda a sequência de comunicação ad hoc para iniciar a chamada e rotear a voz do chamador, isto é, o tablet 33, para a pessoa chamada, isto é, o telefone celular 32, é resumida na Figura 111A. Conforme mostrado, o pacote de comando e controle IP 1374A é usado para obter informações de contato para determinar o roteamento e o pacote de dados IP 1374B é usado para iniciar o roteamento da primeira milha, usando endereços IP para alcançar o nó de gateway SDNP Ma,f em um endereço IP de “IP Addr MF”. Toda a comunicação da primeira milha entre o tablet 33 e a nuvem SDNP 1114 usa as configurações de segurança da zona U2.

[001015] O nó de mídia de gateway Ma,f então converte o roteamento para endereços de roteamento específicos do SDNP e usa pacotes SDNP 1374C, 1374D e 1374E para mover a comunicação através da nuvem SDNP 1114 de “SDNP Addr MF” para “SDNP Addr MJ” para “SDNP Addr MS” para “SDNP Addr MD “, respectivamente, tudo usando as configurações de segurança da zona Zl. Essa sequência é funcionalmente equivalente ao pacote de dados SDNP 1374F que direciona o pacote de comunicação de “SDNP Addr MF” diretamente para SDNP Addr MD”. Como não existe um supervisor de roteamento na comunicação ad hoc para inspecionar a entrega de pacotes, o comando e o controle do roteamento de pacotes dentro da nuvem SDNP 1114 podem ser realizados de uma das duas maneiras. Em uma modalidade, os endereços de origem e de destino de cada um dos pacotes de dados SDNP 1374C, 1374D e 1374E definem explicitamente e rigorosamente o trajeto de salto por salto do pacote através da rede SDNP, o trajeto sendo escolhido na comunicação de canal único pelo nó de mídia do gateway com

Petição 870170079583, de 19/10/2017, pág. 401/709

394/425 antecedência para o melhor atraso geral de propagação durante o transporte. Em uma modalidade alternativa, um único pacote “gateway para gateway”, por exemplo, o pacote de dados SDNP 1374F, é usado para definir os gateways nodais SDNP dentro e fora da nuvem SDNP, mas não para especificar o roteamento preciso. Nessa modalidade, cada vez que um pacote chega em um nó de mídia SDNP, o nó de mídia prescreve seu próximo salto muito da mesma maneira que ocorre o roteamento na Internet, exceto que o nó de mídia SDNP selecionará automaticamente o trajeto de atraso de propagação mais curto, enquanto a Internet não.

[001016] Finalmente, quando o pacote 1374E atinge o nó de mídia de gateway Ma,d em “SDNP Addr MD,” o nó de mídia de gateway Ma.d cria o pacote de dados IP 1374G, convertendo o pacote de dados de entrada em endereços IP “IP Addr MD” e “IP Addr CP” e altera as configurações de segurança para as da zona U1.

[001017] Outro resumo desse roteamento é mostrado na Figura 111B, compreendendo três saltos intra-nuvem 1441C, 1441D e 1441E, e dois roteamentos da última milha 1441B e 1441F. Os endereços de pacotes mostrados abaixo do mapa da nuvem revelam uma combinação de duas formas de endereços de pacotes durante o transporte - roteamento de endereços IP e roteamento de endereços SDNP, análogo ao uso de endereços NAT. Especificamente, os endereços de pacotes 1442A e 1442F representam endereços IP da Internet, enquanto os endereços de pacotes 1442C e 1442D representam endereços IP da SDNP. Os endereços de pacotes 1442B e 1442E, usados pelos nós de mídia de gateway, contêm endereços IP e SDNP, o que significa que os nós de gateway SDNP são responsáveis pela tradução de endereços, bem como pela conversão de configurações de segurança da zona U2 em configurações de segurança da zona Z1 e pela conversão de configurações da zona Z1 em configurações de segurança da zona Ul.

[001018] De maneira similar, a Figura 112A resume a porção de

Petição 870170079583, de 19/10/2017, pág. 402/709

395/425 resposta da comunicação, que compreende o pacote de dados da zona UI de primeira milha 1374J, usando os endereços IP “IP Addr CP” e “SDNP Addr MD”; roteamento de nuvem SDNP usando endereços SDNP “SDNP Addr MD”, “SDNP Addr MJ” e “SDNP Addr MF” em pacotes de dados específicos da zona Z1 1374K e 1374L; e o pacote de dados da zona U2 de última milha 1374J, usando os endereços IP “IP Addr CP” e “SDNP Addr MD”. O mapa de roteamento da nuvem correspondente é mostrado na Figura 112B, onde o salto de primeira milha 1441H e o salto de última milha 1441L usam endereços apenas IP 1442G e 1442L, os saltos intra-nuvem 1441J e 1441K usam endereços apenas SDNP, e os nós de mídia de gateway Ma,d e Ma,f executam tradução entre os endereços IP e SDNP 1442H e 1442K.

[001019] A Fig. 113A é um diagrama esquemático que ilustra como um pacote SDNP é preparado. Durante uma comunicação de voz ou vídeo, o sinal de som, voz ou vídeo 1384A é convertido em sinais elétricos analógicos pelo microfone 1383A e depois digitalizado pelo CODEC de áudio e vídeo 1385. A cadeia de dados digitais resultante 1387 que compreende uma sequência de segmentos de dados representados em ordem alfabética (9A, 9B, etc.) é então submetida à operação de análise 1386 para fazer um pacote de dados 1388 menor que compreende conteúdo de áudio ou de vídeo, então lixo 1389 é inserido por operação de divisão de canal único 1106. A operação de divisão de canal único 1106 envolve a análise 1386 do pacote longo 1387 em um pacote menor 1388 e a inserção de dados de lixo 1389, resultando no pacote de dados estendido 1390 que compreende duas seções - uma com o cabeçalho Hdr 9 e a outra com o cabeçalho de lixo J. A cadeia de segmentos de dados contida entre Hdr 9 e Hdr J contém os dados de áudio ou vídeo no pacote 1388 com alguns segmentos de dados de lixo à direita. Os segmentos de dados que seguem Hdr J não contêm dados úteis. A operação SSE 1213, em seguida, embaralha os dados do pacote anterior 1388 para criar a cadeia de dados 1391, adiciona o preâmbulo SDNP 1399A para criar o pacote SDNP

Petição 870170079583, de 19/10/2017, pág. 403/709

396/425

1392 e, em seguida, encripta todo o pacote, com exceção do preâmbulo SDNP, para criar carga útil embaralhada encriptada 1393A, que, por sua vez, é carregada no pacote SDNP 1374B com o endereço de origem “IP Addr TB” e o endereço de destino “IP Addr MF”, pronto para o roteamento. Os cabeçalhos Hdr 9 e Hdr J permitem que cada componente seja identificado dentro da carga útil. A função e o formato dos cabeçalhos e o preâmbulo SDNP são discutidos mais tarde no pedido.

[001020] De forma semelhante, os segmentos de dados 9G et seq. na cadeia de dados 1387 são formados em pacotes SDNP adicionais.

[001021] A Figura 113B ilustra vários outros métodos que podem ser usados na criação de uma carga útil a partir de seus dados em série originais. Por exemplo, a cadeia de dados 1387 do CODEC 1385 pode ser analisada e dividida de maneira diferente. Conforme mostrado, os segmentos de dados 9A, 9B, 9D e 9F são montados na seção Hdr 91 com segmentos de dados ausentes substituídos por dados de lixo, enquanto os segmentos de dados 9C e 9E são montados na seção Hdr 92, juntos criando o pacote de dados 1394. Em seguida, os segmentos de dados em cada seção de cabeçalho são embaralhados de modo que os segmentos de dados individuais no campo de dados 1399C seguindo Hdr 91 não sejam misturados com os segmentos de dados no campo de dados 1399E seguindo Hdr 92. O pacote SDNP resultante 1395 compreende o preâmbulo SDNP 1399A, um primeiro cabeçalho 1399B rotulado como Hdr 91, um primeiro campo de dados 1399C, um segundo cabeçalho de dados 1399D (Hdr 92) e um segundo campo de dados 1399E. Podem ser utilizados outros métodos para espalhar os segmentos de dados 9A-9F da cadeia de dados 1387 através dos vários campos de dados. O mostrado é apenas para fins ilustrativos.

[001022] O pacote SDNP 1395, que contém múltiplos campos de dados separados por múltiplos cabeçalhos, pode então ser encriptado em uma de várias maneiras. Na encriptação de pacotes completos, todos os dados no

Petição 870170079583, de 19/10/2017, pág. 404/709

397/425 pacote SDNP 1395 são encriptados, exceto os dados no preâmbulo SDNP 1399A, ou seja, todo o conteúdo do primeiro cabeçalho 1399B, o primeiro campo de dados 1399C, o segundo cabeçalho de dados 1399D e o segundo campo de dados 1399E são encriptados para formar o pacote SDNP 1396, que compreende o preâmbulo SDNP 1399A não encriptado e o texto cifrado 1393A. Em alternativa, na encriptação de mensagens, o pacote SDNP 1397 compreende duas cadeias de texto cifrado encriptadas separadamente - cadeia de texto cifrado 1393B, que compreende a encriptação do cabeçalho de dados 1399B e do campo de dados 1399C e a cadeia de texto cifrado 1393C, que compreende a encriptação do cabeçalho de dados 1399D e do campo de dados 1399E. Em outra modalidade desta invenção, chamada de encriptação somente de dados, apenas os campos de dados 1399C e 1399E são encriptados em cadeias de texto cifrado 1393D e 1393E, mas os cabeçalhos de dados 1399B e 1399D não são perturbados. O pacote SDNP 1398 resultante compreende texto simples para o preâmbulo SDNP 1399A, o primeiro cabeçalho de dados 1399B e o segundo cabeçalho de dados 1399D e as cadeias de texto cifrado 1393D e 1393E, que representam versões encriptadas independentemente dos campos de dados 1399C e 1399E, respectivamente.

[001023] Na comunicação de canal único, para retransmitir as informações de roteamento e prioridade necessárias para o próximo nó de mídia, a carga útil SDNP 1400, mostrada na Figura 114, deve levar as informações requeridas. Esses dados estão contidos no preâmbulo SDNP 1401 ou no cabeçalho do campo de dados 1402. O preâmbulo SDNP 1401 compreende informações relevantes para todo o pacote, incluindo uma descrição do número de campos de dados “Fid #” com até oito campos possíveis, o comprimento de cada campo de dados “L Fid X”, onde nesta modalidade, X pode variar de 1 a 8 campos, a zona SDNP onde o pacote SDNP foi criado, por exemplo, Zona Zl, duas sementes numéricas e duas

Petição 870170079583, de 19/10/2017, pág. 405/709

398/425 chaves geradas através dos segredos compartilhados.

[001024] O cabeçalho do campo de dados 1402 segue um formato fixo para cada um dos campos de dados X. O cabeçalho de campo de dados 1402 inclui um tipo de endereço para o destino e o endereço de destino do campo de dados específico, isto é, o destino desse salto específico na nuvem. O endereço de destino de cada campo de dados em um determinado pacote é sempre o mesmo porque o pacote permanece intacto até chegar ao próximo nó de mídia. Quando um pacote é dividido em múltiplos pacotes, no entanto, os endereços de destino de campo em cada um dos pacotes divididos são diferentes dos endereços de destino de campo em cada um dos outros pacotes divididos se os pacotes estiverem em diferentes nós de mídia.

[001025] No transporte de múltiplas rotas e em malha, o endereço de destino do campo é usado para dividir e misturar os vários campos usados no roteamento dinâmico.

[001026] O tipo de endereço do próximo salto pode mudar à medida que o pacote atravessa a rede. Por exemplo, pode compreender um endereço IP entre o cliente e o gateway, e um endereço SDNP ou um zip SDNP uma vez que ele entra na nuvem SDNP. O destino pode compreender um código de roteamento específico SDNP, ou seja, endereço SDNP, Zip SDNP ou um endereço IPv4 ou IPv6, um endereço NAT, um número de telefone POTS, etc.).

[001027] O campo de pacote denominado “Campo Zona” descreve a zona onde um campo específico foi criado, ou seja, se uma encriptação ou embaralhamento passado foi executado com as configurações da zona Ul, Zl, U2, etc. Em alguns casos, desembaralhamento ou desencriptação de um pacote de dados requer informação adicional, por exemplo, uma chave, uma semente, um tempo ou um estado, caso em que o campo de pacote rotulado como “Campo Outro” pode ser usado para transportar a informação específica do campo. O campo de pacote denominado “Tipo de dados”, se usado, facilita

Petição 870170079583, de 19/10/2017, pág. 406/709

399/425 o roteamento de contexto específico, distinguindo dados, arquivos prégravados de vídeo, texto e computador que não requerem comunicação em tempo real de pacotes de dados contendo informações sensíveis ao tempo, como voz e vídeo ao vivo, ou seja, para distinguir o roteamento em tempo real de dados não em tempo real. Os tipos de dados incluem voz, texto, vídeo em tempo real, dados, software, etc.

[001028] Os campos de pacotes rotulados de “Urgência” e “Entrega” são usados em conjunto para determinar o melhor modo de rotear os dados em um campo de dados específico. A urgência inclui as categorias lenta, normal, prioritária e urgente. A entrega inclui vários marcadores de QoS para as categorias normal, redundante, especial e VIP. Em uma modalidade desta invenção, o tamanho binário dos vários campos de dados como mostrado na tabela 1403 é escolhido para minimizar a largura de banda de comunicação requerida. Por exemplo, os pacotes de dados como mostrados podem variar de 0 a 200B, pelo que oito pacotes de 200B por campo de dados significa que um pacote SDNP pode transportar 1.600B de dados.

[001029] Comunicação de Canal Duplo Em uma modalidade do transporte de dados SDNP de canal duplo, mostrado na Figura 115, o conteúdo viaja através dos canais de mídia do nó de cliente C2,i, hospedado no tablet 33, para o nó de mídia de gateway Ma,f pelo roteamento da primeira milha da zona U2 e, em seguida, no roteamento em malha da zona Zl, hospedado nos servidores de computador 1118 e, finalmente, do nó de mídia de gateway Ma.d pelo roteamento da última milha da zona Ul para o cliente Ci,i hospedado no telefone celular 32. O roteamento é controlado pelo pacote IP 1374B da primeira milha, o pacote SDNP 1374F sobre a rede em malha SDNP e o pacote IP 1374G da última milha.

[001030] Paralelamente, para o transporte de mídia e conteúdo, o cliente C2,i, se comunicando com o nó de sinalização Ss, hospedado pelo servidor de sinalização 1365, envia a semente numérica 929 e a chave de desencriptação

Petição 870170079583, de 19/10/2017, pág. 407/709

400/425

1030 para o cliente Ci,i através do servidor de sinalização Sd, a semente 929 e a chave de desencriptação 1030 sendo baseadas no tempo ou no estado quando o cliente C2,i as enviou. Ao trocar configurações de segurança, como chaves e sementes (também conhecidas como credenciais de segurança) diretamente entre os clientes por meio da rota de sinalização 1405 e não através da zona Zl, a segurança de extremidade a extremidade é realizada de forma benéfica eliminando qualquer risco de um operador de rede na zona Zl obter acesso a configurações de segurança e comprometer a segurança da Zona Ul ou Zona U2. Esta modalidade representa mais uma dimensão de segurança na comunicação de rede SDNP. A semente 929, por exemplo, pode ser usada para embaralhar e desembaralhar os pacotes de dados nos aplicativos do cliente. De modo similar, como mostrado, a chave de desencriptação 1030 permite apenas que o cliente Ci,i abra a mensagem encriptada. Como a chave 1030 e a semente numérica 929 nunca passam pela zona Zl, um operador de rede não pode comprometer a segurança da rede. Quando os pacotes de dados entram no nó de gateway Ma,f do cliente C2,i, os pacotes de dados de entrada já estão encriptados e embaralhados. Os pacotes recebidos pelo cliente Ci,i do nó de gateway Ma,d estão na mesma forma embaralhada e/ou encriptada como os que saem do cliente C2,i e se destinam ao nó de gateway Ma,f. O embaralhamento e a encriptação dinâmicos da rede presentes em cada nó (mas não explicitamente mostrados na Figura 115) representa uma segunda camada de segurança facilitada pela nuvem SDNP. Em outras palavras, esta camada de segurança externa de extremidade a extremidade que compreende a troca de credenciais de segurança diretamente entre clientes é em adição ao embaralhamento e encriptação dinâmicos da nuvem SDNP.

[001031] Dessa forma, como mostrado na Figura 115, os nós de sinalização Ss e Sd instruem os nós de mídia Ma,f e Ma.d a rotearem os dados de “IP Addr TB” para “IP Addr MF” na zona U2 usando o pacote IP 1374B, de

Petição 870170079583, de 19/10/2017, pág. 408/709

401 / 425 “SDNP Addr MF” para “SDNP Addr MD” na zona Z1 usando o pacote SDNP 1374F e de “IP Addr MD” para “IP Addr CP” na zona UI usando o pacote IP 1374G. Nessa modalidade, como os nós de sinalização Ss e Sa apenas se comunicam diretamente com os nós de cliente C2,i e Ci,i e indiretamente através dos pacotes de dados no canal de comunicação de mídia com nós de mídia de gateway Ma,f e Ma,d, as únicas instruções de roteamento para a rede em malha são de gateway para gateway, usando o pacote SDNP 1374F. Os servidores de sinalização Ss e Sd são incapazes de se comunicar com nós de mídia intermediários dentro da rede em malha. Então, na modalidade mostrada na Figura 115, os nós de mídia gerenciam a segurança dinâmica dentro da nuvem como um sistema de comunicação de canal único enquanto os nós de sinalização são usados para facilitar a segurança de extremidade a extremidade além da nuvem SDNP, ou seja, além da Zona Zl. [001032] Em outra modalidade do transporte de dados SDNP de canal duplo, mostrado na Figura 116, os nós de sinalização Ss e Sd, hospedados pelos servidores 1365, facilitam a segurança de extremidade a extremidade para os clientes e gerenciam simultaneamente roteamento dinâmico e segurança dentro da nuvem SDNP. Como tal, os nós de sinalização Ss e Sd não só transmitem a semente numérica 929 e a chave de desencriptação 1030 entre os nós de cliente C2,i e Ci,i de extremidade a extremidade, usando a rota de sinal 1405, mas também passam a semente de zona específica 929 e a chave de desencriptação 1030, bem como instruções de roteamento de salto único nó por nó, usando o pacote dinâmico SDNP 1374Z, transportado pela rota de sinal 1406, para cada nó de mídia único na rede em malha através da qual os pacotes de comunicação e o conteúdo se movem. Dessa maneira, os nós de sinalização Ss e Sd controlam roteamento e segurança, e os nós de mídia dentro da rede carregam conteúdo e implementam as instruções dos nós de sinalização Ss e Sd. Em tal implementação, os nós de mídia ou os nós de sinalização Ss e Sd têm a responsabilidade de rastrear quais servidores de

Petição 870170079583, de 19/10/2017, pág. 409/709

402 / 425 mídia estão online e quais não estão, e quais são seus endereços IP dinâmicos no momento.

[001033] Comunicação de Canal Triplo Maior segurança e desempenho intensificado da rede podem ser alcançados separando a responsabilidade de rastrear os nós na rede do transporte de dados real. Nessa abordagem, uma rede redundante de servidores, chamada de “servidores de nomes”, monitora constantemente a rede e seus nós de mídia, liberando os servidores de sinalização para fazer o trabalho de roteamento e troca de dados de segurança e permitindo que os servidores de mídia se concentrem na execução de instruções de roteamento recebidas dos nós de sinalização. Isso produz o que é chamado aqui de sistema de “canal triplo” e está ilustrado na Figura 117 onde o servidor de nomes 1408, hospedando o nó de servidor de nomes NS, mantém uma lista de nós SDNP ativos na rede, compreendendo a lista de nós de rede 1410. Mediante solicitação do nó de sinalização S, hospedado pelo servidor de sinalização 1365, o nó de servidor de nomes NS, hospedado pelo servidor de nomes 1408, passa a descrição da rede, pela qual o nó de sinalização S rastreia e registra a condição e o atraso de propagação entre todos os nós de mídia na nuvem SDNP 1114, conforme mostrado na tabela de condições de rede 1409, incluindo as zonas U2, Zl, UI e outras. No processo de fazer uma chamada, o nó de sinalização S fornece instruções de roteamento para cada nó envolvido no transporte planejado de um pacote de dados através da rede, incluindo instruções para o roteamento da primeira milha da zona U2 para o nó de cliente C2,i hospedado pelo tablet 33, instruções para o roteamento da última milha da zona U1 para o nó de cliente Ci,i, hospedado pelo telefone celular 32 e instruções para o roteamento da zona Zl para todos os nós de mídia intermediários na nuvem SDNP segura 1114 usada para transportar o conteúdo de mídia em pacotes de dados SDNP.

[001034] Para manter uma descrição de rede atualizada, cada vez que um dispositivo faz logon na rede, os dados relativos ao seu estado e seu

Petição 870170079583, de 19/10/2017, pág. 410/709

403/425 endereço IP, seu endereço SDNP ou, em alguns casos, ambos, são transferidos para o servidor de nomes 1408, conforme mostrado na Figura 118. O estado da rede e/ou os dados de endereço são armazenados na tabela de endereços de rede 1415, que está armazenada no aplicativo 1335 executado no tablet 33 ou no telefone celular 32, aplicativo 1411 em execução no notebook 35 ou em um desktop (não mostrado), aplicativos incorporados 1412 e 1413 em execução no automóvel 1255 ou no dispositivo loT 34, representado graficamente por um refrigerador. A tabela de endereços de rede 1415 também rastreia o estado de todos os servidores de mídia na nuvem, incluindo, por exemplo, o nó de mídia Ma,f, hospedado pelo computador 1220F, e o nó de mídia Ma,d, hospedado pelo computador 1220D. A tabela de endereços de rede 1415 registra o endereço de roteamento para qualquer dispositivo conectado à rede. Em quase todos os casos, o endereço IP ou endereço SDNP de um dispositivo conectado é registrado e rastreado na tabela de endereços de rede 1415. Em outros casos, como servidores de mídia e, opcionalmente, dispositivos móveis pessoais que executam aplicativos de comunicação habilitados para SDNP, a tabela de endereços de rede 1415 pode registrar um endereço IP e um endereço SDNP, necessários para a tradução de endereços em nós de mídia de gateway.

[001035] Enquanto o nó de servidor de nomes NS mantém uma descrição exaustiva da rede, o nó de sinalização S, hospedado pelo servidor de sinalização 1365, mostrado na Figura 119, mantém uma tabela de atrasos de propagação 1416 entre cada combinação de nós de mídia na rede disponível. A tabela de atrasos de propagação 1416 é atualizada por cálculos de atraso derivados do movimento normal de pacotes de dados através dos nós de mídia da rede, ilustrados simbolicamente pelos cronômetros 1415A, 1415B e 1415C, monitorando os atrasos de propagação entre os servidores de mídia 1220D e 1220F, 1220F e 1220H, e 1220D e 1220H, respectivamente. Caso o tráfego em curso seja escasso ou pouco frequente, a rede SDNP também

Petição 870170079583, de 19/10/2017, pág. 411/709

404 / 425 utiliza pacotes de teste para verificar a integridade de uma conexão. Um método de pacote de teste é ilustrado na Figura 120, onde um servidor de mídia é instruído pelo servidor de sinalização a enviar uma série de rajadas de pacotes, onde os pacotes de dados enviados aumentam em tamanho ou em frequência enquanto o atraso é rastreado. O gráfico de carregamento resultante mostrado pela curva 1417 revela que o carregamento máximo da rota ou enlace de comunicação específico deve ser limitado em tamanho ou taxa para não exceder o carregamento máximo, mostrado como a linha 1418. [001036] Dado que as informações mencionadas acima sobre a rede, seus endereços de nó e seus atrasos de propagação estão prontamente disponíveis nos servidores de nomes e nos servidores de sinalização, a comunicação de QoS alta pode ser melhor alcançada usando a comunicação de canal triplo, conforme descrito na Figura 121. Conforme mostrado, o nó de sinalização S, hospedado pelo servidor de sinalização 1365, controla inteiramente o roteamento de dados através dos servidores de mídia 1118 e aos clientes 1335 distribuindo pacotes SDNP 1420 compreendendo dados de roteamento de nó para nó 1374Z e sementes numéricas de zona específica 929 e chaves de desencriptação 1030. Ao estabelecer uma chamada, o nó de cliente C2,i, neste caso, o aplicativo SDNP 1335 no tablet 33, contacta o nó de servidor de nomes NS no servidor de nomes 1406, para registrar-se na rede e para encontrar o seu servidor de sinalização mais próximo, pelo qual contacta o nó de sinalização S no servidor de sinalização 1365 para iniciar uma chamada. Posteriormente, o nó de sinalização S gerencia o roteamento e os servidores de mídia roteiam os dados de acordo, alterando as configurações de segurança para cada uma das zonas U2, Zl e Ul.

[001037] Devido à importância do servidor de nomes na manutenção de uma lista de nós de rede atualizada 1410, mostrada na Figura 122, o nó de servidor de nomes NS, hospedado no servidor de nomes 1408, trabalha em conjunto com um ou mais servidores redundantes, ilustrado pelo nó de

Petição 870170079583, de 19/10/2017, pág. 412/709

405/425 servidor de nomes de backup NS2, executado no servidor de nomes de backup 1421. No caso de qualquer nó de cliente ou nó de mídia não conseguir alcançar o servidor de nomes 1408, a consulta de informações é transferida de maneira automática e transparente para o servidor de nomes de backup 1421. O mesmo método de redundância é utilizado para sinalizar servidores para garantir disponibilidade constante para fazer uma chamada ou roteamento de pacotes. Como mostrado na Figura 123, o nó de sinalização S, hospedado no servidor de sinalização 1365, tem um nó de sinalização de backup S2, hospedado no servidor de sinalização de backup 1422, que assume automaticamente no caso de o servidor de sinalização 1365 falhar ou ser atacado.

[001038] A comunicação usando o roteamento de pacotes SDNP de canal triplo de acordo com esta invenção é ilustrada na Figura 124A, onde na etapa 1430A o dispositivo ou o chamador logam na rede. Para fazer isso, o aplicativo 1335 do cliente no tablet 33 entra em contato e se registra automaticamente com o nó de servidor de nomes NS, hospedado no servidor de nomes 1408. Esse evento está associado a um cliente que faz logon na rede, não necessariamente fazendo uma chamada. No processo de registro, o nó de servidor de nomes NS passa uma lista de servidores de nomes, ou seja, a lista de servidores de nomes SDNP 1431 e, opcionalmente, uma lista de servidores de sinalização, ao aplicativo 1335 do cliente. Com essa informação, o dispositivo está pronto e pode fazer uma chamada SDNP.

[001039] Na primeira etapa 1430B na realização real da chamada, o tablet 33 envia o pacote IP 1450A para o nó de servidor de nomes NS, solicitando roteamento e informações de contato para o destino ou pessoa a ser chamada. A solicitação de informações de contato, ou seja, a consulta de rota 1431, pode vir na forma de um endereço IP, endereço SDNP, número de telefone, URL ou outro identificador de comunicação. Na etapa 1480C, o nó de servidor de nomes NS, hospedado pelo servidor de nomes 1408, fornece ao

Petição 870170079583, de 19/10/2017, pág. 413/709

406/425 aplicativo SDNP 1335 do cliente o endereço do destinatário pretendido. A resposta é entregue pelo pacote IP 1450B, usando a camada de transporte

TCP. Em uma modalidade alternativa, o cliente solicita as informações de roteamento de um servidor de sinalização e o servidor de sinalização solicita as informações do servidor de nomes.

[001040] Na etapa 1430D, mostrada na Figura 124B, o cliente finalmente pode iniciar a chamada com o pacote IP 1450C de “IP Addr TB” para “IP Addr S”, o endereço IP do servidor de sinalização 1365, hospedando o nó de sinalização S. Como o pacote IP 1450C está carregando o endereço do destinatário, não dados em tempo real, o pacote IP 1450C emprega preferivelmente TCP como uma camada de transporte. Usando o conhecimento dos atrasos de propagação de nó para nó da rede mostrados na tabela 1416, o nó de sinalização S desenvolve um plano de roteamento de rede para a rede SDNP 1114, bem como a conexão da última milha para os servidores de gateway SDNP e na etapa 1430E comunica essas informações de roteamento para a nuvem SDNP 1114. O servidor de sinalização envia um pacote de dados de comando e controle para cada um dos servidores de mídia para instruí-los como lidar com pacotes de dados de entrada. O pacote de dados de comando e controle se parece com um pacote de dados comum, exceto que, em vez de transportar conteúdo de áudio, sua carga útil compreende uma série de instruções que informam o nó de mídia como rotear um pacote com uma etiqueta de identificação específica, endereço SDNP ou código postal SDNP para um novo destino. Alternativamente, como descrito acima, em modalidades distributivas, nenhum servidor de sinalização único desenvolve todo o plano de roteamento, mas sim uma série de servidores de sinalização desenvolve partes sucessivas do plano de roteamento à medida que o pacote passa pela rede SDNP.

[001041] Então, na etapa 1430F, o nó de sinalização S envia para o aplicativo 1335 no tablet 33 o endereço do nó de mídia do gateway, as chaves

Petição 870170079583, de 19/10/2017, pág. 414/709

407 / 425 de desencriptação da zona U2 1030, as sementes 929 e outras configurações de segurança necessárias para garantir que o primeiro pacote seja enviado pela primeira milha.

[001042] Uma vez que o tablet 33 obtém as configurações de segurança da zona U2 na etapa 1430F, ele inicia uma chamada com o pacote SDNP 1450D, conforme mostrado na Figura 124C. As ondas de voz representadas por som 1384A, capturadas pelo microfone 1383A, são convertidas em informações digitais por um CODEC de áudio (não mostrado) e alimentadas no aplicativo 1335 no tablet 33. Combinando os dados de áudio com o roteamento de endereços e outras informações montadas em um cabeçalho SDNP, o aplicativo 1335 constrói o pacote SDNP 1450D para roteamento de primeira milha roteando de “IP Addr TB” para “IP Add MF” e inicia o transporte de pacotes para o nó de mídia de gateway Ma,f. O cabeçalho SDNP, incorporado na carga útil do pacote de dados 1432 pode incluir urgência, preferências de entrega, protocolos de segurança e especificações de tipo de dados. O cabeçalho SDNP também inclui o preâmbulo SDNP mais o endereço MAC, os endereços IP de origem e de destino e o campo protocolo, basicamente as informações de camada 2, 3 e 4 com uma carga útil que encapsula o cabeçalho SDNP e todos os pacotes de dados com os seus próprios subcabeçalhos SDNP. Uma vez que o roteamento da primeira milha do pacote SDNP 1450D ocorre usando endereços IP, o transporte de pacotes é semelhante ao tráfego convencional da Internet, exceto que o conteúdo real dos dados é embaralhado e encriptado usando as configurações de segurança para a zona U2 e o cabeçalho SDNP contido na carga útil SDNP 1432, que também contém os dados, é formatado especificamente de acordo com o protocolo de rede dinâmico seguro para a zona U2.

[001043] A etapa 1430H, também mostrada na Figura 124C ilustra o pacote de dados SDNP 1450E sendo roteado do nó de mídia de gateway Ma,f, hospedado pelo servidor de mídia 1220F, para o nó de mídia Maj, hospedado

Petição 870170079583, de 19/10/2017, pág. 415/709

408/425 pelo servidor de mídia 1220J na nuvem SDNP. Ao contrário do roteamento de primeira milha do pacote de dados IP 1450D, este primeiro salto intra-nuvem do pacote SDNP 1450D ocorre usando os endereços SDNP “SDNP Addr MF” e “SDNP Addr MJ”, não reconhecíveis na Internet. Além disso, a carga útil 1433 é embaralhada e encriptada usando as configurações de segurança da zona do SDNP Zl, e o cabeçalho SDNP contido no pacote SDNP da Zl que encapsula os dados também é formatado especificamente de acordo com os segredos compartilhados para a zona Zl. Por motivos de segurança, as configurações de segurança da zona Zl não são comunicadas para a zona U2 e vice-versa.

[001044] Na etapa 1430J, mostrada na Figure 124D, o pacote de dados 1450F é roteado para fora da nuvem SDNP segura do nó de mídia de gateway Ma,d, hospedado pelo servidor de mídia 1220D, para o nó de cliente Ci,i, hospedado pelo aplicativo 1335 no telefone celular 32. Esse roteamento da última milha do pacote IP 1450F ocorre usando os endereços IP “IP Addr MD” e “IP Addr CP”, reconhecíveis na Internet, mas a carga útil 1434 é embaralhada e encriptada usando os segredos compartilhados da zona UI de SDNP, e o cabeçalho SDNP contido na carga útil 1434 também é formatado especificamente de acordo com os segredos compartilhados. Ao entregar o conteúdo de dados da carga útil 1434 para o aplicativo 1335 no telefone celular 32, o alto-falante 1388B converte o código digital em ondas de som 1384A usando um CODEC de áudio (não mostrado).

[001045] Quando o pacote SDNP de entrada 1450F é recebido pelo aplicativo 1335 no telefone celular 32, ele só pode ver do endereço o último nó de mídia Ma,d onde o pacote de dados deixou a nuvem SDNP. A menos que a carga útil da SDNP contenha informações sobre o chamador, ou a menos que o nó de sinalização S forneça essas informações, não há nenhuma maneira de a pessoa chamada ou recebendo os dados rastrear suas origens ou sua fonte. Esse recurso, a comunicação “anônima” e a entrega de dados não

Petição 870170079583, de 19/10/2017, pág. 416/709

409/425 rastreáveis são um aspecto exclusivo da comunicação SDNP e um artefato intrínseco do roteamento dinâmico de salto único de acordo com esta invenção. A rede SDNP entrega informações sobre o chamador ou a fonte somente se o chamador assim o desejar, caso contrário, não há informações disponíveis - o anonimato é a condição padrão para a entrega de pacotes SDNP. De fato, o aplicativo SDNP do cliente emissor deve enviar intencionalmente uma mensagem informando uma pessoa sendo chamada ou recebendo mensagens que as informações vieram do chamador específico. Uma vez que o servidor de sinalização conhece o chamador e o roteamento do pacote, ele pode determinar uma rota para um pacote de dados de resposta sem nunca revelar a identidade do chamador.

[001046] Altemativamente, o servidor de sinalização pode revelar uma identidade ou avatar falso, ou limitar o acesso da identidade do chamador a apenas alguns amigos próximos ou contatos autorizados. O anonimato é especialmente valioso em aplicativos como jogos, onde não há motivo para que um jogador compartilhe sua verdadeira identidade - especialmente com um oponente desconhecido. Outra condição que requer uma comunicação anônima é em comunicação máquina para máquina ou M2M, loT ou Internet das Coisas, veículo para veículo ou V2V, ou veículo para infra-estrutura ou comunicação V2X onde um cliente não quer que máquinas, aparelhos e dispositivos deem informações pessoais e de contato a dispositivos, agentes ou dispositivos piratas cibernéticos potencialmente hostis. Para o usuário extremamente paranoico, a voz também pode ser disfarçada eletronicamente, de modo que mesmo a comunicação vocal possa ser realizada anonimamente.

[001047] Como mostrado na etapa 1430K da Figura 124D em resposta a um pacote de entrada, o aplicativo 1335, hospedado pelo telefone celular 32, envia o pacote IP 1450G para o nó de sinalização S hospedado no servidor de sinalização 1365. As solicitações de pacotes de saída respondem informações de roteamento. Em uma modalidade, o nó de sinalização S pode então

Petição 870170079583, de 19/10/2017, pág. 417/709

410/425 fornecer à pessoa chamada a identidade verdadeira do chamador, pelo que o programa de aplicativo SDNP da pessoa que está sendo chamada pode responder repetindo, na direção inversa, todo o processo de conexão usado para se conectar a eles, ou seja, contactar o servidor de nomes, encontrar seu endereço SDNP ou IP, contactar o servidor de sinalização, rotear uma resposta, etc. Em outra modalidade, o servidor de sinalização sabe de onde veio o pacote e projeta uma rota para que um pacote de resposta seja enviado sem nunca descrever as informações de contato do chamador.

[001048] Independentemente do método de resposta utilizado, na etapa 1430L da Figura 124E, o pacote IP de resposta combina dados de áudio que compõem ondas de voz 1384B capturadas pelo microfone 1383B e convertidas em sinais analógicos, depois convertidas em código digital pelo CODEC de áudio (não mostrado). O conteúdo de áudio, uma vez processado, embaralhado, encriptado e empacotado, toma-se a carga útil segura 1435 do pacote IP 1450H roteado de “IP Addr CP” para o nó de mídia do gateway SDNP “IP Addr MF”. Esses endereços IP são reconhecíveis na Internet, exceto que a carga útil 1435 compreende conteúdo embaralhado e encriptado usando as configurações de segurança da zona UI de SDNP e o cabeçalho SDNP contido na carga útil 1435 é formatado especificamente de acordo com os segredos compartilhados para a zona UI.

[001049] Na etapa 1430M, o pacote de resposta sai da nuvem SDNP segura sem executar qualquer salto de nó para nó dentro da nuvem SDNP. Nesse caso, o nó de mídia de gateway Ma,f hospedado pelo servidor de mídia 1220F, converte os conteúdos do pacote SDNP 1450H de uma carga útil específica da zona Zl 1435 para uma carga útil da zona U2 1436 e, usando os endereços IP “IP Addr MF” e “IP Addr TB”, direciona o pacote IP 1450J para o nó de cliente C2,i, hospedado pelo tablet 33. Esse roteamento da última milha do pacote IP 1450J ocorre usando os endereços IP “IP Addr MF” e “IP Addr TB”, reconhecíveis na Internet, mas a carga útil 1436 é embaralhada e

Petição 870170079583, de 19/10/2017, pág. 418/709

411/425 encriptada usando as configurações de segurança da zona U2 de SDNP, e o cabeçalho SDNP contido na carga útil 1436 é formatado especificamente de acordo com o protocolo de rede dinâmico seguro para a zona U2. Uma vez recebido pelo telefone celular 33, o aplicativo habilitado para SDNP 1335 extrai os dados da carga útil e, após a desencriptação e o desembaralhamento, converte o código digital usando um CODEC de áudio (não mostrado) em som 1384B produzido pelo alto-falante 1388A. Na sequência mostrada nas etapas 1430K-1430M, apenas um nó de mídia de gateway está envolvido na comunicação e, portanto, a “primeira milha” é imediatamente seguida pela “última milha”.

[001050] Um resumo da sequência de chamadas usando a comunicação de canal triplo de acordo com esta invenção está ilustrado na Figura 125A onde, usando os pacotes de IP baseados em transporte TCP 1450A e 1450B, o aplicativo 1335, executado no tablet 33, e o nó de servidor de nomes NS estabelecem um diálogo, pelo que, ao receber as informações de contato ou o endereço IP da pessoa que está sendo contatada, o tablet 33 instrui o nó de sinalização S para fazer uma ligação e estabelecer uma sessão com o destinatário, usando o pacote TCP baseado em transporte 1450C. Posteriormente, as ondas de voz 1384A são capturadas, empacotadas e roteadas por nós de mídia para seu destino, usando uma combinação de pacotes IP 1450D e 145 OF para a primeira milha e a última milha, respectivamente, e o pacote SDNP 1450E para transmissão através da nuvem SDNP. O roteamento resultante, do tablet 33 para o nó de mídia de gateway Ma,f para um segundo nó de mídia de gateway Ma,d para o telefone celular 32, é mostrado na Figura 125B. Todo o transporte com exceção do salto nó para nó 1453B usa endereços IP em vez de endereços SDNP. Essa sequência é mostrada no fluxograma na parte inferior da Figura 125B.

[001051] A sequência de resposta é mostrada na Figura 126A, onde o aplicativo 1335 no telefone celular 32, usando o pacote IP 1452G, solicita que

Petição 870170079583, de 19/10/2017, pág. 419/709

412/425 o nó de sinalização S envie um pacote de resposta para o tablet 32 e o nó de mídia de gateway roteia a resposta de voz, usando os pacotes IP 1452H e 1452J. O transporte de pacotes resultante, mostrado na Figura 126B, que compreende os saltos 1453D e 1453E é quase curto demais, porque o transporte ocorre inteiramente pela Internet, exceto pelo roteamento através do nó de mídia de gateway Ma,f,, o que intensifica a segurança apenas reescrevendo os endereços IP de origem e de destino e convertendo as configurações de segurança do pacote de dados da zona UI para a zona U2. Em tal exemplo, não ocorre um salto de nó para nó dentro da nuvem SDNP, o que tem a desvantagem de tornar mais fácil rastrear e correlacionar pacotes de dados dentro e fora de um único nó, neste caso, o servidor de mídia 1220F.

[001052] Nesse caso, é vantajoso inserir um nó simulado no trajeto de transporte de dados para facilitar o direcionamento incorreto, como mostrado na Figura 126C. Nesse caso, o roteamento é modificado para incluir um segundo endereço de servidor “IP Addr MF2”, no mesmo servidor ou no mesmo farm de servidores como o endereço “IP Addr MF” e para converter o pacote de entrada IP 1452H de “IP Addr CP” para “IP Addr MF” para um pacote de saída IP 1462L de “IP Addr MF2” para “IP Addr TB”, inserindo um pacote IP intermediário 1452K, que “entrega” o pacote 1452K de “IP Addr MF” para “IP Addr MF2”, ou altemativamente de “SDNP Addr MF” para “SDNP Addr MF2”. A atribuição da porta também muda durante o processo de tradução. Nesse caso, não importa se o endereço é um endereço IP da Internet, um endereço NAT ou um endereço SDNP, porque o pacote de dados 1452K nunca sai do servidor ou farm de servidores, isto é, representa uma entrega e transferência interna.

[001053] “Campos” de Carga Útil O processamento de carga útil de um pacote de dados de entrada que entra no cliente SDNP através de um nó de mídia de gateway é ilustrado na Figura 127, onde o pacote de entrada IP 1374B é primeiro descompactado para extrair a carga útil encriptada,

Petição 870170079583, de 19/10/2017, pág. 420/709

413/425 incluindo o texto cifrado 1393, em seguida, desencriptado usando a chave apropriada da zona em que a encriptação ocorreu e usando, conforme necessário, o tempo ou estado quando ocorreu. A carga útil resultante inclui texto simples 1392, que, se embaralhado, também deve ser desembaralhado, novamente usando as configurações de segurança de zona e estado apropriadas. Em seguida, o preâmbulo SDNP é removido, revelando um pacote de dados de conteúdo 1391 que compreende vários campos, neste caso compreendendo um campo 9 com um cabeçalho correspondente Hdr 9, bem como um campo de lixo com o cabeçalho correspondente Hdr J.

[001054] Em modalidade alternativa, também mostrada na Figura 127, o pacote IP de entrada 1460 é desencriptado e desembaralhado, seu preâmbulo é removido e é analisado para produzir dois campos de dados válidos - campo 6 com o cabeçalho correspondente Hdr 6 e campo 8 com cabeçalho correspondente Hdr 8. Esses pacotes podem então ser mesclados com outros campos para formar novos pacotes IP e pacotes SDNP de acordo. [001055] Usando a estrutura de dados de campos aninhados, empacotar vários campos de dados com seus próprios cabeçalhos na carga útil de um pacote é como colocar várias caixas dentro de uma caixa maior. O processo de reempacotar os dados por SDNP, ou seja, abrir uma caixa, retirar as caixas menores e colocá-las em novas caixas grandes, envolve muitas escolhas no roteamento de segmentos de dados. Para evitar a perda de pacotes, é preferível que os segmentos de dados da mesma origem não sejam misturados nos mesmos campos com segmentos de dados de outros dados, conversas e comunicados, mas permaneçam exclusivamente separados conforme identificado pelo cabeçalho e arranjado pelo remetente. Por exemplo, na Figura 128, as cargas úteis de entrada 1461 e 1393, de pacotes de dados SDNP ou IP (não mostrados), são desencriptadas usando a operação de desencriptação 1032, possivelmente usando diferentes chaves de desencriptação de diferentes estados ou zonas, resultando em duas cargas

Petição 870170079583, de 19/10/2017, pág. 421/709

414/425 úteis de texto simples 1392 e 1462. A operação de mistura 1061 combina as cargas úteis 1392 e 1462 e, após a análise, produz conteúdo para três campos campo 6 compreendendo o pacote 1464, campo 8 compreendendo o pacote 1463 e campo 9 compreendendo o pacote 1459, os quais juntos formam o conteúdo de dados 1470. Os três pacotes 1459, 1463 e 1464 podem ser armazenados separadamente ou mesclados em um pacote longo. Devido aos seus cabeçalhos SDNP, cada campo de dados é facilmente identificado, mesmo que tenham sido removidos do pacote SDNP ou IP usado para entregá-los. Coletivamente, o conteúdo de dados 1470 representa os dados presentes no nó de mídia nesse instante específico. O processo é dinâmico, com o conteúdo sempre em mudança à medida que os pacotes atravessam a rede SDNP. Após um período de tempo prescrito, quando não há motivo para aguardar mais dados de entrada, o conteúdo de dados 1470 é dividido em novas combinações pela operação de divisão 1057, pela qual a carga útil 1472 contém alguns segmentos de dados de cada um dos três campos, ou seja, segmentos de dados 9C e 9D do campo 9, segmento de dados 8B do campo 8 e segmentos de dados 6C e 6D do campo 6. Os números desses campos são transferidos para a carga útil 1472. O texto simples é embaralhado se desejado, e então é encriptado usando a operação de encriptação 1026 no estado atual e para que a zona atual produza a carga útil 1474, pronta para ser montada em um pacote SDNP ou um pacote IP e roteado no caminho.

[001056] A operação de divisão 1057 também cria uma segunda carga útil 1471, contendo segmentos de dados para três campos, isto é, campo 9 contendo segmentos de dados 9B, 9A, 9F e 9E, campo 8 contendo apenas o segmento de dados 8F e campo 6 contendo o segmento de dados 6F.

[001057] Como mostrado, todos os campos nas cargas úteis 1471 e 1472 também contêm um ou mais segmentos de dados de lixo. A não ser que o reembaralhamento seja executado, a carga útil embaralhada 1471 é então encriptada usando a operação de encriptação 1026 no estado atual e para que

Petição 870170079583, de 19/10/2017, pág. 422/709

415/425 a zona atual produza a carga útil 1473, pronta para ser montada em um pacote SDNP ou em um pacote IP. Da mesma forma, a carga útil 1472 é encriptada usando a operação de encriptação 1026 no estado atual e para que a zona atual produza a carga útil 1474, pronta para ser montada em um pacote SDNP ou em um pacote IP. A carga útil 1473 é roteada para um nó de mídia diferente da carga útil 1474. Nessa ilustração, os endereços IP ou SDNP e o resto do pacote de dados são excluídos da ilustração por uma questão de clareza.

[001058] A natureza dinâmica do reempacotamento está ilustrada na Figura 129A, onde no tempo t4 e estado correspondente 994, as cargas úteis 1483A e 1483B, que compreendem dados do segmento de dados dos campos Fld 91 e Fld 92, respectivamente, são misturados usando a operação de mistura 1061 para formar uma carga útil híbrida 1484A. No tempo ts e estado correspondente 995, a operação de mistura 1061 combina a carga útil híbrida 1484A com a carga útil 1484B, contendo dados para Fld 93, para produzir carga útil híbrida longa 1485A, compreendendo os segmentos de dados 9B, 9A, 9F e 9E em ordem embaralhada no campo 91 com o cabeçalho Hdr 91, o segmento de dados 9C no campo 92 com Hdr 92 e o segmento de dados 9D no campo 93 com Hdr 93. No tempo tf e estado 999, o aplicativo 1335, hospedado pelo telefone celular 32, processa a carga útil híbrida de múltiplos campos 1485A e remonta a sequência de dados original 1489A compreendendo os segmentos de dados 9A a 9F arranjados sequencialmente.

[001059] Em alguns casos, mostrados anteriormente aqui, pode ser necessário armazenar temporariamente alguns segmentos ou campos de dados enquanto aguardam outros chegarem. Essa operação de armazenamento pode ocorrer dentro de qualquer dado nó na rede SDNP, incluindo nós de mídia interior ou nós de mídia de gateway. Altemativamente, o armazenamento pode ocorrer dentro do aplicativo de um cliente hospedado em um telefone celular, tablet, notebook, etc. Esse exemplo é mostrado na Figura 129B onde no tempo t4 as cargas úteis 1483A e 1483B compreendendo segmentos de

Petição 870170079583, de 19/10/2017, pág. 423/709

416/425 dados dos campos 91 e 92 são misturadas pela operação de mistura 1061 para criar carga útil híbrida 1484A. Essa nova carga útil é mantida em inatividade no cache de rede 1550, seja como seus campos de componente 1485B e 1485C ou como uma carga híbrida longa 1484A. Por fim, no tempo ts quando a carga útil 1485D chega, o conteúdo de cache de rede 1550 é liberado para a operação de mistura 1061, produzindo no tempo tô e estado correspondente 996, a carga útil híbrida 1486A compreendendo os segmentos de dados 9A a 9F divididos nos campos Fld 91, Fld 92 e Fld 93. No tempo tf e estado 999, o aplicativo 1335, hospedado pelo telefone celular 32, processa a carga útil híbrida de múltiplos campos 1486A e remonta a sequência de dados original 1489A compreendendo os segmentos de dados 9A a 9F arranjados sequencialmente.

[001060] Em outra modalidade desta invenção, a remontagem final e o armazenamento em cache de campos ocorre dentro do aplicativo 1335 no telefone celular 32, isto é, dentro do aplicativo do cliente - não na nuvem SDNP. Como ilustrado na Figura 129C, no tempo td as cargas úteis 1483A e 1483B compreendendo segmentos de dados dos campos 91 e 92 são misturadas através da operação de mistura 1061 para criar a carga útil híbrida 1484A, que é imediatamente transferida para o aplicativo 1335 no telefone celular 32 e mantida em um cache de aplicativo de cliente seguro 1551 como cargas úteis 1484C e 1484D. Quando a carga útil 1485E chega no tempo td e posteriormente é direcionada para o aplicativo 1335 no telefone celular 32 no tempo ts e com o estado correspondente 995, então o aplicativo 1335 é, no tempo tf , capaz de remontar o pacote de dados original 1489A compreendendo segmentos de dados 9A a 9F arranjados sequencialmente.

[001061] Um fluxograma resumido que resume a reconstrução do cliente de um pacote SDNP é ilustrado na Figura 129D, onde um pacote de dados de canal único 1490, que compreende um ou vários blocos de texto cifrado, é desencriptado pela operação de desencriptação 1032 para produzir o

Petição 870170079583, de 19/10/2017, pág. 424/709

417/425 texto simples 1491 de múltiplos campos, que é desembaralhado pela operação de desembaralhamento 928 para produzir cadeias de texto simples 1492A, 1492B e 1492C de múltiplos campos, que são então mesclados pela operação de mistura 1061, incluindo a operação de análise 1087 e limpeza (não mostrada), para produzir o pacote de dados original 1493. Finalmente, o pacote de dados 1493 é convertido por CODEC de áudio 1385 em ondas de som ou voz 1384A.

[001062] Comando e Controle Como um elemento final de comunicação SDNP de acordo com esta invenção, o comando e controle de nós de mídia pelos nós de sinalização é um componente chave para garantir entrega de pacotes em tempo real com alta QoS e baixa latência sem sacrificar a segurança ou fidelidade de áudio. Um exemplo de uma árvore de decisão básica usada para determinar o roteamento e tratamento prioritário de clientes, conversas e pacotes de dados é mostrado na Figura 130. Como mostrado, quando o nó de cliente C24, representando o tablet 33, solicita uma chamada ao nó de sinalização S no servidor de sinalização 1365, ele especifica no pacote de comando e controle 1495A não apenas quem o chamador quer entrar em contato, mas a natureza da chamada, por exemplo, se é uma chamada de voz, uma chamada de vídeo, etc., sua urgência, o método de entrega preferido, por exemplo, melhor esforço normal, entrega garantida, entrega VIP, etc. O nó de sinalização S interpreta o pedido de entrega 1499A, usando “método de entrega seleto” (etapa 1500), com base na solicitação, o estado comercial do cliente, o histórico de pagamentos ou qualquer número de considerações de negócios. Vários desfechos podem resultar. Se o cliente for um cliente VIP ou preferido com base em seu volume ou potencial de renda, a sessão de comunicação será marcada como VIP. A entrega VIP também pode utilizar um impulso de desempenho especial conhecido como roteamento de corrida, descrito mais adiante nesta descrição.

[001063] Se o fator mais importante é que o arquivo tenha sua entrega

Petição 870170079583, de 19/10/2017, pág. 425/709

418/425 garantida, então a entrega garantida de pacotes pode ser empregada, ou seja, enviar várias cópias redundantes dos pacotes e minimizar o número de saltos de nó para nó para minimizar o risco de perda de pacotes, mesmo que o desempenho em tempo real seja sacrificado. A entrega especial pode incluir procedimentos de autenticação específicos do cliente. Caso contrário, o roteamento SDNP normal será empregado. Na Figura 130, a saída da decisão de método de entrega seleto (etapa 1500), juntamente com o endereço ou número de telefone 1499B da pessoa a ser chamada, é usada para governar o roteamento que afeta a operação “determinar e classificar as opções de roteamento” (etapa 1501). Uma vez que as opções de rota são classificadas, a solicitação de urgência 1499C e qualquer consideração de financiamento especial, como taxas de urgência, são julgadas pela decisão “urgência de pacote seleto” (etapa 1502), pelo qual a saída pode incluir a opção normal, prioritária, urgente e uma opção “lenta” de custo menor para enviar dados com a condição de que a qualidade do áudio não será sacrificada.

[001064] A combinação das opções de roteamento (etapa 1501) e a seleção de urgência (etapa 1502) permite que o nó de sinalização S selecione melhor o roteamento para cada pacote, quadro ou segmento de dados (etapa 1503). Se a rota selecionada passar por várias zonas, isso envolverá várias configurações de segurança (etapa 1504) para cada zona. Esses dados que compreendem sementes, chaves de desencriptação 1030 e outras informações relacionadas à segurança são então combinados com o roteamento, divisão e mistura de nó por nó para o transporte em malha, usado para gerar preâmbulos para cada pacote de dados, incluindo pacotes IP para a primeira e última milha, compreendendo o preâmbulo de zona U2 SDNP 1505A, o preâmbulo de zona Ul SDNP 1505C e os preâmbulos múltiplos de zona Z1 SDNP para transporte em malha na SDNP, representados coletivamente pelo preâmbulo 1505B. Os preâmbulos 1505A, 1505B, 1505C e outros são combinados com endereços IP e endereços SDNP para criar os vários pacotes

Petição 870170079583, de 19/10/2017, pág. 426/709

419/425

IP (Protocolo de Internet) e SDNP. Essas instruções de roteamento incluem o pacote IP 1506A enviado para o tablet 33 detalhando o roteamento para uma chamada ou comunicado do nó de cliente C2,i para o nó de mídia de gateway SDNP, múltiplos pacotes SDNP 1506B enviados para servidores de mídia 1118 e usados para rotear a chamada ou comunicado entre os nós de mídia My na nuvem SDNP, e o pacote IP 1506C, enviado para o telefone celular 32, detalhando o roteamento para uma chamada ou comunicado do nó de gateway SDNP para o nó de cliente Ci,i, representando o telefone celular 32. Desta maneira, os nós de mídia só precisam direcionar as cargas úteis de entrada de acordo com as instruções que recebem dos servidores de sinalização, um mecanismo completamente contrário ao procedimento de roteamento usado na comunicação OTT baseada na Internet.

[001065] Por exemplo, como afirmado anteriormente, os roteadores da Internet são hospedados por muitos ISPs e empresas de telefonia diferentes que não têm necessariamente os melhores interesses de um cliente em mente ao rotear seus pacotes com o menor atraso de propagação ou a menor latência. De fato, ao contrário das comunicações SDNP de acordo com esta invenção, os roteadores da Internet não conseguem nem distinguir pacotes de dados que transportam áudio ou vídeo em tempo real de lixo eletrônico. Na comunicação em tempo real, a latência é crítica. Os atrasos de algumas centenas de milissegundos afetam significativamente a QoS, e os atrasos de mais de 500 milissegundos tomam-se insuportáveis para manter uma conversa de voz coerente. Por essa e muitas outras razões, o desempenho em tempo real da rede SDNP aqui descrita monitora constantemente os atrasos de propagação e escolhe a melhor rota para cada pacote de dados em tempo real no momento em que o transporte acontece.

[001066] Como ilustrado na Figura 131 um roteamento solicitado de “IP Addr TB”, isto é, o tablet 33, para “IP Addr CP”, isto é, o telefone celular 32, tem muitas rotas potenciais. Cada atraso de propagação de nó para nó,

Petição 870170079583, de 19/10/2017, pág. 427/709

420 / 425 rastreado e gravado na tabela de atraso de propagação 1416, varia constantemente. Além disso, rotear uma chamada através do menor número de servidores de mídia não resulta necessariamente nas comunicações de latência mais baixas. Por exemplo, rotear uma chamada do nó de cliente C2,i para o nó de mídia Ma,f e depois para o nó de cliente C2,i tem um atraso de propagação total de 55 + 60 = 115ms, enquanto rotear a chamada do nó de mídia Ma,f através do nó de mídia Ma.d em vez de diretamente para o nó de cliente Cij, mostrado pelo trajeto sombreado e detalhado na Figura 132A, apresenta um atraso de apenas 55 + 15 + 15 = 85ms, que é 20% mais rápido, embora transite através de um nó de mídia adicional. No roteamento dinâmico SDNP, o servidor de sinalização S sempre considera a melhor combinação de trajetos, não só para manter a menor latência, mas também para fragmentar os dados e enviar o conteúdo usando o transporte em malha para segurança intensificada. Como mostrado, outro trajeto de atraso curto, mostrado pelo trajeto sombreado através do nó de mídia Ma,h, detalhado na Figura 132B, tem um atraso de propagação cumulativo de 25 + 20+15 + 15 + 15 = 105ms - ainda superior a outras opções apesar do grande número de saltos envolvido. [001067] Outra função importante de comando e controle é direcionar a reconstrução de pacotes. Essa função é fundamental para misturar, dividir e rerrotear pacotes SDNP na nuvem. A Figura 132C ilustra uma modalidade de como o nó de sinalização S pode se comunicar com um servidor de mídia, neste exemplo, o nó de mídia de hospedagem Ma,q para gerenciar pacotes de dados que entram e saem de um nó específico. Com pleno conhecimento de todas as configurações de segurança relevantes 1504 para um pacote SDNP de entrada e seus quadros de carga útil, usando o pacote de dados de comando e controle 1496C, o nó de sinalização S instrui o nó de mídia Ma,q como processar o pacote SDNP de entrada 1497A para produzir o pacote de dados de saída 1497B. Como mostrado, após a extração da carga útil 1511 A, que compreende múltiplos quadros, o nó de mídia Ma,q, na operação DUM 1210,

Petição 870170079583, de 19/10/2017, pág. 428/709

421 / 425 desencripta e desembaralha cada quadro da carga útil 151 IA e de cada quadro das cargas úteis em outros pacotes de entrada (não mostrados), com base nas informações de estado 920, sementes, 929 e chaves de desencriptação 1030 usadas quando cada uma delas foi criada, e depois mistura todos os campos de entrada para fazer um pacote longo, neste caso representado por todos os quadros independentes coletivamente como quadros de dados 1512 e individualmente como quadros de dados 1, 6, 9, 12, 23 e 31, respectivamente. [001068] Esses dados são então alimentados no separador zip SDNP 1310 para classificar os quadros em grupos de quadros, cada grupo tendo um destino comum em seu próximo salto na nuvem SDNP, tudo de acordo com informações de roteamento no pacote SDNP 1506B fornecido anteriormente pelo nó de sinalização S para cada quadro ou pacote SDNP em resposta à informação de chamada especificada no pacote de comando e controle 1495A. A operação SSE 1213, em seguida, divide os quadros nos grupos que têm destinos comuns, usando informações do estado 920 atuais, sementes atualizadas 929 e novas chaves de desencriptação 1030. Tal carga útil, a carga útil 1511B, que contém os dados dos quadros 1, 9 e 23, é destinada ao nó de mídia Maj, enquanto a carga útil anterior 1511A compreendeu dados para os quadros 1, 6 e 9. Portanto, conforme instruído pelo nó de sinalização S, o nó de mídia Ma,q removeu os dados do quadro 6 e os substituiu pelos dados do quadro 23 para fazer a carga útil 1511B, que montou no pacote SDNP de saída 1487B e enviou para o nó de mídia Maj..

[001069] Usando o modelo OSI de 7 camadas, a conexão SDNP mostrada na Figura 133A representa um túnel de gateway-a-gateway seguro 1522, que suporta a comunicação segura 1529 de extremidade a extremidade entre os respectivos aplicativos SDNP 1335 hospedados em apenas dois clientes, neste caso o tablet 33 e o telefone celular 32. Em modalidades desta invenção, as camadas física e de enlace de dados 1525 não envolvem tipicamente qualquer projeto especial para realizar a operação SDNP. A

Petição 870170079583, de 19/10/2017, pág. 429/709

422 / 425

Camada de Rede 3, no entanto, opera completamente diferente da Internet porque o SDNP controla o roteamento de cada salto dentro da nuvem SDNP para segurança, para minimizar a latência e oferecer a melhor QoS possível. A Camada de Transporte 4, enquanto usa o TCP para controle e uma versão aumentada do UDP para dados em tempo real, emprega o transporte contextual, alterando seus métodos e suas prioridades com base em algum conhecimento sobre o pacote SDNP, carga útil ou quadro e qual prioridade tem. A Camada de Sessão 5 também é única para a operação SDNP, onde as informações de comando e controle - comunicadas através de pacotes de comando e controle enviados no canal de mídia ou no canal de sinal determinam o gerenciamento de cada sessão, incluindo roteamento, qualidade, condições de entrega e prioridade.

[001070] Na comunicação SDNP, a Camada de Apresentação 6 executa encriptação e embaralhamento de rede salto por salto, sem relação com a própria encriptação do cliente.

[001071] Na Camada de Aplicativo 7, a comunicação SDNP é novamente única porque qualquer aplicativo habilitado para SDNP deve ser capaz de misturar e restaurar dados fragmentados e saber o que fazer se parte de uma carga útil fragmentada não chegar, novamente o transporte contextual. [001072] Toda a segurança e o desempenho acima da rede SDNP descrita são obtidos sem o uso de encriptação de clientes e gerenciamento de chaves privadas. Se o aplicativo de um cliente também estiver encriptado, por exemplo, a segurança de uma empresa privada, então o tunelamento tipo VPN é combinado com a fragmentação de dados para criar um novo tipo de comunicação segura - dados tunelados fragmentados, um híbrido de Camada de Apresentação 6 e Camada de Aplicativo 7, mostrado na Figura 133B.

[001073] Um aspecto único da comunicação SDNP de acordo com esta invenção é o exemplo de “roteamento de corrida” mostrado na Figura 134. Uma vez que a rede SDNP é construída sobre o transporte em malha de dados

Petição 870170079583, de 19/10/2017, pág. 430/709

423 / 425 fragmentados, não há sobrecarga envolvida no envio de campos de dados fragmentados pela rede em malha em duplicado ou em triplicado. Conceitualmente, para alcançar a menor latência possível, sem sacrificar a segurança, uma carga útil é dividida em subpacotes e organizada em dois quadros complementares. Em vez de enviar um quadro por uma rota e o segundo quadro por outra, no roteamento de corrida, múltiplas cópias de cada quadro são enviadas por diferentes rotas, e a primeira a chegar ao seu destino é a usada. As cópias que chegam mais tarde são simplesmente descartadas. Por exemplo, como mostrado, o quadro 91 é enviado através de dois trajetos, especificamente os trajetos 1540 e 1541, enquanto o quadro 92 também é enviado por múltiplos trajetos, os trajetos 1541 e 1543. Não importa qual combinação de trajetos é a primeira a fornecer uma carga útil de quadro 91 e uma carga útil de quadro 92, essa é a combinação que será usada.

[001074] Sumário A descrição acima ilustra as inúmeras vantagens em desempenho, latência, qualidade, segurança e privacidade obtidas pela comunicação SDNP de acordo com esta invenção. A tabela da Figura 135 compara a rede e protocolo dinâmicos seguros descritos (SDNP) para portadoras over-the-top ou OTT, redes privadas virtuais ou VPNs e redes para-par ou PTP. Conforme revelado pela tabela, todos os métodos de comunicação concorrentes e da técnica anterior dependem do transporte em uma rota por vez, dependendo exclusivamente da encriptação para proteger o conteúdo da comunicação. Deixando de lado a encriptação em uma VPN, todos os métodos de comunicação existentes expõem os endereços de origem e de destino das partes comunicantes, permitindo o phishing, detecção e perfilagem como uma vulnerabilidade a ataques cibernéticos. Em todos eles, a segurança é estática, permanecendo constante à medida que um pacote atravessa a rede. Uma vez que nenhum dos métodos da técnica anterior controla o roteamento de uma comunicação, eles não podem detectar se a comunicação foi ou não sequestrada; e eles não podem controlar a latência ou

Petição 870170079583, de 19/10/2017, pág. 431/709

424 / 425 o desempenho em tempo real da rede. Além disso, as redes OTT e PTP não garantem que um roteador de largura de banda alta estará disponível para suportar uma chamada, levando a mudanças constantes na qualidade do som e quedas de chamadas incessantes. Por fim, em todos os casos, exceto o método de comunicação SDNP e a rede em malha, se um hacker quebrar um código de encriptação, o hacker pode usar o conhecimento para causar danos significativos antes que a violação de segurança seja descoberta e, portanto, será capaz de ler ou ouvir o conteúdo total de comunicações privadas ou pessoais.

[001075] Na rede SDNP descrita, mesmo no caso de um invasor cibernético quebrar a encriptação, os dados em qualquer um dos pacotes são deturpados, incompletos, misturados com outras mensagens e embaralhados fora de ordem - basicamente o conteúdo de qualquer pacote SDNP é inútil exceto para a pessoa a que se destinava. Além disso, mesmo que a encriptação da rede estivesse quebrada, um desafio que pode levar anos para se completar, mesmo com a computação quântica, um décimo de segundo depois, a encriptação dinâmica de cada pacote que atravessa toda a nuvem SDNP muda. Isso significa que um hacker potencial deve começar tudo de novo a cada 100ms. Com esses métodos dinâmicos, uma conversa de cinco minutos, mesmo que estivesse completamente disponível em uma única cadeia de dados, levaria dezenas de anos para ser decodificada. Além disso, com a adição da fragmentação de dados, embaralhamento dinâmico e mistura dinâmica e rerroteamento, todos os benefícios a serem obtidos ao quebrar a encriptação seriam totalmente ilusórios.

[001076] A combinação dos múltiplos níveis de segurança realizados pela rede dinâmica segura e o protocolo aqui descritos, incluindo o embaralhamento dinâmico, o transporte de dados fragmentados, os pacotes de dados anônimos e a encriptação dinâmica excedem em muito a segurança oferecida pela encriptação estática simples. Na comunicação SDNP como

Petição 870170079583, de 19/10/2017, pág. 432/709

425 / 425 descrita aqui, os pacotes de dados de uma única conversa, diálogo ou outra comunicação não percorrem uma única rota, mas são divididos em fragmentos incompreensíveis de fragmentos de dados sem sentido, embaralhados fora de sequência e enviados por múltiplos trajetos que mudam continuamente em conteúdo, por mistura, e pelas credenciais de segurança subjacentes dos dados. O método de comunicação resultante representa o primeiro sistema de comunicação “hiper-seguro”.