jueves, 19 de febrero de 2015

21. Firma digital

La firma digital viene a sustituir a la manuscrita en el mundo de la informática. Es decir, si firmamos de forma digital un documenta, le estaremos dando veracidad y como sucede con la firma manuscrita.
La descripción del mecanismo de firma electrónica es el siguiente:

  • Se calcula un valor resumen del documento, utilizando algún algoritmo como el SHA. 
  • Este valor resumen se cifra utilizando la clave privada de nuestra pareja de claves pública-privada. Esto permite asegurar que la única persona que ha podido firmar el documento soy yo, el único que conoce la clave privada. 
  •  

  • El resultado de este valor es el que se conoce como firma digital del documento, la firma digital nada tiene que ver con el cifrado del documento en sí, por tanto esto diferencia a este tipo de firma electrónica de la firma clásica, pues esta última siempre es la misma para la misma persona firmante. 
El proceso de comprobación de una firma digital se utiliza lo siguiente.
  • La firma se descifra utilizando la clave pública del firmante pues algunos algoritmos de cifrado asimétrico y en particular los que se emplean para la firma digital descifran con la clave pública lo que se ha cifrado con la clave privada), y con ello, como se deduce del método de firmado, se obtiene el valor resumen del documento. 
  • Se obtiene el valor resumen del documento utilizando el mismo algoritmo que en el proceso de cifrado, por ejemplo el SHA.
  • Por último se comparan los dos valores resúmenes obtenidos en los dos procesos anteriores y si estos coinciden entonces la firma es válida; si estos son distintos la firma será nula. 
Como puedes observar, dado el proceso de comprobación de la firma, cualquier persona que quisiera comprobar tu firma de un documento necesitará tener nuestra clave pública. 

miércoles, 18 de febrero de 2015

20. Función Resumen

Se conocen por su nombre inglés bash; son funciones que asocian a cada documento un número y que tienen la propiedad de que conocido el valor numérico. El tamaño de un documento en bits podría ser una función resumen; también podría serlo, por ejemplo, la función que a cada documento le asocia su fecha de creación.

No cumplen los dos requisitos fundamentales: el primero de ellos, debe ser muy difícil que dos documentos distintos tengan el mismo resumen, y el segundo, que debe ser muy difícil, por no decir imposible, crear un documento a partir del valor de su resumen.
Como vemos, si nos fijamos en el primer ejemplo de la función tamaño en bits de un documento, no cumple ninguno de estos requisitos, pues es fácil que dos documentos tengan el mismo tamaño, y aún mas fácil es crear un documento que tenga un tamaño dado. Algunos de estos algoritmos son el MD5 y el SHA.

Sabemos que en Linux las contraseñas de los usuarios se encuentran en el fichero /etc/ passwd o en versiones más actuales en el fichero /etc/shadow. Los algoritmos que más se utilizan son el MD5 y el SHA- 512. Se recomienda utilizar este último pues se considera el MD5 mucho más inseguro.
La contraseña  que utiliza el algoritmo SHA-512, es mucho más larga y por tanto será menos vulnerable que la utilizado el algoritmo MD5 para ocultarla.

miércoles, 4 de febrero de 2015

19. Algoritmos

Se utilizan para transformar el texto claro en el texto cifrado.
Para aclarar esta definición, vamos a analizar el cifrado por sustitución del César. El algoritmo consiste en sustituir cada letra del texto sin cifrar por otra letra del mismo alfabeto que se encuentra situada en el orden del diccionario N puestos por delante. N es el valor de la clave, que como podemos ver, junto con el algoritmo, determinará exactamente la letra que sustituirá a la original.
El principio de Kerckhoff establece que la fortaleza de un sistema de cifrado debe recaer en la clave y no en el algoritmo, lo cual quiere decir que aunque el algoritmo sea de dominio público (y este es el caso de la mayoría de ellos en la actualidad), si no conocemos la clave, no seremos capaces de descifrar los mensajes.
Como podemos imaginar, hoy en día se utilizan diferentes algoritmos, algunos válidos para criptografía de clave privada y otras para criptografía de clave pública. DES, 3DES, RC4, IDEA Y AES son nombres de algoritmos de clave privada y DH, EIGamal, RSA de clave pública, entre otros.

