sábado, 3 de noviembre de 2007

Criptografía asimétrica o de clave pública

La criptografía asimétrica o de clave pública pretende evitar el problema de la distribución de claves necesaria en un criptosistema simétrico o de clave secreta.

Ejemplos de criptosistemas asimétricos son:

  • RSA:
    El número mínimo posible de claves de descifrado asociadas a cierta clave de cifrado es dos.
    Puede utilizarse el algoritmo de Garner para descifrar ahorrando tiempo de cálculo puesto que dicho algoritmo resuelve los sistemas de ecuaciones de congruencias que surgen en el algoritmo, sustituyendo de ese modo al algoritmo de Gauss en la resolución del teorema chino de los restos congruentes.
    La firma obtenida con RSA autentica tanto al remitente del mensaje como la integridad del contenido.
  • ElGamal:
    La firma digital es diferente para firmas sucesivas del mismo mensaje, lo cual hace que un mismo mensaje pueda aparecer como distintos textos cifrados; esto supone una ventaja.
    El remitente del mensaje necesita conocer la clave pública del destinatario.
    Es un método de cifrado expansivo, ya que la longitud del texto cifrado es el doble que el texto llano.
  • Curvas Elípticas
Es en estos esquemas en los que se basa el sistema de Firma Digital y consecuentemente los Certificados Digitales.

Esquema de Firma DigitalFirma Digital:
  • Un texto cifrado con clave pública proporciona confidencialidad pero no evita el repudio.
  • Se firma con la clave privada del remitente el mensaje o su resumen.
  • Utilizaremos la clave pública del destinatario para cifrar y la clave privada del destinatario para descifrar.


Certificado Digital
:
  • Permiten asociar de forma inequívoca una clave pública a un usuario, independientemente del conocimiento que se tenga sobre la autoridad de certificación.
  • Podemos comprobar que un certificado digital es auténtico comprobando que el resumen del certificado coincide con el que debería tener (el cual hemos obtenido por algún medio seguro).
  • Para confiar en una clave pública contenida en un certificado digital autofirmado hemos de comprobar su huella digital (fingerprint) y la validez temporal del mismo.
  • Un tipo muy extendido de certificado digital es el X.509, que es una estructura de datos compuesta por la información a firmar, el algoritmo de firma y la firma propiamente.
  • DSA -> DSS (Digital Signature Standard) es un método de firma digital bastante empleado que no es más que una modificación de ElGamal.
    Siempre firma un resumen SHA-1 del mensaje (Secure Hash Algorithm).
  • Existe un formato especial de petición de firma de certificado (CSR - Certification Signing Request), denominado PKCS#10. Habrá que hacerlo llegar a una autoridad certificadora y seguir ciertos trámites para conseguir que nos lo firme.

No hay comentarios: