Como projetar um sistema de informação pós-quântica

Nov 30 2022
Jean-Louis Olié, Alain Fernando-Santana ; Novembro 2022 Este artigo apresenta o conceito de Post Quantum Information Systems (PQIS), um novo conceito que visa definir Sistemas de Informação projetados para resistir a qualquer ataque, seja de computadores clássicos ou quânticos. Neste artigo, CyferAll propõe uma definição para PQIS e sua abordagem para projetar tais sistemas e identificar os blocos de construção essenciais.

Jean-Louis Olié, Alain Fernando-Santana ; novembro de 2022

Este artigo apresenta o conceito de Post Quantum Information Systems (PQIS), um novo conceito que visa definir Sistemas de Informação projetados para resistir a qualquer ataque, seja de computadores clássicos ou quânticos. Neste artigo, CyferAll propõe uma definição para PQIS e sua abordagem para projetar tais sistemas e identificar os blocos de construção essenciais.

Fundo

Em nosso artigo anterior , discutimos por que e como os sistemas de informação e os dados digitais que transitam por eles permanecem expostos à cibercriminalidade, apesar dos criptossistemas atualmente implantados para proteger os dados digitais. Também revisamos as novas ameaças que a computação quântica gerará à medida que a tecnologia amadurece e por que essas novas ameaças criam uma ameaça imediata, exigindo que governos e empresas substituam seus sistemas criptográficos atuais . Mas como poderíamos projetar sistemas de informação para torná-los resistentes às ameaças da computação quântica e fornecer aos dados digitais um nível de proteção semelhante ao “segredo perfeito”, conceito originalmente definido por Claude Shannon em 1949? [1]O objetivo deste artigo é propor vários caminhos cuja busca pode nos aproximar da visão de Shannon, ao mesmo tempo em que fornece os blocos de construção preliminares para um Sistema de Informação Pós-Quantum .

Definindo um Sistema de Informação Pós-Quantum

Para os fins deste artigo, um sistema de informação pós-quântica é definido como um sistema de informação em nível de aplicativo, executado em um ou vários computadores conectados por uma rede e que deve fornecer aos usuários do sistema proteção total :

(i) dos dados digitais processados, em todos os seus estados possíveis: “em uso”, “em repouso” e “em trânsito” , desde a criação até a restituição, contra qualquer ameaça, seja de computadores clássicos ou quânticos;

(ii) de vírus e malware que possam residir nos computadores que processam os dados digitais; e

(iii) durante a integração do usuário e serviços de login do usuário suportados pelo sistema.

Proteção Total de Dados

Vamos primeiro esclarecer o que realmente significa “proteção total de dados” e quais são os limites do mundo real para a proteção que um sistema de informação pode fornecer aos dados digitais. Com efeito, por várias razões, um sistema de informação nunca pode fornecer proteção “total” como tal, pois existem realidades práticas que o tornarão impossível. Por exemplo:

Comportamento do usuário

Os utilizadores são pessoas singulares e, como tal, são os detentores últimos da própria informação ou do acesso à informação a proteger. No entanto, esses indivíduos sempre têm a opção de divulgar as informações , seja intencionalmente (com ou sem autorização) ou não intencionalmente por negligência simples ou grosseira. Não importa o quão sofisticado seja o sistema de informação, ele nunca pode impedir a divulgação intencional não autorizada ou negligente não intencional por um usuário de dados ou credenciais de acesso. Isso pode ser mitigado por procedimentos de liberação de segurança , compartimentalização de informações com critérios de “necessidade de saber”, bem como treinamento de pessoal para aumentar a conscientização sobre segurança .

Além disso, as instruções de software subjacentes a qualquer sistema de informação são codificadas por indivíduos que podem ter segundas intenções. Uma porta dos fundos colocada intencionalmente durante o desenvolvimento da solução por um codificador que resultará em ataques de dia zero não pode ser identificada com antecedência e protegida por um sistema de informação. Isso pode ser mitigado por revisões de código e procedimentos de certificação externa .

