Criptografia pós-quântica Segurança ... - marinha.mil.br · Resumo Nesta palestra, serão...

Post on 28-Jul-2020

3 views 0 download

Transcript of Criptografia pós-quântica Segurança ... - marinha.mil.br · Resumo Nesta palestra, serão...

Criptografiapós-quântica

Segurança clássica na presença de computadores quânticos

Paulo S.L.M. Barreto, PhD

Resumo

Nesta palestra, serão abordados: o estado da arte na construção de processadores

quânticos; os principais esquemas pós-quânticos propostos com

suas vantagens, limitações e desafios para uma eventual migração;

o estágio atual do processo de padronização (processo PQC do NIST e a futura atualização da suíte B da NSA), com ênfase em cenários potenciais de utilização das principais propostas.

Motivação

A maioria esmagadora dos criptossistemas efetivamente adotados na atualidade baseiam-se em apenas duas hipóteses de segurança computacional: o problema da fatoração inteira (IFP); o problema do logaritmo discreto (DLP).

Não se conhece algoritmo clássico que resolva esses problemas eficientemente (complexidade polinomial).

O algoritmo quântico de Shor [1994] resolve eficiente-mente tanto o IFP quanto o DLP.

( = )

�̂�𝑯=�̂�𝑯

Motivação

O algoritmo de Shor exige computadores quânticos razoavelmente grandes.

[Roetteler-Naehrig-Svore-Lauter 2017] DLP sobre um corpo primo de bits: não mais que qubits; não mais que portas quânticas.

Exemplos: : qubits, bilhões de portas; : qubits, trilhão de portas.

Processadores quânticos atuais?

Motivação

Progresso inicialmente lento, mas acelerando.o 1998: 2 qubits (Oxford;

IBM-Berkeley-Stanford-MIT).o 2000: 5 qubits (TU München),

7 qubits (LANL).o 2006: 12 qubits (IQC-PI-MIT).o 2017: 17 qubits (IBM),

49 qubits (Intel), 50 qubits (IBM).

o 2018: 72 qubits (Google), 128(?) qubits

(Rigetti).o 2019: 53 qubits + “quantum

non-uselessness” (Google).

Soluções?

Criptossistemas quânticos. tecnologia ainda largamente não existente; tende a ser enormemente cara; depende de hipóteses adicionais clássicas; número muito limitado de aplicações de fato; algumas funcionalidades criptográficas parecem

impossíveis de obter num cenário quântico.

Criptossistemas pós-quânticos. tecnologia puramente clássica; hipóteses de segurança aparentemente excedem as

habilidades de um computador quântico.

Classe intrigante de criptossistemas baseados em problemas computacionais pouco comuns: reticulados (lattices); códigos corretores de erros; primitivas simétricas; isogenias supersingulares; sistemas multivariados (quadráticos); famílias menores (e.g. grupos não abelianos, núcleos

permutados, percéptrons permutados, mochilas densas, -SAT...).

Criptografia pós-quântica

PQC: Vantagens

Funcionalidades principais da criptografia convencional, além de características únicas. e.g. encriptação totalmente homomórfica.

Processamento potencialmente eficiente. Simplicidade de implementação e

disponibilidade imediata em tecnologia corrente.

Nem todas as funcionalidades convencionais têm um análogo pós-quântico eficiente. e.g. assinaturas cegas.

Dificuldades operacionais (tamanho de chaves, ocupação de banda, análise detalhada de segurança).

Custo de migração em larga escala.

PQC: Obstáculos

Hipóteses de segurança

Via de regra (mas nem sempre), a segurança das propostas pós-quânticas relaciona-se com algum problema computacional conjecturado NP-difícil.

Significado duvidoso ou vazio: problemas NP-difíceis só garantem dificuldade no pior caso, mas criptossistemas exigem dificuldade no caso médio (chaves arbitrárias).

Não se sabe com certeza qual é a dificuldade desses problemas num computador quântico…

