1
Assinatura Digital
Msc. Adilson Eduardo Guelfi
Msc. Frank Meylan
{guelfi,meylan}@lsi.usp.br
Laboratório de Sistemas Integráveis
Escola Politécnica da USP
2
Agenda

Assinatura Digital
 Esquemas
3
Assinatura Digital
4
Assinatura Digital


É necessária??
 Sim, para proteger as duas partes comunicantes
(transmissor e receptor), uma contra a outra (falsificação
e repudiação);
Uma assinatura digital deve possuir as seguintes
propriedades:
 Ela deve ser capaz de verificar o autor, a data e o
instante da assinatura;
 Ela deve ser capaz de autenticar o conteúdo no
instante da assinatura;
 Deve ser possível verificar a assinatura digital por
uma terceira parte, com o objetivo de solucionar
eventuais disputas;
5
Assinatura Digital

Uma assinatura digital
 autentica o autor e a mensagem
 evitar a falsificação e a repudiação

Serviços oferecidos
 Integridade
 Autenticação
 Não Repudiação
 Confidencialidade (opcional)
6
Assinatura Digital

Requisitos que devem ser atendidos por uma
assinatura digital:
 A assinatura deve estar em formato binário e
depender da mensagem que está sendo assinada;
 A assinatura deve usar alguma informação
específica ao transmissor, para prevenir a
falsificação e a repudiação;
 Deve ser relativamente fácil de produzir a assinatura
digital;
 Deve ser relativamente fácil de reconhecer e
verificar a assinatura digital;
7
Assinatura Digital

Requisitos de uma assinatura digital (cont.):
 Deve ser computacionalmente inviável falsificar uma
assinatura digital:
 Construindo uma nova mensagem para uma
assinatura digital existente;
 Construindo uma assinatura digital falsa para
uma dada mensagem;
 Deve ser viável reter uma cópia da assinatura digital
para armazenamento;
 Neste ponto, podemos perceber a importância da
introdução de uma função hash segura para o
esquema de assinatura digital.
8
Assinatura Digital

Assinatura digital direta:
 Envolve somente as partes comunicantes (fonte e
destino). Neste caso, uma assinatura digital poderia
ser formada pela criptografia, com a chave privada
do transmissor, do código hash da mensagem
original;
 Confidencialidade pode ser fornecida
opcionalmente, criptografando a mensagem original
mais sua respectiva assinatura digital, ou com a
chave pública do receptor (esquema de criptografia
de chave pública) ou com uma chave secreta
compartilhada (esquema de criptografia
convencional);
9
Assinatura Digital

Exemplo de um esquema de assinatura digital direta
utilizando criptografia de chave pública (RSA, por
exemplo);
M
Kpri_a
H
E
M
A
E
Kpub_b
D
M
H
Comparação
Kpri_b
Ek[M||Ekpri_a[H(M)]]
D
Kpub_a
Ekpri_a[H(M)]

Mensagem e assinatura são transmitidas de maneira
criptografada. O receptor produz o código hash da
mensagem recebida e compara com o obtido pela
decriptografia da assinatura recebida. Se os dois
correspondem, a assinatura é aceita como válida.
10
Assinatura Digital

Tal esquema possui uma fraqueza: sua validade
depende da segurança da chave privada do
transmissor. Se a chave privada for perdida ou
roubada, o transmissor poderia repudiar a transmissão
de uma mensagem particular;
11
Assinatura Digital

Assinatura digital arbitrada:
 Soluciona os problemas associados ao esquema de
assinatura digital direta;
 Uso de um árbitro;
 Cada mensagem assinada de um transmissor X para
um receptor Y deve primeiro passar pelo árbitro, o
qual submete a mensagem e sua respectiva
assinatura a um conjunto de testes para verificar
sua origem e conteúdo. Se validada, a mensagem é
então datada e enviada ao receptor Y.
 Desta forma, X não poderia repudiar a mensagem M;
 X e Y devem ter um alto grau de confiança no árbitro
e em seus mecanismos de validação.
12
Assinatura Digital
(a) Criptografia Convencional, Árbitro Observa a Mensagem
Ekxa[IDx||H(M)] = Criptografia do identificador
de X e hash da mensagem utilizando a chave de
sessão compartilhada entre X e A (transmissor e
árbitro, respectivamente);
Ekay[ ] = Criptografia com a chave de sessão
compartilhada entre A e Y (árbitro e receptor,
respectivamente);
H(Ekxy[ ]) = Código Hash;
M
M = Mensagem
13
Assinatura Digital
(a) Criptografia Convencional, Árbitro Observa a Mensagem
Árbitro A
Emissor X
Receptor Y
(1) X A: M || Ekxa[IDx || H(M)]
(2) A  Y: Ekay[IDx || M || Ekxa[IDx || H(M)] || T]
14
Assinatura Digital
(b) Criptografia Convencional, Árbitro Não Observa a Mensagem
Ekxy[M] = Criptografia da Mensagem M com a
chave de sessão compartilhada entre X e Y
(transmissor e receptor, respectivamente);
Ekxa[ ] = Criptografia com a chave de sessão
compartilhada entre X e A (transmissor e árbitro,
respectivamente);
Ekay[ ] = Criptografia com a chave de sessão
compartilhada entre A e Y (árbitro e receptor,
respectivamente);
H(Ekxy[ ]) = Código Hash;
15
Assinatura Digital
Árbitro A
Emissor X
Receptor Y
(1) X A: IDx || Ekxy[M] || Ekxa[IDx || H(Ekxy[M])]
(2) A  Y: Ekay[IDx || Ekxy[M] || Ekxa[IDx || H(Ekxy[M])] || T]
16
Assinatura Digital
(c) Criptografia de Chave Pública, Árbitro Não Observa a Mensagem
Criptografia com a chave pública Y
Criptografia com a chave privada X
Criptografia com a chave privada A
17
Assinatura Digital
Árbitro A
Emissor X
Receptor Y
(1) X A: IDx || Ekpriv_x[IDx || Ekpub_y(Ekpriv_x[M])]
(2) A  Y: Ekpriv_a[IDx || Ekpub_y(Ekpriv_x[M])] || T]
18
Bibliografia
19
Bibliografia

Livro
 Criptography and Network Security - Principles and
Practice - Second Edition
 Willian Stallings
 Prentice Hall
 1998
Download

Assinatura Digital