SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Downloaden Sie, um offline zu lesen
Cibersegurança e Confiança:
Alguns Aspectos Criptográficos
Paulo S. L. M. Barreto
Professor Associado
Poli/USP
Curvas Elípticas
 Grandes provedores de serviços em
nuvem oferecendo acesso “seguro”.
NB: segurança de protocolos do tipo
TLS é um assunto à parte…
 Tendência: substituição de
criptografia RSA por curvas elípticas
(ECC).
RSA vs ECC
1024
3072
7680
15360
160 256 384 5120
4000
8000
12000
16000
80 128 192 256
Tamanho da chave simétrica equivalente
Tamanhodachaveassimétrica RSA ECC
Fonte: NIST Special Publication 800-57, Recommendation for Key Management – Part 1: general, 2007.
Curvas Elípticas
 QUAIS CURVAS?
 QUAIS ALGORITMOS?
Curvas NIST/NSA
 Grande número de normas
internacionais adoptam um conjunto
comum de curvas (NIST FIPS 186,
ANSI X9.62/X9.63, SECG)
 Tecnologia de projeto de curvas data
do final dos anos 1990’s.
 Construídas efetivamente por Jerry
Solinas (funcionário da NSA).
 Vulnerabilidade rara (~1 a cada 1012 curvas) ?
Curvas NIST/NSA
 Potencial porta dos fundos conhecida somente
por quem construiu a curva.
Sistemas de e-Cash
 Exemplo: Bitcoin.
 Assinaturas digitais ECDSA com a
curva secp256k1: 𝑦2
= 𝑥3
+ 7 sobre
𝔽2256−232−977.
 Segurança ~236
(tempo para quebrar
num PC comum: ~62 s) em vez de
~2128 se um teste crítico for omitido!
Sistemas de e-Cash
 Um número muito elevado de vulnerabilidades
deve-se a erros de programação (vide
HeartBleed).
Gerador Dual EC
 Geração “segura” de números
aleatórios.
 NSA pagou US$ 107
para pelo menos
uma empresa adotar o gerador Dual
EC como default (fonte: Snowden).
 Depois de 7 anos em uso, NIST
retirou o algoritmo da norma SP
900-90A.
Direções?
Curve algorithm security signing verification
Ed25519 EdDSA 𝟐 𝟏𝟐𝟖 𝟔𝟑. 𝟓 𝟐𝟎𝟓. 𝟕
P-224 ECDSA 𝟐 𝟏𝟏𝟐 𝟐𝟔𝟒. 𝟗 𝟓𝟓𝟑. 𝟖
 Esforço corrente do Crypto Forum
Research Group (CRFG) e da IETF para
escolher novas curvas.
 Obstáculos (migração de padrões)!
 Vantagens (tecnologia ~20 anos mais
moderna e robusta que as curvas NIST).
Fonte: eBACS – ECRYPT Benchmarking of Cryptographic Systems; SAC 2015
OBRIGADO!
APÊNDICE
Grupos Elípticos
 Exemplo: conjunto de pontos de uma
curva elíptica 𝑦2
= 𝑥3
+ 𝑎𝑥 + 𝑏.
 Lei de secantes e tangentes.
𝑃
𝑄
𝑃 + 𝑄
−𝑃
𝑂 Fórmulas para calcular
diretamente as
coordenadas do ponto
(𝑥 𝑃, 𝑦 𝑃) + (𝑥 𝑄, 𝑦 𝑄):
Problema do Logaritmo
Discreto (Elíptico)
 Dados 𝑃 e 𝑥, é “fácil” calcular 𝑌 = 𝑥𝑃.
 Dados 𝑃 e 𝑌, é “difícil” calcular 𝑥.
 Com valores de 𝑘 bits, ≈ 𝑘3
passos
para calcular 𝑌 (esforço polinomial).
 Para calcular 𝑥, são necessários
≈ 2 𝑘/2
passos computacionais
(esforço exponencial).
Gerador Dual EC
 Geração de números aleatórios.
 Escolher pontos “aleatórios” 𝑃 e 𝑄.
 Escolher semente aleatória 𝑟0.
 Para 𝑖 = 1, 2, 3, …:
Calcular 𝑟𝑖 ← 𝑟𝑖−1 𝑃 𝑥, // NB: 𝑁𝑖 = 𝑟𝑖−1 𝑃
Usar 𝑘𝑖 ← 𝑟𝑖 𝑄 𝑥 como 𝑖-ésimo número
aleatório. // NB: 𝐾𝑖 = 𝑟𝑖 𝑄
Gerador Dual EC
 O detalhe crítico é que 𝑃 e 𝑄 são