Los algoritmos de cifrado se clasifican en dos tipos:
  • De bloque: llamados así porque dividen el documento en bloques de bits, que por lo general son del mismo tamaño, y cifran cada uno de estos de manera independiente, para posteriormente construir el documento cifrado. Cuando se envía un documento cifrado utilizando un algoritmo de bloque, primero se cifra completamente el archivo a enviar y luego se realiza su transmisión. 
  • De flujo: se diferencian de los anteriores en que se cifra bit a bit, byte a byte o carácter a carácter, en vez de grupos completos de bits; son muy útiles cuando tenemos que transmitir información cifrada según se va creando, es decir, se cifra sobre la marcha. El algoritmo de nombre A5 que se utiliza en la telefonía móvil es de este tipo, pues según se van generando los bits que hay que transmitir, se van cifrando uno a uno y poniendo inmediatamente en el aire.


martes, 3 de febrero de 2015

18. Criptografia hibrida.

La desventaja de la criptografía de clave pública es la lentitud del proceso de cifrado y descifrado. Una longitud típica de una clave utilizada en criptografía simétrica es de 128 bits frente a los clásicos 2048 bits que se suelen utilizar para el tamaño de las claves en criptografía de claves asimétricas.
Otra de las desventajas es el mayor tamaño de la información cifrada con clave pública frente al tamaño de la misma cuando se cifra con clave privada.

Ejemplo: Gustavo quiere intercambiar información con Virginia utilizando como clave privada "CIFRADO". Para ello, antes de nada, Gustavo mandará un mensaje cifrado con la clave pública de Virginia, en el que informa de la clave que utilizarán ("CIFRADO"), así solo Virginia podrá descifrar el mensaje y conocer la clave que utilizarán para la posterior comunicación.


lunes, 2 de febrero de 2015

17. Criptografia simétrica y asimétrica

Dos métodos de cifrados, el primero de ellos conocido como cifrado simétrico o de clave privada, el cual utiliza la misma clave para el cifrado y el descifrado. El segundo, conocido como cifrado asimétrico o de clave público, utiliza una pareja de claves para el proceso de cifrado y descifrado.

17.1 Criptografia simétrica.

Se basa en un secreto compartido entre la entidad que cifra el mensaje y la que lo quiere descifrar, es decir, utiliza la misma clave en el proceso de cifrado que en el de descifrado. Pues exigían necesariamente que el emisor y el receptor se pusieran previamente de acuerdo en la clave que iban a utilizar, con lo cual tiene dos desventajas , el intercambio de claves y la cantidad de claves que debe memorizar.



17.2 Criptografia asimétrica

En 1976, dos criptógrofos, Whitfield Diffie y Martin Hellmon, publicaron un nuevo método criptográfico que solucionaba las desventajas de la criptografía simétrica.
Consiste en que cada una de las partes involucradas en una comunicación segura tienen una pareja de claves. Una de ellas, pública, que deberá intercambiar con cada una de las entidades con las que quiera comunicarse mensajes secretos, y otra de ellas privada, y que par tanta, jamás debe comunicar a nadie.

Para cifrar un mensaje, el emisor utilizará la clave pública del receptor, y a su vez, el receptar descifrará este mensaje haciendo uso de su clave privada. El primer paso es que cada uno de ellos obtenga una pareja de claves. 
Ejemplo;
Cuando Fernando quiera transmitir un mensaje a Macarena, utilizará la clave pública de esta para cifrarlo y cuando Macarena lo reciba, deberá descifrarlo utilizando su propia clave privada. 
Como se puede ver, se han solventado las desventajas de la criptografía de clave privada. La clave pública es conocida por numerosas personas, mientras que la clave privada debe ser guardada por el receptor con celo para no comprometer la confidencialidad de los mensajes. 