… mas também não se sabe com certeza qual é a dificuldade do IFP, do DLP e outros problemas num computador clássico. em última análise, não se sabe com certeza se P ≠ NP.

Contra-exemplo

Grupos não abelianos (e.g. grupos de tranças). Problemas computacionais subjacentes tendem a

ser solúveis em complexidade polinomial mesmo em computadores clássicos.

Exemplo: WalnutDSA™. introduzido, quebrado, modificado, quebrado,

modificado novamente… vulnerabilidades estruturais, não contornáveis por ajuste

de parâmetros; melhor ataque conhecido capaz de quebrar a versão de

256 bits em menos de 1 minuto.

Códigos

Uma das famílias mais tradicionais. decodificação de Prange [1962]; encriptação McEliece [1978]; progresso em criptanálise (decodificação de síndromes):

complexidade assintótica inalterada (exponencial).

Dificuldades contornáveis(?) aplicações principais: acordo de chaves e encriptação

(assinaturas possíveis, mas difíceis de obter e ineficientes comparadas às alternativas);

impacto substancial em ocupação de banda; evidência de resistência quântica disponível.

Assinaturas simétricas

Popularmente baseadas em hash em árvore (construção Merkle-Lamport ou Merkle-Winternitz).

Esquemas recentes baseados em outras primitivas simétricas e provas de conhecimento zero (e.g. Picnic).

Contras apenas assinaturas (não oferece encriptação, acordo de

chaves, ou funcionalidades mais avançadas). assinaturas grandes, geração de chaves computacionalmente

pesada. Prós:

chaves públicas pequenas; efetivas em certas aplicações dedicadas (e.g. assinatura de

firmware).

Sistemas multivariados

Família recente (mais antiga apenas que isogenies supersingulares).

Aplicações basicamente restritas a assinaturas digitais. quase(?) todas as tentativas de definer esquemas de

encriptação falharam; apenas assinaturas convencionais (vs. assinaturas cegas

e outras); por outro lado, muitos esquemas como UOV são simples

e aparentemente robustos.

Reticulados

Famílias pós-quântica mais flexível(?) quase todas as funcionalidades convencionais; inclui propriedades interessantes como cifração baseada

em identidades, e outras únicas como cifração totalmente homomórfica.

Dificuldades contornáveis(?) amostragem gaussiana de alta qualidade (mitigada em

esquemas recentes); esquemas práticos tendem a estender as hipóteses de

segurança (e.g. reticulados ideais); evidência de resistência quântica disponível; segurança concreta: ainda assunto de pesquisa.

Isogenias supersingulares

Família mais recente: formulação não publicada de Couveignes [1997]; redescoberta por Rostovtsev e Stolbunov [2006]; refinada à forma atual (SIDH) por Jao e De Feo [2011].

Dificuldades contornáveis(?) escrutínio limitado; aplicações limitadas (acordo de chaves; novas variantes

com características mais variadas: CSIDH & similares); elevado custo computacional; menor ocupação de banda entre todas as propostas pós-

quânticas (balanceia a latência de comunicação).

Font

e: W

. Cas

tryck

<ht

tps:/

/ww

w.e

sat.k

uleu

ven.

be/c

osic

/?p=

7404

>

Experiências industriais

Google CECPQ1 (2016): experimentos com NewHope (e investigação preliminar

de Frodo e NTRU Prime); acordo de chaves baseado em reticulados é viável (ou:

não inviável) para adoção prática.

Google CECPQ2 (2018): experimentos com NTRU (variante HRSS-SXY). resultados preliminares positivos (pequenas vantagens

sobre NewHope: segurança CCA2 em vez de apenas CPA, ausência de erros de decriptação, velocidade ligeiramente maior, história mais longa de escrutínio).

Experiências industriais

Cloudflare (2019): acordo de chaves: aplicação arguivelmente mais maciça

de algoritmos criptográficos; NTRU (com parâmetros adequados) mais simples e

robusto que muitas alternativas baseadas em LWE; Estatísticas para o 95° percentil: ocupação de banda