especificados diretamente na norma.
 Exatamente como ocorre em
ElGamal, o conhecimento de 𝑠 tal
que 𝑄 = 𝑠𝑃 permite recuperar mais
informação sobre o sistema.
Gerador Dual EC
 Obtendo um único aleatório
𝑘𝑖 = 𝑟𝑖 𝑄 𝑥, a entidade que conhece 𝑠
(aka NSA) pode reconstruir 𝑟𝑖 𝑄 =
𝑟𝑖 𝑠𝑃 = 𝑠 𝑟𝑖 𝑃 = 𝑠𝑁𝑖+1, recuperar
𝑁𝑖+1 = 𝑠−1
(𝑟𝑖 𝑄), e prever todos os
números “aleatórios” posteriores
𝑟𝑖+𝑑 = 𝑁𝑖+𝑑 𝑥, 𝑑 = 1, 2, 3, …

Weitere ähnliche Inhalte

Andere mochten auch

Segurança da Informação
Segurança da InformaçãoSegurança da Informação
Segurança da InformaçãoFábio Ferreira
 
Segurança da informação - Aula 02
Segurança da informação - Aula 02Segurança da informação - Aula 02
Segurança da informação - Aula 02profandreson
 
Hardware, sistemas de computação corporativos e de usuário final
Hardware, sistemas de computação corporativos e de usuário finalHardware, sistemas de computação corporativos e de usuário final
Hardware, sistemas de computação corporativos e de usuário finalFábio Ferreira
 
Plano de sessão 0754 1
Plano de sessão 0754   1Plano de sessão 0754   1
Plano de sessão 0754 1Vanda Godinho
 
Plano de Sessão Autoscopia Final
Plano de Sessão Autoscopia FinalPlano de Sessão Autoscopia Final
Plano de Sessão Autoscopia FinalDebora_Marques
 
Informática Básica parte 1 - Introdução à informática e windows 7 - Inclusão...
Informática Básica parte 1 - Introdução à informática e windows 7 -  Inclusão...Informática Básica parte 1 - Introdução à informática e windows 7 -  Inclusão...
Informática Básica parte 1 - Introdução à informática e windows 7 - Inclusão...Maurício V.Pires
 

Andere mochten auch (9)

Sessão final - PIP - Cristiano Lage
Sessão final  - PIP - Cristiano LageSessão final  - PIP - Cristiano Lage
Sessão final - PIP - Cristiano Lage
 
Segurança da Informação
Segurança da InformaçãoSegurança da Informação
Segurança da Informação
 
Segurança da informação - Aula 02
Segurança da informação - Aula 02Segurança da informação - Aula 02
Segurança da informação - Aula 02
 
Hardware, sistemas de computação corporativos e de usuário final
Hardware, sistemas de computação corporativos e de usuário finalHardware, sistemas de computação corporativos e de usuário final
Hardware, sistemas de computação corporativos e de usuário final
 
Plano de sessão 0754 1
Plano de sessão 0754   1Plano de sessão 0754   1
Plano de sessão 0754 1
 
Plano de Sessão Autoscopia Final
Plano de Sessão Autoscopia FinalPlano de Sessão Autoscopia Final
Plano de Sessão Autoscopia Final
 
Plano de sessão
Plano de sessãoPlano de sessão
Plano de sessão
 
Plano de sessão
Plano de sessãoPlano de sessão
Plano de sessão
 
Informática Básica parte 1 - Introdução à informática e windows 7 - Inclusão...
Informática Básica parte 1 - Introdução à informática e windows 7 -  Inclusão...Informática Básica parte 1 - Introdução à informática e windows 7 -  Inclusão...
Informática Básica parte 1 - Introdução à informática e windows 7 - Inclusão...
 

Ähnlich wie Cibersegurança e Confiança: Curvas Elípticas e Criptografia Assimétrica

Nota de aula seguranca da informacao - criptografia
Nota de aula   seguranca da informacao - criptografiaNota de aula   seguranca da informacao - criptografia
Nota de aula seguranca da informacao - criptografiafelipetsi
 
Sistemas digitais - Sistemas de Numeração
Sistemas digitais - Sistemas de NumeraçãoSistemas digitais - Sistemas de Numeração
Sistemas digitais - Sistemas de NumeraçãoCarlos Pereira
 