Vigilância baseada em instalações

Além disso, usuários e periféricos estão em instalações físicas (corporativa ou home office) e essas instalações podem ser objeto de equipamentos de vigilância não autorizados capazes de capturar credenciais de acesso/dados trocados e um sistema de informação não pode proteger contra tal cenário. Isso pode ser mitigado por sistemas que detectam a presença de dispositivos indesejáveis.

Portanto, a definição de “Proteção Total” é entendida como descrevendo as medidas que estão no escopo tecnológico de um sistema de informação e sua gestão de dados digitais .

Considerações iniciais sobre um Sistema de Informação Pós-Quântica (PQIS)

Equipamento/ Firmware

Idealmente, um PQIS deve ser facilmente acessível e, como tal, não exigir o uso de hardware de computador específico, personalizado ou customizado. Além disso:

eu. os componentes do hardware do computador e seu firmware não devem ser comprometidos e um processo para garantir esse estado “limpo” deve preceder sua conexão com o PQIS;

ii. o processador, a placa da CPU e a RAM devem operar com segurança; e

iii. os periféricos de captura/renderização devem ser seguros e não passíveis de acesso sub-reptício ou vazamento de dados para destinatários não autorizados.

Sistemas operacionais

O sistema operacional desempenha um papel fundamental no funcionamento de um computador, mas é um componente de software e, portanto, potencialmente modificável por vírus ou malware . Tornar um sistema operacional menos suscetível a vírus e malware é fundamental para a criação de um PQIS seguro. Uma opção para proteger o sistema operacional é executá-lo como uma máquina virtual e fazê-lo residir inteiramente na RAM para protegê-lo contra qualquer modificação maliciosa.

Direitos de acesso

Vinton G. Cerf, um dos projetistas dos principais blocos da Internet, disse que, ao criar a nova rede, “não nos concentramos em como você poderia destruir o sistema intencionalmente”. Este continua sendo o desafio hoje. Os Sistemas de Informação concedem direitos de acesso a usuários aprovados para que não duvidem mais de suas intenções. Esta lógica revelou-se fundamentalmente falha, pois parece haver tantos utilizadores mal intencionados no exterior como no interior de uma rede privada. O Instituto Nacional Americano de Padrões e Tecnologia (NIST) abordou essa preocupação em sua publicação especial de 2020 [2] relativa a modelos para sistemas de informação Zero Trust. Nesse modelo, os direitos de acesso in-the-clear são concedidos apenas a computadores cujos usuários são comprovadamente confiáveis ​​para acessar os dados. Até que esse pré-requisito seja atendido, o computador não é confiável e um componente de imposição de política do sistema impede que os dados sejam fornecidos de forma transparente para o usuário do computador. O componente de aplicação da política atua sob o controle de um ponto de decisão da política, gerenciando todos os direitos dos usuários para acessar cada categoria de dados. No entanto, este modelo deve ser aperfeiçoado. De fato, como vimos, considerado como um todo, um computador não pode ser considerado confiável, pois pode ter sido infectado por vírus ou malware ou as informações de acesso do usuário podem ter sido roubadas usando as técnicas descritas anteriormente neste artigo. Para proteger contra um computador que foi infectado por um vírus ou malware, a implementação do modelo de confiança zero deve criar uma cadeia inquebrável de custódia de dados entre os enclaves protegidos . Nesse modelo, a criptografia de ponta a ponta é de fato implementada como enclave seguro para enclave seguro , com garantias muito melhores de proteção não apenas para dados “em trânsito”, mas também para dados “em uso” e dados “em repouso”.

Para se proteger de um utilizador cujas informações de acesso tenham sido roubadas, o sistema de informação pode realizar regularmente verificações de identidade , biométricas ou não, dependendo da análise do sistema de informação sobre o comportamento do utilizador, acesso prévio a essa mesma informação, hora do dia, local de onde o pedido de acesso é feito etc. etc. Não se deve mais supor que o usuário tenha qualquer direito de estar na rede e muito menos acessar as informações solicitadas.

