Capítulo 26 — Criptografia e serviços de confiança: métodos II
Mapa da aula
Aula 26 publicada. Mapa, exemplo, EX076.
flowchart TD
N0["26.1 Como funcionam as assinaturas"]
N1["26.2 Aplicar as assinaturas"]
N2["26.3 ECDSA ou Ed25519"]
N3["Síntese"]
N0 --> N1 --> N2 --> N3
N3 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX076"]
Desenho lógico
flowchart LR
N0["26.1 Como funcionam as assinaturas"]
N1["26.2 Aplicar as assinaturas"]
N2["26.3 ECDSA ou Ed25519"]
N3["Síntese"]
N0 --> N1 --> N2 --> N3 --> Q["EX076"]
[26.1 Como funcionam as assinaturas]
|
v
[26.2 Aplicar as assinaturas]
|
v
[26.3 ECDSA ou Ed25519]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX076]
Objetivos de aprendizagem
Você vai (1) explicar as assinaturas digitais e a verificação; (2) aplicar assinaturas a documentos e softwares; (3) escolher entre ECDSA e Ed25519.
26.1 Como funcionam as assinaturas
Um esquema de assinatura digital tem três operações: geração de chaves, assinatura com uma chave privada e verificação com a chave pública correspondente. O FIPS 186-5 especifica o ECDSA e o EdDSA, e a RFC 8032 especifica o Ed25519. Qualquer pessoa com a chave pública pode verificar que a assinatura corresponde exatamente aos bytes assinados, mas só o detentor da chave privada poderia criá-la. Priya contrasta isso com o HMAC, em que os verificadores compartilham o segredo e poderiam criar as tags eles mesmos. Ela demonstra com uma biblioteca que mudar um byte de um arquivo assinado faz a verificação falhar, enquanto o original é verificado.
26.2 Aplicar as assinaturas
A Tidewell assina dois tipos de coisa. Os contratos com as editoras são assinados como documentos PDF com certificados, para que qualquer uma das partes possa verificá-los anos depois. Os scripts de software implantados nos servidores das unidades são assinados pela equipe de TI, e os servidores recusam scripts não assinados. Priya explica que as assinaturas provam a origem e a integridade, mas dependem de proteger as chaves privadas e de distribuir chaves públicas confiáveis. Ela recomenda manter a chave de assinatura dos scripts no serviço de chaves, onde assinar exige uma solicitação aprovada. Grace aprova a mudança para o trimestre seguinte.
26.3 ECDSA ou Ed25519
Priya compara os dois. O ECDSA com P-256 é amplamente suportado e permitido pelo FIPS 186-5, mas exige um valor secreto novo a cada assinatura, e implementações que o reutilizaram ou vazaram já expuseram chaves privadas. O Ed25519 deriva esse valor de forma determinística a partir da chave e da mensagem, eliminando esse modo de falha, e é rápido. Ambos estão no FIPS 186-5. Ela recomenda o Ed25519 onde houver suporte e o ECDSA por meio de bibliotecas avaliadas onde a compatibilidade exigir, e anota que as assinaturas pós-quânticas do FIPS 204 serão necessárias mais tarde. Grace adota a recomendação.
Exemplo resolvido
Priya explica a assinatura e a verificação, aplica assinaturas a contratos e scripts com uma chave de assinatura no serviço de chaves e recomenda o Ed25519 onde houver suporte.
Caso sintético. Os usos de assinatura da Tidewell são inventados; o FIPS 186-5, a RFC 8032 e o FIPS 204 são reais.
Erros e limites
As assinaturas são inúteis se as chaves privadas vazarem ou se as chaves públicas não forem autenticadas. Falhas na aleatoriedade por assinatura do ECDSA já expuseram chaves.
Exercícios
-
EX076 — Três operações. Cite as três operações de um esquema de assinatura. Rubrica: 3 = geração de chaves, assinatura, verificação;; 2 = duas;; 1 = uma;; 0 = nenhuma.
-
EX077 — Assinatura de scripts. O que os servidores das unidades fazem com os scripts, e onde fica a chave de assinatura? Rubrica: 3 = recusam scripts não assinados; a chave fica no serviço de chaves, com solicitações aprovadas;; 2 = os dois;; 1 = um;; 0 = nenhuma.
-
EX078 — Vantagem do Ed25519. Que modo de falha o Ed25519 evita? Rubrica: 3 = o segredo por assinatura é derivado de forma determinística, evitando nonces reutilizados/vazados que expõem chaves;; 2 = nonce;; 1 = vago;; 0 = nenhuma.
Síntese
As assinaturas digitais provam publicamente a origem e a integridade; o projeto determinístico do Ed25519 evita uma falha clássica do ECDSA.
Continue estudando — aula 26 (capítulo 26 de 40)
← Capítulo 25 · Índice das aulas · Capítulo 27 →
Continue para a próxima aula já escrita.