domingo, 1 de febrero de 2015

16. Sistemas de identificación. Criptografía

¿Cómo aseguramos la privacidad de la información? 

 Comunicarse por escrito, ha tenido la necesidad de preservar la privacidad de la información en la transmisión de mensajes confidenciales entre el emisor y el receptor.  Las Empresas con distintas sedes, que precisan intercambiar gran cantidad de información confidencial entre sus trabajadores. La intercepción de estos datos por compañías de la competencia les puede hacer perder cantidades ingentes de dinero y de tiempo. 

Un poco de historia de la criptografía.

Cripto, que significa 'escondido', y grafía, que quiere decir 'escritura'. Por tanto podemos definir la criptografía como la ciencia que estudia la escritura oculta, es decir, aquella que enseña a diseñar códigos secretos y la operación inversa, a interpretar los mensajes cifrados.
Los primeros mensajes cifrados datan del siglo V a.C,  ya entonces los espartanos usaban la escítala para ocultar las comunicaciones. El método consistía en enrollar una cinta sobre un bastón y posteriormente escribir el mensaje en forma longitudinal,  éste era atrapado por los enemigos, sólo obtendrían un conjunto de caracteres sin sentido. El receptor sólo podría interpretar el mensaje siempre y cuando tuviese un bastón similar al que se utilizó para ocultar el mensaje, es decir una vara con el mismo diámetro.

En el sigla I a.C. los romanos desarrollan el cifrador del César, cuyo método consistía en sustituir cada carácter por otro, resultado de desplazar tres posiciones hacia la derecha el carácter original del alfabeto utilizado.

El alfabeto original es similar al del castellano excepto en las letras: H, J, Ñ Y W.  Una de las vulnerabilidades que presenta el cifrador del César es la correspondencia existente entre el alfabeto original y el del cifrado. No es difícil descifrar los secretos de los mensajes si analizamos la frecuencia de las letras. La letra más utilizada en los mensajes originales es la e, así la letra más utilizada en el mensaje cifrado debe corresponderse con la letra e del alfabeto original. 

Para ocultar el mensaje utilizamos la palabra CIFRADO; el proceso consiste en hacer corresponder la primera letra en claro, "L", con la letra que le corresponde en el alfabeto cifrado que empieza por la letra "C", la segunda letra del mensaje en claro "A" se hace corresponder con su correspondiente en el alfabeto cifrado que empieza por la letra «1», y así sucesivamente. 
La ventaja de este sistema es que no se puede descifrar el mensaje oculto analizando las frecuencias de las letras ya que una misma letra se corresponde con varias combinaciones distintas. Otra de las ventajas de este método es que se pueden utilizar innumerables claves. 

Todos estos métodos criptográficos se fueran perfeccionando y mejorando según avanzaba el tiempo. Es en la Segunda Guerra Mundial cuando se hace imprescindible el uso de máquinas que cifren los mensajes para así evitar que el enemigo interceptase información sensible para el desarrollo de las operaciones. 


 Según los ejemplos podemos hacer una clasificación de los métodos de criptografía:
  • Sistemas de transposición: como indica su nombre consiste en descolocar el orden de las letras, sílabas o conjunto de letras. En función del número de transposiciones podemos clasificar los sistemas de transposición en: 
- Sistemas de transposición simples: cuando el texto en claro solo es sometido a una transposición.
- Sistemas de transposición doble o múltiple, cuando se realiza una segunda transposición sobre texto   que ya había sido cifrado mediante transposición simple. Con este método se consigue una mayor seguridad.

  • Sistemas de sustitución: como su nombre indica se reemplazan algunas letras del alfabeto por otras o por un conjunto de ellas según el método. Según el tipo de sustitución se clasifica en:
- Literal, se sustituyen letras por letras. 
- Numéricas, se sustituyen por números.
- Esteganográfica, se sustituyen por signos o se oculta el mensaje tras una imagen, sonido, etc.