3. Criptografía

La criptografía es uno de los pilares sobre los que se asienta gran parte de la seguridad de la transmisión, del almacenamiento o de la autenticación. Es por ello que se dedica una unidad completa a describir sus fundamentos y sus aplicaciones más inmediatas.

3.1. Introducción

Ver también

Desarrollada dentro del manual en el epígrafe correspondiente.

3.2. Operaciones criptográficas

Ver también

Expuestas en el epígrafe sobre operaciones criptográficas del manual. Las órdenes que se exponen en el apendice práctico no tienen utilidad directa, ya que es más que probable que no se usen en la práctica diaria habitual, pero no son excesivamente complicadas y pueden servir para ilustrar la parte teórica. Por tanto, su impartición depende del tiempo disponible.

3.3. Aplicaciones de la criptografía

El epígrafe está dedicado a exponer algunas de las aplicaciones más difundidas de la criptografía:

3.3.1. Certificado digital

Ver también

El desarrollo se encuentra en el epígrafe sobre certificados digitales.

El epígrafe es largo y nuestro propósito debe ser entender convenientemente los conceptos y saber consultar y verificar los certificados digitales. En consecuencia, hay algunas partes de las que se puede prescindir:

Nota

El epígrafe, como es normal, centra toda su atención en Linux y, para el caso de certificados X.509 en OpenSSL. Para complementar esas explicaciones, añadiremos aquí algunas breves notas sobre su gestión en Windows.

Certificados X.509 en Windows

La gestión de certificados en Windows se hace a través de un almacén que proporciona el propio sistema operativo y que suelen consultar los programas que los requieren (con la salvedad notoria del navegador Firefox que, como hace en Linux usa el suyo propio). El administrador de certificados es accesible a través de la aplicación certmgr.msc:

../../_images/certmgr.png

La aplicación da acceso a todos los certificados instalados: basta con buscar el requerido (si es propio se encontrará en «Personal») y pinchar dos veces en él para acceder a su información:

../../_images/ver_cert.png

Los certificados:

  • Pueden usarse lo cual supondrá que la aplicación que los requiera los busque en el almacen y nos sugiera usarlos. La clave privada almacenada puede estar cifrada o no según la importaramos en su momento. Por motivos de seguridad es mejor tenerla cifrada.

  • Pueden exportarse. La exportación de un certificado es accesible a través de la opción Todas las tareas>Exportar... del menú contextual que aparece al pinchar con el botón derecho sobre el certificado. Es de notar que dependiendo de cómo lo importáramos el almacen nos permitirá exportar el certificado público con la clave privada o excluirá de la importación esta última.

  • Pueden importarse, para lo cual podemos recurrir a Acción>Todas las tareas>Importar... o, simplemente, a pinchar sobre un archivo de certificado (un .p12, por ejemplo). Esto abrirá el proceso de importación:

    ../../_images/01captura.png

    que tiene algunos pasos interesantes:

    1. Aquel en que se pide la contraseña de protección del archivo y que como puede verse, nos permite:

      ../../_images/04captura.png

      escoger dos opciones bastante interesantes:

      • Proteger la clave privada del certificado, para lo cual habrá que marcar la casilla señalada.

      • Marcar (o no) como exportable la clave. Si el archivo importado ya lo guardamos en otro lugar seguro, lo más prudente es no marcarlo.

    2. Si el certificado contenía una clave privada y decidimos protegerla, entonces la importación continuará con esta ventana:

      ../../_images/06captura.png

      en la que si aceptamos, la importación acabará sin que la clave privada quede cifrada con una contraseña de seguridad. Lo prudente es pinchar sobre Nivel de seguridad para escoger un nivel alto. En este caso, se nos pedirá la contraseña de cifrado:

      ../../_images/08captura.png

      y nos aseguraramos de que nadie usará el certificado sin conocer la clave.

Ejercicios

Una vez leído pueden hacerse:

3.3.2. Protocolos seguros de red

Se desarrolla en el epígrafe Protocolos seguros de red.

Como ejercicios:

3.3.3. Autenticación

Su desarrollo se encuentra en el epígrafe Autenticación. En ese epígrafe se dan tres ejemplos de autenticación en dos servicios, SSH y VPN, que están completamente documentados en el manual. Si se desea profundizar en alguno, es preferible SSH, porque la instalación del servicio es sumamente sencilla y la implementación de la infraestructura PKI bastante simple.

Nota

De hecho, sería recomendable acordar con el profesor encargado de Servicios en red que éste se encargue de explicar la autenticación mediante claves y en este módulo nos limitemos a dar el paso de convertir esta autenticación en una autenticación con certificado digital.

3.3.4. Firma de documentos

De la firma en documentos PDF interesa el hecho de que se pueden firmar incrustando la firma en ellos y su estatus legal, pero sin llegar a tratar el uso de la orden pdfsig. Para una práctica, es más apropiado por su sencillez la utilización de AutoFirma (o LibreOffice) y la verificación en línea.

3.3.5. Correo electrónico

El epígrafe correspondiente puede reducirse a conocer los dos estándares para cifrado y firma (OpenPGP y S/MIME) y a la firma con un programa sencillo como Thunderbird o una extensión como las indicadas en el epígrafe.

Hay un ejercicio propuesto para GnuPG, pero es probable que resulte demasiado extenso y complicado.

3.3.6. Cifrado de datos

Otra de las aplicaciones más habituales de la criptografía es la del cifrado de datos almacenados en disco. No lo trataremos en esta unidad, ya que se expondrá en la unidad sobre Seguridad en el almacenamiento.

3.3.7. Cadenas de bloques

Es una tecnología muy en boga que promete tener futuro y despierta curiosidad. Si hay tiempo, pueden dedicarse algunas horas a ella según lo recogido en el epígrafe sobre tecnología de blockchain.