AC-Raiz e cadeias V6 e V7. Parece rotina. Só que não!
18 de janeiro de 2019Como diz um amigo criptólogo, há algumas coisas que são “pequenitos detalhaços”. E de detalhe em detalhe criam-se sistemas robustos ou contundentes fracassos (ou backdoors)
Por Roberto Gallo
Se você acompanha o mundo de segurança e em especial os vazamentos de Edward Snowden, então deve-se lembrar do caso onde a NSA americana (fazendo o trabalho dela), empurrou para o padrão de geradores de números aleatórios do NIST um esquema de geradores baseados em curvas elípticas com fragilidades propositais (o Dual_EC_DRBG).
E, apesar de não ser surpresa para ninguém que inserção de fragilidades propositais é uma atividade esperada e comum de órgãos de Estado de certos países (em especial EUA, Reino Unidos, China, Israel), o caso específico acima descrito escancarou uma preocupação fundamental no mundo da criptografia: quem realmente cria os parâmetros “mágicos” inclusos em certos algoritmos?
Por parâmetro “mágico” aqui, quero dizer as constantes usadas nas curvas elípticas NIST-FIPS NSA Suite B e Brainpool e nas funções de resumo criptográfico (hashes). Poderiam ser estas constantes e mesmo outras escolhas de projeto dos algoritmos serem feitas propositalmente para embutir backdoors para uso posterior?
O que a história diz é que sim, há um risco. Exatamente por isso que que a ICP-Brasil utiliza por exemplo curvas Brainpool ao invés das curvas NIST. É por isso também que um conjunto importante de pesquisadores em criptografia criou um conjunto de critérios de segurança na escolha de curvas elípticas que tiram a arbitrariedade da escolha de parâmetros, gerando as chamadas “Safe Curves”.
As safe curves na forma de Edwards são aquilo que se conhece de mais conservador em termos de segurança e confiança no sentido de estarem livres de fragilidades propositais ou intrínsecas, ao passo que facilitam implementações seguras (em especial no quesito ataques de canais colaterais).
E as cadeias V6 e V7 do ITI, o que têm a ver com isso?
Muita coisa: ao adotar Safe Curves de Edwards, em especial a Ed448 e a E-521, a ICP-Brasil dá um passo arrojado ao ser a primeira ICP oficial conhecida a adotar tais curvas.
E este movimento não poderia ser mais pioneiro e mais brasileiro: a primeira AC raiz oficial (operada pelo ITI), com HSMs kNET da Kryptus, empresa que fundei, com uma das curvas, a E-521 definida (na realidade encontrada) por pelos pesquisadores Diego Aranha, Paulo Barreto, Geovandro Pereira e Jefferson Ricardini.
As safe curves de Edwards vêm sendo adotadas de forma crescente em aplicações críticas e em novos projetos, em especial com a curva Curve25519. Agora, com a inauguração das ACs V6 e V7 na última semana de dezembro de 2018, um ciclo se completa com tais curvas recebendo o merecido reconhecimento oficial.
Dr. Roberto Gallo atua na área de criptografia e defesa cibernética há 17 anos. É fundador e diretor executivo da Kryptus segurança da Informação S.A., empresa estratégica de defesa e líder na proteção de sistemas críticos no país. Gallo também é diretor no departamento de Defesa e Segurança da FIESP, Coordenador do Comitê de Risco e Segurança Cibernéticos da ABES e professor associado da Escola Superior de Guerra da Colômbia.
Novo marco da ICP-Brasil: emitidas Cadeias V6 e V7 em curvas elípticas