SISTEMAS digitais SISTEMAS DE NUMERAÇÃO
SISTEMAS digitais SISTEMAS DE NUMERAÇÃOSISTEMAS digitais SISTEMAS DE NUMERAÇÃO
SISTEMAS digitais SISTEMAS DE NUMERAÇÃOCarlos Pereira
 
Criptografia e criptpanalise na pratica
Criptografia e criptpanalise na praticaCriptografia e criptpanalise na pratica
Criptografia e criptpanalise na praticaTalita Rodrigues
 
Curso de Arduino Completo
Curso de Arduino CompletoCurso de Arduino Completo
Curso de Arduino CompletoTiago Barros
 
Webinar: Implementação de Controle PID com PIC16F1619
Webinar: Implementação de Controle PID com PIC16F1619Webinar: Implementação de Controle PID com PIC16F1619
Webinar: Implementação de Controle PID com PIC16F1619Embarcados
 
Interligados Apresentação Final
Interligados Apresentação FinalInterligados Apresentação Final
Interligados Apresentação FinalHugo Leonardo
 
Aula 3 - Dicionário de Termos
Aula 3 - Dicionário de TermosAula 3 - Dicionário de Termos
Aula 3 - Dicionário de TermosLuiz Marques
 
Grafos De Bruijn para identificação de variações genéticas usando GBS
Grafos De Bruijn para identificação de variações genéticas usando GBSGrafos De Bruijn para identificação de variações genéticas usando GBS
Grafos De Bruijn para identificação de variações genéticas usando GBSMarcos Castro
 
Interligados Apresentação 1
Interligados   Apresentação 1Interligados   Apresentação 1
Interligados Apresentação 1Hugo Leonardo
 
Conceitos de Criptografia e o protocolo SSL - Elgio Schlemer
Conceitos de Criptografia e o protocolo SSL - Elgio SchlemerConceitos de Criptografia e o protocolo SSL - Elgio Schlemer
Conceitos de Criptografia e o protocolo SSL - Elgio SchlemerTchelinux
 

Ähnlich wie Cibersegurança e Confiança: Curvas Elípticas e Criptografia Assimétrica (20)

Nota de aula seguranca da informacao - criptografia
Nota de aula   seguranca da informacao - criptografiaNota de aula   seguranca da informacao - criptografia
Nota de aula seguranca da informacao - criptografia
 
Sistemas digitais - Sistemas de Numeração
Sistemas digitais - Sistemas de NumeraçãoSistemas digitais - Sistemas de Numeração
Sistemas digitais - Sistemas de Numeração
 
SISTEMAS digitais SISTEMAS DE NUMERAÇÃO
SISTEMAS digitais SISTEMAS DE NUMERAÇÃOSISTEMAS digitais SISTEMAS DE NUMERAÇÃO
SISTEMAS digitais SISTEMAS DE NUMERAÇÃO
 
Sistemas_Digitais_2017.pdf
Sistemas_Digitais_2017.pdfSistemas_Digitais_2017.pdf
Sistemas_Digitais_2017.pdf
 
Big data
Big dataBig data
Big data
 
Arq orgcom (1)
Arq orgcom (1)Arq orgcom (1)
Arq orgcom (1)
 
ArqOrgCom.ppt
ArqOrgCom.pptArqOrgCom.ppt
ArqOrgCom.ppt
 
Criptografia e criptpanalise na pratica
Criptografia e criptpanalise na praticaCriptografia e criptpanalise na pratica
Criptografia e criptpanalise na pratica
 
Curso de Arduino Completo
Curso de Arduino CompletoCurso de Arduino Completo
Curso de Arduino Completo
 
ADS1800
ADS1800ADS1800
ADS1800
 
Webinar: Implementação de Controle PID com PIC16F1619
Webinar: Implementação de Controle PID com PIC16F1619Webinar: Implementação de Controle PID com PIC16F1619
Webinar: Implementação de Controle PID com PIC16F1619
 
Eletrônica digital aula 01
Eletrônica digital   aula 01Eletrônica digital   aula 01
Eletrônica digital aula 01
 
Interligados Apresentação Final
Interligados Apresentação FinalInterligados Apresentação Final
Interligados Apresentação Final
 
Aula 3 - Dicionário de Termos
Aula 3 - Dicionário de TermosAula 3 - Dicionário de Termos
Aula 3 - Dicionário de Termos
 