observada como mais crucial para viabilidade prática que tempos de processamento (latência de comunicação supera latência de cálculo);

SIDH/SIKE competitivo por ter as menores chaves dentre (≈200 bytes) todas as propostas pós-quânticas para acordo de chaves (NTRU: ≈700 bytes), a despeito de tempos consideráveis de cálculo.

Experiências industriais

Várias propostas submetidas ao NIST para padronização contam com apoio ou coautoria industrial.

Amazon, Google, Intel, EvolutionQ, Infosec Global, Isara, LinkedIn, Microsoft, NXP Semiconductors , PQSecure, Texas Instruments…

Padronização

Suíte B da NSA foco em algoritmos elípticos (e simétricos); atualização pós-quântica prevista para ≈2024; “[...] we recommend not making a significant

expenditure to [elliptic curve algorithms] at this point but instead to prepare for the upcoming quantum resistant algorithm transition.”

Padronização

Processo PQC do NIST Três funcionalidades (assinaturas digitais,

encriptação assimétrica, acordo de chaves); Cinco níveis de segurança (I, II, V:

equivalentes a AES128, AES192, AES256 para busca exaustiva de chave; II, IV: equivalentes a SHA256, SHA384 para colisões);

Início: novembro de 2017; previsão de encerramento: 2022-2024, sujeita a revisão.

Padronização

Processo PQC do NIST Primeira rodada: 82 propostas recebidas, 69

aceitas como completas, 5 retiradas; Hipóteses de segurança: reticulados (26

propostas), códigos (19 propostas), sistemas multivariados (9 propostas), primitivas simétricas (3 propostas), isogenias (1 proposta), outras (6 propostas);

16 propostas quebradas ou seriamente comprometidas.

Padronização

Processo PQC do NIST Segunda rodada: várias fusões de propostas

similares; Hipóteses de segurança: reticulados (12

propostas), códigos (7 propostas), sistemas multivariados (4 propostas), primitivas simétricas (2 propostas), isogenias (1 proposta);

Progresso mais lento em criptanálise, foco em prós e contras.

Padronização

Fonte:<https://csrc.nist.gov/Projects/post-quantum-cryptography/presentations>

Padronização

Fonte:<https://csrc.nist.gov/Projects/post-quantum-cryptography/presentations>

PERGUNTAS?

APÊNDICE

Assinaturas digitais [SPOILER] Embora seja difícil prever a escolha do NIST para acordo de

chaves e cifração assimétrica, antever parcialmente a escolha de assinaturas digitais é no mínimo plausível.

Constatação: certas aplicações dedicadas beneficiam-se de assinaturas baseadas em hash. exemplo: legitimidade de firmware. motivos: envolvem apenas um número limitado de signatários, um

número limitado de assinaturas, e apenas algoritmos simétricos (eficientes em hardware).

Por isso, assinaturas desse tipo provavelmente constarão da seleção final de algoritmos do NIST.

Prévia: NIST incluirá assinaturas com estado (XMSS e LMS).

Curiosidades e barbaridades

Post-quantum RSA semi-hoax(?); ideia: aumentar tanto os parâmetros que um

ataque quântico se tornaria inviável praticamente;

obstáculo óbvio: igualmente inviável para usuários legítimos (chaves de terabytes, tempos de processamento de semanas).

Curiosidades e barbaridades

WalnutDSA tentativa de salvar investimentos(?); ideia: insistir no uso de grupos de tranças

(braids) extremamente complexas; obstáculo óbvio: evidências de que qualquer

trança complexa o bastante para resistir a ataques exige tempos e espaços inviáveis para usuários legítimos (ou, equivalentemente, que tempos e espaços plausíveis atingem níveis inadmissivelmente baixos de segurança).

Curiosidades e barbaridades

Mersenne-() proposta extremamente recente (aceita para

publicação com escrutínio insuficiente); quebra da proposta original exigiu aumentar as

chaves de bits para bits (quase 600× maiores).