Blog

Seguridad en Redes: Firma Digital (Autenticidad del otro extremo)

La firma digital es una técnica criptográfica análoga a las firmas de mano. El transmisor firma digitalmente un documento, estableciendo así que es el dueño/creador del mismo. Lo hará con su clave privada. El objetivo es similar al MAC (Message Authentication Code) que vimos en el post anterior, excepto que ahora se usa la clave pública. Es verificable y no no repudiable, es decir, el emisor podŕa comprobar que el emisor es el correcto.

Una forma simple de firmar digitalmente es cifrar todo el mensaje con la clave privada, el problema de esto es que es una solución computacionalmente cara.

Lo que hará será firmar el hash del mensaje, mucho más corto y computacionalmente más barato.

ky1

Lo que el receptor tiene que hacer es, primeramente calcular el hash del mensaje y por otra parte descifrará el hash cifrado que recibió con la clave publica del emisor, de esta forma, de esta forma cuando compare estos 2 hashes, si son iguales  tendremos varias cosas claras:

  • El emisor firmó el mensaje
  • Solo el emisor ha podido firmar el mensaje
  • El mensaje enviado no ha sido modificado

Ahora pasaremos a hablar de la figura de la Autoridad Certificadora. Para explicar la necesidad de esta, os pondré un ejemplo.

  1. Atacante pide 60 pizzas por e-mail: “Enviame 60 pizzas a la dirección que le adjunto. Gracias, Alicia.” haciendose pasar por Alicia.
  2. El atacante firma con su propia clave privada el correo.
  3. El atacante envía su propia clave publica al establecimiento de pizzas diciendo que es la clave de Alicia.
  4. El establecimiento de pizzas verifica la firma y envía las 60 pizzas a Alicia.
  5. Alicia recibe 60 pizzas que tendrá que pagar.

Entonces, ¿como evitar esto? Surge la necesidad de una entidad certificadora que gestiona estas claves publicas, de tal forma, que se pueda asociar tu clave pública con un ente confiable. Lo que haremos será registrar nuestra clave pública en una autoridad certificadora. El proceso será el siguiente:

  1. Enviamos a registrar nuestra clave publica
  2. La entidad certificadora concatena información con la clave
  3. La entidad certificadora cifra con su clave privada
  4. La entidad nos envía este resultado que, ahora, es un certificado
  5. El certificado contiene mi clave pública, firmada digitalmente por la entidad certificadora que puede afirmar que la clave pública contenida en el certificado es la mía.

ky2

La foto tiene una errata, donde está la llave verde como dice el texto es la clave pública de Alicia (debería tener un ‘+’ la K). Y donde la llave roja la K debería tener un ‘-‘ por que es la clave privada con la que se cifra nuestra clave publica para verificar que es la Autoridad Certificadora quien avala que esa clave es mía.

Para obtener el certificado de alguien lo puedes hacer en la entidad certificadora si es que mantiene un registro de los certificados, o directamente de la otra persona o entidad. La clave pública de la entidad certificadora siempre estará disponible.

 

Fuente de algunas fotos el libro James Kurose y Keith Ross ¨Computer Networking”.

Autor: Roberto(@leurian)

Leave a Reply

*

    No Twitter Messages