Uma assinatura digital é um
mecanismo de autenticação que permite ao criador de uma mensagem anexar um
código que atue como uma assinatura. A assinatura é formada tomando o hash da
mensagem e criptografando-a com a chave privada do criador. A assinatura
garante a origem e a integridade da mensagem.
A assinatura digital pode ser
realizada de duas formas: assinando todo o documento ou assinando uma versão
resumida ou sintetizada do documento (digest message), utilizando uma função
hash.
Assinando o documento
Utiliza-se a chave privada do emissor
para criptografar (assinar) a mensagem. A chave pública do emissor é utilizada
para descriptografar a mensagem. Na assinatura digital, a chave privada é usada
para cifragem e a chave pública é usada pra decifragem da mensagem.
A assinatura digital pode agregar
características:
·
Integridade:
indica que as informações não foram adulteradas;
·
Autenticação:
permite identificar quem produziu a informação;
·
Não
repúdio: o emissor não pode negar que enviou a informação.
Assinando a síntese de um Documento
Nesse caso, o emissor assina o
resumo do documento, em vez de assinar o documento inteiro. Uma versão resumida
do documento (digest) e criada e assinada.
Para criar uma síntese da
mensagem (digest) usamos uma função de hash (função de síntese). A finalidade
da função de hash é criar uma síntese da mensagem de tamanho fixo a partir da
mensagem original de tamanho variável. As duas funções hash mais importantes
são denominadas MD5 (Message Digest 5) e SHA-1 (Secure Hash Algorithm 1). A
primeira produz uma versão sintetizada de 120 bits de tamanho. A segunda produz
uma versão de 160 bits.
Algumas propriedades que uma
função de hash deve possuir são:
·
O mecanismo deve ser unidirecional. A versão
sintetizada só pode ser criada a partir da mensagem original e não o oposto;
·
O hash de uma mensagem não pode ser igual ao
hash de outra mensagem;
·
Uma pequena alteração na mensagem original deve
gerar um hash totalmente diferente.
Após a geração do hash, ele é
criptografado (assinado) com a chave privada do emissor. O hash criptografado é
anexado junto ao texto claro e criptografado com a chave pública do receptor.
No destino, o receptor
descriptografa a mensagem com sua chave privada, gerando o texto claro e o hash
criptografado. Em seguida, o hash é descriptografado com a chave pública do
emissor. Um novo hash é gerado com o texto claro. Se ele coincidir com o hash
atual, então a integridade e a autenticidade estão garantidas.
Nenhum comentário:
Postar um comentário