O papel do navegador

Como o próprio nome sugere, o navegador de internet foi inventado para facilitar a navegação na internet e a recuperação de informações de sites ou outros locais da internet. O navegador também é o programa que configura conexões de videoconferência, conexões de voz na Internet, webmail e chat em aplicativos da web específicos. Quase todas as informações que transitam pelo navegador estão claras, pois esse navegador é o ponto final da "criptografia de ponta a ponta"nestes aplicativos da web. De fato, embora o protocolo TLS forneça a criptografia simétrica de dados e a troca assimétrica de chaves com autenticação, ele não resiste a ataques quânticos. Além disso, o protocolo TLS protege apenas os dados durante o transporte entre navegadores. Antes da criptografia e depois da descriptografia, os dados residem "às claras" no cache dos navegadores e podem ser extraídos ou comprometidos por vírus e malware. O advento dos cookies e sua capacidade de rastrear, coletar e armazenar os dados resultantes da atividade de navegação do usuário (mineração de dados) criou uma oportunidade de receita de tal proporção que o navegador se tornou tanto uma ferramenta de vigilância quanto um facilitador da navegação na Internet/serviços de Internet . Mas para realizar atividades de mineração de dados sobre as informações que trafegam pelo navegador, esta informação deve ser clara. Como os navegadores estão no centro de qualquer atividade de navegação na Internet e comunicação do usuário e como o foco principal do editor do navegador é a mineração de dados e a monetização de dados, em um PQIS, onde a exposição / comprometimento de dados deve ser absolutamente evitada, o navegador não pode desempenhar um papel quando se trata de proteção de dados . Em um PQIS, os componentes do computador devem ser revisados ​​para identificar quaisquer enclaves protegidosque podem proteger os dados de forma clara, e são esses enclaves que devem ser gerenciados diretamente pelo componente de imposição da política. É somente nesses enclaves que os dados podem estar limpos e onde as mudanças no estado dos dados podem ocorrer com segurança quando a autenticação do usuário é realizada durante uma transição de um dos três estados, “em uso”, “em repouso” ou “em trânsito” para outro desses três estados. Esses enclaves protegidos também são os locais onde os periféricos de hardware necessários para criar ou renderizar informações, como um teclado, um microfone, uma câmera, um alto-falante ou uma tela, devem capturar e renderizar dados.

Os Enclaves Protegidos

Em todos os computadores modernos, sem nenhum componente de hardware específico, os três locais possíveis para armazenamento de dados são os registradores dos processadores, a memória volátil de acesso aleatório, também chamada de memória principal, e os dispositivos de armazenamento em massa [3] . Os registradores dos processadores têm uma capacidade muito limitada e só podem armazenar dados que estão sendo processados. Os dispositivos de armazenamento em massa podem ser acessados ​​por qualquer aplicativo em execução no computador e um aplicativo pode ser um malware, portanto, os dados confidenciais não devem estar claros nos dispositivos de armazenamento em massa. No final, o único local para criar enclaves protegidos é a memória volátil de acesso aleatório (RAM) .

De fato, fatias de RAM são alocadas para cada processo em execução de forma exclusiva pelo processador. Se uma fatia de memória for alocada para um aplicativo, nenhum dos outros processos em execução simultânea, incluindo vírus e malware, poderá acessar os dados armazenados na fatia alocada.

A arquitetura de software baseada em RAM descrita acima ajuda a resolver os pontos fracos da camada de aplicação da maioria dos sistemas de informação atuais , sem exigir nenhum componente de hardware específico, mas o criptossistema no qual ele deve se basear ainda precisa ser discutido.

O Criptossistema