Grafos De Bruijn para identificação de variações genéticas usando GBS
Grafos De Bruijn para identificação de variações genéticas usando GBSGrafos De Bruijn para identificação de variações genéticas usando GBS
Grafos De Bruijn para identificação de variações genéticas usando GBS
 
Interligados Apresentação 1
Interligados   Apresentação 1Interligados   Apresentação 1
Interligados Apresentação 1
 
15444311 tutorial-mat lab
15444311 tutorial-mat lab15444311 tutorial-mat lab
15444311 tutorial-mat lab
 
Workshop arduino EAD
Workshop arduino EADWorkshop arduino EAD
Workshop arduino EAD
 
IEC61850_revisao_julho_2009.ppt
IEC61850_revisao_julho_2009.pptIEC61850_revisao_julho_2009.ppt
IEC61850_revisao_julho_2009.ppt
 
Conceitos de Criptografia e o protocolo SSL - Elgio Schlemer
Conceitos de Criptografia e o protocolo SSL - Elgio SchlemerConceitos de Criptografia e o protocolo SSL - Elgio Schlemer
Conceitos de Criptografia e o protocolo SSL - Elgio Schlemer
 

Mehr von Fórum da Internet no Brasil (14)

Apresentação de Sergio Amadeu
Apresentação de Sergio AmadeuApresentação de Sergio Amadeu
Apresentação de Sergio Amadeu
 
Apresentação de Ricardo Dahab
Apresentação de Ricardo DahabApresentação de Ricardo Dahab
Apresentação de Ricardo Dahab
 
Apresentação de Laura Tresca
Apresentação de Laura TrescaApresentação de Laura Tresca
Apresentação de Laura Tresca
 
Apresentação de Jeanette Hofmann
Apresentação de Jeanette HofmannApresentação de Jeanette Hofmann
Apresentação de Jeanette Hofmann
 
Apresentação de Edmundo Matarazzo
Apresentação de Edmundo MatarazzoApresentação de Edmundo Matarazzo
Apresentação de Edmundo Matarazzo
 
Apresentação de Carol Conway
Apresentação de Carol ConwayApresentação de Carol Conway
Apresentação de Carol Conway
 
Apresentação de Vicente Aguiar
Apresentação de Vicente AguiarApresentação de Vicente Aguiar
Apresentação de Vicente Aguiar
 
Apresentação de Marcos Souza
Apresentação de Marcos SouzaApresentação de Marcos Souza
Apresentação de Marcos Souza
 
Apresentação de Karina Menezes
Apresentação de Karina MenezesApresentação de Karina Menezes
Apresentação de Karina Menezes
 
Apresentação de Jefferson de Oliveira
Apresentação de Jefferson de OliveiraApresentação de Jefferson de Oliveira
Apresentação de Jefferson de Oliveira
 
Apresentação de Irina Bacci
Apresentação de Irina BacciApresentação de Irina Bacci
Apresentação de Irina Bacci
 
Apresentação de Fabro Steibel
Apresentação de Fabro SteibelApresentação de Fabro Steibel
Apresentação de Fabro Steibel
 
Apresentação de Claúdio Machado
Apresentação de Claúdio MachadoApresentação de Claúdio Machado
Apresentação de Claúdio Machado
 
Apresentação de Bruno Magrani
Apresentação de Bruno MagraniApresentação de Bruno Magrani
Apresentação de Bruno Magrani
 

