Apresentação de Paulo Barreto
-
Upload
forum-da-internet-no-brasil -
Category
Internet
-
view
18 -
download
3
Transcript of Apresentação de Paulo Barreto
![Page 1: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/1.jpg)
Cibersegurança e Confiança: Alguns Aspectos Criptográficos
Paulo S. L. M. Barreto
Professor Associado
Poli/USP
![Page 2: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/2.jpg)
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).
![Page 3: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/3.jpg)
![Page 4: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/4.jpg)
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
Ta
ma
nh
o d
a c
ha
ve a
ssim
étr
icaRSA ECC
Fonte: NIST Special Publication 800-57, Recommendation for Key Management – Part 1: general, 2007.
![Page 5: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/5.jpg)
Curvas Elípticas
QUAIS CURVAS?
QUAIS ALGORITMOS?
![Page 6: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/6.jpg)
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).
![Page 7: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/7.jpg)
Vulnerabilidade rara (~1 a cada 1012 curvas) ?
Curvas NIST/NSA
Potencial porta dos fundos conhecida somente por quem construiu a curva.
![Page 8: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/8.jpg)
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!
![Page 9: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/9.jpg)
Sistemas de e-Cash
Um número muito elevado de vulnerabilidades deve-se a erros de programação (vide HeartBleed).
![Page 10: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/10.jpg)
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.
![Page 11: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/11.jpg)
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
![Page 12: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/12.jpg)
OBRIGADO!
![Page 13: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/13.jpg)
APÊNDICE
![Page 14: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/14.jpg)
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 (𝑥𝑃, 𝑦𝑃) + (𝑥𝑄, 𝑦𝑄):
![Page 15: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/15.jpg)
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).
![Page 16: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/16.jpg)
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: 𝐾𝑖 = 𝑟𝑖𝑄
![Page 17: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/17.jpg)
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.
![Page 18: Apresentação de Paulo Barreto](https://reader030.fdocumentos.com/reader030/viewer/2022020200/55d2a3abbb61ebd2048b4773/html5/thumbnails/18.jpg)
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, …