Como visto anteriormente, o primeiro componente que este sistema criptográfico deve incluir é um algoritmo de criptografia simétrica para criptografar/descriptografar os dados que precisam de proteção dentro dos enclaves seguros definidos acima. Como visto no artigo anterior, este algoritmo exigirá uma chave de 512 bits para resistir a ataques de computação quântica, mas também deve: (i) resistir a ataques de canal lateral , (ii) fornecer verificação de integridade sem criar fraquezas ou limitações operacionais em seu uso e, (iii) como os dados serão processados ​​diretamente na RAM , o algoritmo deve ter um throughput muito alto e latência ultrabaixa. Essa latência é definida como o número de ciclos de clock necessários para criptografar, descriptografar e verificar a integridade de cada byte de dados. Para atingir o mais alto padrão em termos de resistência à criptoanálise, o algoritmo de criptografia simétrica deve ser indistinguível sob ataque de cifra escolhida adaptativa (IND-CCA2) [4]. Diz-se que um algoritmo de criptografia tem essa propriedade se um invasor, recebendo dois textos simples e o texto cifrado de um desses dois textos simples, não puder determinar qual dos textos simples corresponde ao texto cifrado com uma probabilidade maior que ½. Ainda mais, essa propriedade deve ser estabelecida se o invasor também tiver acesso a um oráculo de descriptografia que possa fornecer qualquer número de formas descriptografadas de mensagens criptografadas escolhidas pelo invasor, com exceção, é claro, da própria mensagem criptografada. Além disso, todos esses requisitos devem ser atendidos pelo algoritmo de criptografia simétrica sem exigir nenhum componente de hardware específico.

O segundo componente do criptossistema é um algoritmo de criptografia assimétrica que permitirá a troca da chave do algoritmo de criptografia simétrica descrita acima, entre dois usuários distantes do PQIS, quando esses usuários forem liberados por um Policy Decision Point para trocar mensagens ou fluxos em tempo real de dados criptografados com este algoritmo simétrico. O algoritmo assimétrico deve ser pós-quântico, mais precisamente, capaz de resistir à computação quântica com um nível de segurança de pelo menos 256 bits. Em julho de 2022 [5] , o NIST anunciou que, após um processo de seleção de cinco anos, optou por padronizar o algoritmo Crystals-Kyber. Este algoritmo é o IND-CCA2 e possui uma versão com nível de segurança de 256 bits.

O último componente necessário para o sistema criptográfico é outro algoritmo assimétrico pós-quântico. Este algoritmo assimétrico permitirá a autenticação de usuários na troca de chaves criptografadas com o primeiro algoritmo assimétrico, fornecendo a esses usuários os meios para assinar essa troca e verificar a assinatura de suas contrapartes. Em seu anúncio de julho de 2022, o NIST também forneceu uma lista de três algoritmos de assinatura digital a serem padronizados : Crystals-Dilithium, Falcon e Sphincs+.

A prova de conceito

Um Sistema de Informação Pós-Quantum construído sobre tais princípios, com uma arquitetura de software baseada em um modelo Zero-Trust com criptografia RAM-para-RAM [6] e um sistema criptográfico incluindo criptografia simétrica e assimétrica conforme descrito acima, será capaz de fornecer aos usuários com “proteção total” dos dados digitais. Para provar a viabilidade do conceito, a CyferAll, uma start-up sediada na França, implementou o conceito em sua plataforma SaaS, suportando uma ampla gama de serviços de criptografia, mensagens e comunicação. A arquitetura de software RAM-para-RAM e os algoritmos de criptografia simétrica foram objeto de dois pedidos de patente. A arquitetura do software segue os princípios de privacidade por designpara garantir a conformidade com GDPR / HIPPA. A plataforma CyferAll também cumpre as normas francesas e europeias destinadas a prevenir a utilização de meios criptográficos para atos maléficos e terroristas . A primeira inovação prende-se com a arquitetura do software e os protocolos associados ao on-boarding e login dos utilizadores, permitindo suportar com segurança o conceito de software RAM-to-RAM, respeitando os condicionalismos regulamentares.

A segunda inovação diz respeito à definição de um algoritmo de criptografia simétrica que aborda todos os pontos fracos listados em nosso artigo anterior, relacionados ao tamanho insuficiente da chave e ataques indiretos. O algoritmo de criptografia simétrica é derivado do algoritmo “One Time Pad” (OTP) que foi proposto por um engenheiro americano, Joseph Mauborgne, como uma versão melhorada da cifra de Vernam [7] , inventada em 1917 por Gilbert Vernam.