Cibersegurança e Confiança: Curvas Elípticas e Criptografia Assimétrica

  • 1. Cibersegurança e Confiança: Alguns Aspectos Criptográficos Paulo S. L. M. Barreto Professor Associado Poli/USP
  • 2. Curvas Elípticas  Grandes provedores de serviços em nuvem oferecendo acesso “seguro”. NB: segurança de protocolos do tipo TLS é um assunto à parte…  Tendência: substituição de criptografia RSA por curvas elípticas (ECC).
  • 3.
  • 4. RSA vs ECC 1024 3072 7680 15360 160 256 384 5120 4000 8000 12000 16000 80 128 192 256 Tamanho da chave simétrica equivalente Tamanhodachaveassimétrica RSA ECC Fonte: NIST Special Publication 800-57, Recommendation for Key Management – Part 1: general, 2007.
  • 5. Curvas Elípticas  QUAIS CURVAS?  QUAIS ALGORITMOS?
  • 6. Curvas NIST/NSA  Grande número de normas internacionais adoptam um conjunto comum de curvas (NIST FIPS 186, ANSI X9.62/X9.63, SECG)  Tecnologia de projeto de curvas data do final dos anos 1990’s.  Construídas efetivamente por Jerry Solinas (funcionário da NSA).
  • 7.  Vulnerabilidade rara (~1 a cada 1012 curvas) ? Curvas NIST/NSA  Potencial porta dos fundos conhecida somente por quem construiu a curva.
  • 8. Sistemas de e-Cash  Exemplo: Bitcoin.  Assinaturas digitais ECDSA com a curva secp256k1: 𝑦2 = 𝑥3 + 7 sobre 𝔽2256−232−977.  Segurança ~236 (tempo para quebrar num PC comum: ~62 s) em vez de ~2128 se um teste crítico for omitido!
  • 9. Sistemas de e-Cash  Um número muito elevado de vulnerabilidades deve-se a erros de programação (vide HeartBleed).
  • 10. Gerador Dual EC  Geração “segura” de números aleatórios.  NSA pagou US$ 107 para pelo menos uma empresa adotar o gerador Dual EC como default (fonte: Snowden).  Depois de 7 anos em uso, NIST retirou o algoritmo da norma SP 900-90A.
  • 11. Direções? Curve algorithm security signing verification Ed25519 EdDSA 𝟐 𝟏𝟐𝟖 𝟔𝟑. 𝟓 𝟐𝟎𝟓. 𝟕 P-224 ECDSA 𝟐 𝟏𝟏𝟐 𝟐𝟔𝟒. 𝟗 𝟓𝟓𝟑. 𝟖  Esforço corrente do Crypto Forum Research Group (CRFG) e da IETF para escolher novas curvas.  Obstáculos (migração de padrões)!  Vantagens (tecnologia ~20 anos mais moderna e robusta que as curvas NIST). Fonte: eBACS – ECRYPT Benchmarking of Cryptographic Systems; SAC 2015
  • 14. Grupos Elípticos  Exemplo: conjunto de pontos de uma curva elíptica 𝑦2 = 𝑥3 + 𝑎𝑥 + 𝑏.  Lei de secantes e tangentes. 𝑃 𝑄 𝑃 + 𝑄 −𝑃 𝑂 Fórmulas para calcular diretamente as coordenadas do ponto (𝑥 𝑃, 𝑦 𝑃) + (𝑥 𝑄, 𝑦 𝑄):
  • 15. Problema do Logaritmo Discreto (Elíptico)  Dados 𝑃 e 𝑥, é “fácil” calcular 𝑌 = 𝑥𝑃.  Dados 𝑃 e 𝑌, é “difícil” calcular 𝑥.  Com valores de 𝑘 bits, ≈ 𝑘3 passos para calcular 𝑌 (esforço polinomial).  Para calcular 𝑥, são necessários ≈ 2 𝑘/2 passos computacionais (esforço exponencial).
  • 16. Gerador Dual EC  Geração de números aleatórios.  Escolher pontos “aleatórios” 𝑃 e 𝑄.  Escolher semente aleatória 𝑟0.  Para 𝑖 = 1, 2, 3, …: Calcular 𝑟𝑖 ← 𝑟𝑖−1 𝑃 𝑥, // NB: 𝑁𝑖 = 𝑟𝑖−1 𝑃 Usar 𝑘𝑖 ← 𝑟𝑖 𝑄 𝑥 como 𝑖-ésimo número aleatório. // NB: 𝐾𝑖 = 𝑟𝑖 𝑄
  • 17. Gerador Dual EC  O detalhe crítico é que 𝑃 e 𝑄 são especificados diretamente na norma.  Exatamente como ocorre em ElGamal, o conhecimento de 𝑠 tal que 𝑄 = 𝑠𝑃 permite recuperar mais informação sobre o sistema.
  • 18. Gerador Dual EC  Obtendo um único aleatório 𝑘𝑖 = 𝑟𝑖 𝑄 𝑥, a entidade que conhece 𝑠 (aka NSA) pode reconstruir 𝑟𝑖 𝑄 = 𝑟𝑖 𝑠𝑃 = 𝑠 𝑟𝑖 𝑃 = 𝑠𝑁𝑖+1, recuperar 𝑁𝑖+1 = 𝑠−1 (𝑟𝑖 𝑄), e prever todos os números “aleatórios” posteriores 𝑟𝑖+𝑑 = 𝑁𝑖+𝑑 𝑥, 𝑑 = 1, 2, 3, …