Criptografía
Introducción
La Criptografía, de los términos griegos "krypto" (oculto) y graphos "escritura", Existía desde que los secretos empezaron, En la antigüedad tambien se uso y fue en la segunda guerra mundial y se ha convertido en una potente arma que muchos gobiernos usaban en ventajas tácticas y acceder a la información, Hoy en día la criptografia forma parte de nuestras vidas cotidiana.
Uno de los usos que les damos a la criptografia es cuando compramos por Internet o usamos nuestros certificado digital para realizar algún tramite o compra asi estamos poniendo en marcha una maquina criptografica con nuestros datos personales. Por lo que busca es proteger nuestra información.
Función
La criptografía se usa tradicionalmente para ocultar mensajes de ciertos usuarios. En la actualidad, esta función es incluso más útil ya que las comunicaciones de Internet circulan por infraestructuras cuya fiabilidad y confidencialidad no pueden garantizarse. La criptografía se usa no solo para proteger la confidencialidad de los datos, sino también para garantizar su integridad y autenticidad.
Proceso
El esquema del método RSA
El sistema criptográfico con clave pública RSA es un algoritmo asimétrico cifrador de bloques, que utiliza una clave pública, la cual se distribuye, y otra privada, la cual es guardada en secreto por su propietario.
Pasos a seguir:
Paso 1: Cada usuario A elige dos números primos, p y q, que han de ser suficientemente grandes (hoy en día todos los ordenadores tienen métodos para fabricar números primos pseudoaleatorios). Se recomienda que sean de mas de 200 cifras, de igual o muy similar número de bits pero bastante distintos entre si. Si su diferencia es demasiado pequeña un espía puede llegar a encontrarlos a partir del método de Fermat para factorizar números.
Los números primos de gran tamaño no son fáciles de hallar. Para comprobar si un número es primo, se utilizan los llamados tests de primalidad. Ninguno asegura la primalidad de un número dado al 100%, pero permite conseguir una gran probabilidad de que lo sea, y combinados entre sí dan buenos resultados. Así, se evita utilizar el algoritmo de tiempo exponencial de dividir el número por todos los primos menores que su raíz cuadrada para comprobarlo. Ejemplos de estos tests son: Test probabilístico de Miller, Test de Solovay-Strassen, Test de Rabin, etc. Los ordenadores calculan números pseudoaleatorios, y luego comprueban su primalidad con este tipo de tests.
Paso 2: Se halla n, como producto n = pq
Paso 3: Se halla z = F(n) = (p – 1)(q – 1) que es la función del indicador de Euler. Esta función nos da la cantidad de números primos con n menores que el propio n. Si n fuera primo, F(n) = n – 1, en caso contrario si n = pq es el producto de dos primos, su expresión es la de antes.
Paso 4: Se elige un número d menor que z, tal que mcd(d, z) = 1, es decir, d y z sean primos entre sí, o primos relativos. En la práctica se coge d primo directamente, y mayor que p y q(mayor que el mayor de los dos), con lo que no nos caben dudas de que sean primos entre ellos. Otro método es el algoritmo de Euclides, para hallar el mcd, lo que evita factorizar ambos números.
Paso 5: Se obtiene un número e, tal que 1 < e < z, ed º 1(modz) número que existe y es único. Existen dos números enteros d y h (que se pueden calcular usando el algoritmo de Euclides) tales que de + hz = MCD(e, z) = 1.
Cada una de estas operaciones se debe realizar con cuidado para garantizar la seguridad del sistema.
Paso 6. La clave pública está constituida por P(n, e), la cual se envia a los demás usuarios, y la secreta es S(n, d), que ha de ser conservada por A.
Paso 7. Para cifrar, se utiliza la función: C º Me(modn), siendo M el mensaje original y C el mensaje codificado.
Paso 8: El usuario B puede descifrar cualquier mensaje que le haya enviado otro usuario con: M º Cd (modn) = (Me(modn))dmodn
Para que el sistema sea efectivo, n ha de ser mayor que cualquiera de los posibles mensajes o bloques de mensajes: si se utilizan caracteres sueltos, mientras sea mayor de 27 no habrá problema alguno (sin contar con los caracteres numéricos). Normalmente esto no es ningún problema, dado el tamaño colosal de p y q.
Para el cálculo de las potencias modulares se puede utilizar el método de exponenciación binaria: se basa en la posibilidad de expresar el exponente en su forma binaria, y a partir de ahí multiplicar y potenciar la base según el número obtenido. Así, logramos descomponer las grandes potencias en otras más pequeñas, más manejables.
El proceso de desencriptación es el mismo, solo que se sustituye e por d.
Conclusión
En conclusión, Ahora podemos saber que la criptografia hoy en día se usa a diario en cuestión de compras en Internet, Durante los métodos que existen en la historia de la criptografia, Al igual que su historia a lo largo de estos años de como funciono en la segunda guerra mundial, Tambien de donde proviene la palabra y el funcionamiento que proporciona.