Diz-se que esse algoritmo é semanticamente seguro , pois tem a característica interessante, comprovada matematicamente, de ser totalmente inquebrável , qualquer que seja o poder de computação utilizado. Infelizmente, requer uma chave com o mesmo comprimento dos dados a serem criptografados e exige que essa chave seja diferente para cada transmissão de dados. Isso tornou o algoritmo impossível de usar na prática em sistemas de informação modernos, pois as chaves, cada vez diferentes, são tão difíceis de trocar quanto as próprias mensagens, mas esse algoritmo OTP é IND-CCA2 com um nível de segurança infinito. Também é resistente a ataques de canais laterais, já que não há chave fixa a ser recuperada por análise estatística e tem, de longe, a latência de criptografia mais baixa de qualquer algoritmo de criptografia existente. Dentro da tecnologia de criptossistema do CyferAll, este algoritmo foi transformado para que seja capaz de produzir fluxos de blocos aleatórios, de qualquer comprimento e diferentes para cada mensagem , a partir de uma chave fixa de 512 bits e também possui capacidade de verificação de integridade . Pode-se provar que continua IND-CCA2 mas com um nível de segurança reduzido para 512 bits, o que é suficiente para resistir à computação quântica. Essa transformação do algoritmo também é projetada para preservar sua resistência a ataques de canal lateral . A capacidade de verificação de integridade aumenta a latência, mas o desempenho permanece muito melhor do que com qualquer outro algoritmo padrão existente . Quando este desenvolvimento foi concluído, o NIST ainda não havia publicado a lista de algoritmos assimétricos pós-quânticos selecionados para padronização, então os algoritmos pós-quânticos usados ​​na prova de conceito CyferAll foram RLCE [8] e XMSS-MT [9] .

Os resultados

Uma comparação de tecnologias de algoritmo de criptografia simétrica é fornecida abaixo.

Segurança

atuação

Esses resultados confirmam que, com latência significativamente menor, o algoritmo de criptografia simétrica proposto pode fornecer o nível de segurança de 512 bits necessário, com verificação de integridade e resistência a ataques de canal lateral

Em conclusão, é viável a construção de Sistemas de Informação Pós-Quânticos que ofereçam o que definimos como “proteção total”, um nível de proteção o mais próximo possível do Sigilo Perfeito, considerando a necessidade de garantir um excelente desempenho das aplicações

[1] Shannon, Claude, Communication Theory of Secrecy Systems , Bell System Technical Journal, 28(4): 656–715, 1949

[2] Rose Scott, Borchert Oliver, Mitchell Stu e Connelly Sean Zero Trust Architecture , NIST Special Publication 800–207, 2020

[3] John L. Hennessy e David Patterson (2006). Arquitetura de Computadores: Uma Abordagem Quantitativa (Quarta ed.). Morgan Kaufmann. ISBN 978–0–12–370490–0

[4] Belare, Mihir; Rogaway, Phillip (11 de maio de 2005 ). Introdução à Criptografia Moderna, Capítulo 5: Criptografia Simétrica

[5] https://csrc.nist.gov/News/2022/pqc-candidates-to-be-standardized-and-round-4

[6] CyferAll registrou a marca RAM2RAM para descrever sua arquitetura de software

[7] Vernam, Gilbert S., patente do sistema de sinalização secreta , Google.com , arquivado do original em 11 de março de 2016

[8] Yongee Wang, Esquema de criptografia de chave pública baseada em código linear aleatório resistente a quântica RLCE, eprint arXiv:1512.08454, 2016

[9] A. Huelsing, D. Butin, S. Gazdag, J. Rijneveld, A. Mohaisen. XMSS : esquema de assinatura eXtended Merkle ,https://datatracker.ietf.org/doc/html/rfc8391